Bitbybit Docs
    Preparing search index...

    Class BabylonMeshBuilder

    Les primitives de maillage propres à BabylonJS, construites directement dans la scène comme des maillages prêts au rendu plutôt que par un noyau CAO : boîtes, sphères, disques, tores, polygones, tubes, polyèdres, capsules, cylindres, extrusions, rubans, révolutions et sols. Elles sont rapides à faire et peu coûteuses à dessiner mais ne portent aucune géométrie exacte, utilisez donc les noyaux quand la forme doit être mesurée, coupée ou exportée. Chaque constructeur centre son maillage sur l'origine, définit sideOrientation et l'enregistre pour les ombres sauf si enableShadows est faux.

    Index

    Constructors

    create simple

    • Construit une boîte centrée sur l'origine avec width le long de X, height le long de Y et depth le long de Z.

      Parameters

      • inputs: CreateBoxDto

        Les trois tailles, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage de la boîte

      const box = bitbybit.babylon.meshBuilder.createBox({ width: 10, height: 5, depth: 20, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.frontside, enableShadows: true });
      
    • Construit un cube centré sur l'origine dont chaque arête mesure size.

      Parameters

      • inputs: CreateCubeDto

        La longueur d'arête, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage du cube

      const cube = bitbybit.babylon.meshBuilder.createCube({ size: 10, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.frontside, enableShadows: true });
      
    • Construit un carré plat de côté size centré sur l'origine dans le plan XY, face à l'axe Z ; un plan à face unique est invisible de derrière sauf si sideOrientation est double face.

      Parameters

      Returns Mesh

      Le maillage du plan

      const plane = bitbybit.babylon.meshBuilder.createSquarePlane({ size: 10, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Construit une sphère du diameter donné centrée sur l'origine ; segments règle la finesse de sa division, plus étant plus rond et plus lourd.

      Parameters

      • inputs: CreateSphereDto

        Le diamètre, le nombre de segments, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage de la sphère

      const ball = bitbybit.babylon.meshBuilder.createSphere({ diameter: 10, segments: 32, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.frontside, enableShadows: true });
      
    • Construit une sphère à partir de triangles de taille régulière, subdivisés depuis un icosaèdre, dont l'ombrage est plus uniforme que createSphere.

      radiusX, radiusY et radiusZ l'étirent par axe et reviennent à radius quand ils valent 0 ; flat donne un ombrage à facettes.

      Parameters

      • inputs: CreateIcoSphereDto

        Les rayons, l'indicateur de facettes plates, les subdivisions, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage de l'icosphère

      const ball = bitbybit.babylon.meshBuilder.createIcoSphere({ radius: 5, radiusX: 0, radiusY: 0, radiusZ: 0, flat: false, subdivisions: 4, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.frontside, enableShadows: true });
      
    • Construit un disque plat du radius donné centré sur l'origine dans le plan XY ; arc inférieur à 1 laisse une part de tarte, 0.5 étant donc un demi-disque.

      Parameters

      • inputs: CreateDiscDto

        Le rayon, la tessellation, la fraction d'arc, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage du disque

      const disc = bitbybit.babylon.meshBuilder.createDisc({ radius: 5, tessellation: 32, arc: 1, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Construit un anneau posé dans le plan XZ autour de l'origine : diameter est le diamètre global de l'anneau et thickness le diamètre de son tube.

      Parameters

      • inputs: CreateTorusDto

        Le diamètre, l'épaisseur du tube, la tessellation, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage du tore

      const ring = bitbybit.babylon.meshBuilder.createTorus({ diameter: 10, thickness: 2, tessellation: 32, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.frontside, enableShadows: true });
      
    • Construit un tube enroulé en nœud autour de l'origine : p et q sont le nombre de fois où il s'enroule autour de l'anneau et à travers son trou, 2 et 3 donnant donc le trèfle classique.

      Parameters

      • inputs: CreateTorusKnotDto

        Le rayon, le rayon du tube, les nombres de segments, les nombres d'enroulements, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage du nœud torique

      const knot = bitbybit.babylon.meshBuilder.createTorusKnot({ radius: 5, tube: 1, radialSegments: 128, tubularSegments: 32, p: 2, q: 3, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.frontside, enableShadows: true });
      
    • Construit un polygone plat rempli à partir des points de son contour, avec des trous facultatifs, posé dans le plan XZ ; un depth supérieur à 0 lui donne une épaisseur vers le bas.

      Les points sont 3D mais seuls X et Z sont utilisés, et le contour ne doit pas se croiser lui-même.

      Parameters

      • inputs: CreatePolygonDto

        Le contour, les trous, la profondeur, le lissage, l'orientation des faces, l'indicateur d'enroulement et l'indicateur d'ombre

      Returns Mesh

      Le maillage du polygone

      const slab = bitbybit.babylon.meshBuilder.createPolygon({ shape: [[0, 0, 0], [10, 0, 0], [10, 0, 10], [0, 0, 10]], holes: [], depth: 0, smoothingThreshold: 0.01, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, wrap: false, enableShadows: true });
      
    • Construit un solide en extrudant un polygone plat, donné par les points de son contour dans le plan XZ avec des trous facultatifs, vers le bas de depth.

      Parameters

      • inputs: ExtrudePolygonDto

        Le contour, les trous, la profondeur, l'orientation des faces, l'indicateur d'enroulement et l'indicateur d'ombre

      Returns Mesh

      Le maillage extrudé

      const block = bitbybit.babylon.meshBuilder.extrudePolygon({ shape: [[0, 0, 0], [10, 0, 0], [10, 0, 10], [0, 0, 10]], holes: [[[3, 0, 3], [7, 0, 3], [7, 0, 7], [3, 0, 7]]], depth: 5, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.frontside, wrap: false, enableShadows: true });
      
    • Construit un tube du radius donné le long d'un chemin de points ; cap ferme aucune, une ou les deux extrémités, et arc inférieur à 1 laisse le tube ouvert sur sa longueur.

      Parameters

      • inputs: CreateTubeDto

        Le chemin, le rayon, la tessellation, le mode de fermeture des extrémités, la fraction d'arc, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage du tube

      const pipe = bitbybit.babylon.meshBuilder.createTube({ path: [[0, 0, 0], [10, 0, 0], [10, 10, 0]], radius: 1, tessellation: 32, cap: 3, arc: 1, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Construit l'un des quinze polyèdres intégrés selon type, du tétraèdre (0) à la coupole pentagonale allongée (14), ou le vôtre à partir des données custom.

      sizeX, sizeY et sizeZ l'étirent par axe et reviennent à size quand ils valent 0 ; flat donne un ombrage à facettes.

      Parameters

      • inputs: CreatePolyhedronDto

        La taille et le type, les données personnalisées, l'indicateur de facettes plates, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage du polyèdre

      const dodecahedron = bitbybit.babylon.meshBuilder.createPolyhedron({ size: 5, type: 2, sizeX: 0, sizeY: 0, sizeZ: 0, flat: true, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.frontside, enableShadows: true });
      
    • Construit une sphère géodésique, un icosaèdre dont les faces sont subdivisées en triangles selon m et n, de sorte que la surface est faite de triangles presque égaux.

      sizeX, sizeY et sizeZ l'étirent par axe et reviennent à size quand ils valent 0.

      Parameters

      • inputs: CreateGeodesicDto

        Les nombres de subdivisions, les tailles, l'indicateur de facettes plates, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage géodésique

      const dome = bitbybit.babylon.meshBuilder.createGeodesic({ m: 4, n: 4, size: 5, sizeX: 0, sizeY: 0, sizeZ: 0, flat: false, subdivisions: 4, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.frontside, enableShadows: true });
      
    • Construit un polyèdre de Goldberg, une balle faite d'hexagones et de douze pentagones comme un ballon de football, m et n réglant le nombre d'hexagones.

      sizeX, sizeY et sizeZ l'étirent par axe et reviennent à size quand ils valent 0.

      Parameters

      • inputs: CreateGoldbergDto

        Les nombres de subdivisions, les tailles, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage de Goldberg

      const ball = bitbybit.babylon.meshBuilder.createGoldberg({ m: 4, n: 4, size: 5, sizeX: 0, sizeY: 0, sizeZ: 0, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Construit une capsule, un cylindre aux extrémités arrondies, de height et radius donnés le long de orientation ; radiusTop et radiusBottom dimensionnent les deux extrémités séparément.

      Parameters

      • inputs: CreateCapsuleDto

        L'orientation, les tailles, les nombres de subdivisions, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage de la capsule

      const pill = bitbybit.babylon.meshBuilder.createCapsule({ orientation: [0, 1, 0], subdivisions: 2, tessellation: 16, height: 10, radius: 2, capSubdivisions: 6, radiusTop: 2, radiusBottom: 2, topCapSubdivisions: 6, bottomCapSubdivisions: 6, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Construit un cylindre debout le long de Y, centré sur l'origine ; des diamètres du haut et du bas différents font un cône ou une forme effilée, et 0 ferme une extrémité en un point.

      Parameters

      • inputs: CreateCylinderDto

        La hauteur, les deux diamètres, la tessellation, les subdivisions, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage du cylindre

      const cone = bitbybit.babylon.meshBuilder.createCylinder({ height: 10, diameterTop: 0, diameterBottom: 6, tessellation: 64, subdivisions: 1, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Balaye un profil le long d'un chemin : shape est le profil sous forme de points dans le plan XY et path les points qu'il parcourt, avec scale et rotation en radians appliqués pas à pas en chemin.

      closeShape joint les extrémités du profil, closePath joint celles du chemin, et cap ferme aucune, une ou les deux extrémités.

      Parameters

      • inputs: CreateExtrudedShapeDto

        Le profil, le chemin, l'échelle, la rotation par pas, les indicateurs de fermeture, le mode de fermeture des extrémités, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage balayé

      const rail = bitbybit.babylon.meshBuilder.createExtrudedSahpe({ shape: [[-1, 0, 0], [1, 0, 0], [1, 1, 0], [-1, 1, 0]], path: [[0, 0, 0], [10, 0, 0], [10, 0, 10]], scale: 1, rotation: 0, closeShape: true, closePath: false, cap: 3, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Construit une surface à travers plusieurs chemins de points, en joignant les chemins voisins par des triangles, comme un tissu tendu sur un ensemble de lignes.

      closePath joint les extrémités de chaque chemin, closeArray rejoint le dernier chemin au premier, et offset décale la façon dont les points s'apparient quand un seul chemin est donné.

      Parameters

      • inputs: CreateRibbonDto

        Les chemins, les indicateurs de fermeture, le décalage, l'indicateur de mise à jour possible, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage du ruban

      const sheet = bitbybit.babylon.meshBuilder.createRibbon({ pathArray: [[[0, 0, 0], [10, 0, 0], [20, 0, 0]], [[0, 5, 5], [10, 5, 5], [20, 5, 5]]], closeArray: false, closePath: false, offset: 0, updatable: false, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Fait tourner un profil autour de l'axe Y, comme un tour à bois : shape est le profil sous forme de points dans le plan XY avec X comme distance à l'axe, radius le pousse vers l'extérieur, et arc inférieur à 1 laisse la révolution ouverte.

      Parameters

      • inputs: CreateLatheDto

        Le profil, le rayon, la tessellation, la fraction d'arc, l'indicateur de fermeture, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage de révolution

      const vase = bitbybit.babylon.meshBuilder.createLathe({ shape: [[2, 0, 0], [3, 3, 0], [2, 6, 0], [2.5, 8, 0]], radius: 0, tessellation: 64, arc: 1, closed: true, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Construit un plan de sol plat centré sur l'origine dans le plan XZ, width le long de X et height le long de Z, divisé en une grille de subdivisionsX par subdivisionsY cellules.

      Parameters

      • inputs: CreateGroundDto

        La largeur, la hauteur, les subdivisions, l'orientation des faces et l'indicateur d'ombre

      Returns Mesh

      Le maillage du sol

      const ground = bitbybit.babylon.meshBuilder.createGround({ width: 100, height: 100, subdivisionsX: 1, subdivisionsY: 1, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });
      
    • Construit un rectangle plat centré sur l'origine dans le plan XY, width le long de X et height le long de Y, face à l'axe Z.

      Parameters

      Returns Mesh

      Le maillage du plan

      const plane = bitbybit.babylon.meshBuilder.createRectanglePlane({ width: 20, height: 10, sideOrientation: Bit.Inputs.BabylonMesh.sideOrientationEnum.doubleside, enableShadows: true });