Skip to content

Documentation / base / HeightField

Class: HeightField ​

Defined in: libs/base/src/math/heightfield.ts:9

Height field class for height sampling and ray intersection

Constructors ​

Constructor ​

new HeightField(width, height, scaleY?, baseHeight?, region?): HeightField

Defined in: libs/base/src/math/heightfield.ts:30

Create a height field

Parameters ​

width ​

number

number of height samples in x direction

height ​

number

number of height samples in z direction

scaleY? ​

number

height scale factor

baseHeight? ​

number

base height offset

region? ​

Vector4

region in xz plane covered by the height field

Returns ​

HeightField

Accessors ​

region ​

Get Signature ​

get region(): Immutable<Vector4>

Defined in: libs/base/src/math/heightfield.ts:48

Region in xz plane covered by the height field

Returns ​

Immutable<Vector4>

Set Signature ​

set region(v): void

Defined in: libs/base/src/math/heightfield.ts:51

Parameters ​
v ​

Immutable<Vector4>

Returns ​

void


baseHeight ​

Get Signature ​

get baseHeight(): number

Defined in: libs/base/src/math/heightfield.ts:59

Base height offset

Returns ​

number

Set Signature ​

set baseHeight(v): void

Defined in: libs/base/src/math/heightfield.ts:62

Parameters ​
v ​

number

Returns ​

void


scaleY ​

Get Signature ​

get scaleY(): number

Defined in: libs/base/src/math/heightfield.ts:68

Height scale factor

Returns ​

number

Set Signature ​

set scaleY(v): void

Defined in: libs/base/src/math/heightfield.ts:71

Parameters ​
v ​

number

Returns ​

void


width ​

Get Signature ​

get width(): number

Defined in: libs/base/src/math/heightfield.ts:77

Number of height samples in x direction

Returns ​

number

Set Signature ​

set width(v): void

Defined in: libs/base/src/math/heightfield.ts:80

Parameters ​
v ​

number

Returns ​

void


height ​

Get Signature ​

get height(): number

Defined in: libs/base/src/math/heightfield.ts:90

Number of height samples in z direction

Returns ​

number

Set Signature ​

set height(v): void

Defined in: libs/base/src/math/heightfield.ts:93

Parameters ​
v ​

number

Returns ​

void


heightData ​

Get Signature ​

get heightData(): Float32Array<ArrayBufferLike>

Defined in: libs/base/src/math/heightfield.ts:103

Height data array (row major)

Returns ​

Float32Array<ArrayBufferLike>

Methods ​

sampleHeight() ​

sampleHeight(x, y): number

Defined in: libs/base/src/math/heightfield.ts:112

Sample height at grid point (x, y)

Parameters ​

x ​

number

x index

y ​

number

y index

Returns ​

number

height value


calculateHeight() ​

calculateHeight(worldX, worldZ): number

Defined in: libs/base/src/math/heightfield.ts:121

Calculate height at given world position (worldX, worldZ) by bilinear interpolation

Parameters ​

worldX ​

number

world x position

worldZ ​

number

world z position

Returns ​

number

height value


rayIntersect() ​

rayIntersect(rayWorld): number

Defined in: libs/base/src/math/heightfield.ts:164

Ray intersection test with the height field

Parameters ​

rayWorld ​

Ray

ray in world space

Returns ​

number

distance to intersection point, or null if no intersection

Released under the MIT License.