Bitbybit Docs
    Preparing search index...

    Class JSCADShapes

    Construire des solides JSCAD : cubes, pavés, sphères, ellipsoïdes, cylindres, un tore et un solide à partir de points de polygones bruts, chacun avec une variante qui place une copie sur chaque point d'une liste. Le noyau garde Z comme son propre axe, donc un cylindre se dresse le long de Z et un tore repose à plat dans le plan XY ; chaque solide est un maillage fermé de polygones et segments dit combien de facettes planes approchent une surface ronde.

    Index

    Constructors

    primitives

    • Construit un cube de longueur d'arête size centré sur center, avec ses faces parallèles aux axes.

      Parameters

      Returns Promise<JSCADEntity>

      Le solide cube

      const cube = await bitbybit.jscad.shapes.cube({ center: [0, 0, 0], size: 10 });
      
    • Construit une boîte centrée sur center avec width le long de X, height le long de Y et length le long de Z, ses faces parallèles aux axes.

      Parameters

      • inputs: CuboidDto

        Le centre et les trois longueurs de côté

      Returns Promise<JSCADEntity>

      Le solide boîte

      const box = await bitbybit.jscad.shapes.cuboid({ center: [0, 0, 0], width: 10, height: 5, length: 20 });
      
    • Construit un cylindre à section elliptique dont les rayons peuvent différer aux deux extrémités, debout le long de Z et centré sur center.

      startRadius est le rayon X et Y à l'extrémité du bas et endRadius au sommet, des paires inégales font donc un solide effilé ou en forme de cône ; height est répartie également au-dessus et en dessous de center.

      Parameters

      • inputs: CylidnerEllipticDto

        Le centre, la hauteur, les deux paires de rayons et le nombre de segments

      Returns Promise<JSCADEntity>

      Le solide cylindre elliptique

      const cone = await bitbybit.jscad.shapes.cylinderElliptic({ center: [0, 0, 0], height: 10, startRadius: [4, 2], endRadius: [1, 0.5], segments: 32 });
      
    • Construit un cylindre rond du radius donné debout le long de Z, avec height répartie également au-dessus et en dessous de center.

      segments est le nombre de côtés plats autour de lui ; plus il y en a, plus il est rond.

      Parameters

      • inputs: CylidnerDto

        Le centre, la hauteur, le rayon et le nombre de segments

      Returns Promise<JSCADEntity>

      Le solide cylindre

      const cylinder = await bitbybit.jscad.shapes.cylinder({ center: [0, 0, 0], height: 10, radius: 3, segments: 32 });
      
    • Construit un ellipsoïde, une sphère étirée séparément le long de X, Y et Z, centré sur center.

      radius contient les trois demi-tailles dans l'ordre [x, y, z] ; des valeurs égales font une sphère.

      Parameters

      • inputs: EllipsoidDto

        Le centre, les trois rayons et le nombre de segments

      Returns Promise<JSCADEntity>

      Le solide ellipsoïde

      const egg = await bitbybit.jscad.shapes.ellipsoid({ center: [0, 0, 0], radius: [5, 3, 8], segments: 32 });
      
    • Construit une sphère à partir de triangles de taille régulière, comme on construit un dôme géodésique, centrée sur center.

      frequency est la finesse de subdivision des vingt faces de départ ; elle est utilisée en multiples entiers de 6 et doit valoir au moins 6, et des valeurs plus élevées donnent une sphère plus ronde.

      Parameters

      Returns Promise<JSCADEntity>

      Le solide sphère géodésique

      const dome = await bitbybit.jscad.shapes.geodesicSphere({ center: [0, 0, 0], radius: 5, frequency: 12 });
      
    • Construit une boîte dont toutes les arêtes et tous les coins sont arrondis de roundRadius, centrée sur center avec width le long de X, height le long de Y et length le long de Z.

      roundRadius doit être inférieur à la moitié du plus petit côté, sinon une erreur est levée ; segments règle la finesse des facettes de l'arrondi.

      Parameters

      • inputs: RoundedCuboidDto

        Le centre, les trois longueurs de côté, le rayon d'arrondi et le nombre de segments

      Returns Promise<JSCADEntity>

      Le solide boîte arrondie

      const soft = await bitbybit.jscad.shapes.roundedCuboid({ center: [0, 0, 0], width: 10, height: 5, length: 20, roundRadius: 1, segments: 16 });
      
    • Construit un cylindre debout le long de Z dont les deux bords sont arrondis de roundRadius, avec height répartie également au-dessus et en dessous de center.

      height doit être supérieure au double de roundRadius, sinon une erreur est levée.

      Parameters

      • inputs: RoundedCylidnerDto

        Le centre, le rayon d'arrondi, la hauteur, le rayon et le nombre de segments

      Returns Promise<JSCADEntity>

      Le solide cylindre arrondi

      const pill = await bitbybit.jscad.shapes.roundedCylinder({ center: [0, 0, 0], roundRadius: 1, height: 10, radius: 3, segments: 32 });
      
    • Construit une sphère du radius donné centrée sur center ; segments est le nombre de facettes autour d'elle, plus il y en a, plus elle est ronde.

      Parameters

      Returns Promise<JSCADEntity>

      Le solide sphère

      const ball = await bitbybit.jscad.shapes.sphere({ center: [0, 0, 0], radius: 5, segments: 32 });
      
    • Construit un tore, un anneau à section ronde, posé à plat dans le plan XY autour de center avec Z passant par son trou.

      outerRadius est la distance du centre au milieu du tube et innerRadius le rayon du tube lui-même, qui doit être plus petit. Les rotations et startAngle sont en degrés ; une outerRotation inférieure à 360 laisse l'anneau ouvert.

      Parameters

      • inputs: Bit.Inputs.JSCAD.TorusDto

        Le centre, les deux rayons, les deux nombres de segments, les deux rotations et l'angle de départ

      Returns Promise<JSCADEntity>

      Le solide tore

      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

    • Construit un cube de longueur d'arête size sur chaque point de centers, dans le même ordre.

      Parameters

      Returns Promise<JSCADEntity[]>

      Un cube par point central

      const cubes = await bitbybit.jscad.shapes.cubesOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0], [40, 0, 0]], size: 10 });
      
    • Construit une boîte des width, height et length donnés sur chaque point de centers, dans le même ordre.

      Parameters

      Returns Promise<JSCADEntity[]>

      Une boîte par point central

      const boxes = await bitbybit.jscad.shapes.cuboidsOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], width: 10, height: 5, length: 20 });
      
    • Construit un cylindre elliptique des rayons et de la hauteur donnés sur chaque point de centers, dans le même ordre, comme cylinderElliptic le fait pour un seul.

      Parameters

      Returns Promise<JSCADEntity[]>

      Un cylindre elliptique par point 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 });
      
    • Construit un cylindre des radius et height donnés sur chaque point de centers, dans le même ordre, comme cylinder le fait pour un seul.

      Parameters

      • inputs: CylidnerCentersDto

        Les points centraux, la hauteur, le rayon et le nombre de segments

      Returns Promise<JSCADEntity[]>

      Un cylindre par point central

      const posts = await bitbybit.jscad.shapes.cylindersOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0], [40, 0, 0]], height: 10, radius: 1, segments: 16 });
      
    • Construit un ellipsoïde des rayons donnés sur chaque point de centers, dans le même ordre, comme ellipsoid le fait pour un seul.

      Parameters

      Returns Promise<JSCADEntity[]>

      Un ellipsoïde par point central

      const eggs = await bitbybit.jscad.shapes.ellipsoidsOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], radius: [5, 3, 8], segments: 32 });
      
    • Construit une sphère géodésique du radius donné sur chaque point de centers, dans le même ordre, comme geodesicSphere le fait pour une seule.

      Parameters

      Returns Promise<JSCADEntity[]>

      Une sphère géodésique par point central

      const domes = await bitbybit.jscad.shapes.geodesicSpheresOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], radius: 5, frequency: 12 });
      
    • Construit une boîte arrondie des côtés et de l'arrondi donnés sur chaque point de centers, dans le même ordre, comme roundedCuboid le fait pour une seule.

      Parameters

      • inputs: RoundedCuboidCentersDto

        Les points centraux, les trois longueurs de côté, le rayon d'arrondi et le nombre de segments

      Returns Promise<JSCADEntity[]>

      Une boîte arrondie par point 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 });
      
    • Construit un cylindre arrondi de la taille et de l'arrondi donnés sur chaque point de centers, dans le même ordre, comme roundedCylinder le fait pour un seul.

      Parameters

      Returns Promise<JSCADEntity[]>

      Un cylindre arrondi par point central

      const pills = await bitbybit.jscad.shapes.roundedCylindersOnCenterPoints({ centers: [[0, 0, 0], [20, 0, 0]], roundRadius: 1, height: 10, radius: 3, segments: 32 });
      
    • Construit une sphère du radius donné sur chaque point de centers, dans le même ordre, comme sphere le fait pour une seule.

      Parameters

      Returns Promise<JSCADEntity[]>

      Une sphère par point central

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

    shapes

    • Construit un solide à partir de ses faces, chacune donnée comme une liste de points qui font le tour de la face.

      Listez les points de chaque face dans le sens horaire vus de l'extérieur du solide ; les faces doivent fermer le solide pour que les booléens fonctionnent dessus. Chaque liste est lue dans l'ordre inverse et l'entrée n'est pas modifiée.

      Parameters

      Returns Promise<JSCADEntity>

      Le solide

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