Skip to main content

Class: _3DShape<Type>

Defined in: packages/replicad/src/shapes.ts:637

Extends

Extended by

Type Parameters

Type

Type extends TopoDS_Shape

Implements

Constructors

Constructor

new _3DShape<Type>(ocShape): _3DShape<Type>;

Defined in: packages/replicad/src/shapes.ts:189

Parameters

ocShape

Type

Returns

_3DShape<Type>

Inherited from

Shape.constructor

Other

boundingBox

Get Signature

get boundingBox(): BoundingBox;

Defined in: packages/replicad/src/shapes.ts:408

Returns

BoundingBox

Implementation of

Shape3DLike.boundingBox

Inherited from

Shape.boundingBox


edges

Get Signature

get edges(): Edge[];

Defined in: packages/replicad/src/shapes.ts:389

Returns

Edge[]

Inherited from

Shape.edges


faces

Get Signature

get faces(): Face[];

Defined in: packages/replicad/src/shapes.ts:393

Returns

Face[]

Inherited from

Shape.faces


hashCode

Get Signature

get hashCode(): number;

Defined in: packages/replicad/src/shapes.ts:201

Returns

number

Inherited from

Shape.hashCode


isNull

Get Signature

get isNull(): boolean;

Defined in: packages/replicad/src/shapes.ts:205

Returns

boolean

Inherited from

Shape.isNull


solids

Get Signature

get solids(): Solid[];

Defined in: packages/replicad/src/shapes.ts:397

Returns

Solid[]

Inherited from

Shape.solids


wires

Get Signature

get wires(): Wire[];

Defined in: packages/replicad/src/shapes.ts:404

Returns

Wire[]

Inherited from

Shape.wires


wrapped

Get Signature

get wrapped(): Type;

Defined in: packages/replicad/src/register.ts:41

Returns

Type

Set Signature

set wrapped(newWrapped): void;

Defined in: packages/replicad/src/register.ts:46

Parameters
newWrapped

Type

Returns

void

Inherited from

Shape.wrapped


[dispose]()

dispose: void;

Defined in: node_modules/typescript/lib/lib.esnext.disposable.d.ts:36

Returns

void

Inherited from

Shape.[dispose]


asShape3D()

asShape3D(): Shape3D;

Defined in: packages/replicad/src/shapes.ts:260

Asserts that this shape is a 3D shape (Shell, Solid, CompSolid, or Compound) and returns it typed as Shape3D. Throws if the shape is not 3D.

Useful for chaining after operations that return a generic shape type.

Returns

Shape3D

Inherited from

Shape.asShape3D


clone()

clone(): this;

Defined in: packages/replicad/src/shapes.ts:193

Returns

this

Inherited from

Shape.clone


delete()

delete(): void;

Defined in: packages/replicad/src/register.ts:58

Returns

void

Inherited from

Shape.delete


isEqual()

isEqual(other): boolean;

Defined in: packages/replicad/src/shapes.ts:213

Parameters

other

AnyShape

Returns

boolean

Inherited from

Shape.isEqual


isSame()

isSame(other): boolean;

Defined in: packages/replicad/src/shapes.ts:209

Parameters

other

AnyShape

Returns

boolean

Inherited from

Shape.isSame


meshShape()

meshShape(options?): MeshShape;

Defined in: packages/replicad/src/shapes.ts:703

Parameters

options?
angularTolerance?

number

tolerance?

number

Returns

MeshShape


serialize()

serialize(): string;

Defined in: packages/replicad/src/shapes.ts:197

Returns

string

Inherited from

Shape.serialize


simplify()

simplify(): this;

Defined in: packages/replicad/src/shapes.ts:270

Simplifies the shape by removing unnecessary edges and faces

Returns

this

Inherited from

Shape.simplify

Shape Export

blobSTEP()

blobSTEP(): Blob;

Defined in: packages/replicad/src/shapes.ts:439

Exports the current shape as a STEP file as a Blob

Returns

Blob

Inherited from

Shape.blobSTEP


blobSTL()

