import { AABB, Frustum, ClipState } from '@zephyr3d/base';

/**
 * The bounding box class
 * @public
 */ class BoundingBox extends AABB {
    constructor(arg0, arg1){
        super(arg0, arg1);
    }
    /** {@inheritDoc BoundingVolume.behindPlane} */ behindPlane(plane) {
        return this.toAABB().behindPlane(plane);
    }
    /** {@inheritDoc BoundingVolume.clone} */ clone() {
        return new BoundingBox(this);
    }
    /** {@inheritDoc BoundingVolume.transform} */ transform(matrix) {
        return new BoundingBox(AABB.transform(this, matrix));
    }
    /** {@inheritDoc BoundingVolume.outsideFrustum} */ outsideFrustum(frustum) {
        return (frustum instanceof Frustum ? this.getClipStateWithFrustum(frustum) : this.getClipState(frustum)) === ClipState.NOT_CLIPPED;
    }
    /** {@inheritDoc BoundingVolume.toAABB} */ toAABB() {
        return this;
    }
}

export { BoundingBox };
//# sourceMappingURL=bounding_volume.js.map
