Business

Class: Curve

Class representing a Curve.

Method: wires

Gets the wires of the curve.

Example

const instance = new Curve();
instance.wires();

Method: type

Gets the type of the curve.

Returns

The type of the curve.

Example

const instance = new Curve();
instance.type();

Method: edges

Gets the edges of the curve.

Example

const instance = new Curve();
instance.edges();

Method: getWires

Gets the wires of the curve.

Returns

An array of wires.

Example

const instance = new Curve();
instance.getWires();

Method: getFace

Gets the face of the curve.

Returns

The face of the curve.

Example

const instance = new Curve();
instance.getFace();

Method: createFaceFromWire

Creates a face from a wire.

Parameters

  • wire (TopoDS_Wire): The wire to create the face from.

Returns

The created face.

Example

const wire = /* specify a wire */;
const instance = new Curve();
instance.createFaceFromWire(wire);

Method: sortWiresByVolume

Sorts wires by area.

Parameters

  • wires (TopoDS_Wire[]): The wires to sort.

Returns

An array of sorted wires with their areas.

Example

const wires = /* specify a wires */;
const instance = new Curve();
instance.sortWiresByVolume(wires);

Method: getEdges

Gets the edges of the curve.

Returns

An array of edges.

Example

const instance = new Curve();
instance.getEdges();

Method: curveLength

Gets the length of the curve.

Returns

The length of the curve.

Example

const instance = new Curve();
instance.curveLength();

Method: faceNormal

Gets the normal of the face.

Returns

The normal vector.

Example

const instance = new Curve();
instance.faceNormal();

Method: lengthParameter

Gets the length parameters.

Parameters

  • t (number): The parameter value.

Returns

An object containing length1(Length from the start to t) and length2(Length from t to the end).

Example

const t = 0.5;
const instance = new Curve();
instance.lengthParameter(t);

Static Method: render

Renders the wire with the given tolerance.

Parameters

  • wire (TopoDS_Wire): The wire to render.
  • tolerance (number): The tolerance value.

Returns

An array of points.

Example

const wire = /* specify a wire */;
const tolerance = 0.5;
Curve.render(wire, tolerance);

Method: offset

Offsets the curve.

Parameters

  • offsetSize (number): The size of the offset.
  • side (boolean): The side of the offset.
  • offsetType (OffsetType = OffsetType.Arc): The type of the offset.

Returns

The offset curve.

Example

const offsetSize = 0.5;
const side = /* specify a side */;
const offsetType = /* specify a offsetType */;
const instance = new Curve();
instance.offset(offsetSize, side, offsetType);

Method: isCircle

Checks if the curve is a circle.

Returns

True if the curve is a circle, false otherwise.

Example

const instance = new Curve();
instance.isCircle();

Method: isArc

Checks if the curve is an arc.

Returns

True if the curve is an arc, false otherwise.

Example

const instance = new Curve();
instance.isArc();

Method: isLine

Checks if the curve is a line.

Returns

True if the curve is a line, false otherwise.

Example

const instance = new Curve();
instance.isLine();

Method: isRectangle

Checks if the curve is a rectangle.

Returns

True if the curve is a rectangle, false otherwise.

Example

const instance = new Curve();
instance.isRectangle();

Method: isPlanar

Checks if the curve is planar.

Returns

An object containing isPlaner, plane, and distance.

Example

const instance = new Curve();
instance.isPlanar();

Method: chamfer

Chamfers the curve.

Parameters

  • distance1 (number): The first distance for chamfer.
  • distance2 (number): The second distance for chamfer.

Returns

The chamfered curve.

Example

const distance1 = 0.5;
const distance2 = 0.5;
const instance = new Curve();
instance.chamfer(distance1, distance2);

Method: discontinuity

Gets the discontinuities in the curve.

Returns

An array of points representing the discontinuities.

Example

const instance = new Curve();
instance.discontinuity();

Method: extrude

