Hi All,
I wanted to share with you some feedback for future development on the ArchiCAD connector. I am afraid I have no solution on how to fix these or if these are already in the pipeline for further development, but I thought I share these for comments.
I have tried various workflows from
ArchiCAD → Speckle → ArchiCAD
Revit → Speckle → ArchiCAD
ArchiCAD → speckle → Revit
The aim was to see how the geometry was transferred and converted to native elements or GenericModels and how the data was also transferred.
The first comment is that unfortunately some elements lost their native properties when moved from one software to the other via Speckle, for example an ArchiCAD door would convert as a GenericModel when received in Revit, and in the other direction a Revit Door will be converted to a “Object” in ArchiCAD. Weirdly we got inconsistencies and sometime the process would convert all Revit elements to individual objects (Wall to object) when received in ArchiCAD, but sometimes it would create a native type (Wall to wall) - whilst using the same files / workflows. We couldn’t really pin-point why it would behave differently.
One bizarre thing was that when trying to go back and forth between ArchiCAD and Revit some elements started to “rotate” (but some others didn’t) creating miss-alignements between the original information and the looped back information. For example the below door that was created in Revit - moved to ArchiCAD - sent back to revit (without modification) - arrived at a slightly rotated position compared to its ancestor.
In the same tests we noted that some walls also got distorted and lost a lot of their height (I think it was due to them in ArchiCAD relinking so that the top of the wall was linked to the “story above” and therefore cropping the top of the wall coming from Revit).
In general I think the above point links to what I discovered, that the Speckle connector when importing elements in ArchiCAD would use the “latest setting” of an element (similar to how ArchiCAD behaves when picking a tool without applying a favourite). Unfortunately this meant that some settings such as linked to storey / view settings / classifications / layers / … could easily go wrong and/or distort geometry. This would be an issue mainly with layers as this would not give the opportunity to organise elements, and all elements (by type) would come on the same “layer” based on the latest layer used for this element, could it not create new layers similarly to when bringing .ifc files ?
The data part has also been challenging, even ArchiCAd to ArchiCAD the properties “names” have come across but their values have been replaced with default values (similarly for ID elements etc). This wasn’t expected as we thought going ArchiCAd to ArchiCAD would keep some of this integrity in the data.
In the more “nice to have” section, currently the elements created as “objects” would come in the embedded library, it would be great to replicate the “hotlinking” native workflow from ArchiCAD with a choice to save as an embedded object or an external .lcf file (to reduce file size) and if it is not possible to at least automate the removal of the “old” speckle incoming models. At the moment every update in the model create a new version of each object in the embedded library and keep the old ones. This could easily become a monster library if models are exchanged frequently.
Similarly to the “hotlinking” workflow from ArchiCAD, it would be great that imported geometry is “grouped”, this would help understanding what has been brought from Speckle, especially considering that we can only “create” when Receiving at the moment, and it is therefore better to delete all the “old” model version before importing / receiving a new one (to avoid rogue elements that may have been deleted from the other platform / software / model but would still live in ArchiCAd until deleted), having the “group” for the latest import would therefore improve the QA to check what is from the latest / what isnt, and when you have to delete it just select the group and delete it 9without the risk of missing a rogue / hidden element).
I have noted that in the ArchiCAD to ArchiCAD workflows, some elements also lose their native type (whilst others retain them), not sure if it is an API limitation or bug for fixing, but Zones would convert as Objects and Objects would convert as Morphs.
I am hoping the above makes sense, and that whilst it may look like negative feedback, this is really to improve the tool and workflows as I love the platform,
Thanks,
Arthur