Open Cascade Technology

Open Cascade Technology (OCCT), sebelumnya bernama CAS.CADE, adalah platform pengembangan perangkat lunak sumber terbuka untuk 3D CAD, CAM, CAE, dll. yang dikembangkan dan didukung oleh Open Cascade SAS.

OCCT adalah toolkit pemodelan B-Rep (Representasi batas) skala penuh. OCCT tersedia di bawah lisensi khusus LGPL-2.1 yang mengizinkan penggunaannya dalam aplikasi open source dan berpemilik.

Sejarah

CAS.CADE (disingkat dari Computer Aided Software for Computer Aided Design and Engineering) pada awalnya dikembangkan pada awal 1990-an oleh Matra Datavision, pengembang perangkat lunak Euclid CAD sebagai infrastruktur dasar untuk versi masa depan Euclid Quantum. Pada tahun 1998 perusahaan meninggalkan pengembangan perangkat lunak untuk berkonsentrasi pada layanan, dan sebagian besar fasilitas pengembangan perangkat lunak dijual ke Dassault Systèmes, pengembang CATIA pesaing.

 
Product nameRelease dateLatest Update VersionLatest Update DateHighlights
Open CASCADE Technology 7.62021-11-037.6.22022-04-29
  • Added progress indication / abortion to Boolean operations and offset algorithm.
  • Added support of kinematics entities to STEP reader.
  • Introduced interface for partial OCAF document reading.
Open CASCADE Technology 7.52020-11-057.5.32021-08-06
  • Real-time Physically based rendering (PBR) renderer using Metallic-Roughness material model.
  • WebAssembly target platform support (including WebGL viewer).
  • UNICODE support in STEP reader/writer.
Open CASCADE Technology 7.42019-10-01
  • Improved BRepMesh performance, robustness and accuracy.
  • Improved robustness and stability of Boolean operations and Extrema.
  • Improved performance of built-in parallelization tools (OSD_Parallel).
  • Added glTF 2.0 and OBJ readers.
  • Added AIS_ViewController mapping user input to 3D viewer camera manipulations.
  • Added support of 3/4 and box clipping configurations to 3D viewer.
  • Added fast HLR-alike OpenGL rendering mode.
  • Removed legacy Local Context functionality from AIS and legacy Boolean operations.
Open CASCADE Technology 7.32018-05-29
  • Added algorithm constructing OBB (oriented bounding box).
  • Optimized surface intersection, shape offset and Boolean operation algorithms.
  • Added distance and size culling rendering features.
  • Added support of UNICODE filenames with MinGW-w64.
Open CASCADE Technology 7.22017-08-31
  • Added support of OCAF binary files larger than 2 GiB.
  • Added “Glue” option to Boolean algorithms.
  • Added support of annotations, saved views and clipping planes to STEP and XDE.
  • Added Weighted OIT (Order-independent_transparency) rendering feature.
  • Path Tracing engine improvements.
Open CASCADE Technology 7.12016-11-25
  • OCAF persistence without dynamically-loaded plugins.
  • Improved STEP AP242 support, including PMI, dimensions and annotations.
  • Improved rendering performance of Wireframe AIS_Shape presentation.
  • Added AIS_Manipulator for interactive object transformations in 3D viewer.
  • TKOpenGl now uses GLSL programs by default.
Open CASCADE Technology 7.02016-04-05
  • WOK (Workshop Organization Kit) has been replaced by CMake building scripts.
  • CDL files have been replaced by pre-generated C++ headers.
Open CASCADE Technology 6.92015-05-126.9.12015-09-28
  • Introduced “Fuzzy”Boolean operations with specified global tolerance.
  • Introduced built-in multi-threading parallelization tools as alternative to TBB library.
  • Improved robustness of surface-surface intersection and curve on surface projection.
  • Improved performance of p-curve reconstruction within STEP import.
  • Improved compatibility with OpenGL ES 2.0.
Open CASCADE Technology 6.82014-11-10
  • Added support of UNICODE (UTF-8) filenames.
  • Added STL-compatible iterators to NCollection classes.
  • “Handle” smart-pointer now uses NULL pointer instead of a special value 0xfefd0000.
  • Added Bounding_volume_hierarchy (BVH) algorithms and structures.
  • Introduced multi-threaded version of Boolean operation algorithm.
  • Introduced limited OpenGL ES 2.0 support in 3D viewer.
  • Added VIS / TKIVtk component providing a B-Rep shape presentation builder for VTK viewer.
  • Added support of stereoscopic displays within 3D viewer.
  • Added frustum culling feature improving rendering performance.
  • Ray-Tracing engine has been switched from OpenCL to GLSL implementation.