Extrudes the curve in the given direction.

Parameters

  • direction (IVector): The direction vector.

Returns

The extruded surface.

Example

const direction = new Vector(1, 1, 1);
const instance = new Curve();
instance.extrude(direction);

Static Method: join

Joins multiple curves.

Parameters

  • curves (ICurve[]): The curves to join.

Returns

An array of joined curves.

Example

const curves = /* specify a curves */;
Curve.join(curves);

Method: explode

Explodes the curve.

Parameters

  • recursive (boolean): Whether to explode recursively.

Returns

An object containing segments and points.

Example

const recursive = /* specify a recursive */;
const instance = new Curve();
instance.explode(recursive);

Method: divideByLength

Divides the curve by length.

Parameters

  • length (number): The length to divide by.

Returns

An object containing points, tangents, and parameters.

Example

const length = 10;
const instance = new Curve();
instance.divideByLength(length);

Method: divideByDistance

Divides the curve by distance.

Parameters

  • step (number): The distance to divide by.

Returns

An object containing points, tangents, and parameters.

Example

const step = 0.5;
const instance = new Curve();
instance.divideByDistance(step);

Method: divideByCount

Divides the curve by count.

Parameters

  • count (number): The number of divisions.

Returns

An object containing points, tangents, and parameters.

Example

const count = 0.5;
const instance = new Curve();
instance.divideByCount(count);

Method: contour

Gets the contour of the curve.

Parameters

  • point (IVector): The point vector.
  • direction (IVector): The direction vector.
  • distance (number): The distance.

Returns

An array of points representing the contour.

Example

const point = new Vector(1, 1, 1);
const direction = new Vector(1, 1, 1);
const distance = 0.5;
const instance = new Curve();
instance.contour(point, direction, distance);

Method: getDividedSegments

Gets the divided segments of the curve.

Parameters

  • points (IVector[]): The points to divide by.

Returns

An array of segments.

Example

const points = /* specify a points */;
const instance = new Curve();
instance.getDividedSegments(points);

Method: startPoint

Gets the start point of the curve.

Returns

The start point vector.

Example

const instance = new Curve();
instance.startPoint();

Method: endPoint

Gets the end point of the curve.

Returns

The end point vector.

Example

const instance = new Curve();
instance.endPoint();

Method: seam

Seams the curve.

Parameters

  • t (number): The parameter value.

Returns

The seamed curve.

Example

const t = 0.5;
const instance = new Curve();
instance.seam(t);

Method: pointOnCurve

Gets the point on the curve.

Parameters

  • t (number): The parameter value.

Returns

The point vector.

Example

const t = 0.5;
const instance = new Curve();
instance.pointOnCurve(t);

Method: evaluateCurve

Evaluates the curve.

Parameters

  • parameter (number): The parameter value.
  • byLength (boolean): Whether to evaluate by length.

Returns

An object containing point, vector1(first derivatives), and vector2(second derivatives).

Example

const parameter = 0.5;
const byLength = /* specify a byLength */;
const instance = new Curve();
instance.evaluateCurve(parameter, byLength);

Method: pointInCurve

Checks if a point is in the curve.

Parameters

  • point (IVector): The point vector.

Returns

An object containing projectPoint and relationship.

Example

const point = new Vector(1, 1, 1);
const instance = new Curve();
instance.pointInCurve(point);

Method: controlPoints

Gets the control points of the curve.

Returns

An object containing points, knots, weights, and multiplicities.

Example

const instance = new Curve();
instance.controlPoints();

Method: closestPoint

Gets the closest point on the curve.

Parameters

  • point (IVector): The point vector.

Returns

An object containing nearest and pointsArr.

Example

const point = new Vector(1, 1, 1);
const instance = new Curve();
instance.closestPoint(point);

Method: bBox

Gets the bounding box of the curve.

Returns

An object containing width, length, height, area, center, and boundingBox.

Example

const instance = new Curve();
instance.bBox();

