Bitbybit Docs
    Preparing search index...

    Class OCCTCurves

    OpenCascade 的构造曲线:平面内或曲面 UV 空间中的 2D 曲线(圆、椭圆、线段、修剪片段),供 shapes.edge.makeEdgeFromGeom2dCurveAndSurface 使用,以及圆和椭圆线框。2D 曲线没有拓扑,不能绘制;其上的点通过 get2dPointFrom2dCurveOnParam 读取。

    Index

    Constructors

    create

    • 从 2D 曲线上截取参数 u1u2 之间的一段。

      在圆等闭合曲线上参数绕曲线运行,因此修剪后的圆是一段圆弧。结果本身无法绘制。

      Parameters

      Returns Promise<Geom2dCurvePointer>

      修剪后的 2D 曲线

      const arc = await bitbybit.occt.geom.curves.geom2dTrimmedCurve({ shape: circle2d, u1: 0, u2: 1.57, sense: true, adjustPeriodic: true });
      

    get

    • 在某参数处求值 2D 曲线,并返回该处的 2D 点。

      参数在曲线自身的范围内,而不是分数:圆从 0 到 2π,线段从 0 到其长度。

      Parameters

      Returns Promise<Point2>

      以两个数值表示的点

      const point = await bitbybit.occt.geom.curves.get2dPointFrom2dCurveOnParam({ shape: circle2d, param: 1.57 });
      

    primitives

    • 在平面内创建 2D 椭圆曲线,用于在曲面的 UV 空间中进行构造。

      direction 是长轴的方向;radiusMajor 必须至少为 radiusMinorsense 翻转曲线的方向。该曲线无法绘制;请用 shapes.edge.makeEdgeFromGeom2dCurveAndSurface 包装它。

      Parameters

      Returns Promise<Geom2dCurvePointer>

      2D 椭圆曲线

      const ellipse = await bitbybit.occt.geom.curves.geom2dEllipse({ center: [0, 0], direction: [1, 0], radiusMinor: 1, radiusMajor: 2, sense: false });
      
    • 在两个 2D 点之间创建直的 2D 曲线段,用于在曲面的 UV 空间中进行构造。

      该线段本身无法绘制。

      Parameters

      Returns Promise<Geom2dCurvePointer>

      2D 线段曲线

      const segment = await bitbybit.occt.geom.curves.geom2dSegment({ start: [0, 0], end: [1, 0] });
      
    • 创建一个完整的圆作为闭合的单边线框,位于法线为 direction 的平面内。

      shapes.wire.createCircleWire 相同,放在这里与 2D 曲线并列。

      Parameters

      Returns Promise<GeomCurvePointer>

      圆线框

      const circle = await bitbybit.occt.geom.curves.geomCircleCurve({ radius: 5, center: [0, 0, 0], direction: [0, 1, 0] });
      
    • 创建一个完整的椭圆作为闭合的单边线框,位于法线为 direction 的平面内。

      shapes.wire.createEllipseWire 相同,放在这里与 2D 曲线并列;radiusMajor 不得小于 radiusMinor

      Parameters

      Returns Promise<GeomCurvePointer>

      椭圆线框

      const ellipse = await bitbybit.occt.geom.curves.geomEllipseCurve({ center: [0, 0, 0], direction: [0, 1, 0], radiusMinor: 3, radiusMajor: 6 });