Commit Graph

1240 Commits

Author SHA1 Message Date
Andrej730 47192cc834 Fixed typo in generate_pset_templates.py 2023-03-03 11:08:56 +05:00
Andrej730 aa8da74ed8 ifc2x3 pset library name fix + copyrights 2023-02-24 11:07:33 +05:00
Dion Moult aa172488b0 Fix #2594. Document potential lag in PyPI releases of C++ core. 2023-02-24 13:35:46 +11:00
Dion Moult ae09adf854 Fix #2424. Bug where indirect assets (e.g. importing a type using a material) with relationships had their relationships duplicated 2023-02-24 13:01:26 +11:00
Andrej730 5b5dd73684 get_inverse_attributes - added more correct recursive unpacking for aggregates and selections
Not affected the result schemas though
2023-02-23 18:56:24 +05:00
Andrej730 708dc6aca2 IFC4X3/IFC2X3 pset templates library
Generated from xmls from the ISO release of IFC4X3.
Based on https://standards.buildingsmart.org/IFC/RELEASE/IFC4/ADD2_TC1/HTML/annex/annex-a/general-usage/IFC4_ADD2.ifc

Also generated pset templates library for IFC2X3 (also based on similar xmls) but IFC2X3 ifc pset library is using... IFC4X3 schema because IfcPropertySetTemplate and IfcRelDeclares are not available in IFC2X3. Which is okay for our purposes for now.

Will need to update IFC4X3 library if one of the issues will be resolved:
https://github.com/buildingSMART/IFC4.3.x-development/issues/587
https://github.com/buildingSMART/IFC4.3.x-development/issues/586
2023-02-23 18:17:14 +05:00
Dion Moult 2429f507ad Fix #2785. Fix bug where invalid models from Revit that reused material usages could create invalid models. 2023-02-21 13:48:24 +11:00
Dion Moult 03a66d2806 Fix #2787. Fix creating invalid orphaned property and group relationships when removing systems / groups / elements. 2023-02-21 10:59:47 +11:00
Dion Moult 147602e107 Fix bug where ifcopenshell express rule validator required a logger with set_state. 2023-02-20 11:26:09 +11:00
Dion Moult 1d78e05370 Fix #2774. Bump IfcOpenShell. 2023-02-19 21:53:49 +11:00
Andrej730 ab9a4856ab Update entity-types mapping for ifc4
Added IfcWindowStyle and IfcDoorStyle for suitable StandartCases since StandartCases inherit from IfcDoor and IfcWindow.
2023-02-17 17:57:17 +05:00
Andrej730 d52618277e Ifc4x3 - entity-types mapping
- added mapping entity-types mapping based on iso release of ifc4x3

- added some manual corrections for `generate_util_type_json.py` if someone would regenerate the map for ifc4.

- manual correction in ifc4x3 mapping for IfcCivilElement. It could be removed in the future releases of IFC if https://github.com/buildingSMART/IFC4.3.x-development/issues/583 is resolved

If curious to look what were the changes for mapping between ifc4 and ifc4x3:
https://github.com/IfcOpenShell/IfcOpenShell/commit/da51253fb0a9d08aa93f5fe3c074d3592b3aa997#diff-98f525c91bb47b9820e603fba61cc015d3e6ae7261593d727c51114e3ff73aa7
2023-02-17 17:57:16 +05:00
Dion Moult f893503d0c See #2762. Final attempt. 2023-02-17 13:12:09 +11:00
Dion Moult e8f21c79b1 See #2762. 2023-02-17 12:03:25 +11:00
Dion Moult d9f1d501aa See #2762. Try again. 2023-02-16 15:01:19 +11:00
Sigma Dimensions 8ee60db0df Re-assigning a product type class should also reassign the class of its typed instances 2023-02-15 23:11:30 +01:00
Andrej730 476ab506d0 Added ifc4x3 json schema and it's parser
API for docs works the same way as it worked for ifc2x3 and ifc4.

