Sphere Class
A Sphere is
- A unit sphere (but read on ....)
- mapped by an arbitrary (possibly skewed, non-uniform scaled) transform
- hence possibly the final geometry is ellipsoidal
Extends
Implements
Methods
| Name | Description | |
|---|---|---|
| clone(): Sphere | return a deep clone | |
| cloneCenter(): Point3d | return (copy of) sphere center | |
| cloneLatitudeSweep(): AngleSweep | return (a copy of) the sphere's angle sweep. | |
| cloneLocalToWorld(): Transform | Return a (clone of) the sphere's local to world transformation. | |
| cloneTransformed(transform: Transform): undefined | Sphere | Return a transformed clone. | |
| cloneVectorX(): Vector3d | return the (full length, i.e. | |
| cloneVectorY(): Vector3d | return the (full length, i.e. | |
| cloneVectorZ(): Vector3d | return the (full length, i.e. | |
| constantVSection(vFraction: number): undefined | CurveCollection | Return the Arc3d section at vFraction. | |
| dispatchToGeometryHandler(handler: GeometryHandler): any | Second step of double dispatch:  call handler.handleSphere(this) | |
| extendRange(range: Range3d, transform?: Transform): void | Extend a range to contain this sphere. | |
| getConstructiveFrame(): undefined | Transform | Return a coordinate frame (right handed, unit axes) | |
| isAlmostEqual(other: GeometryQuery): boolean | Test for same geometry in other | |
| isSameGeometryClass(other: any): boolean | Test if otheris aSphere | |
| maxAxisRadius(): number | Return the largest of the primary xyz axis radii | |
| maxIsoParametricDistance(): Vector2d | Directional distance query | |
| strokeConstantVSection(v: number, fixedStrokeCount: number, options?: StrokeOptions): LineString3d | return strokes for a cross-section (elliptic arc) at specified fraction v along the axis. | |
| trueSphereRadius(): undefined | number | Test if the geometry is a true sphere taking the transform (which might have nonuniform scaling) is applied. | |
| tryTransformInPlace(transform: Transform): boolean | Transform the sphere in place. | |
| uFractionToRadians(u: number): number | Return the longitude (in radians) all fractional u. | |
| uvFractionToPoint(uFraction: number, vFraction: number, result?: Point3d): Point3d | Evaluate as a uv surface | |
| uvFractionToPointAndTangents(uFraction: number, vFraction: number, result?: Plane3dByOriginAndVectors): Plane3dByOriginAndVectors | Evaluate as a uv surface, returning point and two vectors. | |
| vFractionToRadians(v: number): number | Return the latitude (in radians) all fractional v. | |
| createCenterRadius(center: Point3d, radius: number, latitudeSweep?: AngleSweep): Sphere Static | Create from center and radius, with optional restricted latitudes. | |
| createDgnSphere(center: Point3d, vectorX: Vector3d, vectorZ: Vector3d, radiusXY: number, radiusZ: number, latitudeSweep: AngleSweep, capped: boolean): undefined | Sphere Static | Create a sphere from the typical parameters of the Dgn file | |
| createEllipsoid(localToWorld: Transform, latitudeSweep: AngleSweep, capped: boolean): undefined | Sphere Static | Create an ellipsoid which is a unit sphere mapped to position by an (arbitrary, possibly skewed and scaled) transform. | |
| createFromAxesAndScales(center: Point3d, axes: Matrix3d, radiusX: number, radiusY: number, radiusZ: number, latitudeSweep: AngleSweep, capped: boolean): undefined | Sphere Static | Create a sphere from the typical parameters of the Dgn file | 
Inherited methods
| Name | Inherited from | Description | 
|---|---|---|
| range(transform?: Transform, result?: Range3d): Range3d Inherited | SolidPrimitive | Return the range of the entire GeometryQuery tree. | 
| tryTranslateInPlace(dx: number, dy: number0.0, dz: number0.0): boolean Inherited | SolidPrimitive | Try to move the geometry by dx,dy,dz. | 
| areAlmostEqual(a: GeometryQuery, b: GeometryQuery): boolean Static Inherited | SolidPrimitive | Apply instance method isAlmostEqual if both are defined. | 
Properties
| Name | Type | Description | |
|---|---|---|---|
| isClosedVolume Accessor ReadOnly | boolean | * A sphere is can be closed two ways: | |
| latitudeSweepFraction Accessor ReadOnly | number | Return the latitude sweep as fraction of south pole to north pole. | |
| solidPrimitiveType Readonly | "sphere" | String name for schema properties | 
Inherited properties
| Name | Type | Inherited from | Description | 
|---|---|---|---|
| _capped Protected Inherited | boolean | SolidPrimitive | flag indicating whether cap region is considered closed (i.e. | 
| capped Accessor Inherited | boolean | SolidPrimitive | Whether this is a capped solid | 
| children Accessor Inherited ReadOnly | undefined | GeometryQuery[] | SolidPrimitive | Return GeometryQuery children for recursive queries. * leaf classes do not need to implement. | 
| geometryCategory Readonly Inherited | "solid" | SolidPrimitive | String name for schema properties | 
Defined in
- solid/Sphere.ts Line 35
Last Updated: 24 June, 2025
Found something wrong, missing, or unclear on this page? Raise an issue in our repo.