Dion Moult
a6940d2cba
Fix bug where schema instead of schema_identifer was used to get the schema_by_name. Fix tests to use IFC4X3_ADD2 so that you only need the official version compiled
2024-07-11 22:26:19 +10:00
Andrej730
deb0b3482b
IfcHeaderExtractor tests
2024-07-01 18:26:03 +05:00
Dion Moult
0d401c9272
Fix bug where migrating length units didn't change properties. Unit utility for checking attribute types now considers select types too
...
Changing properties is very critical for IFC2X3 georeferencing which is stored in a pset.
2024-06-29 17:04:27 +10:00
Dion Moult
07060fc769
Replace all ifcopenshell.api.run with ifcopenshell.api static functions.
2024-06-28 12:36:31 +10:00
Andrej730
eb67ffcbec
Use ifc4 for enum entities in select attributes validation test #4927
2024-06-27 18:26:49 +05:00
Andrej730
56d3b2ca36
Use release ifc4x3 version for validation tests
2024-06-27 18:26:49 +05:00
Andrej730
dd06b1a6c4
small addition to 14dbe121f
2024-06-27 18:26:49 +05:00
Andrej730
14dbe121f6
update serializer settings literals #4912
2024-06-27 10:59:35 +05:00
Andrej730
24e16d97f3
deprecate non-batching api #4474
2024-06-26 18:11:07 +05:00
Andrej730
13d61f0135
rename sequence.assign_workplan for consistency
2024-06-26 17:17:34 +05:00
Dion Moult
7a36c05c30
Implement WCS consideration in XYZ <-> ENH conversions.
2024-06-24 18:21:06 +10:00
Dion Moult
e295d596fe
Split true north in API and Blender UI to be editable independent of georeferencing
...
They are two separate concepts, after all.
2024-06-23 23:19:27 +10:00
Dion Moult
013b138e5c
Default to adding EPSG:3857 when adding georeferencing and let users choose an EPSG when adding.
2024-06-23 23:17:44 +10:00
Dion Moult
95d2d0af83
You can now see and edit WCS in the Blender UI (new API for it too)
2024-06-23 22:23:48 +10:00
Dion Moult
03ee826e67
Add tests for xaxis and yaxis angle conversions
...
This tricked me today, the "XAxis" and "YAxis" vectors are from different perspectives (yikes!). XAxis is from the perspective of grid north, and YAxis is from the perspective of project north. I'm following this convention because that's what buildingSMART docs do but just FYI they serve two different purposes!
2024-06-23 22:23:48 +10:00
Dion Moult
4ef237e0f7
Implement purge map unit when removing georeferencing and removing 2X3 and 4X3 georeferencing in API
2024-06-22 22:13:20 +10:00
Dion Moult
3c48cfbc19
Add support for IfcRigidOperation and IfcMapConversionScaled in API
2024-06-22 21:59:09 +10:00
Dion Moult
a6c3ae8446
Typing and update geolocation conversion utils to follow IFC4X3 rules about unit scaling
2024-06-22 15:52:00 +10:00
Dion Moult
d0373da0ad
Update XYZ <-> ENH geolocation conversion after the clarifications made on how to handle scale in IFC4X3
2024-06-22 14:47:42 +10:00
Dion Moult
bce6485b91
Support adding / editing georeferencing for IFC2X3 fallback psets
2024-06-21 11:21:41 +10:00
Andrej730
f54f45a051
geom.settings - add a tooltip for available settings #4832
...
example - https://i.imgur.com/eTdqv5J.png
added a test so we won't miss if some setting will be added/removed
2024-06-11 18:26:18 +05:00
Andrej730
6552463ed9
sequence.remove_task to remove IfcRecurrencePattern
2024-06-10 16:55:21 +05:00
Andrej730
6cab7d964e
sequence.remove_work_time to remove IfcRecurrencePattern
...
Previously it was leaving them orphaned.
2024-06-10 16:55:21 +05:00
Andrej730
1343741cfd
sequence.remove_work_calendar to remove related work times
...
Previously they were leaved orphaned
2024-06-10 16:55:20 +05:00
Andrej730
7c713eee65
nest.remove_task to clean up ownerhistory in more cases
...
1) It wasn't removing ownerhistory in the case if task was RelatingObject in IfcRelNests
2) Replaced handling of IfcRelNests as an inverse with direct api calls.
3) Added some basic tests.
2024-06-10 15:51:03 +05:00
Dion Moult
c4dfbdbe2e
Merge branch 'v0.7.0' into v0.8.0
2024-06-07 23:48:39 +10:00
Andrej730
61c2a2c6c6
remove_work_schedule to unassign a work schedule from a work plan #4819
2024-06-07 17:15:51 +05:00
Andrej730
5c41baeaf1
remove_work_plan - unassign work schedules #4819
2024-06-07 17:15:51 +05:00
Andrej730
f8a5ce34a8
fix redeclarations in tests
2024-06-07 17:15:51 +05:00
Dion Moult
f0a19cb054
Fix #4815 . Purge deprecated old selector syntax.
2024-06-07 20:08:11 +10:00
Dion Moult
2ea3fe4ab9
Fix qto bug where cubic meter units are incorrectly converted.
2024-06-03 22:49:40 +10:00
Andrej730
5fb7e6e375
resource.remove_resource - fix issue removing resources in ifc2x3
2024-06-03 17:44:05 +05:00
Andrej730
c399eb259a
resource.add_resource_quantity to ensure quantity type is supported
2024-06-03 17:44:05 +05:00
Andrej730
499cdbb9b8
bump old api argument deprecation date
2024-06-03 17:44:05 +05:00
Dion Moult
6e30cd2ba7
Fix #4638 . You can now filter by parent (in the spatial hierarchy)
2024-06-01 15:10:45 +10:00
Dion Moult
128ffc8fd7
Fix bug where selector didn't handle "not equals" correctly for locations or groups
2024-06-01 14:53:55 +10:00
Andrej730
c05abc4d5b
ifc4x3 support for adding IfcQuantityCount #4776
...
In IFC4X3 IfcQuantityCount is now more strict and requires only interger values.
Error for a reference:
TypeError: attribute 'CountValue' for entity 'IFC4X3.IfcQuantityCount' is expecting value of type 'INT', got 'float'.
2024-05-31 18:20:46 +05:00
Dion Moult
8403c32e76
Adjust selector's behaviour to use the elements argument as a filtering subset
...
This was always the original intention, but never worked as designed. This is so that you don't need to filter the entire file (which can be huge).
2024-05-28 17:30:01 +10:00
Dion Moult
9a59b8cdae
Material psets now include category-specific psets and docstrings
...
Previously it was not possible to get concrete / steel material psets. Yikes!
2024-05-26 11:23:08 +10:00
Dion Moult
fd62ba63a5
Do not copy presentation styles when copying a material
...
Ideally, presentation styles are reused. For example, 5 types of concrete can all use the same presentation
2024-05-25 15:14:07 +10:00
Dion Moult
16c5fd56ca
You can now copy a material list
2024-05-25 15:13:36 +10:00
Dion Moult
d85f9af790
The API can now copy material sets too
2024-05-25 14:42:45 +10:00
Andrej730
678dbaa66a
nest api to maintain order of related objects #4698
...
order of objects in .RelatedObjects is important (e.g. for cost items, it's the order of their appearance), so we should maintain it and cannot use sets for .RelatedObjects
2024-05-20 17:19:00 +05:00
Dion Moult
c4157673f5
Fix #4696 . Null properties are now purged by default to prevent cruft build up. Add support for purging empty enum props.
2024-05-20 16:04:27 +10:00
Andrej730
25c1a14e64
set_element_value - pass attr value to the next part of the query #4495
...
E.g. previously set_element_value with query "material.item.Material.Name" would fail with error "Material property is expecting an IFC entity and not a string".
But now it will detect that "Material" property is not a last key in the query and will pass `.Material` value forward and try to set it's `.Name` attribute with value.
The main goal is to make sure get_element_value and set_element_value would have a same result for same queries.
2024-05-17 17:31:01 +05:00
Andrej730
a2ee920a5f
fix group.update_group_products to work with multiple rels
2024-05-15 17:18:34 +05:00
Andrej730
fdbe74a432
maintain snake in api calls
...
there were only two methods using camel case for arguments
2024-05-15 17:18:34 +05:00
Andrej730
335e2b7a78
ifc2x3 tests
2024-05-15 17:18:34 +05:00
Andrej730
bb8e84e5ec
typing
2024-05-15 17:18:33 +05:00
Andrej730
a9cba30da6
ifc2x3 tests
...
removed part of test_append_two_type_products_sharing_the_same_material_indirectly_via_a_material_set for ifc2x3 compatibility and removed part is already tested in test_append_two_type_products_sharing_the_same_material_with_properties
2024-05-13 18:01:18 +05:00