@bitbybit-dev/manifold
Version:
Bit By Bit Developers Manifold based CAD Library to Program Geometry
35 lines (34 loc) • 1.08 kB
JavaScript
export class CrossSectionOperations {
constructor(wasm) {
this.manifold = wasm;
}
hull(inputs) {
return inputs.crossSection.hull();
}
extrude(inputs) {
return inputs.crossSection.extrude(inputs.height, inputs.nDivisions, inputs.twistDegrees, [inputs.scaleTopX, inputs.scaleTopY], inputs.center);
}
revolve(inputs) {
const res = inputs.crossSection.revolve(inputs.circularSegments, inputs.revolveDegrees);
if (inputs.matchProfile) {
return res.rotate([90, 0, 0]);
}
else {
return res;
}
}
offset(inputs) {
return inputs.crossSection.offset(inputs.delta, inputs.joinType, inputs.miterLimit, inputs.circularSegments);
}
simplify(inputs) {
return inputs.crossSection.simplify(inputs.epsilon);
}
compose(inputs) {
const { CrossSection } = this.manifold;
const { compose } = CrossSection;
return compose(inputs.polygons);
}
decompose(inputs) {
return inputs.crossSection.decompose();
}
}