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.