blobSTL(options?): Blob;

Defined in: packages/replicad/src/shapes.ts:451

Exports the current shape as a STL file as a Blob

In order to create a STL file, the shape needs to be meshed. The tolerances correspond to the values used to mesh the shape.

Parameters

options?

STLExportOptions = {}

Returns

Blob

Inherited from

Shape.blobSTL


mesh()

mesh(options?): ShapeMesh;

Defined in: packages/replicad/src/shapes.ts:420

Exports the current shape as a set of triangle. These can be used by threejs for instance to represent the the shape

Parameters

options?

MeshOptions = {}

Returns

ShapeMesh

Implementation of

Shape3DLike.mesh

Inherited from

Shape.mesh


meshEdges()

meshEdges(options?): ShapeEdgeMesh;

Defined in: packages/replicad/src/shapes.ts:430

Exports the current shape as a set of lines. These can be used by threejs for instance to represent the edges of the shape

Parameters

options?

MeshOptions = {}

Returns

ShapeEdgeMesh

Inherited from

Shape.meshEdges

Shape Modifications

chamfer()

chamfer(radiusConfig, filter?): Shape3D;

Defined in: packages/replicad/src/shapes.ts:859

Creates a new shapes with some edges chamfered, as specified in the radius config.

If the radius is a filter finder object (with an EdgeFinder as filter, and a radius to specifiy the chamfer radius), the fillet will only be applied to the edges as selected by the finder. The finder will be deleted unless it is explicitly specified to keep it.

If the radius is a number all the edges will be chamfered.

If the radius is a function edges will be chamfered according to the value returned by the function (0 or null will not add any chamfer).

Parameters

radiusConfig

RadiusConfig<ChamferRadius>

filter?

FinderFunction<EdgeFinder, AnyShape>

Returns

Shape3D


cut()

cut(tool, options?): Shape3D;

Defined in: packages/replicad/src/shapes.ts:663

Builds a new shape by removing the tool tape from this shape

Parameters

tool

Shape3D

options?

BooleanOperationOptions = {}

Returns

Shape3D

Implementation of

Shape3DLike.cut


cutPlane()

cutPlane(
plane?,
offset?,
keep?): Solid | Compound | null;

Defined in: packages/replicad/src/shapes.ts:687

Cuts this shape with a plane and retains one of its half-spaces. Positive is the direction of the plane normal and is kept by default.

Parameters

plane?

Plane | PlaneName

offset?

number = 0

keep?

PlaneSide = "positive"

Returns

Solid | Compound | null


draft()

draft(
angle,
faceFinder,
neutralPlane?): Shape3D;

Defined in: packages/replicad/src/shapes.ts:921

Applies a draft angle to selected faces of the shape.

A draft angle is a taper applied to faces, commonly used in moulding and casting to allow parts to be released from a mould. The selected faces are tilted by the given angle relative to the neutral plane.

The face finder function receives a FaceFinder and should return it with the desired filters applied to select which faces to draft.

The neutral plane defines the reference from which the draft angle is measured — faces are unchanged where they intersect this plane and taper away from it.

Parameters

angle

number

faceFinder

FinderFunction<FaceFinder, AnyShape>

neutralPlane?

Plane | PlaneName

Returns

Shape3D


fillet()

fillet(radiusConfig, filter?): Shape3D;

Defined in: packages/replicad/src/shapes.ts:820

Creates a new shapes with some edges filletted, as specified in the radius config.

If the radius is a filter finder object (with an EdgeFinder as filter, and a radius to specifiy the fillet radius), the fillet will only be applied to the edges as selected by the finder. The finder will be deleted unless it is explicitly specified to keep it.

If the radius is a number all the edges will be filletted.

If the radius is a function edges will be filletted according to the value returned by the function (0 or null will not add any fillet).

Parameters

radiusConfig

RadiusConfig<FilletRadius>

filter?

FinderFunction<EdgeFinder, AnyShape>

Returns

Shape3D


fuse()

fuse(other, options?): Shape3D;

Defined in: packages/replicad/src/shapes.ts:652