Open CASCADE Technology 6.72013-12-186.7.12014-04-30
  • License has been changed to LGPL-2.1-only with additional exception.
  • Built-in GPU-accelerated Ray-Tracing rendering engine using OpenCL.
Open CASCADE Technology 6.62013-04-22
Open CASCADE Technology 6.52011-04-046.5.52013-03-29
Open CASCADE Technology 6.42010-09-30
  • Added multi-threaded mode to BRepMesh algorithm (introduced optional TBB library support).
  • Improved rendering performance by using Vertex buffer object (VBO).
  • TKOpenGl implementation converted from C to C++ classes.
  • Improved text rendering with help of FTGL and FreeType libraries.
  • Improved algorithms for line-line, line-plane and plane-plane intersection.
Open CASCADE Technology 6.32008-09-036.3.12009-06-19
Open CASCADE Technology 6.2?6.2.12007-12-06
Open CASCADE Technology 6.12006-03-246.1.12006-10-16
Open CASCADE Technology 5.2?5.2.42005-07-29
Open CASCADE Technology 5.1?5.1.32004-04-23“Open CASCADE” has been renamed to “Open CASCADE Technology”.
Open CASCADE 4.02001-12-11
Open CASCADE 3.02000-04-24
Open CASCADE 2.0?
Open CASCADE 1.01999

Sumber terbuka

Pada tahun 1999 Matra Datavision memutuskan untuk menerbitkan infrastruktur CAS.CADE di bawah model sumber terbuka di bawah Lisensi Publik Teknologi CASCADE Terbuka[10] dan menamainya Open Cascade.

Pada tahun 2000, sebuah perusahaan terpisah, Open Cascade SAS, didirikan untuk menjalankan bisnis seputar Open Cascade. Open Cascade SAS dijual pada tahun 2003 ke Principia, sebuah perusahaan penyedia layanan Prancis, dan kemudian pada tahun 2006 diakuisisi oleh Euriware Group, anak perusahaan dari Areva.

Pada tahun 2004, perangkat lunak diganti namanya menjadi Open Cascade Technology untuk membedakannya dari nama perusahaan itu sendiri.

Buka Cascade S.A.S. menyediakan versi perpustakaan bersertifikat, yang dirilis secara sporadis, biasanya 1–2 rilis per tahun. Hingga versi 6.5.0 (2011), hanya versi minor dan mayor yang tersedia untuk umum, sedangkan rilis perantara (pemeliharaan) hanya dapat diakses oleh pelanggan Open Cascade S.A.S. Misalnya, versi 6.3.0 dirilis untuk umum pada tahun 2008, dan versi publik berikutnya 6.5.0 dirilis pada awal tahun 2011. Semua rilis terbaru mulai dari versi 6.5.0 bersifat publik.

Garpu komunitas

Pada bulan Maret 2011, Thomas Paviot memprakarsai fork dari pustaka Open Cascade versi 6.5.0 terbaru yang tersedia untuk umum. Inisiatif ini disebut Open Cascade Community Edition. Proyek ini bertujuan untuk membuat rilis berbasis komunitas dan proses pelaporan bug yang terpisah untuk perpustakaan.

Portal pengembangan kolaboratif
Pada bulan Desember 2011, Open Cascade memasang portal web untuk kontributor eksternal dan menjadikan Mantis Bug Tracker dan repositori Git selanjutnya tersedia untuk umum (cermin GitHub hanya baca telah dibuat pada tahun ‘2020) . Menurut pernyataan di situs web baru, kontributor eksternal dari Komunitas Open Source didorong untuk berpartisipasi dalam pengembangan Teknologi Open Cascade, yaitu mendaftarkan bug secara langsung di bugtracker, memberikan kontribusi pada kode setelah menandatangani Perjanjian Lisensi Kontributor, dll.

Perubahan lisensi

Sejak 18 Desember 2013 dengan versi 6.7.0 Open Cascade Technology hanya tersedia di bawah LGPL-2.1 dengan pengecualian tambahan. Versi sebelumnya dilisensikan di bawah “Lisensi Publik Teknologi Kaskade Terbuka” yang tidak kompatibel dengan GPL dan dianggap tidak bebas oleh proyek Fedora.[23]

Kegunaan

