Cone Class
A cone with axis along the z axis of a (possibly skewed) local coordinate system.
- In local coordinates, the sections at z=0 and z=1 are circles of radius r0 and r1.
- Either one individually may be zero, but they may not both be zero.
- The stored matrix has unit vectors in the xy columns, and full-length z column.
Extends
Implements
Methods
Name | Description | |
---|---|---|
constructor(map: Transform, radiusA: number, radiusB: number, capped: boolean): Cone Protected | ||
clone(): Cone | Return a clone of this Cone. | |
cloneTransformed(transform: Transform): Cone | undefined | Create a clone and immediately transform the clone. | |
constantVSection(vFraction: number): CurveCollection | undefined | Return the Arc3d section at vFraction | |
dispatchToGeometryHandler(handler: GeometryHandler): any | Second step of double dispatch: call handler.handleCone(this) |
|
extendRange(rangeToExtend: Range3d, transform?: Transform): void | Extend rangeToExtend so it includes this Cone instance. |
|
getCenterA(): Point3d | (Property accessor) Return the center point at the base plane | |
getCenterB(): Point3d | (Property accessor) | |
getConstructiveFrame(): Transform | undefined | Return a coordinate frame (right handed unit vectors) * origin at center of the base circle. |
|
getMaxRadius(): number | (Property accessor) return the larger of the base and top plane radii | |
getRadiusA(): number | (Property accessor) return the radius at the base plane | |
getRadiusB(): number | (Property accessor) return the radius at the top plane | |
getVectorX(): Vector3d | (Property accessor) Return the x vector in the local frame | |
getVectorY(): Vector3d | (Property accessor) Return the y vector in the local frame | |
isAlmostEqual(other: GeometryQuery): boolean | (Property accessor) Test for nearly equal coordinate data. | |
isSameGeometryClass(other: any): boolean | (Property accessor) test if other is an instance of Cone |
|
maxIsoParametricDistance(): Vector2d | Directional distance query * u direction is around longitude circle at maximum distance from axis. |
|
strokeConstantVSection(v: number, fixedStrokeCount: number | undefined, options: StrokeOptions | undefined): LineString3d | return strokes for a cross-section (elliptic arc) at specified fraction v along the axis. | |
tryTransformInPlace(transform: Transform): boolean | Apply the transform to this cone's locla to world coordinates. | |
uvFractionToPoint(uFraction: number, vFraction: number, result?: Point3d): Point3d | Evaluate a point on the Cone surfaces, with * v = 0 is the base plane. |
|
uvFractionToPointAndTangents(uFraction: number, vFraction: number, result?: Plane3dByOriginAndVectors): Plane3dByOriginAndVectors | Evaluate a point tangent plane on the Cone surfaces, with * v = 0 is the base plane. |
|
vFractionToRadius(v: number): number | (Property accessor) return the radius at fraction v along the axis |
|
createAxisPoints(centerA: Point3d, centerB: Point3d, radiusA: number, radiusB: number, capped: boolean): Cone | undefined Static | create a cylinder or cone from two endpoints and their radii. | |
createBaseAndTarget(centerA: Point3d, centerB: Point3d, vectorX: Vector3d, vectorY: Vector3d, radiusA: number, radiusB: number, capped: boolean): Cone Static | create a cylinder or cone from axis start and end with cross section defined by vectors that do not need to be perpendicular to each other or to the axis. |
Inherited methods
Name | Inherited from | Description |
---|---|---|
range(transform?: Transform, result?: Range3d): Range3d | GeometryQuery | return the range of the entire (tree) GeometryQuery |
tryTranslateInPlace(dx: number, dy: number = 0, dz: number = 0): boolean | GeometryQuery | try to move the geometry by dx,dy,dz |
Properties
Name | Type | Description | |
---|---|---|---|
isClosedVolume Accessor ReadOnly | boolean | ||
solidPrimitiveType | "cone" = "cone" | String name for schema properties |
Inherited properties
Name | Type | Inherited from | Description |
---|---|---|---|
_capped Protected | boolean | SolidPrimitive | flag indicating whether cap region is considered closed (i.e. |
capped Accessor | boolean | SolidPrimitive | Ask if this is a capped solid |
children Accessor ReadOnly | GeometryQuery[] | undefined | GeometryQuery | return GeometryQuery children for recursive queries. * leaf classes do not need to implement. |
geometryCategory | "solid" = "solid" | SolidPrimitive | String name for schema properties |
Defined in
Last Updated: 08 January, 2020