@polygonjs/polygonjs
Version:
node-based WebGL 3D engine https://polygonjs.com
26 lines (25 loc) • 911 B
JavaScript
;
import { BaseSopOperation } from "../../../../../engine/operations/sop/_Base";
import { ObjectType } from "../../../Constant";
import { SphereBuilder } from "../../../builders/SphereBuilder";
import { CoreGeometryBuilderMerge } from "../../three/builders/Merge";
export function tetToSphere(tetGeometry, tesselationParams) {
const { tetrahedrons } = tetGeometry;
const geometries = [];
tetrahedrons.forEach((tet) => {
const { radius, center } = tet.sphere;
const geometry = SphereBuilder.create({
radius,
widthSegments: 32,
heightSegments: 32,
asLines: true,
open: false
});
geometry.translate(center.x, center.y, center.z);
geometries.push(geometry);
});
const mergedGeometry = CoreGeometryBuilderMerge.merge(geometries);
if (mergedGeometry) {
return BaseSopOperation.createObject(mergedGeometry, ObjectType.LINE_SEGMENTS);
}
}