Open moethu opened 6 years ago
One idea would be to store all markup data with the viewport and then use the Rhino.Display.RhinoView.SetActive event - once the view has been activated we can apply all markups as conduit overlays. Once the active view changes the conduit is set to disabled until the view is active again.
What kind of markup data are you thinking about?
BCFs are supporting markups like this one: it would mostly be text and some shapes like lines or circles. Pretty much everything which is supported by conduit drawing overlays.
As I understand is the other way arround. Is the bcf that contains the model or a link to the model. Am I wrong?
Yes, BCFs can contain IFC snippets (parts of a model) but mostly just reference IFC element IDs. At the moment we won't be able to reference IFC element IDs in the Rhino model because there are none. But we can import the viewpoint and markup data. the viewpoints are containing camera settings, lines and section planes. We can import most bcf data as a viewport but it would be great to store some additional data with it, like the lines. Another question is if we can store markup data like bcf topics in an invisible object to the Rhino file. Is there any common pattern for storing this if there is no actual geometry element?
@kike-garbo would it make sense to store additional bcf data like markups in Rhino.DocObjects.ViewportInfo objects? Or what would be the best way to get a persistence for userdata? Viewports themselves don't have any userdata.