Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tree-walk to start at the geometry object and aggregate properties upwards #30

Open
jsdbroughton opened this issue Jun 10, 2022 · 1 comment
Labels
addin Related to the Navis plugin

Comments

@jsdbroughton
Copy link
Member

jsdbroughton commented Jun 10, 2022

Problem
The deeply nested tree structure of Navisworks can be replicated within Speckle Base objects, but this leads to complications when using that geometry in Grasshopper for example. The geometry held in the displayValue property will be at differing levels in the tree; requiring nodes at many levels to extract the geometry (e.g. in grasshopper).

Solution
Options to resolve this:

  1. Geometry at root node with all Ancestor data properties aggregated at that node level. The Flat List.
  2. Geometry at root node with Ancestor data properties nested as per the Selection Tree.
  3. Geometry at root node with Ancestor data properties nested in reverse order.
  4. Geometry at root node with Ancestor data properties listed as an array in tree order from trunk to leaf.
  5. Maintain the current object model.
@jsdbroughton jsdbroughton added the addin Related to the Navis plugin label Jun 10, 2022
@jsdbroughton jsdbroughton moved this to Todo in Rimshot Jun 10, 2022
@jsdbroughton
Copy link
Member Author

jsdbroughton commented Jun 10, 2022

Each of these nodes will require the tree walk to be performed in different ways. Some will be quicker or slower.

Any implementation of #31 will need to reflect the settled solution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
addin Related to the Navis plugin
Projects
Status: Todo
Development

No branches or pull requests

1 participant