Bitbybit Docs
    Preparing search index...

    Class OCCTSolid

    Solid di OpenCascade: bentuk tertutup yang melingkupi sebuah volume. Bangun satu dari primitif (createBox, createSphere, createCylinder, createCone, createTorus), dari profil datar yang diekstrusi ke depan dan belakang (solid profil bintang, n-gon, hati, balok dan lainnya), atau dari cangkang tertutup dengan fromClosedShell; lalu ukur dengan getter volume, luas permukaan dan pusat massa, dan saring titik-titik berdasarkan apakah berada di dalamnya. Verteks, tepi, kawat, muka, cangkang dan gabungan memiliki kelasnya sendiri di samping kelas ini di bawah shapes.

    Index

    Constructors

    beam

    • Membuat balok I dengan mengekstrusi profil datarnya ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const beam = await bitbybit.occt.shapes.solid.createIBeamProfileSolid({
      width: 10,
      height: 20,
      flangeThickness: 1,
      webThickness: 1,
      alignment: Bit.Inputs.Base.basicAlignmentEnum.midMid,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 0, 1],
      extrusionLengthFront: 100,
      extrusionLengthBack: 0,
      });
    • Membuat balok H dengan mengekstrusi profil datarnya ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const beam = await bitbybit.occt.shapes.solid.createHBeamProfileSolid({
      width: 20,
      height: 20,
      flangeThickness: 1,
      webThickness: 1,
      alignment: Bit.Inputs.Base.basicAlignmentEnum.midMid,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 0, 1],
      extrusionLengthFront: 100,
      extrusionLengthBack: 0,
      });
    • Membuat balok T dengan mengekstrusi profil datarnya ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const beam = await bitbybit.occt.shapes.solid.createTBeamProfileSolid({
      width: 10,
      height: 20,
      flangeThickness: 1,
      webThickness: 1,
      alignment: Bit.Inputs.Base.basicAlignmentEnum.midMid,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 0, 1],
      extrusionLengthFront: 100,
      extrusionLengthBack: 0,
      });
    • Membuat balok U dengan mengekstrusi profil datarnya ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const beam = await bitbybit.occt.shapes.solid.createUBeamProfileSolid({
      width: 10,
      height: 20,
      flangeThickness: 1,
      webThickness: 1,
      flangeWidth: 3,
      alignment: Bit.Inputs.Base.basicAlignmentEnum.midMid,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 0, 1],
      extrusionLengthFront: 100,
      extrusionLengthBack: 0,
      });

    debug

    • Mengumpulkan fakta diagnostik tentang sebuah solid: apakah valid, berapa banyak muka dan tepinya, luas permukaan dan volumenya, dan untuk setiap muka jenis permukaan, derajat, jumlah titik kontrol, batas dan luas.

      Bentuk kosong atau null menghasilkan laporan bertanda tidak valid dengan jumlah nol.

      Parameters

      Returns Promise<SolidDebugInfo>

      Laporan berisi jumlah, luas, volume dan satu entri per muka

      const info = await bitbybit.occt.shapes.solid.debugInfo({ shape: box });
      console.log(info.nbFaces, info.volume);

    filter

    • Mempertahankan titik-titik yang berada di dalam, di permukaan, atau di luar sebuah solid, sesuai pilihan flag keepIn, keepOn dan keepOut.

      Sebuah titik dihitung berada di permukaan jika berada dalam tolerance darinya. Titik-titik yang tidak dapat diklasifikasikan kernel hanya dipertahankan dengan keepUnknown.

      Parameters

      Returns Promise<Point3[]>

      Titik-titik yang lolos saringan, dalam urutan aslinya

      const inside = await bitbybit.occt.shapes.solid.filterSolidPoints({
      shape: box,
      points: [[0, 0, 0], [100, 0, 0]],
      tolerance: 1e-7,
      keepIn: true,
      keepOn: false,
      keepOut: false,
      keepUnknown: false,
      });

    from

    • Mengubah cangkang tertutup menjadi solid, sehingga volume yang dilingkupinya menjadi badan yang dapat diukur, di-boolean dan di-mesh.

      Cangkang harus kedap; cangkang dengan celah menghasilkan solid yang tidak dapat dipakai kernel.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid yang dibatasi cangkang

      const solid = await bitbybit.occt.shapes.solid.fromClosedShell({ shape: closedShell });
      

    get

    • Mengukur luas total semua muka sebuah solid.

      Parameters

      Returns Promise<number>

      Luas permukaan dalam satuan model persegi

      const area = await bitbybit.occt.shapes.solid.getSolidSurfaceArea({ shape: box });
      
    • Mengukur volume yang dilingkupi sebuah solid, dalam satuan model kubik.

      Parameters

      Returns Promise<number>

      Volume dalam satuan model kubik

      const volume = await bitbybit.occt.shapes.solid.getSolidVolume({ shape: box });
      
    • Mengukur volume setiap solid dalam daftar.

      Parameters

      Returns Promise<number[]>

      Satu volume per solid, dalam urutan yang sama

      const volumes = await bitbybit.occt.shapes.solid.getSolidsVolumes({ shapes: [box, sphere] });
      
    • Menemukan pusat massa sebuah solid, dengan memperlakukannya sebagai terisi material berkerapatan seragam.

      Parameters

      Returns Promise<Point3>

      Titik pusat massa

      const center = await bitbybit.occt.shapes.solid.getSolidCenterOfMass({ shape: box });
      
    • Menemukan pusat massa setiap solid dalam daftar, dengan memperlakukan masing-masing sebagai terisi material berkerapatan seragam.

      Parameters

      Returns Promise<Point3[]>

      Satu titik per solid, dalam urutan yang sama

      const centers = await bitbybit.occt.shapes.solid.getSolidsCentersOfMass({ shapes: [box, sphere] });
      
    • Mencantumkan solid-solid di dalam bentuk apa pun, misalnya badan-badan sebuah gabungan atau hasil operasi boolean.

      Bentuk yang dirinya sendiri adalah solid menghasilkan daftar dengan satu solid itu.

      Parameters

      Returns Promise<TopoDSSolidPointer[]>

      Solid-solid yang ditemukan dalam bentuk

      const solids = await bitbybit.occt.shapes.solid.getSolids({ shape: compound });
      

    primitives

    • Membuat solid kotak dengan sisi-sisi sejajar sumbu.

      width berjalan sepanjang X, height sepanjang Y (atas) dan length sepanjang Z, semuanya dalam satuan model. Secara default kotak berpusat di center; dengan originOnCenter disetel false kotak berdiri di atas titik itu, sehingga center menjadi tengah muka bawah.

      Parameters

      • inputs: BoxDto

        Ukuran kotak, titik penempatannya, dan apakah dipusatkan pada atau berdiri di atas titik tersebut

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const box = await bitbybit.occt.shapes.solid.createBox({ width: 10, length: 20, height: 5, center: [0, 0, 0], originOnCenter: true });
      
    • Membuat solid kubus, kotak dengan ketiga sisi berukuran sama, sejajar sumbu.

      Secara default kubus berpusat di center; dengan originOnCenter disetel false kubus berdiri di atas titik itu, sehingga center menjadi tengah muka bawah.

      Parameters

      • inputs: Bit.Inputs.OCCT.CubeDto

        Ukuran kubus, titik penempatannya, dan apakah dipusatkan pada atau berdiri di atas titik tersebut

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const cube = await bitbybit.occt.shapes.solid.createCube({ size: 10, center: [0, 0, 0], originOnCenter: true });
      
    • Membuat solid kotak yang bermula di titik sudut dan memanjang sepanjang sumbu positif.

      Sudut dengan x, y dan z terkecil berada di corner; kotak menjangkau width sepanjang X, height sepanjang Y dan length sepanjang Z dari sana, semuanya dalam satuan model.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const box = await bitbybit.occt.shapes.solid.createBoxFromCorner({ width: 10, length: 20, height: 5, corner: [0, 0, 0] });
      
    • Membuat solid silinder dengan alas bulat di center, tumbuh height sepanjang direction.

      Dengan originOnCenter aktif, silinder digeser mundur sejauh setengah tingginya sehingga center berada di tengahnya. angle, dalam derajat, memotong sebuah baji dari lingkaran penuh 360 derajat, seperti sepotong kue.

      Parameters

      • inputs: Bit.Inputs.OCCT.CylinderDto

        Jari-jari, tinggi, pusat alas, arah, sudut parsial opsional dan apakah dipusatkan pada titik

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const cylinder = await bitbybit.occt.shapes.solid.createCylinder({ radius: 5, height: 20, center: [0, 0, 0], direction: [0, 1, 0], angle: 360, originOnCenter: false });
      
    • Membuat satu solid silinder sepanjang setiap garis, dari awal sampai akhirnya, semuanya dengan jari-jari yang sama.

      Tinggi setiap silinder adalah panjang garisnya.

      Parameters

      Returns Promise<TopoDSSolidPointer[]>

      Satu solid per garis, dalam urutan yang sama

      const rods = await bitbybit.occt.shapes.solid.createCylindersOnLines({
      lines: [{ start: [0, 0, 0], end: [0, 10, 0] }, { start: [5, 0, 0], end: [5, 10, 0] }],
      radius: 0.5,
      });
    • Membuat solid bola dengan jari-jari yang diberikan mengelilingi titik pusat.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const sphere = await bitbybit.occt.shapes.solid.createSphere({ radius: 5, center: [0, 0, 0] });
      
    • Membuat solid kerucut, atau kerucut terpancung jika kedua jari-jari di atas 0, berdiri di atas alas bulat di center dan tumbuh height sepanjang direction.

      radius1 adalah alas dan radius2 puncak; jari-jari puncak 0 menghasilkan kerucut lancip. angle, dalam derajat, memotong sebuah baji dari lingkaran penuh 360 derajat.

      Parameters

      • inputs: Bit.Inputs.OCCT.ConeDto

        Jari-jari alas dan puncak, tinggi, pusat alas, arah dan sudut parsial opsional

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const cone = await bitbybit.occt.shapes.solid.createCone({ radius1: 5, radius2: 0, height: 10, center: [0, 0, 0], direction: [0, 1, 0], angle: 360 });
      
    • Membuat solid torus, cincin dengan penampang bulat, berpusat di center dengan sumbunya sepanjang direction.

      majorRadius adalah jarak dari pusat ke tengah tabung dan minorRadius jari-jari tabung itu sendiri. angle, dalam derajat, menghasilkan cincin sebagian, bukan 360 derajat penuh.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const ring = await bitbybit.occt.shapes.solid.createTorus({ majorRadius: 10, minorRadius: 2, center: [0, 0, 0], direction: [0, 1, 0], angle: 360 });
      
    • Membuat solid berbentuk bintang dengan mengekstrusi profil bintang datar ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu. Bintangnya sendiri dibangun sebagaimana shapes.wire.createStarWire membangunnya.

      Parameters

      • inputs: StarSolidDto

        Profil bintang dan kedua panjang ekstrusi

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const star = await bitbybit.occt.shapes.solid.createStarSolid({
      numRays: 5,
      outerRadius: 10,
      innerRadius: 5,
      half: false,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      extrusionLengthFront: 2,
      extrusionLengthBack: 0,
      });
    • Membuat solid dengan penampang poligon beraturan dengan mengekstrusi profil n-gon datar ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu.

      Parameters

      • inputs: NGonSolidDto

        Profil poligon dan kedua panjang ekstrusi

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const hexPrism = await bitbybit.occt.shapes.solid.createNGonSolid({
      nrCorners: 6,
      radius: 5,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      extrusionLengthFront: 10,
      extrusionLengthBack: 0,
      });
    • Membuat solid dengan penampang jajar genjang dengan mengekstrusi profil jajar genjang datar ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const slab = await bitbybit.occt.shapes.solid.createParallelogramSolid({
      width: 10,
      height: 5,
      angle: 15,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      aroundCenter: true,
      extrusionLengthFront: 2,
      extrusionLengthBack: 0,
      });
    • Membuat solid berbentuk hati dengan mengekstrusi profil hati datar ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const heart = await bitbybit.occt.shapes.solid.createHeartSolid({
      sizeApprox: 10,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      extrusionLengthFront: 2,
      extrusionLengthBack: 0,
      });
    • Membuat solid berbentuk pohon Natal dengan mengekstrusi profil pohon datar ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const tree = await bitbybit.occt.shapes.solid.createChristmasTreeSolid({
      height: 10,
      innerDist: 1.5,
      outerDist: 3,
      nrSkirts: 5,
      trunkHeight: 1,
      trunkWidth: 1,
      half: false,
      rotation: 0,
      origin: [0, 0, 0],
      direction: [0, 1, 0],
      extrusionLengthFront: 2,
      extrusionLengthBack: 0,
      });
    • Membuat solid berbentuk L dengan mengekstrusi profil L datar ke depan dan ke belakang sepanjang normalnya sendiri.

      extrusionLengthFront dan extrusionLengthBack menyatakan seberapa jauh tumbuh ke setiap arah, dalam satuan model; setidaknya satu harus di atas 0 atau error dipicu.

      Parameters

      Returns Promise<TopoDSSolidPointer>

      Solid baru

      const bracket = await bitbybit.occt.shapes.solid.createLPolygonSolid({
      widthFirst: 10,
      lengthFirst: 20,
      widthSecond: 10,
      lengthSecond: 15,
      align: Bit.Inputs.OCCT.directionEnum.outside,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      extrusionLengthFront: 2,
      extrusionLengthBack: 0,
      });