## Plane3dByOriginAndVectors Class

A Point3dVector3dVector3d is an origin and a pair of vectors. This defines a plane with a (possibly skewed) uv coordinate grid

• The grid directions (`vectorU` and `vectorV`)
• are NOT required to be unit vectors.
• are NOT required to be perpendicular vectors.

### Methods

Name Description
fractionToPoint(u: number, v: number, result?: Point3d): Evaluate a point a grid coordinates on the plane.
fractionToVector(u: number, v: number, result?: Vector3d): Return the vector from the plane origin to parametric coordinate (u.v)
isAlmostEqual(): boolean Test origin and vectors for isAlmostEqual with `other`
setFromJSON(json?: any): void Set coordinates from a json object such as `{origin: [1,2,3], vectorU:[4,5,6], vectorV[3,2,1]}`
setOriginAndVectors(origin: Point3d, vectorU: Vector3d, vectorV: Vector3d): Set all origin and both vectors from coordinates in given origin and vectors.
setOriginAndVectorsXYZ(x0: number, y0: number, z0: number, ux: number, uy: number, uz: number, vx: number, vy: number, vz: number): Set all origin and both vectors from direct numeric parameters
toJSON(): any Convert an Angle to a JSON object.
createCapture(origin: Point3d, vectorU: Vector3d, vectorV: Vector3d, result?: Plane3dByOriginAndVectors): Static Capture origin and directions in a new plane.
createFromTransformColumnsXYAndLengths(transform: Transform, xLength: number | undefined, yLength: number | undefined, result?: Plane3dByOriginAndVectors): Static Return a Plane3dByOriginAndVectors, with
origin is the translation (aka origin) from the Transform
vectorU is the X column of the transform
* vectorV is the Y column of the transform.

createOriginAndTargets(origin: Point3d, targetU: Point3d, targetV: Point3d, result?: Plane3dByOriginAndVectors): Static Define a plane by three points in the plane.
createOriginAndVectors(origin: Point3d, vectorU: Vector3d, vectorV: Vector3d, result?: Plane3dByOriginAndVectors): Static create a new plane from origin and vectors.
createOriginAndVectorsArrays(origin: Float64Array, vectorU: Float64Array, vectorV: Float64Array, result?: Plane3dByOriginAndVectors): Static create a plane from data presented as Float64Arrays.
createOriginAndVectorsWeightedArrays(originW: Float64Array, vectorUw: Float64Array, vectorVw: Float64Array, result?: Plane3dByOriginAndVectors): Static create a plane from data presented as Float64Array with weights
createOriginAndVectorsXYZ(x0: number, y0: number, z0: number, ux: number, uy: number, uz: number, vx: number, vy: number, vz: number, result?: Plane3dByOriginAndVectors): Static Create a new plane from direct numeric parameters
createXYPlane(result?: Plane3dByOriginAndVectors): Static Create a plane with origin at 000, unit vectorU in x direction, and unit vectorV in the y direction.
fromJSON(json?: any): Static create a new plane.

### Properties

Name Type Description
origin Point3d origin of plane grid
vectorU Vector3d u direction in plane grid
vectorV Vector3d v direction in plane grid

### Defined in

Last Updated: 10 September, 2019