Dion Moult
2cc4f96b7f
Fix failing project feature tests. Fix regression where appending an asset might append a named style twice.
2025-02-07 22:02:44 +11:00
Andrej730
56f0c19a85
append_asset to support IfcPresentationLayerAssignment #6023
2025-02-04 17:37:56 +05:00
Andrej730
c2ae3dcb08
append_asset - extend existing rels matching them by project guid
...
Mentioned in #6039
2025-01-31 17:12:31 +05:00
Andrej730
089f15a5cc
fix a typo
2025-01-31 15:06:37 +05:00
Andrej730
553872ced2
append_asset - fix issue appending elements that have as_entity() -> None #6037 #6039
2025-01-30 16:06:19 +05:00
Andrej730
bc33cb6391
append_asset - remove unnecessary partial
2025-01-30 16:06:19 +05:00
Andrej730
f43e33b969
apped_asset - fix passed removed elements after 3ffc0bc #6044
...
Before 3ffc0bc checking identities were handled by file.add but now it's handled append_asset, therefore should be a way to clean removed entities.
2025-01-28 17:22:26 +05:00
Andrej730
42d01ac222
Fix append_asset conversion issue after 3ffc0bc #6012
...
Custom file.add wasn't considering IfcLengthMeasure attributes...
2025-01-23 18:14:16 +05:00
Andrej730
5bc91ec4e4
append_asset - fix bug identifying None profiles as equivalent
2025-01-23 18:14:16 +05:00
Andrej730
5c3045b4db
Temporarily disable 3ffc0bc due to a bug with units conversion
2025-01-22 20:45:06 +05:00
Andrej730
b812d21282
Fix non-existent name argument in add_si_unit docs
2025-01-22 19:07:44 +05:00
Andrej730
3ffc0bc39c
append_asset to use custom file.add to prevent duplicating profiles and materials #5925
2025-01-20 16:23:31 +05:00
Andrej730
a79c4b1ace
typing
2024-12-20 18:59:22 +05:00
Andrej730
74fe1b4eb9
append_asset - ensure to update existing rels appending second asset
...
E.g. in #5890 pset was shared by 2 elements and they it worked is
1) it appended first element and it's rel to pset
2) it appended second element and skipped updating it's rel as it was appended before. Now it's going to update it to ensure it encludes second element too.
I believe, issue occurred after 8c28f52 when we stopped duplicating inverses and started to reuse them.
2024-12-20 12:47:10 +05:00
Andrej730
104b6f5564
append_asset option to avoid assuming unique names for assets #5391
2024-10-02 18:33:31 +05:00
Andrej730
2a9301ead2
project.append_asset - slight optimization for existing elements search
2024-10-01 18:08:03 +05:00
Andrej730
35f53232b6
typing
2024-10-01 18:08:03 +05:00
Andrej730
7597b1b29c
bonsai, ifcopenshell - append IfcSurfaceStyles from other projects
...
And other IfcPresentationStyles, though they are not currently supported by bonsai.
Example - https://imgur.com/a/AHlvowp
2024-08-15 18:18:05 +05:00
Andrej730
eca1d47d06
typing
2024-08-08 18:12:45 +05:00
Andrej730
644f32d11c
Fix errors appending assets when projects are using georeferencing #5110
2024-08-08 18:11:00 +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
ebd03e9290
typing
2024-05-13 18:01:17 +05:00
Andrej730
54b4cef25e
fix errors appending related materials in ifc2x3
...
it wasn't processing materials properties correctly because it was expecting material to have class IfcMaterialDefinition
2024-05-13 18:01:17 +05:00
Andrej730
c50d1ea2fe
typing
2024-05-10 19:18:08 +05:00
Andrej730
2d35869c41
typing
2024-05-09 18:00:17 +05:00
Andrej730
cbf04546b8
fix many implicit ifcopenshell.guid imports
...
a bit related to 10d30b0de
2024-05-08 18:18:02 +05:00
Dion Moult
10d30b0de7
Document api modules and require explicit imports of API submodules
2024-05-08 17:00:35 +10:00
Bruno Postle
b718bd19bd
fix TypeError
...
File "/usr/lib64/python3.12/site-packages/ifcopenshell/api/project/assign_declaration.py", line 126, in execute
related_definitions = set(has_context.RelatedDefinitions) - objects_with_contexts
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
TypeError: unsupported operand type(s) for -: 'set' and 'list'
2024-05-06 09:05:56 +01: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
ac29e152bb
project.unassign_declaration - support batching #4474
2024-05-03 16:28:10 +05:00
Andrej730
de690a385c
project.assign_declaration - support batching #4474
2024-05-03 16:28:10 +05:00
Andrej730
59cc9c0a16
material.assign_material - support batching #4474
2024-04-12 17:41:37 +05:00
Andrej730
df4943205a
type.assign_type - support batching #4474
2024-04-10 18:58:44 +05:00
Andrej730
8c28f52e6a
fix duplicated ifcstyleditems using append_asset
...
since we don't use `file.add` to add inverse items and we use `file.create_entity` it was duplicating new elements, added optional parameter that makes it possible to track already added relationships between `append_asset`s.
2024-03-05 14:18:18 +05:00
Andrej730
50648fd350
append_asset - keep preexisting contexts valid #4280
...
issue occurred with ifcpatch ExtractElements - it was adding project from other ifc file (with the contexts) and then adding some elements from it using `append_asset`. During `append_asset` it was considering existing context with the duplicated one and was partially purging it.
2024-03-04 18:04:24 +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
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
Dion Moult
0f68679295
Fix #2753 . Disable mapping representations when appending assets via the ExtractElements recipe to be more forgiving (and faster) on invalid models.
2023-08-09 00:13:16 +10:00
Dion Moult
346071185f
Fix bug where appending a product from a library which had relationships to types caused a bunch of types to be pulled in unintentionally
2023-03-24 20:53:55 +11:00
Dion Moult
00fc71dcbe
Fix #2837 . Shared subelements mistakenly caused the subelement append loop to break early. The solution is to traverse one level at a time.
2023-03-24 17:36:46 +11:00
Dion Moult
ae09adf854
Fix #2424 . Bug where indirect assets (e.g. importing a type using a material) with relationships had their relationships duplicated
2023-02-24 13:01:26 +11:00
Dion Moult
c8ba96cde8
Make syntax highlighting explicit in docs
2023-01-10 10:16:28 +11:00
Dion Moult
a89c061b58
Write docs for project API module
2022-12-14 17:28:34 +11:00
Dion Moult
6558f68cd4
Minor fix
2022-11-13 15:32:24 +11:00
Dion Moult
4fd5806f70
Minor documentation tweaks
2022-11-13 15:30:35 +11:00