@fivem-ts/shared
Version:
FiveM Typescript wrapper shared part
46 lines (45 loc) • 1.55 kB
TypeScript
import { Vector } from '.';
export declare class Vector3 extends Vector {
private _z;
constructor(x: number, y: number, _z: number);
get z(): number;
set z(value: number);
get Length(): number;
get normalize(): Vector3;
clone(): Vector3;
distanceSquared(vector: Vector3): number;
distance(vector: Vector3): number;
crossProduct(vector: Vector3): Vector3;
dotProduct(vector: Vector3): number;
add(vector: Vector3 | number): Vector3;
subtract(vector: Vector3 | number): Vector3;
multiply(vector: Vector3 | number): Vector3;
divide(vector: Vector3 | number): Vector3;
replace(vector: Vector3): void;
/**
* Calculates the dot product of two vectors.
*
* @param v1 {Vector3} - The first vector.
* @param v2 {Vector3} - The second vector.
*
* @returns {Vector3} The dot product of the two vectors.
*/
static dotProduct(v1: Vector3, v2: Vector3): number;
/**
* Calculates the cross product of two vectors.
*
* @param v1 {Vector3} - The first vector.
* @param v2 {Vector3} - The second vector.
*
* @returns {Vector3} A new Vector3 representing the cross product of the two vectors.
*/
static crossProduct(v1: Vector3, v2: Vector3): Vector3;
/**
* Normalizes a vector, scaling it to have a length of 1.
*
* @param v {Vector3} - The vector to normalize.
*
* @returns {Vector3} A new Vector3 representing the normalized vector.
*/
static normalize(v: Vector3): Vector3;
}