T_Rhino_Geometry_Arc - mcneel/rhinocommon-api-docs GitHub Wiki

Arc Structure

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.

Namespace: Rhino.Geometry
Assembly: RhinoCommon (in RhinoCommon.dll) Version: Rhino 6.0

Syntax

C#

[SerializableAttribute]
public struct Arc : IEquatable<Arc>

VB

<SerializableAttribute>
Public Structure Arc
	Implements IEquatable(Of Arc)

The Arc type exposes the following members.

Constructors

 

Name Description
Public method Arc(Circle, Interval) Initializes a new instance of an arc from a base circle and an interval of angles.
Public method Arc(Circle, Double) Initializes a new instance of an arc from a base circle and an angle.
Public method Arc(Plane, Double, Double) Initializes a new arc from a base plane, a radius value and an angle.
Public method Arc(Point3d, Point3d, Point3d) Initializes a new arc through three points. If the points are coincident or colinear, this will result in an Invalid arc.
Public method Arc(Point3d, Vector3d, Point3d) Initializes a new arc from end points and a tangent vector. If the tangent is parallel with the endpoints this will result in an Invalid arc.
Public method Arc(Point3d, Double, Double) Initializes a new horizontal arc at the given center point, with a custom radius and angle.
Public method Arc(Plane, Point3d, Double, Double) Initializes a new aligned arc at the given center point, with a custom radius and angle.
  Back to Top

Properties

 

Name Description
Public property Angle Gets or sets the sweep -or subtended- angle (in Radians) for this arc segment.
Public property AngleDegrees Gets or sets the sweep -or subtended- angle (in Radians) for this arc segment.
Public property AngleDomain Gets or sets the angle domain (in Radians) of this arc.
Public property Center Gets or sets the center point for this arc.
Public property Circumference Gets the circumference of the circle that is coincident with this arc.
Public property Diameter Gets or sets the Diameter of this arc.
Public property EndAngle Gets or sets the end angle (in Radians) for this arc segment.
Public property EndAngleDegrees Gets or sets the end angle (in Radians) for this arc segment.
Public property EndPoint Gets the end point of the arc.
Public property IsCircle Gets a value indicating whether or not this arc is a complete circle.
Public property IsValid Gets a value indicating whether or not this arc is valid. Detail: Radius>0 and 0<AngleRadians()<=2*Math.Pi.
Public property Length Gets the length of the arc. (Length = Radius * (subtended angle in radians)).
Public property MidPoint Gets the mid-point of the arc.
Public property Plane Gets or sets the plane in which this arc lies.
Public property Radius Gets or sets the radius of this arc.
Public property StartAngle Gets or sets the start angle (in Radians) for this arc segment.
Public property StartAngleDegrees Gets or sets the start angle (in Radians) for this arc segment.
Public property StartPoint Gets the start point of the arc.
Public propertyStatic member Unset Gets an Arc with Unset components.
  Back to Top

Methods

 

Name Description
Public method BoundingBox Computes the 3D axis aligned bounding box for this arc.
Public method ClosestParameter Gets parameter on the arc closest to a test point.
Public method ClosestPoint Computes the point on an arc that is closest to a test point.
Public method EpsilonEquals Check that all values in other are within epsilon of the values in this
Public method Equals(Object) Determines whether another object is an arc and has the same value as this arc. (Overrides ValueType.Equals(Object).)
Public method Equals(Arc) Determines whether another arc has the same value as this arc.
Public method GetHashCode Computes a hash code for the present arc. (Overrides ValueType.GetHashCode().)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method PointAt Gets the point at the given arc parameter.
Public method Reverse Reverses the orientation of the arc. Changes the domain from [a,b] to [-b,-a].
Public method TangentAt Gets the tangent at the given parameter.
Public method ToNurbsCurve() Initializes a nurbs curve representation of this arc. This amounts to the same as calling NurbsCurve.CreateFromArc().
Public method ToNurbsCurve(Int32, Int32) Create a uniform non-ratonal cubic NURBS approximation of an arc.
Public method ToString Returns the fully qualified type name of this instance. (Inherited from ValueType.)
Public method Transform Transforms the arc using a Transformation matrix.
Public method Trim Sets arc's angle domain (in radians) as a subdomain of the circle.
  Back to Top

Operators

 

Name Description
Public operatorStatic member Equality Determines whether two arcs have equal values.
Public operatorStatic member Inequality Determines whether two arcs have different values.
  Back to Top

Version Information

Supported in: 6.0.16224.21491, 5D58w

See Also

Reference

Rhino.Geometry Namespace

⚠️ **GitHub.com Fallback** ⚠️