﻿Circle Structure  # Circle Structure

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

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
NameDescription Circle(Double)
Initializes a circle with center (0,0,0) in the world XY plane. Circle(Arc)
Initializes a circle from an arc.  Circle(Plane, Double)
Initializes a circle on a plane with a given radius.  Circle(Point3d, Double)
Initializes a circle parallel to the world XY plane with given center and radius. Circle(Plane, Point3d, Double)
Initializes a circle parallel to a given plane with given center and radius. Circle(Point3d, Point3d, Point3d)
Initializes a circle through three 3d points. 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".
Top Properties
NameDescription BoundingBox
Gets the circle's 3d axis aligned bounding box. Center
Gets or sets the center point of this circle. Circumference
Gets or sets the circumference of this circle. Diameter
Gets or sets the diameter (radius * 2.0) of this circle. Diameters should be positive values. IsValid
A valid circle has radius larger than 0.0 and a base plane which is must also be valid. Normal
Gets the normal vector for this circle. Plane
Gets or sets the plane of the circle. Radius
Gets or sets the radius of this circle. Radii should be positive values.  Unset
Gets a circle with Unset components.
Top Methods
NameDescription ClosestParameter
Gets the parameter on the circle which is closest to a test point. ClosestPoint
Gets the point on the circle which is closest to a test point. DerivativeAt
Determines the value of the Nth derivative at a parameter. EpsilonEquals
Check that all values in other are within epsilon of the values in this Equals
Indicates whether this instance and a specified object are equal.
(Inherited from ValueType.) GetHashCode
Returns the hash code for this instance.
(Inherited from ValueType.) GetType
Gets the Type of the current instance.
(Inherited from Object.) IsInPlane
Evaluates whether or not this circle is co-planar with a given plane. PointAt Reverse
Reverse the orientation of the circle. Changes the domain from [a,b] to [-b,-a]. Rotate(Double, Vector3d)
Rotates the circle through a given angle. Rotate(Double, Vector3d, Point3d)
Rotates the circle through a given angle. Rotate(Double, Double, Vector3d)
Rotates the circle around an axis that starts at the base plane origin. Rotate(Double, Double, Vector3d, Point3d)
Rotates the circle around an axis that starts at the provided point. TangentAt ToNurbsCurve
Constructs a nurbs curve representation of this circle. This amounts to the same as calling NurbsCurve.CreateFromCircle(). ToNurbsCurve(Int32, Int32)
Create a uniform non-rational cubic NURBS approximation of a circle. ToString
Returns the fully qualified type name of this instance.
(Inherited from ValueType.) Transform
Transforms this circle using an transformation matrix. Translate
Moves the circle.  TryFitCircleToPoints
Attempt to fit a circle through a set of points.  TryFitCircleTT
Try to fit a circle to two curves using tangent relationships.  TryFitCircleTTT
Try to fit a circle to three curves using tangent relationships.
Top Remarks
>An IsValid circle has positive radius and an IsValid plane defining the frame. See Also