Method: flip

Flips the curve.

Returns

The flipped curve.

Example

const instance = new Curve();
instance.flip();

Method: area

Gets the area of the curve.

Returns

The area of the curve.

Example

const instance = new Curve();
instance.area();

Method: isClosed

Checks if the curve is closed.

Returns

True if the curve is closed, false otherwise.

Example

const instance = new Curve();
instance.isClosed();

Method: deconstructArc

Deconstructs the arc.

Returns

An object containing plane, radius, startAngle, and endAngle.

Example

const instance = new Curve();
instance.deconstructArc();

Method: union

Unions the curve with other curves.

Parameters

  • geometries ((ICurve | ISurface | ISolid): The curves to union with.

Returns

The unioned curve.

Example

const geometries = /* specify a geometries */;
const instance = new Curve();
instance.union(geometries);

Method: intersection

Intersects the curve with other curves.

Parameters

  • geometries (IGeometry[]): The curves to intersect with.

Returns

An array of intersection curves.

Example

const geometries = /* specify a geometries */;
const instance = new Curve();
instance.intersection(geometries);

Method: difference

Gets the difference between the curve and other curves.

Parameters

  • geometries (IGeometry[]): The curves to subtract.

Returns

The resulting curve.

Example

const geometries = /* specify a geometries */;
const instance = new Curve();
instance.difference(geometries);

Method: Unknown

Creates an array of geometry along a curve.

Parameters

  • geometry (IGeometry[]): The geometry to array.
  • count (number): The number of elements in the array.

Returns

An array of geometries.

Method: intersectCurve

Intersects the curve with another curve.

Parameters

  • curve (ICurve): The curve to intersect with.

Returns

An array of intersection points.

Example

const curve = CurveBuilder.line(new Vector(0, 0, 0), new Vector(1, 1, 1));
const instance = new Curve();
instance.intersectCurve(curve);

Method: intersectSurface

Intersects the curve with a surface.

Parameters

  • surface (ISurface): The surface to intersect with.

Returns

An array of intersection points.

Example

const surface = /* specify a surface */;
const instance = new Curve();
instance.intersectSurface(surface);

Method: intersectSolid

Intersects the solid with a curve.

Parameters

  • solid (ISolid): The solid to intersect with.

Returns

An array of intersection points.

Example

const solid = /* specify a solid */;
const instance = new Curve();
instance.intersectSolid(solid);

Method: solidCurve

Intersects the solid with a curve.

Parameters

  • solid (ISolid): The solid to intersect with.

Returns

An array of intersection overlap curves.

Example

const solid = /* specify a solid */;
const instance = new Curve();
instance.solidCurve(solid);

Method: selfIntersect

Checks for self-intersections in the curve.

Returns

An array of self-intersection points.

Example

const instance = new Curve();
instance.selfIntersect();

Method: rebuildCurve

Rebuilds the curve with the given degree.

Parameters

  • degree (number): The degree of the curve.

Returns

The rebuilt curve.

Example

const degree = 0.5;
const instance = new Curve();
instance.rebuildCurve(degree);

Method: mirrorByCurve

Mirrors the curve by another curve.

Parameters

  • curve (ICurve): The curve to mirror by.

Returns

The mirrored curve.

Example

const curve = CurveBuilder.line(new Vector(0, 0, 0), new Vector(1, 1, 1));
const instance = new Curve();
instance.mirrorByCurve(curve);

Method: curveToPolyline

Converts the curve to a polyline.

Parameters

  • toleranceDist (number): The tolerance distance.
  • edge (number): The edge length.

Returns

The polyline curve.

Example

const toleranceDist = 0.5;
const edge = 0.5;
const instance = new Curve();
instance.curveToPolyline(toleranceDist, edge);

Method: perpPlane

Gets the perpendicular plane at the given parameter.

Parameters

  • parameter (number): The parameter value.

Returns

The perpendicular plane.

Example

const parameter = 0.5;
const instance = new Curve();
instance.perpPlane(parameter);

Method: perpPlanes

Gets the perpendicular planes.

Parameters

  • count (number): The number of planes.
  • align (boolean): Whether to align the planes.

Returns

An object containing planes and parameters.

Example

const count = 0.5;
const align = /* specify a align */;
const instance = new Curve();
instance.perpPlanes(count, align);

Method: horizontalPlane

Gets the horizontal plane at the given parameter.

Parameters

  • parameter (number): The parameter value.

Returns

The horizontal plane.

Example

const parameter = 0.5;
const instance = new Curve();
instance.horizontalPlane(parameter);

Method: horizontalPlanes

Gets the horizontal planes.

Parameters

  • count (number): The number of planes.
  • align (boolean): Whether to align the planes.

Returns

An object containing planes and parameters.

Example

const count = 0.5;
const align = /* specify a align */;
const instance = new Curve();
instance.horizontalPlanes(count, align);

Method: curvePlane

Gets the curve plane at the given parameter.

Parameters

  • parameter (number): The parameter value.

Returns

The curve plane.

Example

const parameter = 0.5;
const instance = new Curve();
instance.curvePlane(parameter);

Method: curvePlanes

Gets the curve planes.

Parameters

  • count (number): The number of planes.

Returns

An object containing planes and parameters.

Example

const count = 0.5;
const instance = new Curve();
instance.curvePlanes(count);

Method: dashPattern

Creates a dash pattern on the curve.

Parameters

  • pattern (number[]): The dash pattern.

Returns

An object containing dashes and gaps.

Example

const pattern = /* specify a pattern */;
const instance = new Curve();
instance.dashPattern(pattern);

Method: tween

Tweens the curve with another curve.

Parameters

  • curve (ICurve): The curve to tween with.
  • parameter (number): The parameter value.

Returns

The tweened curve.

Example

const curve = CurveBuilder.line(new Vector(0, 0, 0), new Vector(1, 1, 1));
const parameter = 0.5;
const instance = new Curve();
instance.tween(curve, parameter);

Method: proximity

Checks the proximity between the curve and another curve.

Parameters

  • curve (ICurve): The curve to check proximity with.

Returns

An object containing pointA, pointB, and distance.

Example

const curve = CurveBuilder.line(new Vector(0, 0, 0), new Vector(1, 1, 1));
const instance = new Curve();
instance.proximity(curve);

Method: extremes

Gets the extremes of the curve.

Parameters

  • plane (IPlane): The plane to get extremes on.

Returns

An object containing highest and lowest points.

Example

const plane = /* specify a plane */;
const instance = new Curve();
instance.extremes(plane);

Method: centerOfMass

Gets the center of mass of the curve.

Returns

The center of mass point vector.

Example

const instance = new Curve();
instance.centerOfMass();

Method: projectCurve

Projects the curve onto a geometry.

Parameters

  • geometry (IGeometry): The geometry to project onto.
  • direction (IVector): The direction vector.

Returns

An array of projected curves.

Example

const geometry = /* specify a geometry */;
const direction = new Vector(1, 1, 1);
const instance = new Curve();
instance.projectCurve(geometry, direction);

Method: cullCurves

Culls duplicate curves.

Parameters

  • curves (ICurve[]): The curves to cull.

Returns

An object containing culledCurves and duplicateIndexes.

Example

const curves = /* specify a curves */;
const instance = new Curve();
instance.cullCurves(curves);

Method: isEquivalentCurve

Checks if two curves are equivalent.

Parameters

  • curve (ICurve): No description

Returns

True if the curves are equivalent, false otherwise.

Example

const curve = CurveBuilder.line(new Vector(0, 0, 0), new Vector(1, 1, 1));
const instance = new Curve();
instance.isEquivalentCurve(curve);

Method: dump

Dumps the details of the curve.

Example

const instance = new Curve();
instance.dump();