Bitbybit Docs
    Bereite Suchindex vor...

    Klasse ManifoldCrossSection

    Ebene Umrisse im Manifold-Kernel, die 2D-Formen, die operations.extrude und operations.revolve in Volumenkörper verwandeln und die slice und project aus ihnen herausschneiden. Ein Querschnitt ist ein oder mehrere geschlossene Polygone in der XY-Ebene, Löcher eingeschlossen; shapes baut sie, booleans kombiniert sie, operations versetzt, hüllt und extrudiert sie, transforms bewegt sie und evaluate misst sie. Die Methoden hier wandeln zwischen Querschnitten und einfachen Punktlisten um und geben den Speicher frei, den ein Querschnitt hält.

    Index

    Konstruktoren

    Eigenschaften

    create

    • Baut einen Querschnitt aus einem als Punkte gegebenen Polygon; nur X und Y jedes Punkts werden verwendet.

      fillRule entscheidet, welche Bereiche eines sich selbst kreuzenden Polygons als innen gelten; removeDuplicates verwirft zuerst aufeinanderfolgende wiederholte Punkte innerhalb von tolerance.

      Parameter

      Rückgabewert Promise<CrossSectionPointer>

      Der Querschnitt

      const outline = await bitbybit.manifold.crossSection.crossSectionFromPoints({
      points: [[0, 0, 0], [10, 0, 0], [10, 10, 0], [0, 10, 0]],
      fillRule: Bit.Inputs.Manifold.fillRuleEnum.positive,
      removeDuplicates: false,
      tolerance: 1e-7,
      });
    • Baut einen Querschnitt aus mehreren als Punkte gegebenen Polygonen, zum Beispiel einem Umriss und seinen Löchern; nur X und Y jedes Punkts werden verwendet.

      fillRule entscheidet, welche Bereiche als innen gelten, wo sich Polygone überlappen; removeDuplicates verwirft zuerst aufeinanderfolgende wiederholte Punkte innerhalb von tolerance.

      Parameter

      Rückgabewert Promise<CrossSectionPointer>

      Der Querschnitt

      const plate = await bitbybit.manifold.crossSection.crossSectionFromPolygons({
      polygonPoints: [outerPoints, holePoints],
      fillRule: Bit.Inputs.Manifold.fillRuleEnum.evenOdd,
      removeDuplicates: false,
      tolerance: 1e-7,
      });

    decompose

    • Liest einen Querschnitt als seine Polygone zurück, jedes eine Liste von 2D-Punkten.

      Parameter

      Rückgabewert Promise<Vector2[][]>

      Eine Liste von 2D-Punkten pro Polygon

      const polygons = await bitbybit.manifold.crossSection.crossSectionToPolygons({ crossSection: outline });
      
    • Liest einen Querschnitt als seine Polygone mit 3D-Punkten zurück, Z auf 0 gesetzt, bereit zum Zeichnen als Polylinien.

      Parameter

      Rückgabewert Promise<Point3[][]>

      Eine Punktliste pro Polygon

      const polylines = await bitbybit.manifold.crossSection.crossSectionToPoints({ crossSection: outline });
      
    • Liest mehrere Querschnitte als ihre Polygone zurück, wie crossSectionToPolygons es für einen tut.

      Parameter

      Rückgabewert Promise<Vector2[][][]>

      Eine Polygonliste pro Querschnitt, in derselben Reihenfolge

      const polygons = await bitbybit.manifold.crossSection.crossSectionsToPolygons({ crossSections: [outline, hole] });
      
    • Liest mehrere Querschnitte als Polygone mit 3D-Punkten zurück, wie crossSectionToPoints es für einen tut.

      Parameter

      Rückgabewert Promise<number[][][][]>

      Eine Liste von Punktpolygonen pro Querschnitt, in derselben Reihenfolge

      const polylines = await bitbybit.manifold.crossSection.crossSectionsToPoints({ crossSections: [outline, hole] });