Question about Project command

What is the purpose of the Loose option of the Project command? It seems that the Loose option cripples the Project command. If the Loose option makes any curves, they are the same curves as the curves made when the Loose option is turned off.

Hi @andrew.nowicki
As the help file explains the loose option projects the edit points, meaning that it does not rebuild the curve to fit to the surface within tolerance, but rather maintains the original structure of the curve.
HTH, Jakob

The number of control points is the same and spacings between them seem to be the same. I ran CrvDeviation command on the curves. It said: Maximum deviation = 1.59932e-13.

What was your test?

The result of Project onto a planar surface should be virtually the same with Loose=Yes and Loose=No.

The result of Project onto a non-planar surface are generally different with Loose=Yes and Loose=No. As Jakob said with Loose=Yes the result will generally not fit the target surface within tolerance. Loose=Yes is useful when an exact fit to the target surface is not needed but the original structure needs to be preserved.

I projected rather complex 3D curve (third degree, 5 control points) on cylindrical surface. I use Rhino 7.12.

If the original curve has a sufficiently large number of control points, with “sufficiently large” depending on the shape of the curve, shape of the target surface and absolute tolerance, then the Loose=Yes option can give the same result as Loose=No. Upload a file with your curve and target surface.

With Loose=No sufficient control points are added, if needed, for the resulting curve to conform to the target surface.

I use the Loose=Yes option in Project and Pull frequently without problems.

I made a copy of the curve. The cylindrical surfaces have the same shape and size, but different degrees and control points.

project.3dm (259.9 KB)

My results using Project have a difference of 0.0049 between Loose=Yes and Loose=No which is greater than the absolute tolerance of 0.001. Hence the added control points with Loose=No.
projectDC01.3dm (1.6 MB)

I ran the test again on both cylinders. This time I had the same CrvDeviation as you had. Apparently I made mistake, or something went haywire.