brepjs API Reference
    Preparing search index...

    Interface Wrapped3D<T>

    3D wrapper — booleans, modifiers, measurement, queries.

    interface Wrapped3D<T extends Shape3D> {
        __wrapped: true;
        val: T;
        apply<U extends AnyShape>(fn: (shape: T) => U): Wrapped<U>;
        applyResult<U extends AnyShape>(fn: (shape: T) => Result<U>): Wrapped<U>;
        area(): number;
        boss(options: BossOptions): Wrapped3D<T>;
        bounds(): Bounds3D;
        chamfer(distance: ChamferDistance): Wrapped3D<T>;
        chamfer(
            edges: ShapeFinder<Edge> | Edge[] | FinderFn<Edge>,
            distance: ChamferDistance,
        ): Wrapped3D<T>;
        circularPattern(axis: Vec3, count: number, angle?: number): Wrapped3D<T>;
        clone(): Wrapped<T>;
        cut(tool: Shapeable<Shape3D>, options?: BooleanOptions): Wrapped3D<T>;
        cutAll(tools: Shape3D[], options?: BooleanOptions): Wrapped3D<T>;
        describe(): ShapeDescription;
        done(): T;
        drill(options: DrillOptions): Wrapped3D<T>;
        edges(): Edge[];
        faces(): Face[];
        fillet(radius: FilletRadius): Wrapped3D<T>;
        fillet(
            edges: ShapeFinder<Edge> | Edge[] | FinderFn<Edge>,
            radius: FilletRadius,
        ): Wrapped3D<T>;
        fuse(tool: Shapeable<Shape3D>, options?: BooleanOptions): Wrapped3D<T>;
        heal(): Wrapped<T>;
        intersect(tool: Shapeable<Shape3D>, options?: BooleanOptions): Wrapped3D<T>;
        isEmpty(): boolean;
        isValid(): boolean;
        linearPattern(
            direction: Vec3,
            count: number,
            spacing: number,
        ): Wrapped3D<T>;
        mesh(
            options?: MeshOptions & {
                cache?: boolean;
                includeUVs?: boolean;
                skipNormals?: boolean;
            },
        ): ShapeMesh;
        meshEdges(options?: MeshOptions & { cache?: boolean }): EdgeMesh;
        mirror(options?: { normal?: Vec3; origin?: Vec3 }): Wrapped<T>;
        mirrorJoin(options?: MirrorJoinOptions): Wrapped3D<T>;
        moveX(distance: number): Wrapped<T>;
        moveY(distance: number): Wrapped<T>;
        moveZ(distance: number): Wrapped<T>;
        offset(distance: number, options?: { tolerance?: number }): Wrapped3D<T>;
        pocket(options: PocketOptions): Wrapped3D<T>;
        rectangularPattern(options: RectangularPatternOptions): Wrapped3D<T>;
        rotate(angle: number, options?: { around?: Vec3; axis?: Vec3 }): Wrapped<T>;
        rotateX(angle: number): Wrapped<T>;
        rotateY(angle: number): Wrapped<T>;
        rotateZ(angle: number): Wrapped<T>;
        scale(factor: number, options?: { center?: Vec3 }): Wrapped<T>;
        section(
            plane: PlaneInput,
            options?: { approximation?: boolean; planeSize?: number },
        ): Wrapped<AnyShape>;
        shell(
            faces: Face[] | ShapeFinder<Face> | FinderFn<Face>,
            thickness: number,
            options?: { tolerance?: number },
        ): Wrapped3D<T>;
        simplify(): Wrapped<T>;
        slice(
            planes: PlaneInput[],
            options?: { approximation?: boolean; planeSize?: number },
        ): AnyShape[];
        split(tools: AnyShape[]): Wrapped<AnyShape>;
        surfaceProps(): SurfaceProps;
        toBREP(): string;
        translate(v: Vec3): Wrapped<T>;
        vertices(): Vertex[];
        volume(): number;
        volumeProps(): VolumeProps;
        wires(): Wire[];
    }

    Type Parameters

    Hierarchy (View Summary)

    Index

    Properties

    __wrapped: true

    Brand property to distinguish wrappers from branded shape handles.

    val: T

    Methods