Spaces:
Running
Running
File size: 1,843 Bytes
2b7aae2 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | import { Vector2 } from './Vector2';
import { Vector3 } from './Vector3';
import { Plane } from './Plane';
import { Box3 } from './Box3';
import { InterleavedBufferAttribute } from '../core/InterleavedBufferAttribute';
import { BufferAttribute } from '../core/BufferAttribute';
export class Triangle {
constructor(a?: Vector3, b?: Vector3, c?: Vector3);
/**
* @default new THREE.Vector3()
*/
a: Vector3;
/**
* @default new THREE.Vector3()
*/
b: Vector3;
/**
* @default new THREE.Vector3()
*/
c: Vector3;
set(a: Vector3, b: Vector3, c: Vector3): Triangle;
setFromPointsAndIndices(points: Vector3[], i0: number, i1: number, i2: number): this;
setFromAttributeAndIndices(attribute: BufferAttribute | InterleavedBufferAttribute, i0: number, i1: number, i2: number): this;
clone(): this;
copy(triangle: Triangle): this;
getArea(): number;
getMidpoint(target: Vector3): Vector3;
getNormal(target: Vector3): Vector3;
getPlane(target: Plane): Plane;
getBarycoord(point: Vector3, target: Vector3): Vector3;
getUV(point: Vector3, uv1: Vector2, uv2: Vector2, uv3: Vector2, target: Vector2): Vector2;
containsPoint(point: Vector3): boolean;
intersectsBox(box: Box3): boolean;
isFrontFacing(direction: Vector3): boolean;
closestPointToPoint(point: Vector3, target: Vector3): Vector3;
equals(triangle: Triangle): boolean;
static getNormal(a: Vector3, b: Vector3, c: Vector3, target: Vector3): Vector3;
static getBarycoord(point: Vector3, a: Vector3, b: Vector3, c: Vector3, target: Vector3): Vector3;
static containsPoint(point: Vector3, a: Vector3, b: Vector3, c: Vector3): boolean;
static getUV(point: Vector3, p1: Vector3, p2: Vector3, p3: Vector3, uv1: Vector2, uv2: Vector2, uv3: Vector2, target: Vector2): Vector2;
static isFrontFacing(a: Vector3, b: Vector3, c: Vector3, direction: Vector3): boolean;
}
|