playcanvas
Version:
Open-source WebGL/WebGPU 3D engine for the web
28 lines (27 loc) • 514 B
JavaScript
import { Vec3 } from "../math/vec3.js";
class Ray {
origin = new Vec3();
direction = Vec3.FORWARD.clone();
constructor(origin, direction) {
if (origin) {
this.origin.copy(origin);
}
if (direction) {
this.direction.copy(direction);
}
}
set(origin, direction) {
this.origin.copy(origin);
this.direction.copy(direction);
return this;
}
copy(src) {
return this.set(src.origin, src.direction);
}
clone() {
return new this.constructor(this.origin, this.direction);
}
}
export {
Ray
};