How to use GetPoint.AddSnapPoint?

We want to customize the process of snapping points, that is, to replace this function built into Rhino, not skip, not disable, but replace, how to do it?

Hi @ken_zhang,

I’m not sure what this all means. But if you know the object that you want to snap to, then often just using a custom GetPoint is all you need.

For example, the SampleCsCurveSeam.cs sample uses a custom GetPoint class to snap to the closest curve knot, given a selected curve.

Maybe this helps…

– Dale

@dale

image
I want to disable this point, or customize the position of this point

@dale

Is there a way to control it?

Hi @ken_zhang,

Did you study the sample I referenced above?

If you did, you’ll notice a GetPoint-inherited class.

This class overrides the OnDynamicDraw virtual method, and the implementation does not call the base class. This is how you suppress the current cursor location from being drawn.

The same overridden method calls DisplayPipeline.DrawPoint to draw the current “snapped to” location.

Hope this helps.

– Dale

@dale

Sorry, I overlooked the statement “the implementation does not call the base class”. My fault, sorry.

No apology necessary. :grinning:

@dale

Under what circumstances will cause the GetPoint class to change to the following icon after calling the Get method