It would be great to be able to snap to the center of degree 2 surfaces that are full circle or partial revolve surfaces, cylinders, cones etc. Presumably, a cylinder has an infinite number of center snap points along the entire length of its axis, so this particular pipe Osnap should let the user snap freely along the virtual axis inside the pipe. This would be especially useful for snapping to the axis of bent pipes or straight pipes whose ends were split in a complex way that will not allow use of the regular cen Osnap (see the example below).
Currently, the user is forced to use ! _ExtractIsoCurve
to extract an isocurve to be able to snap to its center via the cen Osnap. However, that will not allow for a continuous variable location of the snap along the virtual line/axis of the pipe. On top of that, for operations such like ! _Orient3Pt
the user needs to extract at least two radial Isocurves to be able to snap to two centers along the pipe.
There is an extremely useful script that extracts the centerline of pipes (even bent ones), which could provide the necessary virtual axis mentioned above, so it should be possible to develop this further to make a PipeCenter Osnap.
ExtractCenterline.py (6.5 KB)