Point

`verb.core.Point`

TYPEDEF

Source code

`Point = Array<Float>`

A `Point` in verb is represented simply by an array of floating point numbers.

So, in JavaScript, one would write simply `[0,0,0]` to create a Point at the origin.

Vector

`verb.core.Vector`

TYPEDEF

Source code

`Vector = Array<Float>`

Like a `Point`, a `Vector` is simply an array of floating point numbers

So, in JavaScript, one would write simply `[1,0,0]` to create the a unit vector in the x direction

Matrix

`verb.core.Matrix`

TYPEDEF

Source code

`Matrix = Array<Array<Float>>`

`Matrix` is represented by a nested array of floating point number arrays

So, in JavaScript, one would write simply `[[1,0],[0,1]]` to create a 2x2 identity matrix

KnotArray

`verb.core.KnotArray`

TYPEDEF

Source code

`KnotArray = Array<Float>`

A `KnotArray` is a non-decreasing sequence of floating point . Use the methods in `Check` to validate `KnotArray`'s

Plane

`verb.core.Plane`

CLASS

Source code

A `Plane` is simply an origin point and normal

Extends: SerializableBase

constructor

METHOD

Source code

`new Plane(origin : undefined, normal : undefined)`

normal

PROPERTY

Source code

`normal : Vector`

origin

PROPERTY

Source code

`origin : Point`

Ray

`verb.core.Ray`

CLASS

Source code

A `Ray` is simply an origin point and a direction

Extends: SerializableBase

constructor

METHOD

Source code

`new Ray(origin : undefined, dir : undefined)`

dir

PROPERTY

Source code

`dir : Vector`

origin

PROPERTY

Source code

`origin : Point`

NurbsCurveData

`verb.core.NurbsCurveData`

CLASS

Source code

A simple data structure representing a NURBS curve. `NurbsCurveData` does no checks for legality. You can use `verb.eval.Check` for that.

Extends: SerializableBase

constructor

METHOD

Source code

`new NurbsCurveData(degree : undefined, knots : undefined, controlPoints : undefined)`

degree

PROPERTY

Source code

`degree : Int`

integer degree of curve

controlPoints

PROPERTY

Source code

`controlPoints : Array<Point>`

2d array of control points, where each control point is an array of length (dim)

knots

PROPERTY

Source code

`knots : Array<Float>`

array of nondecreasing knot values

NurbsSurfaceData

`verb.core.NurbsSurfaceData`

CLASS

Source code

A simple data structure representing a NURBS surface. `NurbsSurfaceData` does no checks for legality. You can use `verb.eval.Check` for that.

Extends: SerializableBase

constructor

METHOD

Source code

`new NurbsSurfaceData(degreeU : undefined, degreeV : undefined, knotsU : undefined, knotsV : undefined, controlPoints : undefined)`

degreeU

PROPERTY

Source code

`degreeU : Int`

integer degree of surface in u direction

degreeV

PROPERTY

Source code

`degreeV : Int`

integer degree of surface in v direction

knotsU

PROPERTY

Source code

`knotsU : KnotArray`

array of nondecreasing knot values in u direction

knotsV

PROPERTY

Source code

`knotsV : KnotArray`

array of nondecreasing knot values in v direction

controlPoints

PROPERTY

Source code

`controlPoints : Array<Array<Point>>`

2d array of control points, the vertical direction (u) increases from top to bottom, the v direction from left to right, and where each control point is an array of length (dim)

Tri

`verb.core.Tri`

TYPEDEF

Source code

`Tri = Array<Int>`

A triangular face of a mesh

UV

`verb.core.UV`

TYPEDEF

Source code

`UV = Array<Float>`

A `UV` is simply an array of floating point numbers.

So, in JavaScript, one would write simply `[1,0]` to create a UV

MeshData

`verb.core.MeshData`

CLASS

Source code

A simple data structure representing a mesh. `MeshData` does not check for legality.

Extends: SerializableBase

constructor

METHOD

Source code

`new MeshData(faces : Array<Tri>, points : Array<Point>, normals : Array<Point>, uvs : Array<UV>)`

empty

STATIC METHOD

Source code

`empty() : MeshData`

faces

PROPERTY

Source code

`faces : Array<Tri>`

points

PROPERTY

Source code

`points : Array<Point>`

normals

PROPERTY

Source code

`normals : Array<Point>`

uvs

PROPERTY

Source code

`uvs : Array<UV>`

PolylineData

`verb.core.PolylineData`

CLASS

Source code

A simple data structure representing a polyline. `PolylineData` is useful, for example, as the result of a curve tessellation.

Extends: SerializableBase

constructor

METHOD

Source code

`new PolylineData(points : undefined, params : undefined)`

points

PROPERTY

Source code

`points : Array<Point>`

The points in the polyline

params

PROPERTY

Source code

`params : Array<Float>`

The parameters of the individual points

VolumeData

`verb.core.VolumeData`

CLASS

Source code

A simple data structure representing a NURBS volume. This data structure is largely experimental in intent. Like CurveData and SurfaceData, this data structure does no legality checks.

Extends: SerializableBase

constructor

METHOD

Source code

`new VolumeData(degreeU : undefined, degreeV : undefined, degreeW : undefined, knotsU : undefined, knotsV : undefined, knotsW : undefined, controlPoints : undefined)`

degreeU

PROPERTY

Source code

`degreeU : Int`

integer degree in u direction

degreeV

PROPERTY

Source code

`degreeV : Int`

integer degree in v direction

degreeW

PROPERTY

Source code

`degreeW : Int`

integer degree in w direction

knotsU

PROPERTY

Source code

`knotsU : KnotArray`

array of nondecreasing knot values in u direction

knotsV

PROPERTY

Source code

`knotsV : KnotArray`

array of nondecreasing knot values in v direction

knotsW

PROPERTY

Source code

`knotsW : KnotArray`

array of nondecreasing knot values in w direction

controlPoints

PROPERTY

Source code

`controlPoints : Array<Array<Array<Point>>>`

3d array of control points, where rows are the u dir, and columns run along the positive v direction, and where each control point is an array of length (dim)

Pair

`verb.core.Pair<T1, T2>`

CLASS

Source code

A simple parametric data type representing a pair of two objects

constructor

METHOD

Source code

`new Pair<T1, T2>(item1 : T1, item2 : T2)`

item0

PROPERTY

Source code

`item0 : T1`

item1

PROPERTY

Source code

`item1 : T2`

Interval

`verb.core.Interval<T>`

CLASS

Source code

A simple parametric data type representing an "interval" between two numbers. This data structure does no legality checks.

constructor

METHOD

Source code

`new Interval<T>(min : undefined, max : undefined)`

min

PROPERTY

Source code

`min : T`

max

PROPERTY

Source code

`max : T`