3drepo / 3drepobouncer

A C++ library providing 3D Repo Scene Graph definition, repository management logic and manipulation logic. It is is essentially the refactored 3DRepoCore and (parts of) 3DRepoGUI
GNU Affero General Public License v3.0
29 stars 13 forks source link

Inspect the way we import .BIM #664

Closed carmenfan closed 7 months ago

carmenfan commented 7 months ago

Description

I'm seeing the following structure being constructed on a navis (rvt source) plugin import:

flowchart TD
    Trans(Transform)
    Meta(Metadata)
    Mesh(Mesh)

    Trans --> Mesh
    Trans --> Meta

The metadata should also be linked up to the Mesh (otherwise we won't be able to fetch metadata for situations such as https://github.com/3drepo/3drepo.io/issues/4552):

flowchart TD
    Trans(Transform)
    Meta(Metadata)
    Mesh(Mesh)

    Trans --> Mesh
    Mesh --> Meta
    Trans --> Meta

But as there's only one mesh, the above should really be optimised into

flowchart TD    
    Meta(Metadata)
    Mesh(Mesh)

    Mesh --> Meta

Steps to replicate

Current Behaviour

The structure around that object is currently:

flowchart TD
    Trans(Transform)
    Meta(Metadata)
    Mesh(Mesh)

    Trans --> Mesh
    Trans --> Meta

Expected Behaviour