Dion Moult
e3de339ab2
Fix import bug where truncated material names cause import failure
2020-07-16 11:11:47 +10:00
Dion Moult
42f597a7af
New experimental mode to allow users to profile import progress
2020-07-13 16:15:23 +10:00
Dion Moult
88331d16a2
Fix bug where imported materials that duplicated a name could be incorrectly assigned
2020-07-13 16:12:34 +10:00
Dion Moult
65821c4367
Group all aggregates into a single collection and update aggregate operators
2020-07-10 13:52:34 +10:00
Dion Moult
2132706c6e
Migrate import geolocation to util module
2020-07-10 12:00:54 +10:00
Dion Moult
a7e1eb15ab
Add support for triangular grids in IFC import
2020-07-10 10:30:41 +10:00
Dion Moult
a27b00e616
Allow import of invalid grids coming from Revit. See #911 .
2020-07-10 10:18:33 +10:00
Dion Moult
d22d903a36
Improve absolute coordinate support for georeferencing
2020-06-29 11:16:49 +10:00
Dion Moult
794e55aadd
Fallback to non-native if boolean operations exist. See #865 .
2020-06-23 08:02:46 +10:00
Dion Moult
358d9ef1c8
Reimplement edge based mesh import
...
We don't use foreach_set, since for some reason doing it with foreach_set requires edit mode to be toggled for the edges to be visible. We make the assumption that an object is either edge based or face based, but not both.
2020-06-21 09:48:54 +10:00
Dion Moult
b77ed5aab6
Fix bug where group subtypes are imported as the wrong class
2020-06-20 21:22:49 +10:00
Dion Moult
8962e3bcf4
Don't fail on importing case insensitive file extensions
2020-06-19 16:43:22 +10:00
Dion Moult
d3f07c4ac4
Support native export of IfcArbitraryClosedProfileDef and IfcRectangleProfileDef
2020-06-18 21:55:07 +10:00
Dion Moult
391ae80e36
Add support for storing subitems of a representation, like a profile. See #865 .
2020-06-18 11:50:23 +10:00
Dion Moult
76e7205692
Add experimental native support for faceted breps import
2020-06-14 19:19:54 +10:00
Dion Moult
7e362110d2
Optimise import process. See commit notes.
...
* When there is only one material slot, there is no need to assign materials as the slot becomes the default
* Don't loop through collections to find the collection you need, we now store aggregate collcetions
* The project collection is not added to the scene collection until the very end. Apparently linking objects to collections when the collection is enabled in the view_layer causes it to be twice as slow. Therefore all view layer operations happen at the end.
* Don't print the progress bar, as excessive prints and calls to the iterator.progress() makes it very, very slow. Like, so slow you wouldn't even wait for the file to finish you'd just give up. See #895 .
* Only create materials once per mesh. Nobody seems to be using styled items properly as an object override anyways.
* Use foreach_set to create meshes instead of mesh.from_pydata. This is much faster.
* Similarly use foreach_set to set material indexes. This leads to a crazy speed increase on big meshes.
2020-06-14 19:17:58 +10:00
Dion Moult
7b98e48b9c
Prevent adding a crazy number of material slots, especially in messy IFCs coming from Revit
2020-06-14 19:03:43 +10:00
Dion Moult
d8373715e2
Disable mesh cleaning if objects >= 10000, for import optimisations
2020-06-12 21:48:35 +10:00
Dion Moult
9961f6172f
Users can now choose whether to import type representations, disabled by default
2020-06-12 21:46:28 +10:00
Dion Moult
2f8ea33da5
Native elements are now always processed separately with multithreading, reducing bugs with 2D axis representation parsing too. See #865 .
2020-06-11 10:57:29 +10:00
Dion Moult
edc3aa6157
Support import whitelists and blacklist filters. Groundwork for #865 .
2020-06-11 10:52:00 +10:00
Dion Moult
4a6868495e
Opening elements now create a boolean relationship. See #865 .
2020-06-11 09:58:40 +10:00
Dion Moult
9ae3adf0d7
Distinct representation items are now stored in different vertex groups. See #865
2020-06-08 17:04:36 +10:00
Dion Moult
a8a51eb212
Add support for styled surfaces for native elements. See #865
2020-06-08 12:06:15 +10:00
Dion Moult
0237f12ceb
Add native element processor for extruded solids and swept disks. See #865 #885
...
* New user option to enable native element processing
* Native element geometry will be substituted with dummy geometry so that the iterator doesn't waste time on it
* IfcArbitraryClosedProfileDef and IfcRectangleProfileDef are supported for IfcExtrudedAreaSolid
* Old rebar code full of assumptiosn deleted for a more globally applicable native support for IfcSweptDiskSolid
* Probably created a whole bunch of new useful utility functions in the process, which can contribute to #829
2020-06-07 22:53:33 +10:00
Dion Moult
793c1c8ec6
Enable curve imports by default, so rebar, profiles, are imported without user confusion. See #771 and #865 .
2020-06-06 11:55:22 +10:00
Dion Moult
9c111a1470
Disable limited dissolve, which can break geometric accuracy.
2020-06-05 21:24:28 +10:00
Dion Moult
b708c25f90
Minor fix
2020-06-03 22:03:30 +10:00
Dion Moult
4f1514022a
Material layer set usage data is now half-imported, with no metadata. See #865 .
2020-06-03 11:21:10 +10:00
Dion Moult
2e19d7697a
IFC4 georeferencing data is now imported
2020-06-02 09:34:24 +10:00
Dion Moult
72a1c00e46
Switching contexts are now more tolerant of broken IFCs. See #865 .
2020-06-01 22:37:11 +10:00
Dion Moult
fa461502a0
Store the IFC geometry type on import. See #865 .
2020-06-01 21:57:56 +10:00
Dion Moult
0ec205ad1d
Retain material data if a surface style overrides it on import. See #865
2020-06-01 20:55:14 +10:00
Dion Moult
bdf17e5c12
Allow for objects with no placement
2020-05-28 22:34:54 +10:00
Dion Moult
72a2ab93c3
When importing, existing rooted elements are reused
2020-05-21 20:26:08 +10:00
Dion Moult
b0bb05bcdb
Minor fix. See #854 .
2020-05-17 19:41:26 +10:00
Dion Moult
e44eaf0ccd
Implement import and export of relative placements of spatial hierarchy. See #852 .
2020-05-16 21:36:34 +10:00
Dion Moult
81b3711c33
Bump IOS build and add support for IFCXML import. See #854 .
2020-05-16 16:07:12 +10:00
Dion Moult
e3c36a28f2
Fix bug where type mapped representations were not isolated to a single IFC
2020-05-15 16:39:40 +10:00
Dion Moult
395d5ebea7
Fix round-trip bug when IFC2X3 classifications are imported. See #851 .
2020-05-14 21:35:43 +10:00
Dion Moult
dd525d8a30
Fix bug where a subcontext is always assumed during import, causing a fail
2020-05-14 16:30:16 +10:00
Dion Moult
32c621139b
Fix bug where monetary unit causes import to fail
2020-05-14 16:29:56 +10:00
Dion Moult
2a8251fc94
New UI to manage representation contexts for each object
2020-05-09 18:14:10 +10:00
Dion Moult
b857d9a37b
Type representations are now properly mapped to instance representations if they share a rep
2020-05-08 20:40:06 +10:00
Dion Moult
1b237ccefe
Type representations are now imported too, not just element representations
2020-05-08 10:18:02 +10:00
Dion Moult
6300b27ac4
IFC unit settings are now preserved on import
2020-05-07 21:25:53 +10:00
Dion Moult
0af8902dde
Allow text annotation formatting functions
2020-05-06 21:10:39 +10:00
Dion Moult
4ed3517c47
Minor fix
2020-05-06 20:23:37 +10:00
Dion Moult
fa8b12497c
Reuse materials on subsequent imports if they already exist
2020-05-05 09:35:15 +10:00
Dion Moult
c3b04d554c
Lat/longs are converted to decimal degrees when imported from DMS
2020-05-04 18:46:47 +10:00