1 | import { Box3 } from "./Box3.js";
|
2 | import { Line3 } from "./Line3.js";
|
3 | import { Matrix3 } from "./Matrix3.js";
|
4 | import { Matrix4 } from "./Matrix4.js";
|
5 | import { Sphere } from "./Sphere.js";
|
6 | import { Vector3 } from "./Vector3.js";
|
7 |
|
8 | export class Plane {
|
9 | constructor(normal?: Vector3, constant?: number);
|
10 |
|
11 | /**
|
12 | * @default new THREE.Vector3( 1, 0, 0 )
|
13 | */
|
14 | normal: Vector3;
|
15 |
|
16 | /**
|
17 | * @default 0
|
18 | */
|
19 | constant: number;
|
20 |
|
21 | readonly isPlane: true;
|
22 |
|
23 | set(normal: Vector3, constant: number): Plane;
|
24 | setComponents(x: number, y: number, z: number, w: number): Plane;
|
25 | setFromNormalAndCoplanarPoint(normal: Vector3, point: Vector3): Plane;
|
26 | setFromCoplanarPoints(a: Vector3, b: Vector3, c: Vector3): Plane;
|
27 | clone(): this;
|
28 | copy(plane: Plane): this;
|
29 | normalize(): Plane;
|
30 | negate(): Plane;
|
31 | distanceToPoint(point: Vector3): number;
|
32 | distanceToSphere(sphere: Sphere): number;
|
33 | projectPoint(point: Vector3, target: Vector3): Vector3;
|
34 | intersectLine(line: Line3, target: Vector3): Vector3 | null;
|
35 | intersectsLine(line: Line3): boolean;
|
36 | intersectsBox(box: Box3): boolean;
|
37 | intersectsSphere(sphere: Sphere): boolean;
|
38 | coplanarPoint(target: Vector3): Vector3;
|
39 | applyMatrix4(matrix: Matrix4, optionalNormalMatrix?: Matrix3): Plane;
|
40 | translate(offset: Vector3): Plane;
|
41 | equals(plane: Plane): boolean;
|
42 |
|
43 | /**
|
44 | * @deprecated Use {@link Plane#intersectsLine .intersectsLine()} instead.
|
45 | */
|
46 | isIntersectionLine(l: any): any;
|
47 | }
|