1.1.3 • Published 7 years ago

gl-vec3 v1.1.3

Weekly downloads
126,991
License
zlib
Repository
github
Last release
7 years ago

gl-vec3

stable

Part of a fork of @toji's gl-matrix split into smaller pieces: this package contains glMatrix.vec3.

Usage

NPM

vec3 = require('gl-vec3')

Will load all of the module's functionality and expose it on a single object. Note that any of the methods may also be required directly from their files.

For example, the following are equivalent:

var scale = require('gl-vec3').scale
var scale = require('gl-vec3/scale')

API

add(out:vec3, a:vec3, b:vec3)

Adds two vec3's

angle(a:vec3, b:vec3)

Get the angle between two 3D vectors

ceil(out:vec3, a:vec3)

Math.ceil the components of a vec3

clone(a:vec3)

Creates a new vec3 initialized with values from an existing vector

copy(out:vec3, a:vec3)

Copy the values from one vec3 to another

create()

Creates a new, empty vec3

cross(out:vec3, a:vec3, b:vec3)

Computes the cross product of two vec3's

distance(a:vec3, b:vec3)

Calculates the euclidian distance between two vec3's. Aliased as dist

divide(out:vec3, a:vec3, b:vec3)

Divides two vec3's. Aliased as div

dot(a:vec3, b:vec3)

Calculates the dot product of two vec3's

equals(a:vec3, b:vec3)

Returns whether or not the vectors have approximately the same elements in the same position.

exactEquals(a:vec3, b:vec3)

Returns whether or not the vectors exactly have the same elements in the same position (when compared with ===)

floor(out:vec3, a:vec3)

Math.floor the components of a vec3

forEach(a:Array, stride:Number, offset:Number, count:Number, fn:Function, arg:Object)

Perform some operation over an array of vec3s.

fromValues(x:Number, y:Number, z:Number)

Creates a new vec3 initialized with the given values

inverse(out:vec3, a:vec3)

Returns the inverse of the components of a vec3

length(a:vec3)

Calculates the length of a vec3. Aliased as len

lerp(out:vec3, a:vec3, b:vec3, t:Number)

Performs a linear interpolation between two vec3's

max(out:vec3, a:vec3, b:vec3)

Returns the maximum of two vec3's

min(out:vec3, a:vec3, b:vec3)

Returns the minimum of two vec3's

multiply(out:vec3, a:vec3, b:vec3)

Multiplies two vec3's. Aliased as mul

negate(out:vec3, a:vec3)

Negates the components of a vec3

normalize(out:vec3, a:vec3)

Normalize a vec3

random(out:vec3, scale:Number)

Generates a random vector with the given scale

rotateX(out:vec3, a:vec3, b:vec3, c:Number)

Rotate a 3D vector around the x-axis

rotateY(out:vec3, a:vec3, b:vec3, c:Number)

Rotate a 3D vector around the y-axis

rotateZ(out:vec3, a:vec3, b:vec3, c:Number)

Rotate a 3D vector around the z-axis

round(out:vec3, a:vec3)

Math.round the components of a vec3

scale(out:vec3, a:vec3, b:Number)

Scales a vec3 by a scalar number

scaleAndAdd(out:vec3, a:vec3, b:vec3, scale:Number)

Adds two vec3's after scaling the second operand by a scalar value

set(out:vec3, x:Number, y:Number, z:Number)

Set the components of a vec3 to the given values

squaredDistance(a:vec3, b:vec3)

Calculates the squared euclidian distance between two vec3's. Aliased as sqrDist

squaredLength(a:vec3)

Calculates the squared length of a vec3. Aliased as sqrLen

subtract(out:vec3, a:vec3, b:vec3)

Subtracts vector b from vector a. Aliased as sub

transformMat3(out:vec3, a:vec3, m:mat3)

Transforms the vec3 with a mat3.

transformMat4(out:vec3, a:vec3, m:mat4)

Transforms the vec3 with a mat4. 4th vector component is implicitly '1'

transformQuat(out:vec3, a:vec3, q:quat)

Transforms the vec3 with a quat

License

zlib. See LICENSE.md for details.

datav-vg-server-base@voxelize/client@everything-registry/sub-chunk-1768standardwallet-logosvg-to-3d-meshvoxel-measurevoxel-physics-enginevoxel-engine-stackglvoxel-fps-controllerverlet-constraintverlet-pointverlet-systemvoxelsrv-serverirmeta-logoipsamutkeyframeskindred-nodekindred-rendererkindred-turntable-cameraturntable-camera-controllertriangle-quadraturetriangle-splittorus-mesh@almanackwallet/logowatertight-ray-triangle-intersectionvirtual_art_gallery@infinitebrahmanuniverse/nolb-gl-@newton-ued/newmask-logo@nfactorial/webgl_display@extrawallet/logo@metamask/logo@jwc/csg-viewer@jwc/jscad2-regl-renderer@jscad/regl-renderer@pathicles/core@pathicles/viewer@pandarose/noa-enginemetamask-logomesh-patchmesh-simplifymesh-collisionmeshviewmesh-fixermesh-fixer-tolerancemesh-massmesh-winding-numberorbit-controlsorient-mesh-globalorthographic-cameranwt-geojsseparating-axis-testrubiks-cube-solverray-triangle-intersectionray-plane-intersectionray-sphere-intersectionrotate-vector-about-axisnoa-enginenoa-testbedpick-point-in-trianglepick-point-on-spherepoint-plane-distancepenplotperspective-camerapoint-line-distanceregl-inertia-cameraquat-from-unit-vec3primitive-sphereprimitive-torusprimitive-icospherequaggaquagga-graphitequagga-scannerquadsray-3dray-aabb-slabshared-edge-anglegl-camera-pos-from-view-matrixgl-catmull-clarkgl-cone3dgl-enginegl-movable-cameragl-quatgl-streamtube3dgl-tetrahedrongl-spheregl-shapegreenbelt-logoinertial-turntable-camerahumanoid-figurehackedvoxels-engine-stackglintersect-great-circleload-collada-daeload-wavefront-objmat4-interpolatemat4-interpolatormatrix-camera-controllermat4-decompose@wanchainmask/logo@voxelize/core@tstackgl/regl-draw
1.1.3

7 years ago

1.1.2

7 years ago

1.1.1

7 years ago

1.1.0

7 years ago

1.0.3

10 years ago

1.0.2

11 years ago

1.0.1

11 years ago

1.0.0

11 years ago