Plane3dByOriginAndUnitNormal Class

A plane defined by

  • Any point on the plane.
  • a unit normal.

Implements

Methods

Name Description
altitude(spacePoint: Point3d): number Return the altitude of spacePoint above or below the plane.  
altitudeToPoint(altitude: number, result?: Point3d): Point3d return a point at specified (signed) altitude  
altitudeXY(x: number, y: number): number Return the altitude of point (x,y) given xy parts using only the xy parts of origin and unit normal  
altitudeXYZ(x: number, y: number, z: number): number Return the altitude of a point given as separate x,y,z components.  
altitudeXYZW(x: number, y: number, z: number, w: number): number Return the altitude of a point given as separate x,y,z,w components.  
clone(result?: Plane3dByOriginAndUnitNormal): Plane3dByOriginAndUnitNormal return a deep clone (point and normal cloned)  
cloneTransformed(transform: Transform, inverse: boolean = false): undefined | Plane3dByOriginAndUnitNormal Create a clone and return the transform of the clone.  
getLocalToWorld(): Transform Return coordinate axes (as a transform) with  
getNormalRef(): Vector3d Return a reference to the unit normal.  
getOriginRef(): Point3d Return a reference to the origin.  
getProjectionToPlane(): Transform Return a (singular) transform which projects points to this plane.  
isAlmostEqual(other: Plane3dByOriginAndUnitNormal): boolean test for (toleranced) equality with other  
isPointInPlane(spacePoint: Point3d): boolean Returns true of spacePoint is within distance tolerance of the plane.  
projectPointToPlane(spacePoint: Point3d, result?: Point3d): Point3d Return the projection of spacePoint onto the plane.  
set(origin: Point3d, normal: Vector3d): void Copy coordinates from the given origin and normal.  
setFrom(source: Plane3dByOriginAndUnitNormal): void Copy data from the given plane.  
setFromJSON(json?: any): void Parse a json fragment {origin: [x,y,z], normal: [ux,uy,uz]}  
toJSON(): any Convert to a JSON object.  
velocity(spaceVector: Vector3d): number Return the dot product of spaceVector with the plane's unit normal.  
velocityXYZ(x: number, y: number, z: number): number Return the dot product of spaceVector with the plane's unit normal.  
weightedAltitude(spacePoint: Point4d): number Return the altitude of weighted spacePoint above or below the plane.  
create(origin: Point3d, normal: Vector3d, result?: Plane3dByOriginAndUnitNormal): undefined | Plane3dByOriginAndUnitNormal Static create a new Plane3dByOriginAndUnitNormal with given origin and normal.  
createOriginAndTargetXY(origin: Readonly<WritableXAndY>, target: Readonly<WritableXAndY>, result?: Plane3dByOriginAndUnitNormal): undefined | Plane3dByOriginAndUnitNormal Static create a new Plane3dByOriginAndUnitNormal with unit normal (a) in the xy plane (b) perpendicular to the line defined by xy parts of origin to target.  
createPointPointVectorInPlane(pointA: Point3d, pointB: Point3d, vector: Vector3d): undefined | Plane3dByOriginAndUnitNormal Static Create a plane defined by two points and an in-plane vector.  
createXYAngle(x: number, y: number, normalAngleFromX: Angle, result?: Plane3dByOriginAndUnitNormal): Plane3dByOriginAndUnitNormal Static create a new Plane3dByOriginAndUnitNormal with xy origin (at z=0) and normal angle in xy plane.  
createXYPlane(origin?: Point3d): Plane3dByOriginAndUnitNormal Static Create a plane parallel to the XY plane  
createXYZUVW(ax: number, ay: number, az: number, ux: number, uy: number, uz: number, result?: Plane3dByOriginAndUnitNormal): undefined | Plane3dByOriginAndUnitNormal Static create a new Plane3dByOriginAndUnitNormal with direct coordinates of origin and normal.  
createYZPlane(origin?: Point3d): Plane3dByOriginAndUnitNormal Static Create a plane parallel to the YZ plane  
createZXPlane(origin?: Point3d): Plane3dByOriginAndUnitNormal Static Create a plane parallel to the ZX plane  
fromJSON(json?: any): Plane3dByOriginAndUnitNormal Static create a new Plane3dByOriginAndUnitNormal from json fragment.  

Defined in

Last Updated: 11 June, 2024