Bitbybit Docs
    Bereite Suchindex vor...

    Klasse JSCADShapes

    Bauen von JSCAD-Volumenkörpern: Würfel, Quader, Kugeln, Ellipsoide, Zylinder, ein Torus und ein Volumenkörper aus rohen Polygonpunkten, jeweils mit einer Variante, die eine Kopie auf jeden Punkt einer Liste setzt. Der Kernel behält Z als eigene Achse, daher steht ein Zylinder entlang Z und ein Torus liegt flach in der XY-Ebene; jeder Volumenkörper ist ein geschlossenes Mesh aus Polygonen, und segments sagt, wie viele ebene Facetten eine runde Oberfläche annähern.

    Index

    Konstruktoren

    primitives

    • Baut einen Würfel mit der Kantenlänge size, zentriert auf center, mit seinen Flächen parallel zu den Achsen.

      Parameter

      Rückgabewert Promise<JSCADEntity>

      Der Würfel-Volumenkörper

      const cube = await bitbybit.jscad.shapes.cube({ center: [0, 0, 0], size: 10 });
      
    • Baut einen Quader, zentriert auf center, mit width entlang X, height entlang Y und length entlang Z, seine Flächen parallel zu den Achsen.

      Parameter

      • inputs: CuboidDto

        Der Mittelpunkt und die drei Seitenlängen

      Rückgabewert Promise<JSCADEntity>

      Der Quader-Volumenkörper

      const box = await bitbybit.jscad.shapes.cuboid({ center: [0, 0, 0], width: 10, height: 5, length: 20 });
      
    • Baut einen Zylinder mit elliptischem Querschnitt, dessen Radien sich an den beiden Enden unterscheiden können, entlang Z stehend und auf center zentriert.

      startRadius ist der X- und Y-Radius am unteren Ende und endRadius am oberen, sodass ungleiche Paare einen verjüngten oder kegelartigen Volumenkörper ergeben; height wird gleichmäßig über und unter center aufgeteilt.

      Parameter

      • inputs: CylidnerEllipticDto

        Der Mittelpunkt, die Höhe, die beiden Radienpaare und die Segmentanzahl

      Rückgabewert Promise<JSCADEntity>

      Der elliptische Zylinder-Volumenkörper

      const cone = await bitbybit.jscad.shapes.cylinderElliptic({ center: [0, 0, 0], height: 10, startRadius: [4, 2], endRadius: [1, 0.5], segments: 32 });
      
    • Baut einen runden Zylinder mit dem gegebenen radius, entlang Z stehend, mit height gleichmäßig über und unter center aufgeteilt.

      segments ist die Anzahl der flachen Seiten um ihn herum; mehr macht ihn runder.

      Parameter

      • inputs: CylidnerDto

        Der Mittelpunkt, die Höhe, der Radius und die Segmentanzahl

      Rückgabewert Promise<JSCADEntity>

      Der Zylinder-Volumenkörper

      const cylinder = await bitbybit.jscad.shapes.cylinder({ center: [0, 0, 0], height: 10, radius: 3, segments: 32 });
      
    • Baut ein Ellipsoid, eine getrennt entlang X, Y und Z gestreckte Kugel, zentriert auf center.

      radius enthält die drei halben Größen in der Reihenfolge [x, y, z]; gleiche Werte ergeben eine Kugel.

      Parameter

      • inputs: EllipsoidDto

        Der Mittelpunkt, die drei Radien und die Segmentanzahl

      Rückgabewert Promise<JSCADEntity>

      Der Ellipsoid-Volumenkörper

      const egg = await bitbybit.jscad.shapes.ellipsoid({ center: [0, 0, 0], radius: [5, 3, 8], segments: 32 });
      
    • Baut eine Kugel aus gleichmäßig großen Dreiecken, so wie eine geodätische Kuppel gebaut wird, zentriert auf center.

      frequency ist, wie fein die zwanzig Ausgangsflächen unterteilt werden; es wird in ganzen Vielfachen von 6 verwendet und muss mindestens 6 sein, und höhere Werte ergeben eine rundere Kugel.

      Parameter

      Rückgabewert Promise<JSCADEntity>

      Der geodätische Kugel-Volumenkörper

      const dome = await bitbybit.jscad.shapes.geodesicSphere({ center: [0, 0, 0], radius: 5, frequency: 12 });
      
    • Baut einen Quader, dessen Kanten und Ecken alle um roundRadius gerundet sind, zentriert auf center mit width entlang X, height entlang Y und length entlang Z.

      roundRadius muss kleiner sein als die Hälfte der kleinsten Seite, sonst wird ein Fehler ausgelöst; segments legt fest, wie glatt die Rundung facettiert ist.

      Parameter

      • inputs: RoundedCuboidDto

        Der Mittelpunkt, die drei Seitenlängen, der Rundungsradius und die Segmentanzahl

      Rückgabewert Promise<JSCADEntity>

      Der abgerundete Quader-Volumenkörper

      const soft = await bitbybit.jscad.shapes.roundedCuboid({ center: [0, 0, 0], width: 10, height: 5, length: 20, roundRadius: 1, segments: 16 });
      
    • Baut einen entlang Z stehenden Zylinder, dessen beide Ränder um roundRadius gerundet sind, mit height gleichmäßig über und unter center aufgeteilt.

      height muss mehr als das Doppelte von roundRadius sein, sonst wird ein Fehler ausgelöst.

      Parameter

      • inputs: RoundedCylidnerDto

        Der Mittelpunkt, der Rundungsradius, die Höhe, der Radius und die Segmentanzahl

      Rückgabewert Promise<JSCADEntity>

      Der abgerundete Zylinder-Volumenkörper

      const pill = await bitbybit.jscad.shapes.roundedCylinder({ center: [0, 0, 0], roundRadius: 1, height: 10, radius: 3, segments: 32 });
      
    • Baut eine Kugel mit dem gegebenen radius, zentriert auf center; segments ist die Anzahl der Facetten um sie herum, sodass mehr sie runder macht.

      Parameter

      Rückgabewert Promise<JSCADEntity>

      Der Kugel-Volumenkörper

      const ball = await bitbybit.jscad.shapes.sphere({ center: [0, 0, 0], radius: 5, segments: 32 });
      
    • Erstellt einen Torus, einen Ring mit rundem Querschnitt, der flach in der XY-Ebene um center liegt, mit Z durch sein Loch.

      outerRadius ist der Abstand vom Mittelpunkt zur Mitte des Schlauchs und innerRadius der Radius des Schlauchs selbst, der kleiner sein muss. Drehungen und startAngle sind in Grad; eine outerRotation unter 360 lässt den Ring offen.

      Parameter

      • inputs: Bit.Inputs.JSCAD.TorusDto

        Der Mittelpunkt, die beiden Radien, die beiden Segmentanzahlen, die beiden Drehungen und der Startwinkel

      Rückgabewert Promise<JSCADEntity>

      Der Torus-Volumenkörper

      const ring = await bitbybit.jscad.shapes.torus({ center: [0, 0, 0], innerRadius: 1, outerRadius: 5, innerSegments: 16, outerSegments: 48, innerRotation: 0, outerRotation: 360, startAngle: 0 });
      

    primitives on centers

    • Baut einen Würfel mit der Kantenlänge size auf jedem Punkt von centers, in derselben Reihenfolge.

      Parameter

      Rückgabewert Promise<JSCADEntity[]>

      Ein Würfel pro Mittelpunkt

      const cubes = await bitbybit.jscad.shapes.cubesOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0], [40, 0, 0]], size: 10 });
      
    • Baut einen Quader mit den gegebenen width, height und length auf jedem Punkt von centers, in derselben Reihenfolge.

      Parameter

      Rückgabewert Promise<JSCADEntity[]>

      Ein Quader pro Mittelpunkt

      const boxes = await bitbybit.jscad.shapes.cuboidsOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], width: 10, height: 5, length: 20 });
      
    • Baut einen elliptischen Zylinder mit den gegebenen Radien und der gegebenen Höhe auf jedem Punkt von centers, in derselben Reihenfolge, wie cylinderElliptic es für einen tut.

      Parameter

      Rückgabewert Promise<JSCADEntity[]>

      Ein elliptischer Zylinder pro Mittelpunkt

      const cones = await bitbybit.jscad.shapes.cylinderEllipticOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], height: 10, startRadius: [4, 2], endRadius: [1, 0.5], segments: 32 });
      
    • Baut einen Zylinder mit dem gegebenen radius und height auf jedem Punkt von centers, in derselben Reihenfolge, wie cylinder es für einen tut.

      Parameter

      Rückgabewert Promise<JSCADEntity[]>

      Ein Zylinder pro Mittelpunkt

      const posts = await bitbybit.jscad.shapes.cylindersOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0], [40, 0, 0]], height: 10, radius: 1, segments: 16 });
      
    • Baut ein Ellipsoid mit den gegebenen Radien auf jedem Punkt von centers, in derselben Reihenfolge, wie ellipsoid es für eines tut.

      Parameter

      Rückgabewert Promise<JSCADEntity[]>

      Ein Ellipsoid pro Mittelpunkt

      const eggs = await bitbybit.jscad.shapes.ellipsoidsOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], radius: [5, 3, 8], segments: 32 });
      
    • Baut eine geodätische Kugel mit dem gegebenen radius auf jedem Punkt von centers, in derselben Reihenfolge, wie geodesicSphere es für eine tut.

      Parameter

      Rückgabewert Promise<JSCADEntity[]>

      Eine geodätische Kugel pro Mittelpunkt

      const domes = await bitbybit.jscad.shapes.geodesicSpheresOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], radius: 5, frequency: 12 });
      
    • Baut einen gerundeten Quader mit den gegebenen Seiten und der gegebenen Rundung auf jedem Punkt von centers, in derselben Reihenfolge, wie roundedCuboid es für einen tut.

      Parameter

      Rückgabewert Promise<JSCADEntity[]>

      Ein abgerundeter Quader pro Mittelpunkt

      const softBoxes = await bitbybit.jscad.shapes.roundedCuboidsOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], width: 10, height: 5, length: 20, roundRadius: 1, segments: 16 });
      
    • Baut einen gerundeten Zylinder mit der gegebenen Größe und Rundung auf jedem Punkt von centers, in derselben Reihenfolge, wie roundedCylinder es für einen tut.

      Parameter

      Rückgabewert Promise<JSCADEntity[]>

      Ein abgerundeter Zylinder pro Mittelpunkt

      const pills = await bitbybit.jscad.shapes.roundedCylindersOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], roundRadius: 1, height: 10, radius: 3, segments: 32 });
      
    • Baut eine Kugel mit dem gegebenen radius auf jedem Punkt von centers, in derselben Reihenfolge, wie sphere es für eine tut.

      Parameter

      Rückgabewert Promise<JSCADEntity[]>

      Eine Kugel pro Mittelpunkt

      const balls = await bitbybit.jscad.shapes.spheresOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0], [40, 0, 0]], radius: 5, segments: 32 });
      

    shapes

    • Erstellt einen Volumenkörper aus seinen Flächen, jede als Liste von Punkten gegeben, die um die Fläche herumlaufen.

      Listen Sie die Punkte jeder Fläche im Uhrzeigersinn von außerhalb des Volumenkörpers gesehen auf; die Flächen müssen den Volumenkörper schließen, damit boolesche Operationen darauf funktionieren. Jede Liste wird in umgekehrter Reihenfolge gelesen und die Eingabe wird nicht verändert.

      Parameter

      Rückgabewert Promise<JSCADEntity>

      Der Volumenkörper

      const tetrahedron = await bitbybit.jscad.shapes.fromPolygonPoints({ polygonPoints: [
      [[0, 0, 0], [10, 0, 0], [0, 10, 0]],
      [[0, 0, 0], [0, 10, 0], [0, 0, 10]],
      [[0, 0, 0], [0, 0, 10], [10, 0, 0]],
      [[10, 0, 0], [0, 0, 10], [0, 10, 0]],
      ] });