Hello,
Newbie question:
Is there a way to parse ifc file in node.js? or convert ifc to json in node.js?
Thanks,
Asi
Hi Asi,
You could take a look at our ifc json project, it’s still a work in progress but you even might be able to contribute something.
Look for IFCJSON-Team and IFC2JSON_python on Github.
Cheers,
Jan
@jbrouwer - Thanks a lot. will take a look.
If you’re looking for a graphical BIM authoring tool which supports IFCJSON, the BlenderBIM Add-on supports both IFCJSON v4 and v5.
Hi,
I recommend you to use IFC2JSON or Geometry gym, which has a function in database class to convert to JSON. I am working in a similar project and I didn’t found another option. I hope that building smart work harder in this topic.
@eruiz, @gasi2 - as we look to evolve JSON-based serializations for IFC, it’d be great to get feedback on your intended use cases and needs, if you’re willing
Possible questions include:
- Would you like JSON serializations of both IFC instance files and the IFC schema?
- Do you have a use for validation of IFC JSON instances, ala JSON Schema?
- In considering use of a JSON serialization of IFC, how would you rate the relative importance of the following (on a scale of Not Important, Somewhat Important, Very Important, Critical):
– Human readability
– Small file size
– Round-tripping support with IFC-SFP and/or ifcXML
– support for linked data (e.g., via JSON-LD) - What use cases do you intend to use IFC JSON for? Why might it fit your needs better than alternative serializations?
- Any feedback on the draft specs as they exist today? (Feel free to post those to the IFCJSON Github Issues)
Thanks!
You can do a “dirty parse” relatively easy.
In other words:
If you know what you’re looking for, you can skip the rest
I’m currently building a parser that handles User Defined IFC Property Sets
.
The logic behind my code is somewhat “dirty”. I DO NOT build the entire IFC schema/relationship. Instead, I only implement IfcPropertySingleValue
, IfcRelDefinesByProperties
, and IfcPropertySet
.
You can take a look at my GitHub Repo for more info.
Best regards
André Wisén