Dion Moult
2bd7ce5996
Fix #3958 . Bug where reassigning type class would incorrectly assign occurrence classes.
2024-04-16 11:05:24 +02:00
Dion Moult
f4f227ffe7
Fix regressions in mapped native swept disk handling
2024-04-16 11:05:24 +02:00
Ryan Schultz
bb5fccf6fe
More IFC class suggestions
2024-04-16 11:05:23 +02:00
Dion Moult
cd5b54e240
Disable batching for removal as it doesn't seem to help mostly from experience. Still testing.
2024-04-16 11:05:23 +02:00
Dion Moult
b07f7bcc58
get_footprint_area now unions 2D polygons to prevent double counting
2024-04-16 11:05:23 +02:00
Andrej730
1647acf0ca
ifc2x3 pset library - fix bunch of unit related vlaidation errors #3929
2024-04-16 11:05:23 +02:00
Sigma Dimensions (Yass)
aa0d1cc230
fix displaying undefined or userdefined units in cost schedules
2024-04-16 11:05:23 +02:00
Dion Moult
f9236f8b42
You can now assign and unassign styles to materials
2024-04-16 11:04:29 +02:00
Andrej730
6a7f8f65c7
move to tools methods for working with manual booleans #3709
...
Also fixed a bug adding boolean when pset is already added and representation type in add_boolean
```
File "\addons\blenderbim\tool\ifc.py", line 201, in execute
IfcStore.execute_ifc_operator(self, context)
File "\addons\blenderbim\bim\ifc.py", line 336, in execute_ifc_operator
result = getattr(operator, "_execute")(context)
File "\addons\blenderbim\bim\module\model\opening.py", line 534, in _execute
data = json.loads(pset["Data"])
File "\addons\blenderbim\libs\site\packages\ifcopenshell\entity_instance.py", line 248, in __getitem__
if key < 0 or key >= len(self):
TypeError: '<' not supported between instances of 'str' and 'int'
```
2024-04-16 11:04:28 +02:00
Andrej730
f8a2946355
Support other voiding IfcFeatureElementSubtraction elements #3889
...
Support other voiding IfcFeatureElementSubtraction besides IfcOpeningElement.
2024-04-16 11:03:55 +02:00
Andrej730
4cf6d65e1a
Fixed issue after 19345ff
...
It wasn't considering that EnumerationReference could be None
2024-04-16 11:03:55 +02:00
Andrej730
e1b64fba00
Keep placement axes recalculating profiles #3879
2024-04-16 10:56:22 +02:00
Andrej730
e2077c27dd
small fix add_profile_representation - use of undefined variables
2024-04-16 10:56:22 +02:00
Dion Moult
6f42c71e88
New verbose option in util get_pset(s) which lets you get ID and class for complex processing.
2024-04-16 10:56:22 +02:00
Dion Moult
587c9858a7
Minor fixes to placement utilities for getting mapped item matrixes
2024-04-16 10:56:22 +02:00
Dion Moult
648d6dfdb9
Representation items panel now shows styles and layers
2024-04-16 10:55:58 +02:00
Thomas Krijnen
3d13b6468d
Use schema_identifier for schema and express rule validation. See #3126
2024-04-16 10:55:58 +02:00
Dion Moult
00239234ff
Manual booleans are now tracked via a Pset instead of arbitrary class conventions which should fix a bunch of issues.
2024-04-16 10:55:57 +02:00
Dion Moult
49e27788da
Write documentation for placement utility
2024-04-16 10:55:57 +02:00
Dion Moult
7170d9f06f
See #3817 . WARNING: fundamental change. Standardise prioritisation of all context permutations when loading occurrences and types.
2024-04-16 10:55:57 +02:00
Dion Moult
83b5494c81
New documentation for shape utility
2024-04-16 10:55:57 +02:00
Dion Moult
9f23f49ecd
Implement projected surface area calculation function in util.shape
2024-04-16 10:55:57 +02:00
Andrej730
739b793cd7
test for model.get_manual_booleans() #3709
...
added test that model.get_manual_booleans will ignore IfcBooleanClippings until we find some other solution to distinguish automatic and manual clippings. And some refactor along the way.
2024-04-16 10:55:56 +02:00
taylor
c88b3a3ad8
Fixed model reference
2024-04-16 10:55:56 +02:00
Dion Moult
8119b3199a
Document geolocation util and add support for ePSet IFC2X3 fallbacks.
2024-04-16 10:55:56 +02:00
Andrej730
984dca6408
Fixed #3832
2024-04-16 10:37:19 +02:00
Andrej730
1f815619b6
copy_deep to always pass exclude_callback to the recursion
...
It wasn't passing the exclude_callback if attribute of the copied element wasn't a tuple, resulting in duplicated named profiles in case if you'd copy a IfcBooleanClippingResult #3810
For example, how copy_deep of IfcProductDefinitionShape with boolean clipping previously would work:
V IfcShapeRepresentation - copied with exlude_callback (part of .Representations[])
V IfcBooleanClippingResult - copied with exlude_callback (part of .Items[])
X IfcExtrudedAreaSolid - copied without exlude_callback becuase it's part of .FirstOperand (not an array) and we have IfcIShapeProfileDef duplicated
Case without booleanclippings:
V IfcShapeRepresentation - copied with exlude_callback (part of .Representations[])
V IfcExtrudedAreaSolid - copied with exlude_callback, since it's part of .Items[], IfcIShapeProfileDef not duplicated
2024-04-16 10:37:19 +02:00
Dion Moult
30495f2688
You can now interact with IfcFM via CLI
2024-04-16 10:37:18 +02:00
Sigma Dimensions (Yass)
070439fa07
run black and forgotten calender utils
2024-04-16 10:37:18 +02:00
Sigma Dimensions (Yass)
6b25a64976
fix typo
2024-04-16 10:37:18 +02:00
Dion Moult
9ef5dc9f8e
Fix #3791 . Add isodate as an optional dependency to ifcopenshell-python.
2024-04-16 10:37:17 +02:00
Sigma Dimensions (Yass)
e9ed850b78
Proposal to use resource's parent cost, reducing manual insertions
2024-04-16 10:37:17 +02:00
A. R. S
2691e8a082
Try to get unit from EnumerationReference for IfcPropertyEnumeratedValue
2024-04-16 10:37:17 +02:00
Andrej730
1ae1e4c4f9
fixed error in api.system.disconnect_port
...
Error was:
TypeError: can only concatenate tuple (not "list") to tuple
2024-04-16 10:37:17 +02:00
Sigma Dimensions (Yass)
f79e6ada9b
cascade schedule when adding a sequence relationship
2024-04-16 10:37:16 +02:00
Sigma Dimensions (Yass)
a96e7d97ac
fix count_working_days when the start and finish are the same same hours
2024-04-16 10:37:16 +02:00
Sigma Dimensions (Yass)
8549debdc9
fix calculating critical path to consider:
...
- parent tasks with sequence assignments #3772
- tasks that are constrained by a schedule start
2024-04-16 10:37:16 +02:00
Sigma Dimensions (Yass)
46c775c585
fix cascading schedule when parent tasks have sequence relationships #3772
2024-04-16 10:37:16 +02:00
Sigma Dimensions (Yass)
145f601a2e
purge cost schedules
2024-04-16 10:37:16 +02:00
Andrej730
34a881da3a
Remove orphaned IfcPropertyEnumeration
...
Noticed a couple hundreds of orphaned IfcPropertyEnumeration in my .ifc like below 😁
IFCPROPERTYENUMERATION('Status',(IFCLABEL('NEW'),IFCLABEL('EXISTING'),IFCLABEL('DEMOLISH'),IFCLABEL('TEMPORARY'),IFCLABEL('OTHER'),IFCLABEL('NOTKNOWN'),IFCLABEL('UNSET')),$);
2024-04-16 10:37:16 +02:00
Andrej730
ecf3da1d86
fixed bug creating transition shapes
...
it was accidentally assigning extrusion vector instead of an offset
2024-04-16 10:37:16 +02:00
Andrej730
37f1f6d125
MEP bends - fixed bunch of bugs related to adjusting already existing bends types
2024-04-16 10:37:15 +02:00
Andrej730
5f94e2b251
bends - support for zero radius bends
2024-04-16 10:37:15 +02:00
Andrej730
4b48b30c3b
bends - consider profile dimensions searching for compatible fitting
...
So basically now it won't reuse a bend fitting created for the same profile but with different dimension.
2024-04-16 10:37:15 +02:00
Andrej730
37eb1751b4
bends - adjusting compatible fitting rotation to match the segments
...
Demo - https://imgur.com/a/cYdWy9X (note that no bend types created in the process - it's just adjusting the type created for the first two segments).
2024-04-16 10:37:15 +02:00
Andrej730
5715a14b17
bends - use IfcArcIndex to define bends curves
...
instead of manually generating polylines of segments
2024-04-16 10:37:15 +02:00
Andrej730
e7b6fad348
bends - support for start and end segments
2024-04-16 10:37:15 +02:00
Andrej730
959f05d154
shapebuilder - replace y extrusion args with shortcut for readibility
2024-04-16 10:37:15 +02:00
Andrej730
7cef9ffe0e
Bends - replace faceset with simple extrusion
2024-04-16 10:37:15 +02:00
Andrej730
5180f40245
MEP bends - support for circular profiles
...
Demo - https://imgur.com/a/XQBOvGz
2024-04-16 10:37:15 +02:00