Line Projection doesn't update correct Osnap


I ran into a peculiar situation after projecting a line from one Cplane to another Cplane.

After the projection, I tried to Osnap to one of the ends of the newly projected line.

But I discovered it wasn’t available. Upon looking at it more closely I found that the ‘end’ point was on the new line but away from the actual end.

Then after looking at the original line that was used to project I see the origianal line projected it’s endpoint to the newline such that the newline doesn’t get ‘updated’ to what the newlines endpoint should be.

I’ve included a file that shows what is happening.

I guess the question is: Is this a bug or this there an additional step I need to take in order that the newly projected line reflects it’s ‘proper’ Osnaps like endpoints.

Line Projection to CPlanes.3dm (50.2 KB)

Hi BabaJ - check OSnaps to see if ‘Project’ is set there.


Hi Pascal,

No, when I did the projection the “Project” was off.

But just to make sure, so that I understood what your implying. I Tried it again with a new line both ways and I get the same results either way.

Hi BabaJ- if Project is on, any snaps that you hit, like End, will be pushed to the current CPlane - that is, only the X and Y are snapped, the Z is set to CPlane zero. If Project is not on, snaps should go to the end you are looking for. So far that is the only thing that comes to mind that might explain what you’ve described.


Hi Pascal, Yes that is what I am looking for - have Project off. But I can’t get or rather, I don’t get the end snap on the newly projected line that I am looking for.

Any suggestions on how get this other than the only work around I can think of which is the make a duplicate second line of the original line and on that Cplane of the origal line trim it to its’ highest point then project that line.

OK, I see - this has nothing to do with Project - the curve folds back on itself - that IS the end point.


Ok…so its working as intend.

Looking at the file again, I guess what I have to do is an intersection of the two lines. This then gives me an endpoint.

Ok…thanks again Pascal for the interaction that helps me find a solution.

I just wanted to add…I’m coming from SolidWorks, and I know one can’t expect to work the same way from one software to another.

In Solidworks when you ‘project’ like what I was trying to do you get the profile of that projection which is what I was looking for.

So what project means in Rhino is different from Solidworks.

I can see how the way project works in Rhino can be advantages in some cases. Like in how Pascal is saying the curve in the above file example is turning “on itself”.

By having project work the way it does I get to retain information - in this case where the original endpoint was.

In looking at other ways to do what I wanted, there is the Make2d command - So this is really the equivalent of what I was expecting for ‘project’.

There is a difference between “Project” being on in the object snap panel and the “Project” command… One projects objects, the other projects object snaps


Yeah…I was referring to Project that ‘projects’ objects. But the resulting object is one that has its own ‘snaps’ is if it was drawn the same without having been projected ie. it’s giving a profile of the projection on the new Cplane. And for that it’s the Make2d command that is giving me what I want.

OSnaps are not entities which belong to an object. Rather they are how the cursor works. If the End Osnap is turned on then the selected point “snaps” to the end of a line or corner of a surface when the cursor is within a certain number of pixels of that end. If the Point OSnap is on the selected pint “snaps” to the closest point if the cursor is within a certain number of pixels of that point. And so forth for the other OSnaps. If multiple OSnaps are on and the cursor is close enough to multiple places to snap to then there is a priority as to which OSnap the the selected point follows.

The Project OSnap puts the selected point on the CPlane.

You might be confusing control points and OSnaps.

Hi davidcockey,

Not confused, it was more simply wanting to have an end point of the newly created line from the projected one so that I can actually connect the end of the line to another one. But the ability to do that wasn’t available, which is why I initially posted for a solution - of which I now know of different ways to go about it.

In the process, yes I now look at OSnaps differently thanks to your explanation and others input.