Bitbybit Docs
    Preparing search index...

    Class JSCADBooleans

    组合 JSCAD 几何体:并集融合,减去切除,相交保留重叠部分,有双输入和多输入两种形式。一次调用的所有输入必须是同一类型,要么都是实体,要么都是平面 2D 形状,否则内核会抛出错误;路径无法参与组合。每个方法都给出新几何体,并保持输入不变。

    Index

    Constructors

    boolean

    • 只保留所有输入共有的体积或面积,丢弃其他一切。

      输入必须全部是实体或全部是 2D 形状;当它们不重叠时结果可能为空。

      Parameters

      Returns Promise<JSCADEntity>

      共有部分,作为一个实体或 2D 形状

      const common = await bitbybit.jscad.booleans.intersect({ meshes: [cube, sphere] });
      
    • 从第一个输入中切除之后的每个输入,留下第一个剩余的部分。

      输入必须全部是实体或全部是 2D 形状;顺序很重要,第一个是被切割的那个。

      Parameters

      • inputs: BooleanObjectsDto

        被切割的几何体在前,随后是用于切割的几何体

      Returns Promise<JSCADEntity>

      第一个输入减去其余输入

      const holed = await bitbybit.jscad.booleans.subtract({ meshes: [cube, cylinder1, cylinder2] });
      
    • 将所有输入融合为一个实体或一个 2D 形状,在重叠处合并,并将分离的部分保留为一个实体。

      输入必须全部是实体或全部是 2D 形状。

      Parameters

      Returns Promise<JSCADEntity>

      融合后的实体或 2D 形状

      const fused = await bitbybit.jscad.booleans.union({ meshes: [cube, sphere] });
      
    • 只保留 firstsecond 共有的体积或面积,即 intersect 的双输入形式。

      Parameters

      Returns Promise<JSCADEntity>

      共有部分

      const common = await bitbybit.jscad.booleans.intersectTwo({ first: cube, second: sphere });
      
    • first 中切除 second,即 subtract 的双输入形式。

      Parameters

      Returns Promise<JSCADEntity>

      第一个输入减去第二个

      const holed = await bitbybit.jscad.booleans.subtractTwo({ first: cube, second: sphere });
      
    • firstsecond 融合为一个,即 union 的双输入形式。

      Parameters

      Returns Promise<JSCADEntity>

      融合后的实体或 2D 形状

      const fused = await bitbybit.jscad.booleans.unionTwo({ first: cube, second: sphere });
      
    • from 中切除 meshes 的每个条目,留下 from 剩余的部分;与 subtract 相同,只是基础几何单独命名。

      Parameters

      Returns Promise<JSCADEntity>

      基础几何体减去其余几何体

      const holed = await bitbybit.jscad.booleans.subtractFrom({ from: cube, meshes: [cylinder1, cylinder2] });
      

    minkowski

    • 将后续每个实体沿当前结果的整个表面扫掠,并融合它所经过的一切,使第一个实体按其余实体的形状增长 - 即闵可夫斯基和,用球体对实体进行圆角或加厚就是这样做的。

      仅限实体;2D 形状或路径会抛出错误。

      Parameters

      Returns Promise<JSCADEntity>

      增长后的实体

      const padded = await bitbybit.jscad.booleans.minkowskiSum({ meshes: [cube, sphere] });