Marking Geometry as Hidden/Child Geometry for Visualisation Purposes

Hi all,

Say I have geometric data that I do not want to preview, for example:

  • A mesh that contains colours in the vertices that are weights for an agent simulation, separate from the preview mesh
  • A profile within a rail alignment that is a graph of vertical change over distance (pictured below)

We need a way to identify that this geometry exists, but it should not be rendered by default. We should be able to choose to display it in the viewer, as you may want to add some controls to isolate different components of the alignment and view them.

A different, unrelated issue, is that when we select this geometry in the viewer, we probably want to know what the overarching parent geometry is of this object, so that selecting, say, a parabola that forms part of a rail profile clearly indicates that it is part of a rail alignment made up of unrelated geometry on the other side of the map.

Potentially this could get solved by adding a small set of optional flags or tags to the IPreviewGeometry interface?

If we want control on a schema level (for example, boolean voids should always be invisible by default, and we don’t want different implementations per connector), maybe we need a decorator on the interface to ensure the right tags are applied on construction?

Purely an aesthetic thing, so another way might be to separate things out in the same way that css is - rules for hiding / showing geometry are sent separately to the renderer, and cut down on what needs to be contained within the BIM element schema?

1 Like

Possible duplicate of: Hide From Viewer ?

2 Likes

Definitely closely related but I’m also wondering about if it’s just a visualisation question, it’s also a “what should be in the schema and what shouldn’t be” question