N_Rhino_Geometry - mcneel/rhinocommon-api-docs GitHub Wiki
The Geometry namespace contains geometric types used in Rhino. Examples are lines, curves, meshes and boundary representations.
Class | Description | |
---|---|---|
![]() |
AngularDimension | Represents a dimension of an entity that can be measured with an angle. This entity refers to the geometric element that is independent from the document. |
![]() |
AnnotationArrowhead | Arrowhead used by annotation |
![]() |
AnnotationBase | Provides a common base class to all annotation geometry. This class refers to the geometric element that is independent from the document. |
![]() |
AnnotationText | |
![]() |
ArcCurve | Represent arcs and circles. ArcCurve.IsCircle returns true if the curve is a complete circle. |
![]() |
AreaMassProperties | Contains static initialization methods and allows access to the computed metrics of area, area centroid and area moments in closed planar curves, in meshes, in surfaces, in hatches and in boundary representations. |
![]() |
BezierCurve | Represents a Bezier curve. Note: as an exception, the bezier curve is not derived from Curve. |
![]() |
Brep | Boundary Representation. A surface or polysurface along with trim curve information. |
![]() |
BrepEdge | Represents a single edge curve in a Brep object. |
![]() |
BrepFace | Provides strongly-typed access to brep faces. A Brep face is composed of one surface and trimming curves. |
![]() |
BrepLoop | Represent a single loop in a Brep object. A loop is composed of a list of trim curves. |
![]() |
BrepRegion | Represents a brep topological region that has sides. |
![]() |
BrepRegionFaceSide | Represents a side of a BrepRegion entity. |
![]() |
BrepTrim | Brep trim information is stored in BrepTrim classes. Brep.Trims is an array of all the trims in the brep. A BrepTrim is derived from CurveProxy so the trim can supply easy to use evaluation tools via the Curve virtual member functions. Note well that the domains and orientations of the curve m_C2[trim.m_c2i] and the trim as a curve may not agree. |
![]() |
BrepVertex | Brep vertex information |
![]() |
ClippingPlaneSurface | Represents a planar surface that is used as clipping plane in viewports. |
![]() |
Curve | Represents a base class that is common to most RhinoCommon curve types. A curve represents an entity that can be all visited by providing a single parameter, usually called t. |
![]() |
CurveBlend | Represents a blend between two curves or surface edges with specific continuity at each end |
![]() |
CurveProxy | Provides strongly-typed access to Brep edges. |
![]() |
DetailView | Represents a view of the model placed on a page layout. |
![]() |
Extrusion | Represents an extrusion, or objects such as beams or linearly extruded elements, that can be represented by profile curves and two miter planes at the extremes. |
![]() |
GeometryBase | Provides a common base for most geometric classes. This class is abstract. |
![]() |
Hatch | Represents a hatch in planar boundary loop or loops. This is a 2d entity with a plane defining a local coordinate system. The loops, patterns, angles, etc are all in this local coordinate system. The Hatch object manages the plane and loop array Fill definitions are in the HatchPattern or class derived from HatchPattern Hatch has an index to get the pattern definition from the pattern table. |
![]() |
HiddenLineDrawing | Represents a hidden line drawing object. A hidden line drawing consists of curves generated from source objects. The curves correspond to edges, and silhouettes of source objects and intersections with cutting planes. |
![]() |
HiddenLineDrawingObject | Represents an object added to a HiddenLineDrawing |
![]() |
HiddenLineDrawingObjectCurve | Curves generated from source objects which correspond to edges, and silhouettes of source objects and intersections with cutting planes. A HiddenLineDrawingObjectCurve is partitioned into hidden and visible segments called HiddenLineDrawingSegment |
![]() |
HiddenLineDrawingParameters | Input used for computing a hidden line drawing |
![]() |
HiddenLineDrawingSegment | The results of HiddenLineDrawing calculation are a collection of segments. A segment is a subcurve of a HiddenLineDrawingObjectCurve. |
![]() |
InstanceDefinitionGeometry | Represents a block definition in a File3dm. This is the same as Rhino.DocObjects.InstanceDefinition, but not associated with a RhinoDoc. |
![]() |
InstanceReferenceGeometry | Represents a reference to the geometry in a block definition. |
![]() |
Interpolator | Exposes a set of standard numeric interpolation algorithms. |
![]() |
Leader | Represents a leader, or an annotation entity with text that resembles an arrow pointing to something. This class refers to the geometric element that is independent from the document. |
![]() |
Light | Represents a light that shines in the modeling space. |
![]() |
LinearDimension | Represents a linear dimension. This entity refers to the geometric element that is independent from the document. |
![]() |
LineCurve | Represents a linear curve. |
![]() |
Matrix | Represents an arbitrarily sized matrix of double-precision floating point numbers. If you are working with a 4x4 matrix, then you may want to use the Transform class instead. |
![]() |
Mesh | Represents a geometry type that is defined by vertices and faces. This is often called a face-vertex mesh. |
![]() |
MeshDisplacementInfo | Contains mesh displacement information. |
![]() |
MeshingParameters | Represents settings used for creating a mesh representation of a brep or surface. |
![]() |
MeshNgon | Represents a mesh ngon. |
![]() |
MeshPart | Represents a portion of a mesh for partitioning |
![]() |
MeshPoint | Represents a point that is found on a mesh. |
![]() |
MeshUnsafeLock | Permits access to the underlying mesh raw data structures in an unsafe way. |
![]() |
MorphControl | Represents a geometry that is able to control the morphing behaviour of some other geometry. |
![]() |
NurbsCurve | Represents a Non Uniform Rational B-Splines (NURBS) curve. |
![]() |
NurbsSurface | Represents a Non Uniform Rational B-Splines (NURBS) surface. |
![]() |
OrdinateDimension | Represents the geometry of a dimension that displays a coordinate of a point. This class refers to the geometric element that is independent from the document. |
![]() |
Particle | Represents a simple particle. This base class only defines position and display properties (size, color, bitmap id). You will most likely create a class that derives from this particle class to perform some sort of physical simulation (movement over time or frames). |
![]() |
ParticleSystem | |
![]() |
PatchGetter | |
![]() |
PlaneSurface | Represents a plane surface, with plane and two intervals. |
![]() |
Point | Represents a geometric point. This is fundamentally a class that derives from GeometryBase and contains a single Point3d location. |
![]() |
Point3dGrid | Represents a rectangular grid of 3D points. |
![]() |
PointCloud | Represents a collection of coordinates with optional normal vectors and colors. |
![]() |
PointCloudItem | Represents a single item in a pointcloud. A PointCloud item always has a location, but it has an optional normal vector and color. |
![]() |
PolyCurve | Represents a curve that is the result of joining several (possibly different) types of curves. |
![]() |
Polyline | Represents an ordered set of points connected by linear segments. Polylines are closed if start and end points coincide. |
![]() |
PolylineCurve | Represents the geometry of a set of linked line segments. This is fundamentally a class that derives from Curve and internally contains a Polyline. |
![]() |
RadialDimension | Represents a dimension of a circular entity that can be measured with radius or diameter. This entity refers to the geometric element that is independent from the document. |
![]() |
ReduceMeshParameters | Parameters for Reduce method |
![]() |
RevSurface | Represents a surface of revolution. Revolutions can be incomplete (they can form arcs). |
![]() |
RLeader | Leader geometry class |
![]() |
RTree | Represents a spatial search structure based on implementations of the R-tree algorithm by Toni Gutman. |
![]() |
RTreeEventArgs | Represents event data that is passed when when an item that meets certain criteria is found and the passed RTree event is raised. |
![]() |
ShutLiningCurveInfo | Contains shutlining curve information. This is used in WithShutLining(Boolean, Double, IEnumerable(ShutLiningCurveInfo)). |
![]() |
Silhouette | Information about silhouette curves that are generated from geometry (surfaces, brep faces, meshes) |
![]() |
SpaceMorph | Represents a spacial, Euclidean morph. |
![]() |
SubD |
Represents a surface geometry type that is defined by a control net, crease information and a refinement level.
This is often called a subdivision surface.
Warning: this object is exposed for early testing. It might change without notice. |
![]() |
SubDDisplayParameters | |
![]() |
SubDVertexSectorIterator | |
![]() |
SumSurface | Represents a sum surface, or an extrusion of a curve along a curved path. |
![]() |
Surface | Represents a base class that is common to most RhinoCommon surface types. A surface represents an entity that can be all visited by providing two independent parameters, usually called (u, v), or sometimes (s, t). |
![]() |
SurfaceCurvature | Maintains computed information for surface curvature evaluation. |
![]() |
SurfaceProxy | Provides a base class to brep faces and other surface proxies. |
![]() |
SweepOneRail | Utility class for generating breps by sweeping cross section curves over a single rail curve. |
![]() |
SweepTwoRail | Utility class for generating breps by sweeping cross section curves over two rail curves. |
![]() |
TextDot | Represents a text dot, or an annotation entity with text that always faces the camera and always has the same size. This class refers to the geometric element that is independent from the document. |
![]() |
TextEntity | Represents text geometry. This class refers to the geometric element that is independent from the document. |
![]() |
Unroller | Represents the operation of unrolling a single surface. |
![]() |
V6AngularDimension | Represents an angular dimension. ON_V6_DimAngular |
![]() |
V6Centermark | Represents a centermark. ON_V6_Centermark |
![]() |
V6Dimension | Represents a base class for dimensions ON_V6_Dimension |
![]() |
V6LinearDimension | Represents a linear dimension. ON_V6_DimLinear |
![]() |
V6OrdinateDimension | Represents an ordinate dimension. ON_V6_DimOrdinate |
![]() |
V6RadialDimension | Represents a radial dimension. ON_V6_DimRadial |
![]() |
VolumeMassProperties | Contains static initialization methods and allows access to the computed metrics of volume, volume centroid and volume moments in in solid meshes, in solid surfaces and in solid (closed) boundary representations. |
Structure | Description | |
---|---|---|
![]() |
Arc |
Represents the value of a plane, two angles and a radius in a subcurve of a three-dimensional circle.
The curve is parameterized by an angle expressed in radians. For an IsValid arc the total subtended angle AngleRadians() = Domain()(1) - Domain()(0) must satisfy 0 < AngleRadians() < 2*Pi
The parameterization of the Arc is inherited from the Circle it is derived from. In particular t -> center + cos(t)radiusxaxis + sin(t)radiusyaxis where xaxis and yaxis, (part of Circle.Plane) form an othonormal frame of the plane containing the circle. |
![]() |
BoundingBox | Represents the value of two points in a bounding box defined by the two extreme corner points. This box is therefore aligned to the world X, Y and Z axes. |
![]() |
Box | Represents the value of a plane and three intervals in an orthogonal, oriented box that is not necessarily parallel to the world Y, X, Z axes. |
![]() |
Circle |
Represents a circle in 3D.
The values used are a radius and an orthonormal frame of the plane containing the circle, with origin at the center.
The circle is parameterized by radians from 0 to 2 Pi given by t -> center + cos(t)radiusxaxis + sin(t)radiusyaxis where center, xaxis and yaxis define the orthonormal frame of the circle plane. |
![]() |
ComponentIndex | Represents an index of an element contained in another object. |
![]() |
ComponentStatus | Provides information about selection, highlighting, visibility, editability and integrity states of a component. This structure is immutable. |
![]() |
Cone | Represents the center plane, radius and height values in a right circular cone. |
![]() |
ControlPoint | Represents control-point geometry with three-dimensional position and weight. |
![]() |
Cylinder | Represents the values of a plane, a radius and two heights -on top and beneath- that define a right circular cylinder. |
![]() |
Ellipse | Represents the values of a plane and the two semiaxes radii in an ellipse. |
![]() |
Interval | Represents an interval in one-dimensional space, that is defined as two extrema or bounds. |
![]() |
Line | Represents the value of start and end points in a single line segment. |
![]() |
MeshFace | Represents the values of the four indices of a mesh face quad. If the third and fourth values are the same, this face represents a triangle. |
![]() |
MeshThicknessMeasurement | Thickness measurement used in the mesh thickness solver. |
![]() |
Plane | Represents the value of a center point and two axes in a plane in three dimensions. |
![]() |
Point2d | Represents the two coordinates of a point in two-dimensional space, using Double-precision floating point numbers. |
![]() |
Point2f | Represents the two coordinates of a point in two-dimensional space, using Single-precision floating point numbers. |
![]() |
Point3d | Represents the three coordinates of a point in three-dimensional space, using Double-precision floating point values. |
![]() |
Point3f | Represents the three coordinates of a point in three-dimensional space, using Single-precision floating point numbers. |
![]() |
Point4d | Represents the four coordinates of a point in four-dimensional space. The W (fourth) dimension is often considered the weight of the point as seen in 3D space. |
![]() |
Quaternion |
Represents the four coefficient values in a quaternion.
The first value a is the real part, while the rest multipies i, j and k, that are imaginary.
quaternion = a + bi + cj + dk |
![]() |
Ray3d | Represents an immutable ray in three dimensions, using position and direction. |
![]() |
Rectangle3d | Represents the values of a plane and two intervals that form an oriented rectangle in three dimensions. |
![]() |
Sphere | Represents the plane and radius values of a sphere. |
![]() |
SubDEdgeDirPair | |
![]() |
SubDEdgePtr | Efficiently manages a reference to an edge in a SubD. Contains connection information to faces and vertices. |
![]() |
SubDFacePtr | Efficiently manages a reference to a polygonal face in a SubD, with any number of sides. Contains connection information to vertices and edges. |
![]() |
SubDVertexDirPair | |
![]() |
SubDVertexPtr | Efficiently manages a reference to a vertex in a SubD. Contains connection information to faces and edges. |
![]() |
Torus | Represents the value of a plane and two radii in a torus that is oriented in three-dimensional space. |
![]() |
Transform | Represents the values in a 4x4 transform matrix. This is parallel to C++ ON_Xform. |
![]() |
Vector2d | Represents the two components of a vector in two-dimensional space, using Double-precision floating point numbers. |
![]() |
Vector2f | Represents the two components of a vector in two-dimensional space, using Single-precision floating point numbers. |
![]() |
Vector3d | Represents the three components of a vector in three-dimensional space, using Double-precision floating point numbers. |
![]() |
Vector3f | Represents the three components of a vector in three-dimensional space, using Single-precision floating point numbers. |
Enumeration | Description | |
---|---|---|
![]() |
BlendContinuity | Used in curve and surface blending functions |
![]() |
BlendType | Blend types used for creating filleted Brep edges |
![]() |
BrepLoopType | Each brep loop has a defined type, e.g. outer, inner or point on surface. |
![]() |
BrepSolidOrientation | Enumerates all possible Solid Orientations for a Brep. |
![]() |
BrepTrimType | Each brep trim has a defined type. |
![]() |
ComponentIndexType | Defines enumerated values to represent component index types. |
![]() |
ConicSectionType | Defines enumerated values for types of conic sections. |
![]() |
Continuity | Provides enumerated values for continuity along geometry, such as continuous first derivative or continuous unit tangent and curvature. |
![]() |
CurveBlend.BlendType | Describes the kind of connection to the target geometry that a CurveBlend has at its ends |
![]() |
CurveBlend.EndType | Describes the kind of connection to the target geometry that a CurveBlend has at its ends. |
![]() ![]() |
CurveEnd | Defines the extremes of a curve through a flagged enumeration. |
![]() |
CurveEvaluationSide | Defines enumerated values for the options that defines a curve evaluation side when evaluating kinks. |
![]() |
CurveExtensionStyle | Defines enumerated values for styles to use during curve extension, such as "Line", "Arc" or "Smooth". |
![]() |
CurveKnotStyle | Defines enumerated values for knot spacing styles in interpolated curves. |
![]() |
CurveOffsetCornerStyle | Defines enumerated values for all implemented corner styles in curve offsets. |
![]() |
CurveOrientation | Defines enumerated values for closed curve orientations. |
![]() |
CurveSimplifyOptions | Enumerates the options to use when simplifying a curve. |
![]() |
DistancingMode | Defines how offset and similar operations should work. |
![]() |
EdgeAdjacency | Enumerates all possible Topological Edge adjacency types. |
![]() |
ExtrudeCornerType | Corner types used for creating a tapered extrusion |
![]() |
HiddenLineDrawingSegment.SideFill | When a silhouette is projected on the image plane (determined by the camera location or direction), and projects to a curve (not a point), the image area to the left or right of a projected silhouette curve is filled with either the surface or a void. |
![]() |
HiddenLineDrawingSegment.Visibility | The different types of HiddenLineDrawingSegment visiblity |
![]() |
IsoStatus | Defines enumerated values for isoparametric curve direction on a surface, such as X or Y, and curve sides, such as North or West boundary. Note: odd values are all x-constant; even values > 0 are all y-constant. |
![]() |
LightStyle | Defines enumerated values to represent light styles or types, such as directional or spotlight. |
![]() |
LoftType | Specifies enumerated constants for all supported loft types. |
![]() |
MeshingParameterStyle | Type of Mesh Parameters used by the RhinoDoc for meshing objects |
![]() |
MeshPipeCapStyle | Enumerates methods to end a mesh pipe. |
![]() |
MeshType | Defines enumerated values for various mesh types. |
![]() |
NurbsCurve.NurbsCurveEndConditionType | What end conditions to set |
![]() |
PipeCapMode | Defines styles used for creating Brep pipes. |
![]() |
PlaneFitResult | Enumerates all possible outcomes of a Least-Squares plane fitting operation. |
![]() |
PointContainment | Defines enumerated values for closed curve/point spatial relationships. |
![]() |
PointFaceRelation | Enumerates the possible point/BrepFace spatial relationships. |
![]() |
RailType | Rail types used for creating filleted Brep edges |
![]() |
RegionContainment | Defines enumerated values for closed curve/closed curve relationships. |
![]() |
SilhouetteType | Enumerates the different types of silhouettes and their origins. |
![]() |
SubD.ConvexCornerOption | Defines how convex corners are treated. |
![]() |
SubD.InteriorCreaseOption | Defines how interior creases are treated. |
![]() |
SubD.SubDEdgeTag | SubD::EdgeTag identifies the type of subdivision edge. Different tags use different subdivision algorithms to determine where the subdivision point is located. |
![]() |
SubD.SubDFacetType | SubD::FacetType reports the default facet type for subdivision algorithms. |
![]() |
SubD.SubDType | Subdivision algorithm. |
![]() |
SubD.SubDVertexTag | SubD::VertexTag identifies the type of subdivision vertex. Different tags use different subdivision algorithms to determine where the subdivision point and limit point are located. There are toplological constraints that restrict which tags can be assigned. |
![]() |
SubD.VertexFacetType | Summarizes the number of edges in faces in the whole object. |
![]() |
TextJustification | Specifies enumerated constants used to indicate the internal alignment and justification of text. |
![]() |
TextRunType | |
![]() |
TransformSimilarityType | Lists all possible outcomes for transform similarity. |
![]() |
V6Dimension.DimensionType | Type of dimension |
![]() |
V6OrdinateDimension.MeasuredDirection | Ordinate dimension measures x or y direction |