Andrej730
ed0b1c5009
typing
2025-03-11 18:37:22 +05:00
Andrej730
b5260d3005
copy_class to prevent duplicating profiles #6261
2025-03-06 18:43:54 +05:00
Andrej730
79940641b2
typing
2025-03-06 18:43:54 +05:00
Andrej730
331f491d50
typing
2025-02-20 19:12:24 +05:00
Andrej730
17642ca4e9
typing
2025-02-18 18:50:34 +05:00
Andrej730
59dd105e99
fix get_applicable_entities / get_applicable_types missing schema #6108
2025-02-08 07:54:49 +11:00
Dion Moult
03bfd828e2
See #5919 . API now has support for features, not just openings. Void module is renamed to feature.
2025-01-28 14:18:17 +11:00
Andrej730
0ab70827e5
pset.assign_pset, pset.unassign_pset
2024-09-04 18:51:07 +05:00
Andrej730
bea837299e
root.reassign_class to handle switching occurrence class <-> type class #5260
...
Kind of experimental. The idea is that it will reassign class e.g. from IfcWindow to IfcWindowType (or vice versa) and will keep the IFC representations and property sets.
Example - https://imgur.com/a/X7MHR0s
2024-09-03 18:53:25 +05:00
Dion Moult
07060fc769
Replace all ifcopenshell.api.run with ifcopenshell.api static functions.
2024-06-28 12:36:31 +10:00
Andrej730
4a5d1eba0b
specify exported api methods in __all__
...
It's py.types requirement, similar to 6e2edbf
Example issue without __all__:
import ifcopenshell
import ifcopenshell.api.project
# "create_file" is not exported from module "ifcopenshell.api.project"
ifcopenshell.api.project.create_file()
2024-06-03 17:44:05 +05:00
Andrej730
9b562669d2
fix root.create_entity skipping setting up defaults on ifc4x3
2024-05-21 17:54:08 +05:00
Andrej730
371e11de9b
root.remove_product to consider IfcRelConnectsPortToElement
2024-05-10 19:18:09 +05:00
Andrej730
c50d1ea2fe
typing
2024-05-10 19:18:08 +05:00
Dion Moult
10d30b0de7
Document api modules and require explicit imports of API submodules
2024-05-08 17:00:35 +10:00
Dion Moult
424a06f6c8
More cleaning up of forward type hints to fix import errors
2024-05-07 14:58:12 +10:00
Dion Moult
d11ec67129
Generate functions for all API usecases for better static code features. See #2693 .
2024-05-06 14:43:43 +10:00
Dion Moult
a213ab6760
Fix docstrings to reference datatype as it would be used for users
2024-05-06 08:39:48 +10:00
Andrej730
eb46de9658
material.unassign_material - support batching #4474
2024-04-12 17:41:37 +05:00
Andrej730
59b496d4b5
typing
2024-04-12 17:41:36 +05:00
Andrej730
49e7abb4dc
type.unassign_type - support batching #4474
2024-04-11 17:09:41 +05:00
Andrej730
e12c05eea0
typing
2024-04-11 17:09:41 +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
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
14f1acadb7
See #3974 . WIP review to ensure history removal in API.
2023-11-27 18:31:55 +11: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
c26988b292
root.remove_product to remove IfcRelFlowControlElements
2023-11-10 12:10:22 +05:00
Dion Moult
0de0422c2e
Minor fix
2023-11-03 22:45:42 +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
Andrej730
24eb149221
Support other voiding IfcFeatureElementSubtraction elements #3889
...
Support other voiding IfcFeatureElementSubtraction besides IfcOpeningElement.
2023-10-16 15:31:53 +05:00
Andrej730
fafcd5dfca
root.copy_class to remove connections from previously connected ports
2023-08-15 10:35:36 +05:00
Andrej730
f8ffc97bf5
remove_product to also remove psets for types
2023-08-09 16:37:47 +05:00
Andrej730
2446479d82
remove_product to remove object placement too
...
previously it wasn't deleting object placement when you removed the objects (and related elements like IfcDirections etc) and working on project long enough you might had a bunch of orphaned data in it
2023-08-03 15:54:47 +05:00
Andrej730
cbf8b7f3a2
root.remove_product to remove IfcRelConnectsPorts too
...
previously if you deleted some flow segment that was connected to another the connection would stay resulting in invalid ifc and other bugs
2023-08-01 17:45:17 +05:00
Andrej730
572a8c812e
root.remove_product fix
2023-07-14 18:22:31 +05:00
Andrej730
846dbc341d
root.copy_class to support copying ports in ifc2x3
2023-07-14 15:48:41 +05:00
Andrej730
6810bbff2f
remove_product to remove IfcRelConnectsElements
2023-07-14 14:46:58 +05:00
Dion Moult
04e5f5036c
See #1676 . Deleting space boundaries now also removes connection geometry.
2023-05-02 22:20:34 +10:00
Dion Moult
f63091ce05
Fix #2974 . Type property sets are now properly copied.
2023-04-13 14:08:02 +10:00
Dion Moult
f291345111
Fix #2924 . IfcElements default to a null predefined type so they can inherit where possible.
2023-04-03 13:54:25 +10:00
Dion Moult
8bae2984e1
Fix #2886 . Typo.
2023-03-21 09:11:30 +11:00
Dion Moult
b6aa5c57c0
Fix bug where copying types with parametric materials could lead to invalidly reused material set items.
2023-03-20 20:40:11 +11:00
Dion Moult
3da718a6d1
Fix bug where removing objects could leave orphaned annotation relationships
2023-03-19 15:17:26 +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
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
Dion Moult
88bddb9531
See #2520 . You can now duplicate drawings.
2023-02-08 12:29:49 +11:00
Dion Moult
b3c7971ea9
Purge all data classes from API.
2023-02-01 15:44:08 +11:00
Dion Moult
f7af38c863
Fix #2712 .
2023-01-27 12:09:17 +11:00
Dion Moult
7686e35858
Fix #2697 .
2023-01-25 20:52:43 +11:00
Dion Moult
cb9a7cf5be
Fix #2712 . Handle deletion of rel services buildings.
2023-01-25 17:42:39 +11:00