SoRayPickActionSetRadius Method |
Sets the radius around the point.
Namespace: OIV.Inventor.Actions
The radius is defined in pixels when defining a ray using the OIV.Inventor.Actions.SoRayPickAction.SetPoint(OIV.Inventor.SbVec2s) or OIV.Inventor.Actions.SoRayPickAction.SetNormalizedPoint(OIV.Inventor.SbVec2f) method, and is defined in world coordinates, when the ray is defined using the OIV.Inventor.Actions.SoRayPickAction.SetRay(OIV.Inventor.SbVec3f, OIV.Inventor.SbVec3f, System.Single, System.Single) method. By default, for the setPoint and setNormalizedPoint method the radius is 5 pixels.
By default, the radius is not taken into account for triangle based shapes, only for points and lines. To enable this use the OIV.Inventor.Actions.SoRayPickAction.EnableRadiusForTriangles(System.Boolean) method. When radius is taken into account, the ray is extended in 3D space. For perspectivecameras, the ray is extended to be a cone. For orthographic cameras, the ray is extended to be a cylinder.
Specifying a radius of 0 may give better performance. In particular, some shapes like MoMeshSkin implement a fast GPU picking algorithm that can only be used when radius is 0.