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
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
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
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
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
e87524ba11
ifcopenshell.settings.unpack_non_aggregate_inverses
2023-02-14 10:04:44 +01:00
Thomas Krijnen
0b4b45b7c8
Validate bounds of non-aggregate inverses
2023-02-12 15:28:14 +01: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
Andrej730
e57ff19e16
Door - added 2d representation
2023-02-06 18:44:09 +05:00
Andrej730
b2bdbdd8c3
Door modifier - basic setup
...
Also:
- refactored window modifier code - part of it is now reused building a door and can be used by other module in the future
- fixed bug with window lining intersecting frame when lining_depth < panel_depth
- simplified the way lining is built in ifc - previously it was using 4-6 extrusions, now it's 1-2 which is also better for 2D drawings
2023-02-06 18:44:09 +05:00
Dion Moult
e40bbf2525
See #1806 . Typed fillings now share the same representation for their openings.
2023-02-06 17:01:29 +11:00
Thomas Krijnen
6b7aeb90c7
Express rules: allow comparison of instances to instances and values
2023-02-05 13:08:55 +01:00
Dion Moult
207093fe99
Fix regression where changing assigned types didn't update the materials.
2023-02-04 22:12:28 +11:00
Dion Moult
a7cc58fb50
Update libraries to use Plan/Body/PLAN_VIEW instead of annotations.
2023-02-04 14:09:35 +11:00
Thomas Krijnen
c4b77c2a07
Recompile rules
2023-02-03 22:22:40 +01:00
Thomas Krijnen
5526bed4c3
Express rules: allow indexing in sets
2023-02-03 21:17:08 +01:00
Thomas Krijnen
078bf8646a
Express rules: enclose rhs of not in parens when needed
2023-02-03 21:10:34 +01:00
Dion Moult
e1e4380fc7
Fix 3 bugs related to representations:
...
* Bug when switching representations when active object not selected.
* Bug when switching to a non MODEL_VIEW body representation would load the MODEL_VIEW one instead all the time.
* Add support for plan body representations.
2023-02-03 21:27:25 +11:00
Dion Moult
158a4c5e75
Fix bug where IFC2X3 fallback styles couldn't be assigned.
2023-02-03 13:21:23 +11:00
Dion Moult
f72d48aab5
Fix bug where calendar caching meant invalid duration calculations if you edited your calendar after a date calculation.
2023-02-03 10:06:55 +11:00
Dion Moult
be26a77ecb
Support times specified as ISO strings too in date utils, not just datetimes.
2023-02-02 23:01:49 +11:00