Bitbybit Docs
    Preparing search index...

    Class JSCAD

    O ponto de entrada para o kernel JSCAD, um modelador de sólidos baseado em malhas com três tipos de geometria: um sólido, guardado como um conjunto fechado de polígonos; uma forma 2D plana, guardada como uma região no plano XY; e um caminho 2D, uma polilinha aberta ou fechada nesse plano. shapes e polygon constroem-nos, booleans, extrusions, expansions e hulls combinam-nos e fazem-nos crescer, text escreve com eles e colors colore-os. As formas planas vivem no plano XY e extrudem ao longo de Z. Os métodos do próprio serviço convertem sólidos em dados de malha, movem-nos com matrizes e escrevem ficheiros STL, DXF e 3MF. Crédito à comunidade JSCAD pelo kernel.

    Index

    Constructors

    Properties

    booleans: JSCADBooleans
    expansions: JSCADExpansions
    extrusions: JSCADExtrusions
    hulls: JSCADHulls
    path: JSCADPath
    polygon: JSCADPolygon
    shapes: JSCADShapes
    text: JSCADText
    colors: JSCADColors

    conversions

    • Transforma um sólido numa lista de triângulos, cada um dado como três pontos, com a transformação própria do sólido já aplicada.

      A uma forma 2D plana é dada primeiro uma espessura ínfima para que tenha faces de todo. Uma entidade sem polígonos dá uma lista vazia.

      Parameters

      Returns Promise<Mesh3>

      Os triângulos como listas de três pontos

      const cube = await bitbybit.jscad.shapes.cube({ center: [0, 0, 0], size: 10 });
      const triangles = await bitbybit.jscad.toPolygonPoints({ mesh: cube });

    io

    • Escreve um sólido como um ficheiro STL binário, o formato comum para impressão 3D, e descarrega-o no navegador como fileName mais .stl.

      Parameters

      Returns Promise<void>

      O ficheiro STL como um blob; a API assíncrona inicia a transferência em vez disso e não devolve nada

      await bitbybit.jscad.downloadSolidSTL({ mesh: cube, fileName: "cube" });
      
    • Escreve vários sólidos num só ficheiro STL binário e descarrega-o no navegador como fileName mais .stl.

      Parameters

      Returns Promise<void>

      O ficheiro STL como um blob; a API assíncrona inicia a transferência em vez disso e não devolve nada

      await bitbybit.jscad.downloadSolidsSTL({ meshes: [cube, sphere], fileName: "parts" });
      
    • Escreve um sólido, uma forma 2D, um caminho ou uma lista deles como um ficheiro de desenho DXF e descarrega-o no navegador como fileName mais .dxf.

      options é passado ao escritor DXF tal como está e pode ficar de fora.

      Parameters

      • inputs: DownloadGeometryDto

        A geometria, o nome do ficheiro e as opções opcionais do escritor

      Returns Promise<void>

      O ficheiro DXF como um blob; a API assíncrona inicia a transferência em vez disso e não devolve nada

      const circle = await bitbybit.jscad.polygon.circle({ center: [0, 0], radius: 5, segments: 32 });
      await bitbybit.jscad.downloadGeometryDxf({ geometry: circle, fileName: "circle", options: {} });
    • Escreve um sólido, uma forma 2D, um caminho ou uma lista deles como um ficheiro 3MF, um formato moderno de impressão 3D, e descarrega-o no navegador como fileName mais .3mf.

      options é passado ao escritor 3MF tal como está e pode ficar de fora.

      Parameters

      • inputs: DownloadGeometryDto

        A geometria, o nome do ficheiro e as opções opcionais do escritor

      Returns Promise<void>

      O ficheiro 3MF como um blob; a API assíncrona inicia a transferência em vez disso e não devolve nada

      await bitbybit.jscad.downloadGeometry3MF({ geometry: [cube, sphere], fileName: "parts", options: {} });
      

    transforms

    • Move, roda ou escala vários sólidos com a mesma transformação, dando novos sólidos pela mesma ordem.

      transformation é uma matriz 4x4, uma lista de matrizes aplicadas por ordem, ou uma lista de tais listas; uma forma 2D plana ou um caminho lança um erro.

      Parameters

      Returns Promise<JSCADEntity[]>

      Os sólidos transformados, pela mesma ordem

      const translation = bitbybit.transforms.translationXYZ({ translation: [10, 0, 0] });
      const moved = await bitbybit.jscad.transformSolids({ meshes: [cube, sphere], transformation: translation });
    • Move, roda ou escala um sólido com uma transformação, dando um novo sólido.

      transformation é uma matriz 4x4, uma lista de matrizes aplicadas por ordem, ou uma lista de tais listas; uma forma 2D plana ou um caminho lança um erro.

      Parameters

      Returns Promise<JSCADEntity>

      O sólido transformado

      const rotation = bitbybit.transforms.rotationCenterAxis({ angle: 45, axis: [0, 1, 0], center: [0, 0, 0] });
      const turned = await bitbybit.jscad.transformSolid({ mesh: cube, transformation: rotation });