оглавление | веб-документация IFC | документация по платформе | демо | сообщество | пакет НПМ
web-ifc — это библиотека JavaScript для чтения и записи файлов ifc на собственной скорости. web-ifc является частью проекта That Open Company, целью которого является снижение порога разработки открытых BIM-приложений.
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 ) ;
См. примеры для получения более подробной информации о том, как использовать web-ifc.
Текущая действующая сборка web-ifc доступна здесь. Это позволит вам протестировать новейшие исправления перед их выпуском. Если вы хотите использовать эту версию, загрузите zip-файл и вручную поместите содержимое папки dist в папку node_modules/web-ifc. Т.е. если вы используете web-ifc-three, то это будет node_modules/web-ifc-three/node_modules/web-ifc. Обратите внимание, что вам необходимо заменить javascript и WASM.
Это требования, необходимые для сборки web-ifc (только для тех, кто хочет создать свою собственную версию).
У нас есть библиотека тестовых моделей в папкеtests/public. Если у вас есть модель, которую вы хотели бы внести в нее, пожалуйста, откройте PR.
Вы можете запустить регрессионные тесты для всех этих моделей, запустив npm run regression
. Он предупредит вас, если какая-либо геометрия образца модели изменится. Если изменения верны, вы можете обновить регрессионные тесты, запустив npm run regression-update
.
Библиотека WASM создана с помощью emscripten; информацию о том, как настроить emscripten, см. в руководстве по установке emscripten. После этого на вашем пути должен быть emsdk_env
.
Для сборки WASM вам также понадобится CMAKE (см. здесь) и (в Windows) MINGW (см. здесь) - после установки (и на вашем пути) запустите npm run setup-mingw
чтобы настроить среду для web-ifc.
Запустите npm install
чтобы установить все зависимости.
Запускайте npm run setup-env
всякий раз, когда вы открываете новый терминал, это установит необходимые переменные среды emscripten для компиляции кода.
Запустите npm run build-release
чтобы собрать финальную версию двоичного файла wasm и сопутствующего API web-ifc. Он будет помещен в ./dist
.
Если вы хотите собрать WASM с включенной отладкой, вы можете запустить npm run build-debug
. Это позволит вам лучше проверять отладочную информацию при запуске web-ifc.
Запустите npm run dev
, чтобы запустить сервер разработки с базовой программой просмотра файлов ifc.
Результат процесса сборки состоит из следующих файлов:
Хотя основное назначение библиотеки — использование через WebAssembly в браузере/nodejs, проект можно использовать автономно как библиотеку C++ или исполняемый файл. Здесь вы найдете простую точку входа, чтобы начать работу.