Bitbybit Docs
    Preparing search index...

    Class CrossSectionOperations

    Trabajar con secciones transversales Manifold más allá de los booleanos: convertirlas en sólidos extruyendo a lo largo de Z o revolucionando, desfasar sus contornos, envolverlas en una envolvente convexa, simplificarlas, y componerlas y descomponerlas. Cada método devuelve una forma nueva.

    Index

    Constructors

    basic

    • Barre una sección transversal a lo largo de Z hasta un sólido de la altura dada.

      twistDegrees gira la parte superior respecto a la inferior, scaleTopX y scaleTopY la encogen o agrandan, y nDivisions añade secciones intermedias para que las torsiones y los estrechamientos se mantengan suaves; 0 en ambas escalas superiores hace un cono. center centra el sólido en el plano XY en lugar de apoyarlo en él.

      Parameters

      Returns Promise<ManifoldPointer>

      El sólido extruido

      const twisted = await bitbybit.manifold.crossSection.operations.extrude({ crossSection: square, height: 20, nDivisions: 20, twistDegrees: 90, scaleTopX: 0.5, scaleTopY: 0.5, center: false });
      
    • Gira una sección transversal alrededor del eje Y hasta un sólido, como un torno; solo se usa la parte del contorno del lado positivo de X.

      revolveDegrees por debajo de 360 da una vuelta parcial y circularSegments establece cuán redondo es el resultado. El núcleo levanta el resultado a lo largo de Z; matchProfile, true de forma predeterminada, lo vuelve a girar para que coincida con el perfil.

      Parameters

      Returns Promise<ManifoldPointer>

      El sólido revolucionado

      const vase = await bitbybit.manifold.crossSection.operations.revolve({ crossSection: profile, revolveDegrees: 360, circularSegments: 64, matchProfile: true });
      
    • Mueve el contorno de una sección transversal hacia fuera delta, o hacia dentro para un delta negativo, de modo que un contorno exterior crece y un agujero se encoge.

      joinType dice cómo se tratan las esquinas: redondeadas, a escuadra, en inglete o biseladas; miterLimit limita hasta dónde puede llegar un inglete y circularSegments cuán redonda es una esquina redondeada. simplify después limpia los segmentos diminutos.

      Parameters

      Returns Promise<CrossSectionPointer>

      La sección transversal desfasada

      const bigger = await bitbybit.manifold.crossSection.operations.offset({ crossSection: outline, delta: 1, joinType: Bit.Inputs.Manifold.manifoldJoinTypeEnum.round, miterLimit: 2, circularSegments: 32 });
      
    • Elimina los puntos de una sección transversal que están dentro de epsilon respecto a la línea entre sus vecinos, descartando los casi duplicados y los puntos colineales.

      Un epsilon mayor elimina más; ejecútalo después de offset para limpiar los segmentos diminutos que el desplazamiento deja atrás.

      Parameters

      Returns Promise<CrossSectionPointer>

      La sección transversal simplificada

      const cleaner = await bitbybit.manifold.crossSection.operations.simplify({ crossSection: offsetOutline, epsilon: 1e-4 });
      

    composition

    • Empaqueta varias secciones transversales o polígonos en una sola sección transversal sin fusionarlos, el inverso de decompose.

      Parameters

      Returns Promise<CrossSectionPointer>

      Una sección transversal que contiene todas ellas

      const packed = await bitbybit.manifold.crossSection.operations.compose({ polygons: [square, disc] });