Bitbybit Docs
    Preparing search index...

    Class JSCADShapes

    Construir sólidos JSCAD: cubos, cuboides, esferas, elipsoides, cilindros, un toro y un sólido a partir de puntos de polígono en bruto, cada uno con una variante que coloca una copia en cada punto de una lista. El núcleo mantiene Z como su propio eje, así que un cilindro se levanta a lo largo de Z y un toro se apoya plano en el plano XY; cada sólido es una malla cerrada de polígonos y segments dice cuántas facetas planas aproximan una superficie redonda.

    Index

    Constructors

    primitives

    • Construye un cubo de arista size centrado en center, con sus caras paralelas a los ejes.

      Parameters

      Returns Promise<JSCADEntity>

      El sólido del cubo

      const cube = await bitbybit.jscad.shapes.cube({ center: [0, 0, 0], size: 10 });
      
    • Construye una caja centrada en center con width a lo largo de X, height a lo largo de Y y length a lo largo de Z, con sus caras paralelas a los ejes.

      Parameters

      • inputs: CuboidDto

        El centro y las tres longitudes de los lados

      Returns Promise<JSCADEntity>

      El sólido de la caja

      const box = await bitbybit.jscad.shapes.cuboid({ center: [0, 0, 0], width: 10, height: 5, length: 20 });
      
    • Construye un cilindro de sección elíptica cuyos radios pueden diferir en los dos extremos, erguido a lo largo de Z y centrado en center.

      startRadius es el radio X e Y en el extremo inferior y endRadius en el superior, así que los pares desiguales hacen un sólido cónico o afilado; height se reparte por igual por encima y por debajo de center.

      Parameters

      • inputs: CylidnerEllipticDto

        El centro, la altura, los dos pares de radios y el número de segmentos

      Returns Promise<JSCADEntity>

      El sólido del cilindro elíptico

      const cone = await bitbybit.jscad.shapes.cylinderElliptic({ center: [0, 0, 0], height: 10, startRadius: [4, 2], endRadius: [1, 0.5], segments: 32 });
      
    • Construye un cilindro redondo del radius dado erguido a lo largo de Z, con height repartida por igual por encima y por debajo de center.

      segments es el número de lados planos a su alrededor; más lo hace más redondo.

      Parameters

      • inputs: CylidnerDto

        El centro, la altura, el radio y el número de segmentos

      Returns Promise<JSCADEntity>

      El sólido del cilindro

      const cylinder = await bitbybit.jscad.shapes.cylinder({ center: [0, 0, 0], height: 10, radius: 3, segments: 32 });
      
    • Construye un elipsoide, una esfera estirada por separado a lo largo de X, Y y Z, centrado en center.

      radius contiene los tres semitamaños en el orden [x, y, z]; valores iguales hacen una esfera.

      Parameters

      • inputs: EllipsoidDto

        El centro, los tres radios y el número de segmentos

      Returns Promise<JSCADEntity>

      El sólido del elipsoide

      const egg = await bitbybit.jscad.shapes.ellipsoid({ center: [0, 0, 0], radius: [5, 3, 8], segments: 32 });
      
    • Construye una esfera a partir de triángulos de tamaño uniforme, como se construye una cúpula geodésica, centrada en center.

      frequency es con qué finura se subdividen las veinte caras iniciales; se usa en múltiplos enteros de 6 y debe ser al menos 6, y los valores más altos dan una esfera más redonda.

      Parameters

      Returns Promise<JSCADEntity>

      El sólido de la esfera geodésica

      const dome = await bitbybit.jscad.shapes.geodesicSphere({ center: [0, 0, 0], radius: 5, frequency: 12 });
      
    • Construye una caja con todas sus aristas y esquinas redondeadas con roundRadius, centrada en center con width a lo largo de X, height a lo largo de Y y length a lo largo de Z.

      roundRadius debe ser menor que la mitad del lado más corto o se lanza un error; segments establece con qué suavidad se faceta el redondeo.

      Parameters

      • inputs: RoundedCuboidDto

        El centro, las tres longitudes de los lados, el radio de redondeo y el número de segmentos

      Returns Promise<JSCADEntity>

      El sólido de la caja redondeada

      const soft = await bitbybit.jscad.shapes.roundedCuboid({ center: [0, 0, 0], width: 10, height: 5, length: 20, roundRadius: 1, segments: 16 });
      
    • Construye un cilindro erguido a lo largo de Z cuyos dos bordes están redondeados con roundRadius, con height repartida por igual por encima y por debajo de center.

      height debe ser mayor que el doble de roundRadius o se lanza un error.

      Parameters

      • inputs: RoundedCylidnerDto

        El centro, el radio de redondeo, la altura, el radio y el número de segmentos

      Returns Promise<JSCADEntity>

      El sólido del cilindro redondeado

      const pill = await bitbybit.jscad.shapes.roundedCylinder({ center: [0, 0, 0], roundRadius: 1, height: 10, radius: 3, segments: 32 });
      
    • Construye una esfera del radius dado centrada en center; segments es el número de facetas a su alrededor, así que más la hace más redonda.

      Parameters

      Returns Promise<JSCADEntity>

      El sólido de la esfera

      const ball = await bitbybit.jscad.shapes.sphere({ center: [0, 0, 0], radius: 5, segments: 32 });
      
    • Construye un toro, un anillo de sección redonda, tumbado en el plano XY alrededor de center con Z a través de su agujero.

      outerRadius es la distancia del centro al centro del tubo e innerRadius el radio del propio tubo, que debe ser menor. Las rotaciones y startAngle están en grados; una outerRotation por debajo de 360 deja el anillo abierto.

      Parameters

      • inputs: Bit.Inputs.JSCAD.TorusDto

        El centro, los dos radios, los dos números de segmentos, las dos rotaciones y el ángulo inicial

      Returns Promise<JSCADEntity>

      El sólido del toro

      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

    • Construye un cubo de arista size en cada punto de centers, en el mismo orden.

      Parameters

      • inputs: CubeCentersDto

        Los puntos centrales y la longitud de la arista

      Returns Promise<JSCADEntity[]>

      Un cubo por punto central

      const cubes = await bitbybit.jscad.shapes.cubesOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0], [40, 0, 0]], size: 10 });
      
    • Construye una caja de los width, height y length dados en cada punto de centers, en el mismo orden.

      Parameters

      • inputs: CuboidCentersDto

        Los puntos centrales y las tres longitudes de los lados

      Returns Promise<JSCADEntity[]>

      Una caja por punto central

      const boxes = await bitbybit.jscad.shapes.cuboidsOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], width: 10, height: 5, length: 20 });
      
    • Construye un cilindro elíptico con los radios y la altura dados en cada punto de centers, en el mismo orden, como hace cylinderElliptic con uno.

      Parameters

      Returns Promise<JSCADEntity[]>

      Un cilindro elíptico por punto central

      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 });
      
    • Construye un cilindro del radius y la height dados en cada punto de centers, en el mismo orden, como hace cylinder con uno.

      Parameters

      • inputs: CylidnerCentersDto

        Los puntos centrales, la altura, el radio y el número de segmentos

      Returns Promise<JSCADEntity[]>

      Un cilindro por punto central

      const posts = await bitbybit.jscad.shapes.cylindersOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0], [40, 0, 0]], height: 10, radius: 1, segments: 16 });
      
    • Construye un elipsoide con los radios dados en cada punto de centers, en el mismo orden, como hace ellipsoid con uno.

      Parameters

      Returns Promise<JSCADEntity[]>

      Un elipsoide por punto central

      const eggs = await bitbybit.jscad.shapes.ellipsoidsOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], radius: [5, 3, 8], segments: 32 });
      
    • Construye una esfera geodésica del radius dado en cada punto de centers, en el mismo orden, como hace geodesicSphere con una.

      Parameters

      Returns Promise<JSCADEntity[]>

      Una esfera geodésica por punto central

      const domes = await bitbybit.jscad.shapes.geodesicSpheresOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], radius: 5, frequency: 12 });
      
    • Construye una caja redondeada con los lados y el redondeo dados en cada punto de centers, en el mismo orden, como hace roundedCuboid con una.

      Parameters

      • inputs: RoundedCuboidCentersDto

        Los puntos centrales, las tres longitudes de los lados, el radio de redondeo y el número de segmentos

      Returns Promise<JSCADEntity[]>

      Una caja redondeada por punto central

      const softBoxes = await bitbybit.jscad.shapes.roundedCuboidsOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], width: 10, height: 5, length: 20, roundRadius: 1, segments: 16 });
      
    • Construye un cilindro redondeado con el tamaño y el redondeo dados en cada punto de centers, en el mismo orden, como hace roundedCylinder con uno.

      Parameters

      Returns Promise<JSCADEntity[]>

      Un cilindro redondeado por punto central

      const pills = await bitbybit.jscad.shapes.roundedCylindersOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], roundRadius: 1, height: 10, radius: 3, segments: 32 });
      
    • Construye una esfera del radius dado en cada punto de centers, en el mismo orden, como hace sphere con una.

      Parameters

      • inputs: SphereCentersDto

        Los puntos centrales, el radio y el número de segmentos

      Returns Promise<JSCADEntity[]>

      Una esfera por punto central

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

    shapes

    • Construye un sólido a partir de sus caras, cada una dada como una lista de puntos que recorren la cara.

      Liste los puntos de cada cara en sentido horario vistos desde fuera del sólido; las caras deben cerrar el sólido para que las operaciones booleanas funcionen sobre él. Cada lista se lee en orden inverso y la entrada no se modifica.

      Parameters

      Returns Promise<JSCADEntity>

      El sólido

      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]],
      ] });