UNPKG

@mlightcad/geometry-engine

Version:

The geometry-engine package provides comprehensive geometric entities, mathematical operations, and transformations for 2D and 3D space. This package mimics AutoCAD ObjectARX's AcGe (Geometry) classes and provides the mathematical foundation for CAD opera

33 lines 1.18 kB
import { AcGeBox3d, AcGeMatrix3d, AcGeVector3dLike } from '../math'; import { AcGeShape } from './AcGeShape'; /** * Abstract base class for all kinds of 3d shapes. */ export declare abstract class AcGeShape3d extends AcGeShape { /** * The bounding box of this shape */ private _box?; /** * Return new shape translated by given vector. * Translation vector may be also defined by a pair of numbers. */ translate(v: AcGeVector3dLike): AcGeShape3d; /** * Transforms the entity by applying the input matrix. * @param matrix Input transformation matrix * @return Return this shape */ abstract transform(matrix: AcGeMatrix3d): this; /** * The bounding box of this shape. Because it is a time-consuming operation to calculate the bounding * box of one shape, the bounding box value is cached. It will be calculated again lazily once there * are any changes to properties of this shape. */ get box(): AcGeBox3d; /** * Return true if this shape contains the specified shape */ protected abstract calculateBoundingBox(): AcGeBox3d; } //# sourceMappingURL=AcGeShape3d.d.ts.map