| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187 |
- import { Matrix4 } from './Matrix4';
- import { Quaternion } from './Quaternion';
- import { Matrix3 } from './Matrix3';
- import { BufferAttribute } from './../core/BufferAttribute';
- import { Vector } from './Vector2';
- /**
- * @deprecated use {@link Vector3 THREE.Vector3} instead.
- */
- /**
- * 4D vector.
- *
- * ( class Vector4 implements Vector<Vector4> )
- */
- export class Vector4 implements Vector {
- constructor(x?: number, y?: number, z?: number, w?: number);
- x: number;
- y: number;
- z: number;
- w: number;
- isVector4: true;
- /**
- * Sets value of this vector.
- */
- set(x: number, y: number, z: number, w: number): this;
- /**
- * Sets all values of this vector.
- */
- setScalar(scalar: number): this;
- /**
- * Sets X component of this vector.
- */
- setX(x: number): this;
- /**
- * Sets Y component of this vector.
- */
- setY(y: number): this;
- /**
- * Sets Z component of this vector.
- */
- setZ(z: number): this;
- /**
- * Sets w component of this vector.
- */
- setW(w: number): this;
- setComponent(index: number, value: number): this;
- getComponent(index: number): number;
- /**
- * Clones this vector.
- */
- clone(): this;
- /**
- * Copies value of v to this vector.
- */
- copy(v: Vector4): this;
- /**
- * Adds v to this vector.
- */
- add(v: Vector4, w?: Vector4): this;
- addScalar(scalar: number): this;
- /**
- * Sets this vector to a + b.
- */
- addVectors(a: Vector4, b: Vector4): this;
- addScaledVector(v: Vector4, s: number): this;
- /**
- * Subtracts v from this vector.
- */
- sub(v: Vector4): this;
- subScalar(s: number): this;
- /**
- * Sets this vector to a - b.
- */
- subVectors(a: Vector4, b: Vector4): this;
- /**
- * Multiplies this vector by scalar s.
- */
- multiplyScalar(s: number): this;
- applyMatrix4(m: Matrix4): this;
- /**
- * Divides this vector by scalar s.
- * Set vector to ( 0, 0, 0 ) if s == 0.
- */
- divideScalar(s: number): this;
- /**
- * http://www.euclideanspace.com/maths/geometry/rotations/conversions/quaternionToAngle/index.htm
- * @param q is assumed to be normalized
- */
- setAxisAngleFromQuaternion(q: Quaternion): this;
- /**
- * http://www.euclideanspace.com/maths/geometry/rotations/conversions/matrixToAngle/index.htm
- * @param m assumes the upper 3x3 of m is a pure rotation matrix (i.e, unscaled)
- */
- setAxisAngleFromRotationMatrix(m: Matrix3): this;
- min(v: Vector4): this;
- max(v: Vector4): this;
- clamp(min: Vector4, max: Vector4): this;
- clampScalar(min: number, max: number): this;
- floor(): this;
- ceil(): this;
- round(): this;
- roundToZero(): this;
- /**
- * Inverts this vector.
- */
- negate(): this;
- /**
- * Computes dot product of this vector and v.
- */
- dot(v: Vector4): number;
- /**
- * Computes squared length of this vector.
- */
- lengthSq(): number;
- /**
- * Computes length of this vector.
- */
- length(): number;
- /**
- * Computes the Manhattan length of this vector.
- *
- * @return {number}
- *
- * @see {@link http://en.wikipedia.org/wiki/Taxicab_geometry|Wikipedia: Taxicab Geometry}
- */
- manhattanLength(): number;
- /**
- * Normalizes this vector.
- */
- normalize(): this;
- /**
- * Normalizes this vector and multiplies it by l.
- */
- setLength(length: number): this;
- /**
- * Linearly interpolate between this vector and v with alpha factor.
- */
- lerp(v: Vector4, alpha: number): this;
- lerpVectors(v1: Vector4, v2: Vector4, alpha: number): this;
- /**
- * Checks for strict equality of this vector and v.
- */
- equals(v: Vector4): boolean;
- fromArray(xyzw: number[], offset?: number): this;
- toArray(xyzw?: number[], offset?: number): number[];
- fromBufferAttribute(
- attribute: BufferAttribute,
- index: number,
- offset?: number
- ): this;
- }
|