Bitbybit Docs
    Preparing search index...

    Class ManifoldCrossSection

    Contornos planos en el núcleo Manifold, las formas 2D que operations.extrude y operations.revolve convierten en sólidos y que slice y project recortan de ellos. Una sección transversal es uno o más polígonos cerrados en el plano XY, agujeros incluidos; shapes las construye, booleans las combina, operations las desfasa, envuelve y extruye, transforms las mueve y evaluate las mide. Los métodos de aquí convierten entre secciones transversales y listas de puntos simples, y liberan la memoria que ocupa una sección transversal.

    Index

    Constructors

    Properties

    create

    • Construye una sección transversal a partir de un polígono dado como puntos; solo se usan X e Y de cada punto.

      fillRule decide qué regiones de un polígono que se cruza a sí mismo cuentan como interior; removeDuplicates descarta primero los puntos consecutivos repetidos dentro de tolerance.

      Parameters

      Returns Promise<CrossSectionPointer>

      La sección transversal

      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,
      });
    • Construye una sección transversal a partir de varios polígonos dados como puntos, por ejemplo un contorno y sus agujeros; solo se usan X e Y de cada punto.

      fillRule decide qué regiones cuentan como interior donde los polígonos se solapan; removeDuplicates descarta primero los puntos consecutivos repetidos dentro de tolerance.

      Parameters

      Returns Promise<CrossSectionPointer>

      La sección transversal

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

    decompose

    • Lee de vuelta una sección transversal como sus polígonos, cada uno una lista de puntos 2D.

      Parameters

      Returns Promise<Vector2[][]>

      Una lista de puntos 2D por polígono

      const polygons = await bitbybit.manifold.crossSection.crossSectionToPolygons({ crossSection: outline });
      
    • Lee de vuelta una sección transversal como sus polígonos con puntos 3D, con Z en 0, listos para dibujar como polilíneas.

      Parameters

      Returns Promise<Point3[][]>

      Una lista de puntos por polígono

      const polylines = await bitbybit.manifold.crossSection.crossSectionToPoints({ crossSection: outline });
      
    • Lee de vuelta varias secciones transversales como sus polígonos, como hace crossSectionToPolygons con una.

      Parameters

      Returns Promise<Vector2[][][]>

      Una lista de polígonos por sección transversal, en el mismo orden

      const polygons = await bitbybit.manifold.crossSection.crossSectionsToPolygons({ crossSections: [outline, hole] });
      
    • Lee de vuelta varias secciones transversales como polígonos con puntos 3D, como hace crossSectionToPoints con una.

      Parameters

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

      Una lista de polígonos de puntos por sección transversal, en el mismo orden

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