Dion Moult
7f7f353131
Disable batching for removal as it doesn't seem to help mostly from experience. Still testing.
2023-10-31 12:31:05 +11:00
Dion Moult
f0028c0094
get_footprint_area now unions 2D polygons to prevent double counting
2023-10-28 15:54:45 +11:00
Andrej730
cbec56c2f0
ifc2x3 pset library - fix bunch of unit related vlaidation errors #3929
2023-10-26 15:54:34 +05:00
Sigma Dimensions (Yass)
48a0d8c508
fix displaying undefined or userdefined units in cost schedules
2023-10-25 15:01:52 +01:00
Dion Moult
f10d340254
You can now assign and unassign styles to materials
2023-10-21 15:23:55 +11:00
Andrej730
35d66f5d8c
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'
```
2023-10-17 18:13:54 +05:00
Thomas Krijnen
787149da13
Regen express rule code: lowercase str comparison in express rule generated code
2023-10-17 11:04:46 +02:00
Thomas Krijnen
3b31f6932a
Compile IFC4X3_ADD2 express rules
2023-10-17 09:50:39 +02:00
Andrej730
24eb149221
Support other voiding IfcFeatureElementSubtraction elements #3889
...
Support other voiding IfcFeatureElementSubtraction besides IfcOpeningElement.
2023-10-16 15:31:53 +05:00
Andrej730
ce8598a0b4
Fixed issue after 19345ff
...
It wasn't considering that EnumerationReference could be None
2023-10-16 15:31:53 +05:00
Andrej730
e068c523ec
Keep placement axes recalculating profiles #3879
2023-10-16 12:19:18 +05:00
Andrej730
aa182bf047
small fix add_profile_representation - use of undefined variables
2023-10-16 11:59:33 +05:00
Dion Moult
58be92d3fc
New verbose option in util get_pset(s) which lets you get ID and class for complex processing.
2023-10-15 08:57:37 +11:00
Dion Moult
1f6d23c19c
Minor fixes to placement utilities for getting mapped item matrixes
2023-10-13 23:40:23 +11:00
Dion Moult
dd70b09fb1
Representation items panel now shows styles and layers
2023-10-12 22:56:36 +11:00
Thomas Krijnen
81b4e42ca2
Use schema_identifier for schema and express rule validation. See #3126
2023-10-12 10:37:44 +02:00
Dion Moult
05f6f4efab
Manual booleans are now tracked via a Pset instead of arbitrary class conventions which should fix a bunch of issues.
2023-10-10 17:33:00 +11:00
Dion Moult
e4f5b0e3d8
Write documentation for placement utility
2023-10-10 10:56:28 +11:00
Dion Moult
49b733f660
See #3817 . WARNING: fundamental change. Standardise prioritisation of all context permutations when loading occurrences and types.
2023-10-09 23:21:09 +11:00
Dion Moult
ed3e9f3347
New documentation for shape utility
2023-10-06 13:04:54 +11:00
Dion Moult
eb836436b9
Implement projected surface area calculation function in util.shape
2023-10-06 13:04:34 +11:00
Andrej730
68a1da9190
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.
2023-10-05 18:38:46 +05:00
taylor
ef56c6ce7e
Fixed model reference
2023-10-05 10:17:03 +02:00
Dion Moult
6660bf7618
Document geolocation util and add support for ePSet IFC2X3 fallbacks.
2023-10-05 16:15:28 +11:00
Andrej730
ad79c63a37
Fixed #3832
2023-10-02 10:57:24 +05:00
Andrej730
3faaee80ec
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
2023-09-29 09:29:25 +05:00
Dion Moult
22edbddd84
You can now interact with IfcFM via CLI
2023-09-27 14:17:46 +10:00
Sigma Dimensions (Yass)
126f530af1
run black and forgotten calender utils
2023-09-26 16:44:35 +01:00
Sigma Dimensions (Yass)
635dff73b4
fix typo
2023-09-26 16:35:31 +01:00
Dion Moult
0993736cea
Fix #3791 . Add isodate as an optional dependency to ifcopenshell-python.
2023-09-24 13:14:56 +10:00
Sigma Dimensions (Yass)
e74e824417
Proposal to use resource's parent cost, reducing manual insertions
2023-09-23 16:04:01 +01:00
A. R. S
9eba3b6eaa
Try to get unit from EnumerationReference for IfcPropertyEnumeratedValue
2023-09-22 17:41:05 +10:00
Andrej730
bc5d6ee113
fixed error in api.system.disconnect_port
...
Error was:
TypeError: can only concatenate tuple (not "list") to tuple
2023-09-20 15:28:05 +05:00
Sigma Dimensions (Yass)
b5b8b5df26
cascade schedule when adding a sequence relationship
2023-09-20 01:15:06 +01:00
Sigma Dimensions (Yass)
6d38d9b538
fix count_working_days when the start and finish are the same same hours
2023-09-20 01:11:42 +01:00
Sigma Dimensions (Yass)
ef11ae6540
fix calculating critical path to consider:
...
- parent tasks with sequence assignments #3772
- tasks that are constrained by a schedule start
2023-09-20 01:10:34 +01:00
Sigma Dimensions (Yass)
a3802c25c0
fix cascading schedule when parent tasks have sequence relationships #3772
2023-09-20 01:05:19 +01:00
Sigma Dimensions (Yass)
438f35fe88
purge cost schedules
2023-09-18 20:20:23 +01:00
Andrej730
19345ff538
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')),$);
2023-09-18 12:08:16 +05:00
Andrej730
7b28bc9c68
fixed bug creating transition shapes
...
it was accidentally assigning extrusion vector instead of an offset
2023-09-18 11:30:36 +05:00
Andrej730
b0d1823968
MEP bends - fixed bunch of bugs related to adjusting already existing bends types
2023-09-15 15:36:33 +05:00
Andrej730
9778253d21
bends - support for zero radius bends
2023-09-14 18:19:03 +05:00
Andrej730
d79b912e0e
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.
2023-09-13 16:30:20 +05:00
Andrej730
7ec8f8b03e
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).
2023-09-13 16:30:20 +05:00
Andrej730
d3df22b44b
bends - use IfcArcIndex to define bends curves
...
instead of manually generating polylines of segments
2023-09-12 16:29:33 +05:00
Andrej730
257208d55b
bends - support for start and end segments
2023-09-12 16:00:02 +05:00
Andrej730
d8b9b09d14
shapebuilder - replace y extrusion args with shortcut for readibility
2023-09-12 16:00:02 +05:00
Andrej730
6f9e14ceb0
Bends - replace faceset with simple extrusion
2023-09-12 16:00:02 +05:00
Andrej730
d854984dda
MEP bends - support for circular profiles
...
Demo - https://imgur.com/a/XQBOvGz
2023-09-12 16:00:01 +05:00
Dion Moult
2951721886
Don't strip selector query keys to allow for explicit "mistakes" in key names.
2023-09-12 20:45:24 +10:00