Table des matières | documentation web-ifc | documentation de la plateforme | démo | communauté | paquet npm
web-ifc est une bibliothèque javascript pour lire et écrire des fichiers ifc, à des vitesses natives. web-ifc fait partie du projet That Open Company, qui vise à abaisser le seuil de développement d'applications BIM ouvertes.
npm install web-ifc
const WebIFC = require ( "web-ifc/web-ifc-api.js" ) ;
// initialize the API
const ifcApi = new WebIFC . IfcAPI ( ) ;
// initialize the library
await ifcApi . Init ( ) ;
// open a model from data
let modelID = ifcApi . OpenModel ( /* IFC data as a string or UInt8Array */ , /* optional settings object */ , ) ;
// the model is now loaded! use modelID to fetch geometry or properties
// checkout examples/usage for some details on how to read/write IFC
// close the model, all memory is freed
ifcApi . CloseModel ( modelID ) ;
Voir des exemples pour plus de détails sur l'utilisation de web-ifc.
La version actuelle de web-ifc est disponible ici. Son utilisation vous permet de tester les correctifs les plus récents avant de publier une version. Si vous souhaitez utiliser cette version, téléchargez le fichier zip et placez manuellement le contenu du dossier dist dans votre dossier node_modules/web-ifc. Autrement dit, si vous utilisez web-ifc-trois, ce sera node_modules/web-ifc-trois/node_modules/web-ifc. Veuillez noter que vous devez remplacer le javascript et le WASM.
Ce sont les exigences nécessaires pour créer web-ifc (uniquement pour ceux qui souhaitent créer leur propre version).
Nous avons une bibliothèque de modèles de test dans le dossier tests/public. Si vous avez un modèle auquel vous aimeriez contribuer, veuillez ouvrir un PR.
Vous pouvez exécuter des tests de régression sur tous ces modèles en exécutant npm run regression
. Il vous alertera si l'un des exemples de géométrie du modèle a changé. Si la modification est correcte, vous pouvez actualiser les tests de régression en exécutant npm run regression-update
.
La bibliothèque WASM est construite via emscripten, veuillez consulter le guide d'installation d'emscripten pour plus d'informations sur la façon de configurer emscripten. Ensuite, emsdk_env
doit être sur votre chemin.
Pour créer le WASM, vous avez également besoin de CMAKE voir ici et (sous Windows) de MINGW voir ici - une fois installé (et sur votre chemin), exécutez npm run setup-mingw
pour configurer l'environnement pour web-ifc.
Exécutez npm install
pour installer toutes les dépendances.
Exécutez npm run setup-env
chaque fois que vous ouvrez un nouveau terminal, cela configurera les variables d'environnement emscripten requises pour que vous puissiez compiler le code.
Exécutez npm run build-release
pour créer une version finale du binaire wasm et de l'API web-ifc qui l'accompagne. Il sera placé dans ./dist
.
Si vous souhaitez créer le WASM avec le débogage activé, vous pouvez exécuter npm run build-debug
. Cela vous permettra de mieux inspecter les informations de débogage lors de l'exécution de web-ifc.
Exécutez npm run dev
pour lancer un serveur de développement avec une visionneuse de fichiers ifc de base.
La sortie du processus de construction est constituée des fichiers suivants :
Bien que l'objectif principal de la bibliothèque soit d'être utilisé via WebAssembly dans le navigateur/nodejs, le projet peut être utilisé de manière autonome en tant que bibliothèque C++ ou exécutable. Voir ici pour un point d’entrée simple pour commencer.