Bitbybit Docs
    Preparing search index...

    Class OCCTWire

    Kawat di OpenCascade: rantai tepi yang tersambung ujung ke ujung, terbuka seperti jalur atau tertutup seperti garis luar. Bangun dari titik dan kurva (polyline, B-spline, Bezier, interpolasi, heliks, spiral), sebagai garis luar datar siap pakai (lingkaran, persegi panjang, bintang, profil balok, teks) yang terletak pada bidang dasar kecuali direction menentukan lain, atau dengan menggabungkan dan memisahkan tepi dan kawat yang ada; baca kembali sebagai titik, tangen, panjang dan pusat; petakan ke muka atau proyeksikan ke bentuk. Parameter di sepanjang kawat berjalan dari 0 di awalnya sampai 1 di akhirnya dan mengikuti parameter masing-masing tepi, bukan jarak. Kawat tertutup adalah yang diisi shapes.face untuk membuat muka.

    Index

    Constructors

    beam profiles

    build

    debug

    edit

    extract

    extract from wires

    from base

    get

    multiple

    place

    primitives

    rebuild

    seam

    via points

    via wires

    Constructors

    beam profiles

    • Membuat garis luar tertutup penampang balok I: dua flens horizontal yang disambungkan oleh badan vertikal.

      width adalah lebar flens, height tinggi total, webThickness dan flangeThickness ketebalan dindingnya; alignment menyatakan titik mana dari kotak profil yang berada di center, rotation memutarnya dalam bidangnya, dalam derajat. Terbaring di tanah, siap diekstrusi.

      Parameters

      • inputs: IBeamProfileDto

        Ukuran profil, kedua ketebalan, perataan, rotasi, pusat dan normal bidang

      Returns Promise<TopoDSWirePointer>

      Kawat garis luar balok I

      const profile = await bitbybit.occt.shapes.wire.createIBeamProfileWire({
      width: 10,
      height: 20,
      webThickness: 2,
      flangeThickness: 3,
      alignment: Bit.Inputs.Base.basicAlignmentEnum.midMid,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      });
    • Membuat garis luar tertutup penampang balok H: dua flens vertikal yang disambungkan oleh badan horizontal, balok I yang direbahkan.

      width adalah lebar total, height tinggi flens, webThickness dan flangeThickness ketebalan dindingnya; alignment menyatakan titik mana dari kotak profil yang berada di center, rotation memutarnya dalam bidangnya, dalam derajat.

      Parameters

      • inputs: HBeamProfileDto

        Ukuran profil, kedua ketebalan, perataan, rotasi, pusat dan normal bidang

      Returns Promise<TopoDSWirePointer>

      Kawat garis luar balok H

      const profile = await bitbybit.occt.shapes.wire.createHBeamProfileWire({
      width: 20,
      height: 10,
      webThickness: 2,
      flangeThickness: 3,
      alignment: Bit.Inputs.Base.basicAlignmentEnum.midMid,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      });
    • Membuat garis luar tertutup penampang balok T: flens horizontal dengan badan vertikal yang menggantung dari tengahnya.

      width adalah lebar flens, height tinggi total, webThickness dan flangeThickness ketebalan dindingnya; alignment menyatakan titik mana dari kotak profil yang berada di center, rotation memutarnya dalam bidangnya, dalam derajat. Terbaring di tanah.

      Parameters

      • inputs: TBeamProfileDto

        Ukuran profil, kedua ketebalan, perataan, rotasi, pusat dan normal bidang

      Returns Promise<TopoDSWirePointer>

      Kawat garis luar balok T

      const profile = await bitbybit.occt.shapes.wire.createTBeamProfileWire({
      width: 10,
      height: 12,
      webThickness: 2,
      flangeThickness: 2,
      alignment: Bit.Inputs.Base.basicAlignmentEnum.midMid,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      });
    • Membuat garis luar tertutup penampang balok U, sebuah kanal: badan dengan dua flens selebar flangeWidth yang berdiri dari ujung-ujungnya.

      width dan height adalah ukuran total, webThickness dan flangeThickness ketebalan dindingnya; alignment menyatakan titik mana dari kotak profil yang berada di center, rotation memutarnya dalam bidangnya, dalam derajat. Terbaring di tanah.

      Parameters

      • inputs: UBeamProfileDto

        Ukuran profil, ketebalan, lebar flens, perataan, rotasi, pusat dan normal bidang

      Returns Promise<TopoDSWirePointer>

      Kawat garis luar balok U

      const profile = await bitbybit.occt.shapes.wire.createUBeamProfileWire({
      width: 10,
      height: 6,
      webThickness: 1,
      flangeThickness: 1,
      flangeWidth: 3,
      alignment: Bit.Inputs.Base.basicAlignmentEnum.midMid,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      });

    build

    • Menyambungkan tepi-tepi dan kawat-kawat yang bersentuhan ujung ke ujung menjadi satu kawat.

      Potongan-potongannya harus tersambung; kumpulan dengan celah atau potongan yang terlepas memicu error. Bentuk jenis lain dalam daftar diabaikan.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat hasil penggabungan

      const outline = await bitbybit.occt.shapes.wire.combineEdgesAndWiresIntoAWire({ shapes: [arc, line1, line2] });
      
    • Membungkus satu tepi menjadi kawat, sehingga dapat dipakai di tempat kawat diharapkan.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat yang menampung tepi tersebut

      const wire = await bitbybit.occt.shapes.wire.createWireFromEdge({ shape: edge });
      

    debug

    • Mengumpulkan fakta diagnostik tentang sebuah kawat: berapa banyak tepinya, apakah tertutup, panjang totalnya dan, untuk setiap tepi, laporan kurva yang diberikan shapes.edge.debugInfo.

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

      Parameters

      Returns Promise<WireDebugInfo>

      Laporan berisi jumlah tepi, flag tertutup, panjang dan satu entri per tepi

      const info = await bitbybit.occt.shapes.wire.debugInfo({ shape: wire });
      console.log(info.nbEdges, info.closed, info.totalLength);

    edit

    • Menutup kawat terbuka dengan tepi lurus dari titik akhirnya kembali ke titik awalnya.

      Kawat yang ujung-ujungnya sudah bertemu dikembalikan apa adanya.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat tertutup

      const closedWire = await bitbybit.occt.shapes.wire.closeOpenWire({ shape: openWire });
      

    extract

    • Memotong kawat menjadi beberapa bagian di titik-titik yang diberikan.

      Setiap titik dipindahkan ke tempat terdekat pada kawat sebelum pemotongan, jadi tidak harus berada tepat padanya; titik yang berulang diabaikan. Potongan-potongan dikembalikan berurutan di sepanjang kawat, dari awal sampai akhirnya.

      Parameters

      Returns Promise<TopoDSWirePointer[]>

      Potongan-potongan kawat, secara berurutan

      const pieces = await bitbybit.occt.shapes.wire.splitOnPoints({ shape: wire, points: [[3, 0, 0], [7, 0, 0]] });
      
    • Mengubah setiap kawat sebuah bentuk menjadi rangkaian titik yang mengikuti kurva-kurvanya cukup dekat untuk digambar, satu daftar per kawat.

      Pengaturan defleksi menyatakan seberapa rapat titik-titik memeluk tepi lengkung; di tempat satu tepi berakhir dan tepi berikutnya dimulai, titik bersamanya muncul sekali.

      Parameters

      Returns Promise<Point3[][]>

      Satu daftar titik per kawat

      const polylines = await bitbybit.occt.shapes.wire.wiresToPoints({
      shape: wire,
      angularDeflection: 0.1,
      curvatureDeflection: 0.1,
      minimumOfPoints: 2,
      uTolerance: 1e-9,
      minimumLength: 1e-7,
      });
    • Menempatkan titik-titik di sepanjang kawat pada langkah parameter yang sama, dari awal sampai akhir.

      nrOfDivisions langkah menghasilkan satu titik lebih banyak dari itu; removeStartPoint dan removeEndPoint membuang ujung-ujungnya. Parameter mengikuti parameter kurva setiap tepi, sehingga langkah yang sama bukan jarak yang sama; gunakan divideWireByEqualDistanceToPoints untuk itu.

      Parameters

      Returns Promise<Point3[]>

      Titik-titik di sepanjang kawat, secara berurutan

      const points = await bitbybit.occt.shapes.wire.divideWireByParamsToPoints({ shape: wire, nrOfDivisions: 10, removeStartPoint: false, removeEndPoint: false });
      
    • Menempatkan titik-titik di sepanjang kawat pada jarak yang sama diukur sepanjang kurva-kurvanya, dari awal sampai akhir.

      nrOfDivisions langkah menghasilkan satu titik lebih banyak dari itu; removeStartPoint dan removeEndPoint membuang ujung-ujungnya.

      Parameters

      Returns Promise<Point3[]>

      Titik-titik di sepanjang kawat, secara berurutan

      const points = await bitbybit.occt.shapes.wire.divideWireByEqualDistanceToPoints({ shape: wire, nrOfDivisions: 10, removeStartPoint: false, removeEndPoint: false });
      
    • Menemukan titik pada pecahan tertentu di sepanjang kawat: 0 adalah awal, 1 akhir.

      Pecahan mengikuti parameter tepi-tepinya, bukan jarak, sehingga 0.5 tidak selalu tengah menurut panjang; gunakan pointOnWireAtLength untuk jarak.

      Parameters

      Returns Promise<Point3>

      Titik pada kawat

      const point = await bitbybit.occt.shapes.wire.pointOnWireAtParam({ shape: wire, param: 0.25 });
      
    • Menemukan titik pada jarak tertentu di sepanjang kawat dari awalnya, diukur sepanjang kurva-kurvanya dalam satuan model.

      Parameters

      Returns Promise<Point3>

      Titik pada kawat

      const point = await bitbybit.occt.shapes.wire.pointOnWireAtLength({ shape: wire, length: 2.5 });
      
    • Menemukan titik-titik pada beberapa jarak di sepanjang kawat dari awalnya, diukur sepanjang kurva-kurvanya dalam satuan model.

      Parameters

      Returns Promise<Point3[]>

      Satu titik per jarak, dalam urutan yang sama

      const points = await bitbybit.occt.shapes.wire.pointsOnWireAtLengths({ shape: wire, lengths: [1, 2.5, 4] });
      
    • Menempatkan titik-titik di sepanjang kawat setiap length satuan model dari awalnya, sebanyak yang muat.

      includeFirst mempertahankan titik di awal, includeLast menambahkan titik akhir berapa pun jaraknya, dan tryNext meminta satu titik lagi satu langkah melewati titik terakhir yang muat.

      Parameters

      Returns Promise<Point3[]>

      Titik-titik di sepanjang kawat, secara berurutan

      const points = await bitbybit.occt.shapes.wire.pointsOnWireAtEqualLength({ shape: wire, length: 2, tryNext: false, includeFirst: true, includeLast: false });
      
    • Menempatkan titik-titik di sepanjang kawat pada pola celah yang berulang, misalnya 1, 3, 1, 3, sampai kawat habis.

      lengths adalah pola celah dalam satuan model, diulang dari awal; includeFirst mempertahankan titik awal, includeLast menambahkan titik akhir, dan tryNext meminta satu titik lagi pada celah berikutnya melewati yang terakhir.

      Parameters

      Returns Promise<Point3[]>

      Titik-titik di sepanjang kawat, secara berurutan

      const points = await bitbybit.occt.shapes.wire.pointsOnWireAtPatternOfLengths({ shape: wire, lengths: [1, 3], tryNext: false, includeFirst: true, includeLast: false });
      
    • Menemukan arah yang dituju kawat pada pecahan tertentu di sepanjangnya, dari 0 di awal sampai 1 di akhir.

      Pecahan mengikuti parameter tepi-tepinya, bukan jarak.

      Parameters

      Returns Promise<Vector3>

      Arah tangen

      const tangent = await bitbybit.occt.shapes.wire.tangentOnWireAtParam({ shape: wire, param: 0.5 });
      
    • Menemukan arah yang dituju kawat pada jarak tertentu dari awalnya, diukur sepanjang kurva-kurvanya dalam satuan model.

      Parameters

      Returns Promise<Vector3>

      Arah tangen

      const tangent = await bitbybit.occt.shapes.wire.tangentOnWireAtLength({ shape: wire, length: 2.5 });
      
    • Menghitung turunan pertama, kedua dan ketiga kurva sebuah kawat pada jarak tertentu dari awalnya.

      Turunan pertama adalah tangen beserta kecepatannya, yang kedua menyatakan bagaimana kurva melengkung, yang ketiga bagaimana lengkungan itu berubah; semuanya terhadap parameter kurva. Jarak diukur sepanjang kurva-kurva dalam satuan model.

      Parameters

      Returns Promise<[Vector3, Vector3, Vector3]>

      Ketiga vektor turunan, dari pertama sampai ketiga

      const [first, second, third] = await bitbybit.occt.shapes.wire.derivativesOnWireAtLength({ shape: wire, length: 2.5 });
      
    • Menghitung turunan pertama, kedua dan ketiga kurva sebuah kawat pada pecahan tertentu di sepanjangnya, dari 0 di awal sampai 1 di akhir.

      Turunan pertama adalah tangen beserta kecepatannya, yang kedua menyatakan bagaimana kurva melengkung, yang ketiga bagaimana lengkungan itu berubah; semuanya terhadap parameter kurva.

      Parameters

      Returns Promise<[Vector3, Vector3, Vector3]>

      Ketiga vektor turunan, dari pertama sampai ketiga

      const [first, second, third] = await bitbybit.occt.shapes.wire.derivativesOnWireAtParam({ shape: wire, param: 0.5 });
      
    • Membaca titik tempat sebuah kawat dimulai, menurut arah kawat itu sendiri.

      Parameters

      Returns Promise<Point3>

      Titik awal

      const start = await bitbybit.occt.shapes.wire.startPointOnWire({ shape: wire });
      
    • Menemukan titik di tengah rentang parameter sebuah kawat.

      Parameter mengikuti kurva tepi-tepinya sendiri, bukan jarak, sehingga pada kawat dengan tepi yang tidak sama panjang ini tidak selalu tengah menurut panjang; pointOnWireAtLength dengan setengah dari getWireLength memberikan itu.

      Parameters

      Returns Promise<Point3>

      Titik pada parameter 0.5

      const middle = await bitbybit.occt.shapes.wire.midPointOnWire({ shape: wire });
      
    • Membaca titik tempat sebuah kawat berakhir, menurut arah kawat itu sendiri.

      Parameters

      Returns Promise<Point3>

      Titik akhir

      const end = await bitbybit.occt.shapes.wire.endPointOnWire({ shape: wire });
      

    extract from wires

    • Menjalankan divideWireByParamsToPoints pada beberapa kawat dengan pengaturan yang sama.

      Parameters

      Returns Promise<Point3[][]>

      Satu daftar titik per kawat, dalam urutan yang sama

      const lists = await bitbybit.occt.shapes.wire.divideWiresByParamsToPoints({ shapes: wires, nrOfDivisions: 10, removeStartPoint: false, removeEndPoint: false });
      
    • Menjalankan divideWireByEqualDistanceToPoints pada beberapa kawat dengan pengaturan yang sama.

      Parameters

      Returns Promise<Point3[][]>

      Satu daftar titik per kawat, dalam urutan yang sama

      const lists = await bitbybit.occt.shapes.wire.divideWiresByEqualDistanceToPoints({ shapes: wires, nrOfDivisions: 10, removeStartPoint: false, removeEndPoint: false });
      

    from base

    • Membuat kawat satu tepi lurus dari objek garis berbentuk { start, end }.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat lurus

      const wire = await bitbybit.occt.shapes.wire.fromBaseLine({ line: { start: [0, 0, 0], end: [10, 0, 0] } });
      
    • Membuat satu kawat satu tepi lurus per objek garis berbentuk { start, end }.

      Parameters

      Returns Promise<TopoDSWirePointer[]>

      Satu kawat per garis, dalam urutan yang sama

      const wires = await bitbybit.occt.shapes.wire.fromBaseLines({ lines: [{ start: [0, 0, 0], end: [10, 0, 0] }, { start: [10, 0, 0], end: [10, 10, 0] }] });
      
    • Membuat kawat satu tepi lurus dari segmen, pasangan titik [start, end].

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat lurus

      const wire = await bitbybit.occt.shapes.wire.fromBaseSegment({ segment: [[0, 0, 0], [10, 0, 0]] });
      
    • Membuat satu kawat satu tepi lurus per segmen, masing-masing pasangan titik [start, end].

      Parameters

      Returns Promise<TopoDSWirePointer[]>

      Satu kawat per segmen, dalam urutan yang sama

      const wires = await bitbybit.occt.shapes.wire.fromBaseSegments({ segments: [[[0, 0, 0], [10, 0, 0]], [[10, 0, 0], [10, 10, 0]]] });
      
    • Menyambung daftar titik secara berurutan dengan tepi-tepi lurus menjadi satu kawat.

      Kurang dari dua titik melemparkan error. Jika titik terakhir mengulang titik pertama, pengulangan itu dibuang dan kawat ditutup kembali ke titik pertama; jika tidak, kawat tetap terbuka. Untuk garis luar tertutup tanpa mengulang titik, gunakan createPolygonWire.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat yang melalui titik-titik

      const path = await bitbybit.occt.shapes.wire.fromPoints({ points: [[0, 0, 0], [10, 0, 0], [10, 10, 0]] });
      const outline = await bitbybit.occt.shapes.wire.fromPoints({ points: [[0, 0, 0], [10, 0, 0], [10, 10, 0], [0, 0, 0]] });
    • Membuat kawat dari objek polyline, satu tepi lurus per segmen; polyline yang ditandai tertutup juga mendapat tepi dari titik terakhirnya kembali ke titik pertama.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat

      const outline = await bitbybit.occt.shapes.wire.fromBasePolyline({ polyline: { points: [[0, 0, 0], [10, 0, 0], [10, 0, 10]], isClosed: true } });
      
    • Membuat kawat tertutup tiga tepi dari segitiga yang diberikan sebagai tiga titik.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat tertutup

      const outline = await bitbybit.occt.shapes.wire.fromBaseTriangle({ triangle: [[0, 0, 0], [10, 0, 0], [0, 0, 10]] });
      
    • Membuat satu kawat tertutup tiga tepi per segitiga sebuah mesh.

      Segitiga yang kawatnya tidak dapat dibangun dilewati dengan peringatan, bukan menghentikan sisanya.

      Parameters

      Returns Promise<TopoDSWirePointer[]>

      Satu kawat per segitiga yang berhasil dibangun

      const outlines = await bitbybit.occt.shapes.wire.fromBaseMesh({ mesh: triangles });
      

    get

    • Mengambil satu kawat dari sebuah bentuk menurut posisinya, dihitung dari 0, dalam urutan kernel menelusuri bentuk.

      Bentuk harus berupa kawat atau sesuatu yang dibangun dari kawat; indeks di luar kawat terakhir memicu error.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat pada indeks tersebut

      const outer = await bitbybit.occt.shapes.wire.getWire({ shape: face, index: 0 });
      
    • Menemukan pusat massa sebuah kawat, titik keseimbangan kurva-kurvanya; untuk lingkaran itu adalah pusatnya, di luar kawat itu sendiri.

      Parameters

      Returns Promise<Point3>

      Titik pusat massa

      const center = await bitbybit.occt.shapes.wire.getWireCenterOfMass({ shape: wire });
      
    • Menemukan pusat massa setiap kawat dalam daftar.

      Parameters

      Returns Promise<Point3[]>

      Satu titik per kawat, dalam urutan yang sama

      const centers = await bitbybit.occt.shapes.wire.getWiresCentersOfMass({ shapes: wires });
      
    • Membalik arah sebuah kawat, sehingga awalnya menjadi akhirnya.

      Tepi-tepinya mempertahankan urutan dan flag arahnya sendiri; kawat secara keseluruhan ditandai terbalik, yang dibaca sebagian besar operasi. reversedWireFromReversedEdges membangun ulang kawat tepi demi tepi sebagai gantinya.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat baru dengan arah sebaliknya

      const back = await bitbybit.occt.shapes.wire.reversedWire({ shape: wire });
      
    • Membalik arah sebuah kawat dengan membalik setiap tepi dan menyambungkannya lagi dalam urutan yang berlawanan.

      Hasilnya adalah kawat yang berjalan ke arah sebaliknya secara menyeluruh, yang diperlukan beberapa operasi jika flag reversedWire biasa tidak cukup.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat baru dengan arah sebaliknya

      const back = await bitbybit.occt.shapes.wire.reversedWireFromReversedEdges({ shape: wire });
      
    • Memberi tahu apakah sebuah kawat tertutup, yaitu jika titik awal dan akhirnya berimpit dalam toleransi kecil.

      Parameters

      Returns Promise<boolean>

      True jika kedua ujungnya bertemu

      const wireIsClosed = await bitbybit.occt.shapes.wire.isWireClosed({ shape: wire });
      
    • Mengukur panjang sebuah kawat di sepanjang kurva-kurvanya, dalam satuan model.

      Parameters

      Returns Promise<number>

      Panjang

      const len = await bitbybit.occt.shapes.wire.getWireLength({ shape: wire });
      
    • Mengukur panjang setiap kawat dalam daftar di sepanjang kurva-kurvanya, dalam satuan model.

      Parameters

      Returns Promise<number[]>

      Satu panjang per kawat, dalam urutan yang sama

      const lengths = await bitbybit.occt.shapes.wire.getWiresLengths({ shapes: wires });
      

    multiple

    • Membuat satu kawat poligon tertutup per daftar titik, seperti createPolygonWire.

      Dengan returnCompound bernilai true kawat-kawat dikemas ke dalam satu bentuk gabungan, bukan daftar.

      Parameters

      • inputs: PolygonsDto

        Poligon-poligon dan apakah dikemas ke dalam satu gabungan

      Returns Promise<TopoDSCompoundPointer | TopoDSWirePointer[]>

      Kawat-kawat secara berurutan, atau satu gabungan yang menampungnya

      const outlines = await bitbybit.occt.shapes.wire.createPolygons({
      polygons: [{ points: [[0, 0, 0], [5, 0, 0], [5, 0, 5]] }, { points: [[10, 0, 0], [15, 0, 0], [15, 0, 5]] }],
      returnCompound: false,
      });
    • Membuat satu kawat satu tepi lurus per definisi garis.

      Dengan returnCompound bernilai true kawat-kawat dikemas ke dalam satu bentuk gabungan, bukan daftar.

      Parameters

      Returns Promise<TopoDSCompoundPointer | TopoDSWirePointer[]>

      Kawat-kawat secara berurutan, atau satu gabungan yang menampungnya

      const lines = await bitbybit.occt.shapes.wire.createLines({
      lines: [{ start: [0, 0, 0], end: [10, 0, 0] }, { start: [0, 0, 5], end: [10, 0, 5] }],
      returnCompound: false,
      });
    • Membuat satu kawat polyline terbuka per daftar titik, seperti createPolylineWire.

      Dengan returnCompound bernilai true kawat-kawat dikemas ke dalam satu bentuk gabungan, bukan daftar.

      Parameters

      Returns Promise<TopoDSCompoundPointer | TopoDSWirePointer[]>

      Kawat-kawat secara berurutan, atau satu gabungan yang menampungnya

      const paths = await bitbybit.occt.shapes.wire.createPolylines({
      polylines: [{ points: [[0, 0, 0], [5, 0, 0], [5, 0, 5]] }, { points: [[10, 0, 0], [15, 0, 0]] }],
      returnCompound: false,
      });
    • Membuat satu kawat Bezier per definisi, seperti createBezier.

      Dengan returnCompound bernilai true kawat-kawat dikemas ke dalam satu bentuk gabungan, bukan daftar.

      Parameters

      • inputs: BezierWiresDto

        Definisi-definisi Bezier dan apakah dikemas ke dalam satu gabungan

      Returns Promise<TopoDSCompoundPointer | TopoDSWirePointer[]>

      Kawat-kawat secara berurutan, atau satu gabungan yang menampungnya

      const curves = await bitbybit.occt.shapes.wire.createBezierWires({
      bezierWires: [{ points: [[0, 0, 0], [5, 0, 10], [10, 0, 0]], closed: false }, { points: [[0, 0, 5], [5, 0, 15], [10, 0, 5]], closed: false }],
      returnCompound: false,
      });
    • Membuat satu kawat B-spline interpolasi per definisi, seperti interpolatePoints.

      Dengan returnCompound bernilai true kawat-kawat dikemas ke dalam satu bentuk gabungan, bukan daftar.

      Parameters

      • inputs: InterpolateWiresDto

        Definisi-definisi interpolasi dan apakah dikemas ke dalam satu gabungan

      Returns Promise<TopoDSCompoundPointer | TopoDSWirePointer[]>

      Kawat-kawat secara berurutan, atau satu gabungan yang menampungnya

      const curves = await bitbybit.occt.shapes.wire.interpolateWires({
      interpolations: [{ points: [[0, 0, 0], [5, 0, 5], [10, 0, 0]], periodic: false, tolerance: 1e-7 }, { points: [[0, 0, 5], [5, 0, 10], [10, 0, 5]], periodic: false, tolerance: 1e-7 }],
      returnCompound: false,
      });
    • Membuat satu kawat B-spline aproksimasi per definisi, seperti createBSpline.

      Dengan returnCompound bernilai true kawat-kawat dikemas ke dalam satu bentuk gabungan, bukan daftar.

      Parameters

      • inputs: BSplinesDto

        Definisi-definisi B-spline dan apakah dikemas ke dalam satu gabungan

      Returns Promise<TopoDSCompoundPointer | TopoDSWirePointer[]>

      Kawat-kawat secara berurutan, atau satu gabungan yang menampungnya

      const curves = await bitbybit.occt.shapes.wire.createBSplines({
      bSplines: [{ points: [[0, 0, 0], [5, 0, 5], [10, 0, 0]], closed: false }, { points: [[0, 0, 5], [5, 0, 10], [10, 0, 5]], closed: false }],
      returnCompound: false,
      });

    place

    • Memetakan kawat datar yang digambar pada bidang tanah ke permukaan sebuah muka, seolah-olah gambarnya dibungkuskan ke muka itu.

      Koordinat Z kawat dibaca sebagai U dan koordinat X-nya sebagai V, dalam nilai UV nyata muka, yang dilaporkan shapes.face.getUMinBound dan saudara-saudaranya; gambar yang muat di dalam batas-batas itu mendarat pada muka.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat yang terletak pada permukaan muka

      const onSurface = await bitbybit.occt.shapes.wire.placeWireOnFace({ wire: flatWire, face: cylinderFace });
      
    • Memproyeksikan kawat ke sebuah bentuk sepanjang sebuah arah, seperti melemparkan bayangannya ke permukaan.

      Hasilnya adalah gabungan kurva-kurva tempat proyeksi bertemu muka-muka bentuk, yang bisa berada di sisi dekat maupun jauhnya. Potong muka dengannya melalui shapes.face.createFaceFromWireOnFace atau gunakan sebagai lintasan.

      Parameters

      Returns Promise<TopoDSCompoundPointer>

      Gabungan dari kurva-kurva yang diproyeksikan

      const shadow = await bitbybit.occt.shapes.wire.project({ wire: circle, shape: sphere, direction: [0, -1, 0] });
      

    primitives

    • Membuat lingkaran penuh sebagai kawat satu tepi tertutup, terletak pada bidang yang normalnya adalah direction; default [0, 1, 0] meletakkannya rata di tanah.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat lingkaran

      const circle = await bitbybit.occt.shapes.wire.createCircleWire({ radius: 5, center: [0, 0, 0], direction: [0, 1, 0] });
      
    • Mengisi persegi panjang pada bidang tanah dengan grid kawat heksagon tertutup, berpusat di titik asal.

      Heksagon-heksagon diskalakan sehingga nrHexagonsInWidth muat melintasi width dan nrHexagonsInHeight melintasi height. Pola skala, fillet dan penyertaan dibaca heksagon demi heksagon dan berulang; flag extend meregangkan baris-baris terluar melewati tepi untuk menutupi persegi panjang.

      Parameters

      • inputs: HexagonsInGridDto

        Ukuran persegi panjang, jumlah heksagon, flag perluasan dan pola opsional

      Returns Promise<TopoDSWirePointer[]>

      Satu kawat per heksagon, baris demi baris

      const cells = await bitbybit.occt.shapes.wire.hexagonsInGrid({
      width: 20,
      height: 10,
      nrHexagonsInWidth: 8,
      nrHexagonsInHeight: 4,
      flatTop: false,
      scalePatternWidth: [0.9],
      scalePatternHeight: [0.9],
      });
    • Membuat kawat persegi tertutup berpusat di center.

      direction adalah normal bidangnya: default [0, 1, 0] meletakkannya rata di tanah.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat persegi

      const square = await bitbybit.occt.shapes.wire.createSquareWire({ size: 10, center: [0, 0, 0], direction: [0, 1, 0] });
      
    • Membuat kawat tertutup berbentuk bintang dengan numRays ujung.

      Ujung-ujungnya mencapai outerRadius dan lekukan di antaranya innerRadius; offsetOuterEdges mengangkat ujung sinar keluar dari bidang sejauh jarak itu, menghasilkan bintang 3D, dan half mempertahankan separuh pertama sinar sebagai kawat terbuka. Terbaring rata di tanah kecuali direction menyatakan lain.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat bintang

      const star = await bitbybit.occt.shapes.wire.createStarWire({ outerRadius: 5, innerRadius: 2, numRays: 5, center: [0, 0, 0], direction: [0, 1, 0], offsetOuterEdges: 0, half: false });
      
    • Membuat kawat tertutup berbentuk pohon Natal bergaya: nrSkirts lapisan dahan, menyempit dari outerDist ke innerDist dari garis batang, di atas batang setinggi trunkHeight dan selebar trunkWidth.

      Berbeda dengan bentuk datar lainnya di sini, ia berdiri tegak pada bidang XY, puncak sepanjang Y; direction adalah arah batang-ke-puncak, rotation memutarnya mengelilingi sumbu itu, dalam derajat.

      Parameters

      • inputs: ChristmasTreeDto

        Proporsi pohon, ukuran batang, opsi, titik asal dan arah dari batang ke pucuk

      Returns Promise<TopoDSWirePointer>

      Kawat pohon

      const tree = await bitbybit.occt.shapes.wire.createChristmasTreeWire({
      height: 10,
      innerDist: 1.5,
      outerDist: 4,
      nrSkirts: 4,
      trunkHeight: 1.5,
      trunkWidth: 1,
      half: false,
      rotation: 0,
      origin: [0, 0, 0],
      direction: [0, 1, 0],
      });
    • Membuat kawat poligon beraturan tertutup dengan nrCorners sudut, semuanya pada lingkaran berjari-jari radius.

      direction adalah normal bidangnya; default [0, 1, 0] meletakkannya rata di tanah.

      Parameters

      • inputs: NGonWireDto

        Jumlah sudut, jari-jari, pusat dan normal bidang

      Returns Promise<TopoDSWirePointer>

      Kawat poligon

      const hexagon = await bitbybit.occt.shapes.wire.createNGonWire({ nrCorners: 6, radius: 5, center: [0, 0, 0], direction: [0, 1, 0] });
      
    • Membuat kawat jajar genjang tertutup: persegi panjang berukuran width dan height yang sisi-sisinya miring sebesar angle derajat.

      Dengan aroundCenter bernilai true bentuk berpusat di center; jika tidak, bentuk bermula di sana dan memanjang ke arah positif. direction adalah normal bidang; default [0, 1, 0] meletakkannya rata di tanah.

      Parameters

      • inputs: ParallelogramDto

        Lebar, tinggi, sudut kemiringan, apakah dipusatkan, pusat dan normal bidang

      Returns Promise<TopoDSWirePointer>

      Kawat jajar genjang

      const shape = await bitbybit.occt.shapes.wire.createParallelogramWire({ width: 10, height: 5, angle: 30, aroundCenter: true, center: [0, 0, 0], direction: [0, 1, 0] });
      
    • Membuat kawat tertutup berbentuk hati dari dua paruh yang halus yang kira-kira muat dalam persegi berukuran sizeApprox.

      rotation memutarnya dalam bidangnya, dalam derajat. direction adalah normal bidang; default [0, 1, 0] meletakkannya rata di tanah.

      Parameters

      • inputs: Heart2DDto

        Ukuran perkiraan, rotasi, pusat dan normal bidang

      Returns Promise<TopoDSWirePointer>

      Kawat hati

      const heart = await bitbybit.occt.shapes.wire.createHeartWire({ sizeApprox: 10, rotation: 0, center: [0, 0, 0], direction: [0, 1, 0] });
      
    • Membuat kawat persegi panjang tertutup berpusat di center.

      Pada bidang tanah width berjalan sepanjang X dan length sepanjang Z; direction adalah normal bidang, dan default [0, 1, 0] menjaga kawat rata di tanah.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat persegi panjang

      const rectangle = await bitbybit.occt.shapes.wire.createRectangleWire({ width: 20, length: 10, center: [0, 0, 0], direction: [0, 1, 0] });
      
    • Membuat kawat tertutup berbentuk L: dua kaki persegi panjang yang bertemu di sebuah sudut.

      Kaki pertama memiliki widthFirst dan lengthFirst, kaki kedua widthSecond dan lengthSecond; align menempatkan sudut di sisi luar, sisi dalam atau tengah kaki-kaki, dan rotation memutar bentuk dalam bidangnya, dalam derajat. Terbaring rata di tanah kecuali direction menyatakan lain.

      Parameters

      • inputs: LPolygonDto

        Kedua ukuran kaki, perataan, rotasi, pusat dan normal bidang

      Returns Promise<TopoDSWirePointer>

      Kawat berbentuk L

      const outline = await bitbybit.occt.shapes.wire.createLPolygonWire({
      widthFirst: 2,
      lengthFirst: 10,
      widthSecond: 2,
      lengthSecond: 6,
      align: Bit.Inputs.OCCT.directionEnum.outside,
      rotation: 0,
      center: [0, 0, 0],
      direction: [0, 1, 0],
      });
    • Membuat elips penuh sebagai kawat satu tepi tertutup, terletak pada bidang yang normalnya adalah direction.

      radiusMajor tidak boleh lebih kecil dari radiusMinor, atau kernel menolak elips itu; arah default [0, 1, 0] meletakkannya rata di tanah.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat elips

      const ellipse = await bitbybit.occt.shapes.wire.createEllipseWire({ center: [0, 0, 0], direction: [0, 1, 0], radiusMinor: 3, radiusMajor: 6 });
      
    • Membuat kawat heliks, kumparan dengan radius konstan yang naik pitch satuan model per putaran sampai mencapai height.

      Dimulai di samping center dan naik sepanjang direction; clockwise membalik arah lilitan. Heliks didekati oleh kurva halus dalam batas tolerance. Jari-jari, pitch atau tinggi 0 atau kurang menghasilkan kawat null.

      Parameters

      • inputs: HelixWireDto

        Jari-jari, pitch, tinggi, pusat alas, arah sumbu, arah lilitan dan toleransi

      Returns Promise<TopoDSWirePointer>

      Kawat heliks

      const spring = await bitbybit.occt.shapes.wire.createHelixWire({ radius: 2, pitch: 1, height: 10, center: [0, 0, 0], direction: [0, 1, 0], clockwise: false, tolerance: 1e-4 });
      
    • Membuat kawat heliks seperti createHelixWire, tetapi ukurannya ditentukan numTurns, bukan tinggi: kumparan naik pitch satuan model per putaran, sebanyak numTurns kali.

      Parameters

      • inputs: HelixWireByTurnsDto

        Jari-jari, pitch, jumlah putaran, pusat alas, arah sumbu, arah lilitan dan toleransi

      Returns Promise<TopoDSWirePointer>

      Kawat heliks

      const spring = await bitbybit.occt.shapes.wire.createHelixWireByTurns({ radius: 2, pitch: 1, numTurns: 5, center: [0, 0, 0], direction: [0, 1, 0], clockwise: false, tolerance: 1e-4 });
      
    • Membuat kawat heliks kerucut yang jari-jarinya berubah merata dari startRadius di dasar ke endRadius di puncak, naik pitch satuan model per putaran sampai mencapai height.

      Dimulai di samping center dan naik sepanjang direction; clockwise membalik arah lilitan. Kurva didekati dalam batas tolerance.

      Parameters

      • inputs: TaperedHelixWireDto

        Jari-jari awal dan akhir, pitch, tinggi, pusat alas, arah sumbu, arah lilitan dan toleransi

      Returns Promise<TopoDSWirePointer>

      Kawat heliks tirus

      const cone = await bitbybit.occt.shapes.wire.createTaperedHelixWire({ startRadius: 3, endRadius: 0.5, pitch: 1, height: 8, center: [0, 0, 0], direction: [0, 1, 0], clockwise: false, tolerance: 1e-4 });
      
    • Membuat kawat spiral datar pada bidang yang normalnya adalah direction: numTurns putaran yang jari-jarinya tumbuh merata dari startRadius ke endRadius.

      Arah default [0, 1, 0] meletakkannya rata di tanah; clockwise membalik arah lilitan, dan kurva didekati dalam batas tolerance.

      Parameters

      • inputs: FlatSpiralWireDto

        Jari-jari awal dan akhir, jumlah putaran, pusat, normal bidang, arah lilitan dan toleransi

      Returns Promise<TopoDSWirePointer>

      Kawat spiral

      const spiral = await bitbybit.occt.shapes.wire.createFlatSpiralWire({ startRadius: 0.5, endRadius: 5, numTurns: 4, center: [0, 0, 0], direction: [0, 1, 0], clockwise: false, tolerance: 1e-4 });
      
    • Menulis teks sebagai kawat goresan pada bidang tanah dalam font satu-garis Hershey simplex, satu kawat polyline terbuka per goresan pena.

      height adalah tinggi huruf kapital dalam satuan model, lineSpacing dan letterSpacing adalah kelipatannya, align menyejajarkan baris-baris dengan panjang berbeda, dan centerOnOrigin memindahkan blok ke titik asal.

      Parameters

      • inputs: TextWiresDto

        Teks, ukuran dan jaraknya, perataan dan opsi penempatan

      Returns Promise<TopoDSWirePointer[]>

      Satu kawat per goresan, dalam urutan penulisan

      const strokes = await bitbybit.occt.shapes.wire.textWires({
      text: "Hello",
      height: 5,
      lineSpacing: 1.5,
      letterSpacing: 0,
      align: Bit.Inputs.Base.horizontalAlignEnum.left,
      centerOnOrigin: true,
      });
    • Menulis teks sebagai kawat goresan seperti textWires dan mengemasnya ke dalam gabungan, disertai ukuran bloknya.

      Hasilnya membawa compound dengan seluruh teks, characters dengan satu gabungan per karakter dalam urutan penulisan, width dan height sebagai bentangan blok sepanjang X dan sepanjang Z, serta center sebagai titik tengah blok.

      Parameters

      • inputs: TextWiresDto

        Teks, ukuran dan jaraknya, perataan dan opsi penempatan

      Returns Promise<TextWiresDataDto<TopoDSCompoundPointer>>

      Gabungan teks, gabungan per karakter dan ukuran terukur

      const text = await bitbybit.occt.shapes.wire.textWiresWithData({
      text: "Hi",
      height: 5,
      lineSpacing: 1.5,
      letterSpacing: 0,
      align: Bit.Inputs.Base.horizontalAlignEnum.left,
      centerOnOrigin: false,
      });
      console.log(text.width, text.height, text.characters.length);

    rebuild

    • Membangun ulang setiap tepi sebuah kawat sebagai B-spline dengan derajat tertentu, dalam batas toleransi, dan menyambungkan hasilnya kembali menjadi kawat.

      Menurunkan derajat menyederhanakan kurva-kurva, menaikkannya memberi operasi selanjutnya lebih banyak keleluasaan; bagaimanapun setiap kurva baru tetap berada dalam tolerance dari yang lama.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat baru dengan tepi-tepi yang dibangun ulang

      const simpler = await bitbybit.occt.shapes.wire.rebuildWireDegree({ shape: wire, degree: 3, tolerance: 1e-3 });
      

    seam

    • Memindahkan sambungan kawat periodik tertutup, titik tempat kawat dimulai dan berakhir, ke parameter tertentu di sepanjang kurvanya.

      Geometrinya tidak berubah; hanya tempat kawat dianggap bermula. Dimaksudkan untuk kawat satu tepi seperti lingkaran: setiap tepi periodik dipindahkan, tepi yang tidak periodik tetap apa adanya.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat baru yang dimulai di seam

      const rotated = await bitbybit.occt.shapes.wire.moveWireSeamByParameter({ shape: circle, parameter: 1.57 });
      
    • Memindahkan sambungan kawat periodik tertutup, titik tempat kawat dimulai dan berakhir, sejauh jarak tertentu di sepanjang kurva dari awalnya saat ini.

      Geometrinya tidak berubah; hanya tempat kawat dianggap bermula. Dimaksudkan untuk kawat satu tepi seperti lingkaran: setiap tepi periodik dipindahkan, tepi yang tidak periodik tetap apa adanya.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat baru yang dimulai di seam

      const rotated = await bitbybit.occt.shapes.wire.moveWireSeamByLength({ shape: circle, length: 2.5 });
      

    via points

    • Membuat kawat tertutup dari tepi-tepi lurus melalui daftar titik sudut, menambahkan tepi dari titik terakhir kembali ke titik pertama.

      Titik-titiknya tidak harus berada pada satu bidang; muka datar bagaimanapun memerlukan garis luar yang planar.

      Parameters

      • inputs: PolygonDto

        Titik-titik sudut, secara berurutan

      Returns Promise<TopoDSWirePointer>

      Kawat tertutup

      const square = await bitbybit.occt.shapes.wire.createPolygonWire({ points: [[0, 0, 0], [10, 0, 0], [10, 0, 10], [0, 0, 10]] });
      
    • Membuat kawat satu tepi lurus di antara dua titik.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat lurus

      const line = await bitbybit.occt.shapes.wire.createLineWire({ start: [0, 0, 0], end: [10, 0, 0] });
      
    • Membuat kawat satu tepi lurus di antara dua titik dan memanjangkannya melewati masing-masing titik.

      extensionStart dan extensionEnd adalah jarak dalam satuan model yang ditambahkan melewati awal dan akhir di sepanjang garis; kedua titik harus berbeda atau error dipicu.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat lurus yang diperpanjang

      const longer = await bitbybit.occt.shapes.wire.createLineWireWithExtensions({ start: [0, 0, 0], end: [10, 0, 0], extensionStart: 2, extensionEnd: 5 });
      
    • Membuat kawat terbuka dari tepi-tepi lurus melalui daftar titik, secara berurutan.

      Kawat tidak ditutup; createPolygonWire menambahkan tepi kembali ke titik pertama.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat terbuka

      const path = await bitbybit.occt.shapes.wire.createPolylineWire({ points: [[0, 0, 0], [10, 0, 0], [10, 0, 10]] });
      
    • Membuat kawat Bezier halus yang dikendalikan titik-titik kontrol: dimulai di titik pertama, berakhir di titik terakhir dan ditarik ke arah titik-titik di antaranya tanpa melewatinya.

      closed menambahkan titik pertama lagi sehingga ujung-ujungnya bertemu; periodic sebaliknya membangun kurva tertutup yang halus melintasi sambungan. degree membatasi berapa banyak tetangga yang membentuk setiap bagian.

      Parameters

      • inputs: BezierDto

        Titik-titik kontrol serta opsi penutupan dan derajat

      Returns Promise<TopoDSWirePointer>

      Kawat Bezier

      const curve = await bitbybit.occt.shapes.wire.createBezier({ points: [[0, 0, 0], [5, 0, 10], [10, 0, -10], [15, 0, 0]], closed: false, periodic: false });
      
    • Membuat kawat Bezier seperti createBezier, dengan bobot per titik kontrol yang menyatakan seberapa kuat titik itu menarik kurva.

      Bobot di atas 1 menarik kurva ke arah titiknya, di bawah 1 melepaskannya. Bobot harus cocok dengan titik-titik: jumlah yang sama, atau satu lebih banyak jika closed bernilai true dan periodic false, karena titik pertama diulang.

      Parameters

      • inputs: BezierWeightsDto

        Titik-titik kontrol, bobotnya serta opsi penutupan dan derajat

      Returns Promise<TopoDSWirePointer>

      Kawat Bezier berbobot

      const curve = await bitbybit.occt.shapes.wire.createBezierWeights({
      points: [[0, 0, 0], [5, 0, 10], [10, 0, 0]],
      weights: [1, 3, 1],
      closed: false,
      periodic: false,
      });
    • Membuat kawat B-spline halus yang melewati setiap titik secara berurutan.

      periodic menutup kurva sehingga halus melintasi sambungan, yang menghasilkan loop berbentuk bagus. parametrization mengendalikan jarak antar titik: centripetal menahan kuspis dan lonjakan jika titik-titiknya tidak seragam. startTangent dan endTangent, atau satu entri tangents per titik, memaksa arah kurva di sana.

      Parameters

      • inputs: InterpolationDto

        Titik-titik, apakah kurva ditutup, toleransi, parametrisasi dan tangen opsional

      Returns Promise<TopoDSWirePointer>

      Kawat B-spline yang melalui titik-titik

      const loop = await bitbybit.occt.shapes.wire.interpolatePoints({
      points: [[0, 0, 0], [10, 0, 5], [10, 0, 15], [0, 0, 10]],
      periodic: true,
      tolerance: 1e-7,
      parametrization: Bit.Inputs.OCCT.bSplineParametrizationEnum.centripetal,
      });
    • Membuat kawat B-spline halus tertutup melalui titik-titik yang bentuknya simetris cermin setiap kali titik-titiknya simetris, tanpa titik awal atau akhir yang tampak janggal.

      interpolatePoints periodik biasa dapat tampak miring di sambungannya untuk input simetris seperti persegi atau segitiga; varian ini tidak. Gagal dengan error jika titik-titik tidak dapat diinterpolasi.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat B-spline simetris tertutup

      const rounded = await bitbybit.occt.shapes.wire.interpolatePointsSymmetric({ points: [[0, 0, 0], [10, 0, 0], [10, 0, 10], [0, 0, 10]], tolerance: 1e-7 });
      
    • Membuat kawat B-spline halus yang mendekati daftar titik: mengikutinya dengan dekat tetapi tidak harus melewati masing-masing secara tepat.

      closed menambahkan titik pertama lagi sehingga ujung-ujungnya bertemu. Pencocokan memakai derajat antara 3 dan 8 dan toleransi 0.001 satuan model; gunakan interpolatePoints jika kurva harus melewati titik-titik.

      Parameters

      • inputs: BSplineDto

        Titik-titik dan apakah kurva ditutup

      Returns Promise<TopoDSWirePointer>

      Kawat B-spline

      const curve = await bitbybit.occt.shapes.wire.createBSpline({ points: [[0, 0, 0], [5, 0, 5], [10, 0, 0], [15, 0, 5]], closed: false });
      

    via wires

    • Menggambar garis zig-zag yang memantul di antara dua kawat: keduanya dibagi menjadi jumlah titik yang sama dan sebuah polyline mengunjunginya secara bergantian.

      nrZigZags menyetel jumlah pantulan; inverse memulai pada kawat kedua; divideByEqualDistance menjarakkan titik-titik menurut panjang, bukan parameter; dengan zigZagsPerEdge bernilai true setiap tepi mendapat zig-zag-nya sendiri, jadi jumlah tepi harus cocok.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat zig-zag

      const zigzag = await bitbybit.occt.shapes.wire.createZigZagBetweenTwoWires({ wire1: lower, wire2: upper, nrZigZags: 20, inverse: false, divideByEqualDistance: true, zigZagsPerEdge: false });
      
    • Menyambungkan titik-titik awal beberapa kawat atau tepi menjadi satu kawat baru dan titik-titik akhirnya menjadi kawat lainnya.

      wireType menjadikannya polyline atau kurva interpolasi halus, closed menyambung titik terakhir kembali ke titik pertama, dan tolerance dipakai untuk interpolasi. Kurang dari dua bentuk memicu error.

      Parameters

      Returns Promise<TopoDSWirePointer[]>

      Dua kawat: satu melalui titik-titik awal, satu melalui titik-titik akhir

      const [starts, ends] = await bitbybit.occt.shapes.wire.createWiresBetweenStartEndPointsOfWiresAndEdges({
      shapes: [wireA, wireB, wireC],
      wireType: Bit.Inputs.OCCT.wireFromPointsTypeEnum.interpolated,
      closed: false,
      tolerance: 1e-7,
      });
    • Membagi beberapa kawat atau tepi menjadi jumlah titik yang sama dan menyambungkan titik-titik pada setiap posisi menjadi kawat baru, seperti anak tangga pada tangga.

      nrOfDivisions langkah menghasilkan satu anak tangga lebih banyak dari itu; divideByEqualDistance menjarakkan titik-titik menurut panjang, bukan parameter; wireType menjadikan anak tangga polyline atau kurva halus, closed menyambung masing-masing menjadi loop.

      Parameters

      Returns Promise<TopoDSWirePointer[]>

      Satu kawat per titik pembagian, secara berurutan di sepanjang bentuk

      const rungs = await bitbybit.occt.shapes.wire.createWiresBetweenSubdividedPointsOfWiresAndEdges({
      shapes: [rail1, rail2],
      nrOfDivisions: 10,
      divideByEqualDistance: true,
      wireType: Bit.Inputs.OCCT.wireFromPointsTypeEnum.polyline,
      closed: false,
      tolerance: 1e-7,
      });
    • Menggambar garis luar tertutup mengelilingi dua lingkaran yang berada pada satu bidang, menyambungkannya dengan garis singgung: bentuk sabuk atau kapsul.

      keepLines memilih garis singgung luar (sabuk) atau garis singgung dalam yang bersilangan; circleRemainders memilih busur mana dari setiap lingkaran yang tetap berada dalam garis luar. Setiap kawat lingkaran harus terdiri dari satu tepi.

      Parameters

      Returns Promise<TopoDSWirePointer>

      Kawat garis luar tertutup

      const belt = await bitbybit.occt.shapes.wire.createWireFromTwoCirclesTan({
      circle1,
      circle2,
      keepLines: Bit.Inputs.OCCT.twoSidesStrictEnum.outside,
      circleRemainders: Bit.Inputs.OCCT.fourSidesStrictEnum.outside,
      tolerance: 1e-7,
      });