Skip to content

Circle

Public Struct

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)*radius*xaxis + sin(t)*radius*yaxis

where center, xaxis and yaxis define the orthonormal frame of the circle plane.

Namespace: Rhino.Geometry

Assembly: RhinoCommon (in RhinoCommon.dll)

Syntax

[SerializableAttribute]
public struct Circle : IEpsilonComparable<Circle>,
ICloneable

The Circle type exposes the following members.

Constructors

Name

Description


Public Method

Initializes a circle from an arc.


Public Method

Initializes a circle with center (0,0,0) in the world XY plane.


Public Method
Code Example

Initializes a circle on a plane with a given radius.


Public Method
Code Example

Initializes a circle parallel to the world XY plane with given center and radius.


Public Method

Initializes a circle parallel to a given plane with given center and radius.


Public Method

Initializes a circle through three 3d points.


Public Method
Circle(Point3d, Vector3d, Point3d)

Initializes a circle from two 3d points and a tangent at the first point. The start/end of the circle is at point “startPoint”.


Properties

Name

Description


Public Property

Gets the circle’s 3d axis aligned bounding box.


Public Property

Gets or sets the center point of this circle.


Public Property

Gets or sets the circumference of this circle.


Public Property

Gets or sets the diameter (radius * 2.0) of this circle. Diameters should be positive values.


Public Property

A valid circle has radius larger than 0.0 and a base plane which is must also be valid.


Public Property

Gets the normal vector for this circle.


Public Property

Gets or sets the plane of the circle.


Public Property

Gets or sets the radius of this circle. Radii should be positive values.


Public Property
Static Member

Gets a circle with Unset components.


Methods

Name

Description


Public Method

Gets the parameter on the circle which is closest to a test point.


Public Method

Gets the point on the circle which is closest to a test point.


Public Method

Determines the value of the Nth derivative at a parameter.


Public Method

Check that all values in other are within epsilon of the values in this


Public Method

Equals

Indicates whether this instance and a specified object are equal.

(Inherited from ValueType.)


Public Method

GetHashCode

Returns the hash code for this instance.

(Inherited from ValueType.)


Public Method

GetType

Gets the Type of the current instance.

(Inherited from Object.)


Public Method

Evaluates whether or not this circle is co-planar with a given plane.


Public Method

Circles use trigonometric parameterization: t -> center + cos(t)*radius*xaxis + sin(t)*radius*yaxis.


Public Method

Reverse the orientation of the circle. Changes the domain from [a,b] to [-b,-a].


Public Method

Rotates the circle through a given angle.


Public Method

Rotates the circle through a given angle.


Public Method

Rotates the circle around an axis that starts at the base plane origin.


Public Method

Rotates the circle around an axis that starts at the provided point.


Public Method

Circles use trigonometric parameterization: t -> center + cos(t)*radius*xaxis + sin(t)*radius*yaxis.


Public Method

Constructs a nurbs curve representation of this circle. This amounts to the same as calling NurbsCurve.CreateFromCircle().


Public Method

Create a uniform non-rational cubic NURBS approximation of a circle.


Public Method

ToString

Returns the fully qualified type name of this instance.

(Inherited from ValueType.)


Public Method
Transform

Transforms this circle using an transformation matrix.


Public Method

Moves the circle.


Public Method
Static Member

Attempt to fit a circle through a set of points.


Public Method
Static Member

Try to fit a circle to two curves using tangent relationships.


Public Method
Static Member

Try to fit a circle to three curves using tangent relationships.


Public Method
Static Member

Attempt to create the smallest circle enclosing a set of planar points.


Remarks

\>An IsValid circle has positive radius and an IsValid plane defining the frame.