Heightfield
Extends:
Indirect Implements:
A Signed Distance Function that describes a heightfield.
Constructor Summary
Public Constructor | ||
public |
constructor(parameters: Object, material: Number) Constructs a new heightfield SDF. |
Method Summary
Public Methods | ||
public |
computeBoundingBox(): Box3 Calculates the bounding box of this SDF. |
|
public |
createTransferList(transferList: Array): Transferable[] Creates a list of transferable items. |
|
public |
fromImage(image: Image): Heightfield Reads the image data of a given heightmap and converts it into a greyscale data array. |
|
public |
Retrives the height value for the given coordinates. |
|
public |
Samples the volume's density at the given point in space. |
|
public |
Serialises this SDF. |
Inherited Summary
From class SignedDistanceFunction | ||
public |
inverseTransformation: Matrix4 The inverted transformation matrix. |
|
public |
A material index. |
|
public |
The operation type. |
|
public |
position: Vector3 The positional translation. |
|
public |
quaternion: Quaternion The rotation. |
|
public |
scale: Vector3 The scale. |
|
public |
The type of this SDF. |
|
protected |
boundingBox: Box3 The axis-aligned bounding box of this SDF. |
|
public |
createTransferList(transferList: Array): Transferable[] Creates a list of transferable items. |
|
public |
getBoundingBox(recursive: Boolean): Box3 Calculates the AABB of this SDF if it doesn't exist yet and returns it. |
|
public |
getTransformation(matrix: Matrix4): Matrix4 Composes a transformation matrix using the translation, rotation and scale of this SDF. |
|
public |
Intersects the given SDF with this one. |
|
public |
Samples the volume's density at the given point in space. |
|
public |
Serialises this SDF. |
|
public |
setMaterial(material: Material): SignedDistanceFunction Sets the material. |
|
public |
setOperationType(operation: OperationType): SignedDistanceFunction Sets the CSG operation type of this SDF. |
|
public |
Subtracts the given SDF from this one. |
|
public |
Translates this SDF into a CSG expression. |
|
public |
Returns a plain object that describes this SDF. |
|
public |
Adds the given SDF to this one. |
|
public |
Updates the inverse transformation matrix. |
|
protected |
computeBoundingBox(): Box3 Calculates the bounding box of this SDF. |
Public Constructors
public constructor(parameters: Object, material: Number) source
Constructs a new heightfield SDF.
Override:
SignedDistanceFunction#constructorParams:
Name | Type | Attribute | Description |
parameters | Object | The parameters. |
|
parameters.width | Array |
|
The width of the heightfield. |
parameters.height | Array |
|
The height of the heightfield. |
parameters.smooth | Boolean |
|
Whether the height data should be smoothed. |
parameters.data | Uint8ClampedArray |
|
The heightmap image data. |
parameters.image | Image |
|
The heightmap image. |
material | Number |
|
A material index. |
Public Methods
public computeBoundingBox(): Box3 source
Calculates the bounding box of this SDF.
Return:
Box3 | The bounding box. |
public createTransferList(transferList: Array): Transferable[] source
Creates a list of transferable items.
Params:
Name | Type | Attribute | Description |
transferList | Array |
|
An optional target list. The transferable items will be added to this list. |
Return:
Transferable[] | The transfer list. |
public fromImage(image: Image): Heightfield source
Reads the image data of a given heightmap and converts it into a greyscale data array.
Params:
Name | Type | Attribute | Description |
image | Image | The heightmap image. |
public getHeight(x: Number, z: Number): Number source
Retrives the height value for the given coordinates.
public sample(position: Vector3): Number source
Samples the volume's density at the given point in space.
Override:
SignedDistanceFunction#sampleParams:
Name | Type | Attribute | Description |
position | Vector3 | A position. |