Andrej730
551f3b0d8d
Fix issues editing work time in ifc4x3 #4295
2024-02-20 12:38:29 +05:00
Andrej730
96a8c1e8ae
style.assign_material_style to assign style to related shape aspects
2024-02-19 18:08:18 +05:00
Andrej730
a2ff63f9ec
Fix issue editing object placement that shares it's axis placement with other placements
...
If multiple object placements were reusing the same IfcAxis2Placement then editing one of them would remove IfcAxis2Placement ignoring it's inverse references making all other object placements invalid.
2024-02-16 18:04:09 +05:00
Andrej730
a82b0f30b0
fix errors getting layer assignments in ifc2x3 #4330
2024-02-16 18:04:09 +05:00
Andrej730
4f3ba7ae22
some typing
2024-02-14 14:25:55 +05:00
Andrej730
a33a1700dc
Fix bug in ExtractElements recipe adding a lot unrelated products
...
if you'd add a type product and it had material that were used in bunch of ther products
example - https://community.osarch.org/discussion/1965/error-extracting-ifcslab-or-ifccolumn
2024-02-14 14:23:50 +05:00
Andrej730
5e5de0bbd8
root.remove_product - fix some cases producing invalid ifc #4313
...
always remove IfcRelNests
1) if product is RelatingObject
2) if product is the only RelatedObject
2024-02-12 11:40:25 +05:00
Andrej730
bd64f42a54
remove_representation to consider representation item's layers too
...
and purge layers if they are out of items as they become invalid
2024-01-30 14:36:35 +05:00
Andrej730
5351966430
access layer assignments from inverse attribute instead of going through representation inverses
2024-01-30 14:36:35 +05:00
Andrej730
fda6fc6c48
geometry.remove_representation documentation
2024-01-26 17:20:39 +05:00
Andrej730
b7a3dd4164
black format
2024-01-26 14:54:50 +05:00
Andrej730
352321364c
fix couple building docs errors / warnings
2024-01-24 16:38:53 +05:00
Dion Moult
ab80400e16
See #4240 . Guard against possible user creating invalid userdefined attribute values.
2024-01-21 21:56:45 +11:00
Dion Moult
c88496c6a6
See #4240 . Fix validation issue with perspective drawing pyramid booleans. Boolean clipping results can only be used on swept solids.
2024-01-21 19:13:40 +11:00
Dion Moult
0ee07fb8cc
See #4240 . Fix bug where 2D arbitrary profiles were invalid IFC (used 3D point lists not 2D)
2024-01-21 16:07:00 +11:00
Dion Moult
f077ebdc81
Fix #4211 . Minor documentation fix that clarifies upstream bug about whether qto can be assigned to types.
2024-01-16 10:56:35 +11:00
Dion Moult
40b6b3bf17
Fix #4224 . Fix sequencing lint bugs.
2024-01-16 10:47:50 +11:00
Dion Moult
8df40dc4a6
Fix #4203 . Fix bug where removing nested cost items left orphaned relationships.
2024-01-12 18:14:49 +11:00
Sigma Dimensions (Yass)
b260bd3877
Record formula and resource name for cost values when calculating resource cost
2024-01-04 09:32:31 +01:00
Sigma Dimensions (Yass)
cd6246c382
fix cost value calculation when using parent cost
2024-01-04 09:30:27 +01:00
Andrej730
0fbe4d80c7
Clean up IfcIndexedColourMap removing representation #4138
...
Because we wasn't removing colour map, remove_representation was producing orphaned IfcPolygonalFaceSet that were referred by colour map.
2023-12-26 11:33:20 +05:00
Andrej730
0b47fb5987
Fix typo in 92cf0d9
2023-12-22 21:53:31 +05:00
Andrej730
92cf0d9265
remove_representation not to leave brokens refs with batch_remove #4138
2023-12-22 16:04:52 +05:00
Sigma Dimensions (Yass)
46454c5c94
consider unit basis for calculating resource costs #4122
2023-12-20 14:19:16 +01:00
Andrej730
f8af28f12a
style.edit_surface_style to support editing IfcSurfaceStyleLighting
...
It was failing because api method wasn't supporting IfcColourRgb attributes edit in general but only for IfcSurfaceStyleShading.SurfaceColour
2023-12-13 16:53:58 +05:00
Andrej730
c4080626df
style.add_surface_texture to work without blender material provided
2023-12-13 14:07:48 +05:00
Andrej730
f773480917
style.edit_surface_style - fix crash setting attribute to None
...
Occured on setting IfcColourOrFactor attribute to None (e.g. DiffuseColour).
2023-12-07 18:09:17 +05:00
Andrej730
496e58418a
fixed typo
2023-12-01 16:53:50 +05:00
MicheleBenedetti
31a763fe12
mistype-fix
2023-12-01 10:34:11 +11:00
Dion Moult
e8bd272189
Fix #4057 . Data objects for the API are now in util.data instead of mixed into the shape builder utility and only depends on numpy.
2023-11-29 14:36:01 +11:00
Bruno Postle
25bd94e84a
minor documentation typo fix
2023-11-28 23:28:38 +00:00
Dion Moult
434a11a502
Fix #4057 . Move clipping info dataclass to util.shape_builder
2023-11-29 09:28:24 +11:00
Dion Moult
03809b3d5e
Fix #3996 . Reassigning occurrences or types now also reassigns the correlating occurrence or type.
2023-11-28 16:44:31 +11:00
Dion Moult
6e932ec2fb
Fix #3974 . Bug where orphaned histories would be left in API remove operations.
2023-11-28 10:46:03 +11:00
Dion Moult
14f1acadb7
See #3974 . WIP review to ensure history removal in API.
2023-11-27 18:31:55 +11:00
Bruno Postle
8f650c56e5
Revert 1d972a6 as no datetime.UTC on CI server
2023-11-23 21:59:23 +00:00
Bruno Postle
1d972a6a6f
fix python 3.12 utcnow() deprecation warning
...
Warning is:
/usr/lib64/python3.12/site-packages/ifcopenshell/api/project/create_file.py:61:
DeprecationWarning: datetime.datetime.utcnow() is deprecated and scheduled for removal in a future version.
Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.now(datetime.UTC).
2023-11-23 21:16:24 +00:00
Andrej730
0da210b732
edit_object_placement optimization for objects with subchildren #4035
...
1) We were iterating over same subchildren 2 or more times.
2) There is no need to change subchildren position at all since their parent position is already adjusted.
Explained here in detail - https://github.com/IfcOpenShell/IfcOpenShell/issues/4035#issuecomment-1822824352
2023-11-23 13:43:39 +05:00
Andrej730
6ee4edd0a0
Fixed issue reassigning class to type class with userdefined type #4018
...
When PredefinedType is not found in the related enum reassign_class is considering it USERDEFINED and trying to set .ObjectType. The problem was it was doing for type classes also, when it should have set .ElementType instead.
Why it crashed BlenderBIM - in IfcClassData.data["has_entity"] we store currently active IFC entity which is recreated during `ifcopenshell.util.schema.reassign_class` making old entity invalid. Since `root.reassign_class` was failing in the process, related BBIM operator was failing too, IfcClassData wasn't updated and removed entity was accessed from UI leading to crash.
2023-11-21 12:35:35 +05:00
Andrej730
dc438b2560
ClippingInfo util class to pass and apply plane clippings #3774
...
Co-Authored-By: Carlos Villagrasa <carvillasil@gmail.com >
2023-11-17 16:52:59 +05:00
VDobranov
dd044c8516
Update reference_structure.py
...
A mistype in docs: should be IfcRelReferencedInSpatialStructure instead of IfcRelContainedInSpatialStructure
2023-11-11 12:56:26 +01:00
Andrej730
c26988b292
root.remove_product to remove IfcRelFlowControlElements
2023-11-10 12:10:22 +05:00
Andrej730
9a80dc14e9
api for assigning/unassigning flow controls #3981
2023-11-09 17:34:26 +05:00
Andrej730
6bda066e1b
Fixed typo in control.assign_control, added tests
2023-11-09 15:33:31 +05:00
Dion Moult
0de0422c2e
Minor fix
2023-11-03 22:45:42 +11:00
Dion Moult
20b7ee009d
Fix #3957 . Fix bug where shared properties were not edited independently.
2023-11-01 15:18:57 +11:00
Dion Moult
19a3f56941
Fix #3958 . Bug where reassigning type class would incorrectly assign occurrence classes.
2023-11-01 14:41:25 +11: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
Andrej730
24eb149221
Support other voiding IfcFeatureElementSubtraction elements #3889
...
Support other voiding IfcFeatureElementSubtraction besides IfcOpeningElement.
2023-10-16 15:31:53 +05:00