Arc

class rhino3dm.Arc
Arc(circle, angleRadians)

Initializes a new instance of an arc from a base circle and an angle.

Parameters:
  • circle (Circle) – Circle to base arc upon.
  • angleRadians (float) – Sweep angle of arc (in radians)
Arc(center, radius, angleRadians)

Initializes a new horizontal arc at the given center point, with a custom radius and angle.

Parameters:
  • center (rhino3dm.Point3d) – Center point of arc.
  • radius (float) – Radius of arc.
  • angleRadians (float) – Sweep angle of arc (in radians)
Arc(startPoint, pointOnInterior, endPoint)

Initializes a new arc through three points. If the points are coincident or co-linear, this will result in an Invalid arc.

Parameters:
Arc(pointA, tangentA, pointB)

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.

Parameters:
IsValid

bool: Gets a value indicating whether or not this arc is valid. Detail: Radius>0 and 0<AngleRadians()<=2*Math.Pi.

IsCircle

bool: Gets a value indicating whether or not this arc is a complete circle.

Radius

float: Gets or sets the radius of this arc.

Diameter

float: Gets or sets the Diameter of this arc.

Center

rhino3dm.Point3d: Gets or sets the center point for this arc.

Circumference

float: Gets the circumference of the circle that is coincident with this arc.

Length

float: Gets the length of the arc. (Length = Radius * (subtended angle in radians)).

StartPoint

rhino3dm.Point3d: Gets the start point of the arc.

MidPoint

rhino3dm.Point3d: Gets the mid-point of the arc.

EndPoint

rhino3dm.Point3d: Gets the end point of the arc.

AngleDomain

rhino3dm.Interval: Gets or sets the angle domain (in Radians) of this arc.

StartAngle

float: Gets or sets the start angle (in Radians) for this arc segment.

EndAngle

float: Gets or sets the end angle (in Radians) for this arc segment.

AngleRadians
StartAngleDegrees

float: Gets or sets the start angle (in Radians) for this arc segment.

EndAngleDegrees

float: Gets or sets the end angle (in Radians) for this arc segment.

AngleDegrees

float: Gets or sets the sweep -or subtended- angle (in Radians) for this arc segment.

Trim(domain)

Sets arc’s angle domain (in radians) as a sub-domain of the circle.

Parameters:domain (rhino3dm.Interval) – 0 < domain[1] - domain[0] <= 2.0 * RhinoMath.Pi.
Returns:True on success, False on failure.
Return type:bool
BoundingBox()

Computes the 3D axis aligned bounding box for this arc.

Returns:Bounding box of arc.
Return type:rhino3dm.BoundingBox
PointAt(t)

Gets the point at the given arc parameter.

Parameters:t (float) – Arc parameter to evaluate.
Returns:The point at the given parameter.
Return type:rhino3dm.Point3d
TangentAt(t)

Gets the tangent at the given parameter.

Parameters:t (float) – Parameter of tangent to evaluate.
Returns:The tangent at the arc at the given parameter.
Return type:rhino3dm.Vector3d
ClosestParameter(testPoint)

Gets parameter on the arc closest to a test point.

Parameters:testPoint (rhino3dm.Point3d) – Point to get close to.
Returns:Parameter (in radians) of the point on the arc that is closest to the test point. If testPoint is the center of the arc, then the starting point of the arc is (arc.Domain()[0]) returned. If no parameter could be found, RhinoMath.UnsetValue is returned.
Return type:float
ClosestPoint(testPoint)

Computes the point on an arc that is closest to a test point.

Parameters:testPoint (rhino3dm.Point3d) – Point to get close to.
Returns:The point on the arc that is closest to testPoint. If testPoint is the center of the arc, then the starting point of the arc is returned. UnsetPoint on failure.
Return type:rhino3dm.Point3d
Reverse()

Reverses the orientation of the arc. Changes the domain from [a,b] to [-b,-a].

Return type:void
Transform(xform)

Transforms the arc using a Transformation matrix.

Parameters:xform (Transform) – Transformations to apply. Note that arcs cannot handle non-euclidean transformations.
Returns:True on success, False on failure.
Return type:bool
ToNurbsCurve()

Initializes a nurbs curve representation of this arc. This amounts to the same as calling NurbsCurve.CreateFromArc().

Returns:A nurbs curve representation of this arc or None if no such representation could be made.
Return type:rhino3dm.NurbsCurve