Bitbybit Docs
    Preparing search index...

    Class ManifoldCrossSection

    Contours plans dans le noyau Manifold, les formes 2D que operations.extrude et operations.revolve transforment en solides et que slice et project en découpent. Une section est un ou plusieurs polygones fermés dans le plan XY, trous compris ; shapes les construit, booleans les combine, operations les décale, les enveloppe et les extrude, transforms les déplace et evaluate les mesure. Les méthodes ici convertissent entre sections et simples listes de points, et libèrent la mémoire qu'une section occupe.

    Index

    Constructors

    Properties

    create

    • Construit une section à partir d'un polygone donné par des points ; seuls X et Y de chaque point sont utilisés.

      fillRule décide quelles régions d'un polygone qui se croise lui-même comptent comme intérieures ; removeDuplicates supprime d'abord les points consécutifs répétés à tolerance près.

      Parameters

      Returns Promise<CrossSectionPointer>

      La section

      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,
      });
    • Construit une section à partir de plusieurs polygones donnés par des points, par exemple un contour et ses trous ; seuls X et Y de chaque point sont utilisés.

      fillRule décide quelles régions comptent comme intérieures là où les polygones se chevauchent ; removeDuplicates supprime d'abord les points consécutifs répétés à tolerance près.

      Parameters

      Returns Promise<CrossSectionPointer>

      La section

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

    decompose

    • Relit une section sous forme de ses polygones, chacun une liste de points 2D.

      Parameters

      Returns Promise<Vector2[][]>

      Une liste de points 2D par polygone

      const polygons = await bitbybit.manifold.crossSection.crossSectionToPolygons({ crossSection: outline });
      
    • Relit une section sous forme de ses polygones avec des points 3D, Z mis à 0, prêts à dessiner sous forme de polylignes.

      Parameters

      Returns Promise<Point3[][]>

      Une liste de points par polygone

      const polylines = await bitbybit.manifold.crossSection.crossSectionToPoints({ crossSection: outline });
      
    • Relit plusieurs sections sous forme de leurs polygones, comme crossSectionToPolygons le fait pour une seule.

      Parameters

      Returns Promise<Vector2[][][]>

      Une liste de polygones par section, dans le même ordre

      const polygons = await bitbybit.manifold.crossSection.crossSectionsToPolygons({ crossSections: [outline, hole] });
      
    • Relit plusieurs sections sous forme de polygones avec des points 3D, comme crossSectionToPoints le fait pour une seule.

      Parameters

      Returns Promise<number[][][][]>

      Une liste de polygones de points par section, dans le même ordre

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