Distort Curves (Text) with perspective


Hello Community,
I am wondering if curves can be distorted over surfaces. I have tried “Project” and it works but I want the perspective distortion of the boundary to occur too. Any help or insight would be greatly appreciated.

distort_01.3dm (58.0 KB)

Projecting in Perspective Viewport / Projecting to a point
(Lando Schumpich) #2

I’m not a native english speaker so maybe that’s why I don’t actually understand what you mean by ‘perspective distortion of boundaries’ could you provide a sketch of what you are trying to achieve?

(Chris Kuether ) #3

Well, I AM a native English speaker. And I don’t understand what he means, either. A sketch would be helpful. :guardsman:

(Diego Krause) #4

you can try with the _Pull command is not the same than project.


What I’m pretty sure he’s looking for is a perspective projection of the text from the viewer’s standpoint (i.e. the camera point) to some “walls” - i.e. if the viewer was to stand exactly at the camera position and look at the walls, the text would look undistorted… You can’t do this with normal project/pull functions.

I think @pascal had a script for this, I had one too, but I can’t find it anymore…

The basic principle is to extrude>to point the text curves backwards to the camera point, then extend the resulting surfaces forward to intersect with the walls, the intersection will be the correct (distorted) outline.


(Lando Schumpich) #6

so if I got this right @Helvetosaur this script should do exactly what you described:

distortCurvesToPerspective.py (2.6 KB)

(qythium) #7

Here’s a grasshopper version which does not require the surface to be in between the curves and the camera: (Should be easy enough to translate to Rhino python script)
project-curves-from-camera.gh (18.8 KB)


The effect reminded me of this OK Go video :slight_smile:


I think this is Pascal’s:

ProjectPersp.rvb (2.1 KB)

Projecting in Perspective Viewport / Projecting to a point