Builds a new shape out of the two, fused, shapes

Parameters

other

Shape3D

options?

BooleanOperationOptions = {}

Returns

Shape3D

Implementation of

Shape3DLike.fuse


intersect()

intersect(tool): Shape3D;

Defined in: packages/replicad/src/shapes.ts:674

Builds a new shape by intersecting this shape and another

Parameters

tool

AnyShape

Returns

Shape3D

Implementation of

Shape3DLike.intersect


shell()

Call Signature

shell(config, tolerance?): Shape3D;

Defined in: packages/replicad/src/shapes.ts:755

Hollows out the current shape, removing the faces found by the filter and keeping a border of thickness

Parameters
config
filter

FaceFinder

thickness

number

tolerance?

number

Returns

Shape3D

Call Signature

shell(
thickness,
finderFcn,
tolerance?): Shape3D;

Defined in: packages/replicad/src/shapes.ts:759

Hollows out the current shape, removing the faces found by the filter and keeping a border of thickness

Parameters
thickness

number

finderFcn

FinderFunction<FaceFinder, AnyShape>

tolerance?

number

Returns

Shape3D


split()

split(
plane?,
offset?,
tolerance?): PlaneSplitResult<Solid | Compound>;

Defined in: packages/replicad/src/shapes.ts:228

Splits the solid parts of this shape with an oriented plane and groups them by side. Non-solid results are ignored.

offset translates the splitting plane along its normal. Each side is null when empty, the resulting shape when it contains one piece, or a Compound when it contains multiple disconnected pieces. Positive is the direction of the plane's normal.

Parameters

plane?

Plane | PlaneName

offset?

number = 0

tolerance?

number = 1e-7

Returns

PlaneSplitResult<Solid | Compound>

Inherited from

Shape.split

Shape Transformations

mirror()

mirror(inputPlane?, origin?): this;

Defined in: packages/replicad/src/shapes.ts:362

Mirrors the shape through a plane

Parameters

inputPlane?

| Point | Plane | PlaneName

origin?

Point

Returns

this

Implementation of

Shape3DLike.mirror

Inherited from

Shape.mirror


rotate()

rotate(
angle,
position?,
direction?): this;

Defined in: packages/replicad/src/shapes.ts:343

Rotates the shape

Parameters

angle

number

position?

Point = ...

direction?

Direction = ...

Returns

this

Implementation of

Shape3DLike.rotate

Inherited from

Shape.rotate


scale()

scale(scale, center?): this;

Defined in: packages/replicad/src/shapes.ts:378

Returns a scaled version of the shape

Parameters

scale

number

center?

Point = ...

Returns

this

Implementation of

Shape3DLike.scale

Inherited from

Shape.scale


translate()

Call Signature

translate(
xDist,
yDist,
zDist): this;

Defined in: packages/replicad/src/shapes.ts:294

Translates the shape of an arbitrary vector

Parameters
xDist

number

yDist

number

zDist

number

Returns

this

Implementation of

Shape3DLike.translate

Inherited from

Shape.translate

Call Signature

translate(vector): this;

Defined in: packages/replicad/src/shapes.ts:295

Translates the shape of an arbitrary vector

Parameters
vector

Point

Returns

this

Implementation of

Shape3DLike.translate

Inherited from

Shape.translate


translateX()

translateX(distance): this;

Defined in: packages/replicad/src/shapes.ts:316

Translates the shape on the X axis

Parameters

distance

number

Returns

this

Implementation of

Shape3DLike.translateX

Inherited from

Shape.translateX


translateY()

translateY(distance): this;

Defined in: packages/replicad/src/shapes.ts:325

Translates the shape on the Y axis

Parameters

distance

number

Returns

this

Implementation of

Shape3DLike.translateY

Inherited from

Shape.translateY


translateZ()

translateZ(distance): this;

Defined in: packages/replicad/src/shapes.ts:334

Translates the shape on the Z axis

Parameters

distance

number

Returns

this

Implementation of

Shape3DLike.translateZ

Inherited from

Shape.translateZ