Besides changing `doc.py` and adding `.json` schemas added `ifc4x3dev_scrape_data_for_docs.py` (it's kind of hacky now and relies on `server.py` code from the further mentioned repo) that's used to parse some entities descriptions from https://github.com/buildingSMART/IFC4.3.x-development for later use in `doc.py`.
2023-02-15 18:38:04 +05:00
CyrilWaechter a6fa6201f7 Fix bugs introduced in cf87852 2023-02-15 10:34:25 +01:00
Dion Moult 77a0da2a17 See #2762. Another attempt at fixing PyPI build. 2023-02-15 20:06:07 +11:00
Thomas Krijnen 785d2e601c Fix after 31cf1127a6 2023-02-15 09:52:21 +01:00
Thomas Krijnen 31cf1127a6 Validation output enhancements 2023-02-14 20:55:14 +01:00
Thomas Krijnen 97385efbca entity_instance.get_info(scalar_only=) 2023-02-14 20:11:24 +01:00
Andrej730 6a87b68c3b Window Modifier - added 2d representation
+ fixed lining offset for door 2d representation
2023-02-14 16:54:43 +05:00
Thomas Krijnen e535f911d1 Update extrusion-dir cases for undeterminate handling 2023-02-14 10:04:46 +01:00
Thomas Krijnen 18670bcbd6 Recompile rules 2023-02-14 10:04:46 +01:00
Thomas Krijnen 27511d362e Use inverse unpacking in rule execution 2023-02-14 10:04:45 +01:00
Thomas Krijnen c634bffa10 Update reverse compilation to eliminate getattr() calls 2023-02-14 10:04:45 +01:00
Thomas Krijnen dffa90bd5d Better conformance wrt indeterminate with AST rewriting and dedicated type 2023-02-14 10:04:45 +01:00
Thomas Krijnen 6a47d33974 Add zone IsGroupedBy where rule test case 2023-02-14 10:04:45 +01:00
Thomas Krijnen e87524ba11 ifcopenshell.settings.unpack_non_aggregate_inverses 2023-02-14 10:04:44 +01:00
Thomas Krijnen ff5e4991ab Test files 2023-02-12 15:28:14 +01:00
Thomas Krijnen 0b4b45b7c8 Validate bounds of non-aggregate inverses 2023-02-12 15:28:14 +01:00
Dion Moult 74de7436b7 See #2762. Fix pip build. 2023-02-12 20:32:30 +11:00
Dion Moult 82b201a14e Fix #2352. Text styling is now possible with custom classes. 2023-02-12 15:01:47 +11:00
Sigma Dimensions f4b93ef243 You can now duplicate tasks 2023-02-12 00:37:37 +01:00
Andrej730 0d0691a012 Door modifier - double doors type support 2023-02-11 16:09:13 +05:00
Andrej730 5cfc122b79 Door modifier - double swing doors
still no dashed lines in 2d representation
2023-02-11 14:20:04 +05:00
Dion Moult ceaa930aad Fix #2756. Bug where reassigning classes with a enum didn't work. 2023-02-11 11:03:35 +11:00
Sigma Dimensions 6c82e6f889 Fix assign cost value usecase 2023-02-10 21:28:49 +01:00
Thomas Krijnen 531e07767f #2754 latebound schema handling 2023-02-10 21:08:20 +01:00
Thomas Krijnen da39c903f3 Latebound schema handling: Improve error messages 2023-02-10 21:07:25 +01:00
Andrej730 9e383959c8 door black formatting 2023-02-10 16:58:36 +05:00
Andrej730 3654e49f87 Door handles 2023-02-10 16:55:13 +05:00
Dion Moult ae564d1b61 Fix #1040. New utility for geometric shape analysis only requiring numpy. 2023-02-10 16:03:16 +11:00
Dion Moult 50d71d5ea1 Black code and make profile representation optional for windows. 2023-02-09 20:13:14 +11:00
Sigma Dimensions 7fe2634d32 Improve guess schedule date range ( including tasks with input assignements) 2023-02-08 08:18:08 +01:00
Dion Moult 88bddb9531 See #2520. You can now duplicate drawings. 2023-02-08 12:29:49 +11:00
Sigma Dimensions 4e308a6e31 fix api docstring description for nest.unassign_object usecase 2023-02-07 15:35:34 +01:00
Andrej730 4bd7fc5304 Simplified door ifc representation 2023-02-07 16:48:37 +05:00
Andrej730 e1456533f2 Doors - clean up + black format 2023-02-06 18:53:48 +05:00