Pustaka objek
Fungsionalitas OCCT dibagi menjadi beberapa modul besar. Setiap modul mendefinisikan daftar toolkit (perpustakaan). Modul Utama:

  • Kelas Dasar: mendefinisikan kelas dasar, pengalokasi memori, lapisan abstraksi OS, koleksi (peta data, larik, dll.), struktur data akselerasi (Pohon BVH) dan matematika vektor/matriks yang digunakan oleh Modul lain.
  • Pemodelan Data: menyediakan struktur data untuk mewakili primitif geometris 2D dan 3D (kurva analitik: Garis, Lingkaran, Elips, Hiperbola, Parabola, Bézier, B-spline, Offset; permukaan analitik: Bidang, Silinder, Kerucut, Bola, Torus, Bézier, B-spline, Revolution, Extrusion, Offset) dan komposisinya menjadi model B-Rep.
  • Algoritma Pemodelan: berisi berbagai macam algoritma geometri dan topologi (persimpangan, operasi Boolean, penyambungan permukaan, fillet, penyembuhan bentuk).
  • Visualisasi: menyediakan layanan interaktif untuk menampilkan geometri dalam Penampil 3D; mengimplementasikan perender OpenGL / OpenGL ES yang ringkas, mendukung Phong konvensional, model shading kekasaran logam PBR real-time serta mesin Ray-Tracing/Path-Tracing interaktif.
  • Pertukaran Data: menyediakan kemungkinan untuk mengimpor/mengekspor berbagai format CAD.
    LANGKAH, IGES, glTF, OBJ, STL dan VRML didukung secara asli.[24] Format lain dapat diimpor dengan menggunakan plug-in.[25] Komponen Extended Data Exchange (XDE) bergantung pada definisi dokumen XCAF terpadu, yang mencakup struktur rakitan bentuk CAD, atribut warna/nama/bahan/metadata/lapisan serta informasi tambahan lainnya seperti PMI.
  • Kerangka Aplikasi: menawarkan solusi [kata kunci] untuk menangani data khusus aplikasi.
  • DRAW Test Harness: mengimplementasikan antarmuka skrip ke algoritme OCCT berdasarkan Tcl-interpreter untuk penggunaan interaktif, mengotomatiskan proses, membuat prototipe aplikasi, dan tujuan pengujian.

Kit Organisasi Lokakarya

Workshop Organization Kit (WOK) adalah lingkungan pengembangan Open Cascade, yang telah dirancang untuk memungkinkan sejumlah besar pengembang bekerja pada produk yang memanfaatkan versi referensi umum yang dibagikan melalui jaringan lokal.

Hingga rilis OCCT 7.0.0, modifikasi substansial dalam kode sumber tidak mungkin dilakukan tanpa menggunakan WOK, karena ini adalah satu-satunya alat yang menyediakan dukungan untuk CDL (bahasa definisi CAS.CADE), yang digunakan untuk mendeklarasikan sebagian besar kelas OCCT dan juga melayani untuk mendefinisikan struktur logis perpustakaan OCCT. WOK telah dimasukkan dalam distribusi OCCT sebelumnya; sejak OCCT versi 6.4 dijadikan alat mandiri.

Dalam rilis 7.0.0, semua file CDL telah dihapus dari kode sumber OCCT sehingga WOK tidak lagi diperlukan untuk pengembangan OCCT.

Bekerja dengan File IFC

Open CASCADE IFC Import SDK menyediakan aplikasi dengan kemampuan membaca data BIM dari file dalam format IFC. Ini mendukung versi IFC2×3 dan IFC4 yang digunakan oleh sebagian besar aplikasi modern.[26]

Ini memungkinkan visualisasi dan manipulasi geometri bangunan dan desain CAD.

Alat eksternal juga tersedia untuk mengonversi dari Open CASCADE ke IFC

Program CAD berdasarkan Teknologi Cascade Terbuka
Beberapa program CAD mengandalkan Teknologi Open CASCADE termasuk:

  • FreeCAD merupakan sumber terbuka, pemodel parametrik 3D, dengan dukungan untuk membangun pemodelan informasi, metode elemen hingga (FEM), dan skrip Python.
  • SALOME platform sumber terbuka untuk pra dan pasca pemrosesan untuk simulasi numerik.
  • KiCad merupakan rangkaian sumber terbuka untuk otomasi desain elektronik (EDA).
  • Gmsh generator jaring elemen hingga (FEM) open source. Sejak versi 3.0, Gmsh mendukung fitur geometri padat konstruktif penuh, berdasarkan OCCT.
  • FORAN sistem CAD/CAM/CAE terintegrasi yang dikembangkan oleh SENER untuk desain dan produksi hampir semua kapal angkatan laut dan unit lepas pantai. FORAN menggunakan OCCT sejak rilis V80R2.0[30] untuk bekerja dengan permukaan analitik.
  • JSketcher adalah pemodel 3D parametrik berbasis browser.
  • IFC Open Shell,[32] pustaka Python untuk bekerja dengan data IFC. Menggunakan Open CASCADE secara internal untuk mengonversi geometri implisit dalam file IFC menjadi geometri eksplisit yang dapat digunakan oleh CAD perangkat lunak atau paket pemodelan apa pun.
This entry was posted in . Bookmark the permalink.
Table of Contents