@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
38 lines (37 loc) • 1.18 kB
JavaScript
;
import { Box3 } from "three";
import { BaseCoreObject } from "../../entities/object/BaseCoreObject";
import { TetVertex } from "./TetVertex";
import { objectData } from "../../entities/object/BaseCoreObjectUtils";
const _bbox = new Box3();
export class TetCoreObject extends BaseCoreObject {
constructor(_object, index) {
super(_object, index);
this._object = _object;
}
static position(object, target) {
object.boundingBox(_bbox);
_bbox.getCenter(target);
}
boundingBox(target) {
this._object.boundingBox(target);
}
boundingSphere(target) {
this._object.boundingSphere(target);
}
static objectData(object) {
const data = objectData(object);
const tetObject = object;
data.pointsCount = tetObject.geometry.pointsCount();
data.verticesCount = TetVertex.entitiesCount(object);
data.primitivesCount = tetObject.geometry.tetsCount();
data.primitiveName = "tetrahedron";
return data;
}
static applyMatrix(object, matrix, transformTargetType, transformSpace, transformMode) {
object.applyMatrix4(matrix);
}
static mergeCompact(options) {
console.warn("mergeCompact not implemented");
}
}