Click or drag to resize

Intersection Class

Provides static methods for the computation of intersections, projections, sections and similar.
Inheritance Hierarchy
SystemObject
  Rhino.Geometry.IntersectIntersection

Namespace:  Rhino.Geometry.Intersect
Assembly:  RhinoCommon (in RhinoCommon.dll)
Syntax
public static class Intersection

The Intersection type exposes the following members.

Properties
  NameDescription
Public propertyStatic memberMeshIntersectionsTolerancesCoefficient

Offers a requested adjustment coefficient for mesh-mesh intersections tolerances. The value can be used to multiply the document absolute tolerance.

This is only a UI value; it is up to developer to honor (or not) this request, depending on application needs.

Top
Methods
  NameDescription
Public methodStatic memberArcArc
Intersects two arcs using exact calculations.
Public methodStatic memberBrepBrep
Intersects two Breps.
Public methodStatic memberBrepPlane
Intersects a Brep with an (infinite) plane.
Public methodStatic memberBrepSurface
Intersects a Brep and a Surface.
Public methodStatic memberCircleCircle
Intersects two circles using exact calculations.
Public methodStatic memberCode exampleCurveBrep(Curve, Brep, Double, Curve, Point3d)
Intersects a curve with a Brep. This function returns the 3D points of intersection and 3D overlap curves. If an error occurs while processing overlap curves, this function will return false, but it will still provide partial results.
Public methodStatic memberCurveBrep(Curve, Brep, Double, Double, Double)
Intersect a curve with a Brep. This function returns the intersection parameters on the curve.
Public methodStatic memberCurveBrep(Curve, Brep, Double, Curve, Point3d, Double)
Intersects a curve with a Brep. This function returns the 3D points of intersection, curve parameters at the intersection locations, and 3D overlap curves. If an error occurs while processing overlap curves, this function will return false, but it will still provide partial results.
Public methodStatic memberCurveBrepFace
Intersects a curve with a Brep face.
Public methodStatic memberCode exampleCurveCurve
Finds the intersections between two curves.
Public methodStatic memberCurveCurveValidate
Finds the intersections between two curves.
Public methodStatic memberCurveLine
Intersects a curve and an infinite line.
Public methodStatic memberCurvePlane
Intersects a curve with an (infinite) plane.
Public methodStatic memberCurveSelf
Finds the places where a curve intersects itself.
Public methodStatic memberCode exampleCurveSurface(Curve, Surface, Double, Double)
Intersects a curve and a surface.
Public methodStatic memberCurveSurface(Curve, Interval, Surface, Double, Double)
Intersects a sub-curve and a surface.
Public methodStatic memberCurveSurfaceValidate(Curve, Surface, Double, Double, Int32, TextLog)
Intersects a curve and a surface.
Public methodStatic memberCurveSurfaceValidate(Curve, Interval, Surface, Double, Double, Int32, TextLog)
Intersects a sub-curve and a surface.
Public methodStatic memberLineBox(Line, BoundingBox, Double, Interval)
Intersects an infinite line and an axis aligned bounding box.
Public methodStatic memberLineBox(Line, Box, Double, Interval)
Intersects an infinite line with a box volume.
Public methodStatic memberCode exampleLineCircle
Intersects a line with a circle using exact calculations.
Public methodStatic memberLineCylinder
Intersects a line with a cylinder using exact calculations.
Public methodStatic memberCode exampleLineLine(Line, Line, Double, Double)
Find the unique closest-points pair between two infinite lines, if it exists.
Public methodStatic memberLineLine(Line, Line, Double, Double, Double, Boolean)
Intersects two lines.
Public methodStatic memberLinePlane
Intersects a line and a plane. This function only returns true if the intersection result is a single point (i.e. if the line is coincident with the plane then no intersection is assumed).
Public methodStatic memberLineSphere
Intersects a line with a sphere using exact calculations.
Public methodStatic memberMeshLine(Mesh, Line)
Finds the intersections of a mesh and a line.
Public methodStatic memberMeshLine(Mesh, Line, Int32)
Finds the intersections of a mesh and a line. The points are not necessarily sorted.
Public methodStatic memberMeshLineSorted
Finds the intersections of a mesh and a line. Points are sorted along the line.
Public methodStatic memberMeshMesh
Intersects meshes. Overlaps and perforations are provided in the output list.
Public methodStatic memberMeshMeshAccurate
Intersects two meshes. Overlaps and near misses are handled. This is an old method kept for compatibility.
Public methodStatic memberMeshMeshFast Obsolete.
This is an old overload kept for compatibility. Overlaps and near misses are ignored.
Public methodStatic memberMeshMeshPredicate
Determines if meshes intersect or overlap.
Public methodStatic memberMeshPlane(Mesh, Plane)
Intersects a mesh with an infinite plane.
Public methodStatic memberMeshPlane(Mesh, IEnumerablePlane)
Intersects a mesh with a collection of infinite planes.
Public methodStatic memberMeshPlane(Mesh, MeshIntersectionCache, Plane, Double)
Intersects a mesh with an infinite plane.
Public methodStatic memberMeshPlane(Mesh, MeshIntersectionCache, IEnumerablePlane, Double)
Intersects a mesh with a collection of infinite planes.
Public methodStatic memberMeshPolyline
Finds the intersection of a mesh and a polyline. Starting from version 7, points are always sorted along the polyline.
Public methodStatic memberMeshPolylineSorted
Finds the intersection of a mesh and a polyline. Points are guaranteed to be sorted along the polyline.
Public methodStatic memberMeshRay(Mesh, Ray3d)
Finds the first intersection of a ray with a mesh.
Public methodStatic memberMeshRay(Mesh, Ray3d, Int32)
Finds the first intersection of a ray with a mesh.
Public methodStatic memberPlaneBoundingBox
Intersects a plane and a bounding box.
Public methodStatic memberPlaneCircle
Intersects a plane with a circle using exact calculations.
Public methodStatic memberPlanePlane
Intersects two planes and return the intersection line. If the planes are parallel or coincident, no intersection is assumed.
Public methodStatic memberPlanePlanePlane
Intersects three planes to find the single point they all share.
Public methodStatic memberPlaneSphere
Intersects a plane with a sphere using exact calculations.
Public methodStatic memberCode exampleProjectPointsToBreps
Projects points onto breps.
Public methodStatic memberProjectPointsToBrepsEx
Projects points onto breps.
Public methodStatic memberProjectPointsToMeshes
Projects points onto meshes.
Public methodStatic memberCode exampleProjectPointsToMeshesEx
Projects points onto meshes.
Public methodStatic memberRayShoot(IEnumerableGeometryBase, Ray3d, Int32)
Computes point intersections that occur when shooting a ray to a collection of surfaces and Breps.
Public methodStatic memberRayShoot(Ray3d, IEnumerableGeometryBase, Int32)
Computes point intersections that occur when shooting a ray to a collection of surfaces and Breps.
Public methodStatic memberSphereSphere
Intersects two spheres using exact calculations.
Public methodStatic memberSurfaceSurface
Intersects two Surfaces.
Top
See Also