RhinoCommon API
IntersectionRayShoot Method (Ray3d, IEnumerableGeometryBase, Int32) |
Computes point intersections that occur when shooting a ray to a collection of surfaces and Breps.
Namespace: Rhino.Geometry.Intersect
Assembly: RhinoCommon (in RhinoCommon.dll)
Since: 5.0
public static Point3d[] RayShoot( Ray3d ray, IEnumerable<GeometryBase> geometry, int maxReflections )
Public Shared Function RayShoot ( ray As Ray3d, geometry As IEnumerable(Of GeometryBase), maxReflections As Integer ) As Point3d()
Parameters
- ray
- Type: Rhino.GeometryRay3d
A ray used in intersection. - geometry
- Type: System.Collections.GenericIEnumerableGeometryBase
Only Surface and Brep objects are currently supported. Trims are ignored on Breps. - maxReflections
- Type: SystemInt32
The maximum number of reflections. This value should be any value between 1 and 1000, inclusive.
Return Value
Type: Point3dAn array of points: one for each surface or Brep face that was hit, or an empty array on failure.
| Exception | Condition |
|---|---|
| ArgumentNullException | geometry is null. |
| ArgumentOutOfRangeException | maxReflections is strictly outside the [1-1000] range. |