Controller¤
compas_model.viewer.controller
¤
Classes¤
ModelViewer
¤
ModelViewer(
model: Model,
viewer: Any | None = None,
settings: RenderSettings | None = None,
cache: RenderGeometryCache | None = None,
install_tree: bool = True,
install_inspector: bool = True,
show_contacts: bool = True,
)
Control the COMPAS Viewer representation of a model.
Parameters:
-
model(Model) –Model to add to the viewer.
-
viewer(Any | None, default:None) –Existing COMPAS Viewer instance. If omitted, a viewer is created.
-
settings(RenderSettings | None, default:None) –Shared rendering settings. Implicit settings adopt the model unit.
-
cache(RenderGeometryCache | None, default:None) –Shared render-geometry cache.
-
install_tree(bool, default:True) –If
True, replace COMPAS Viewer's generic scene tree with tabbed hierarchy, group, type, and interaction projections when the viewer provides a UI. -
install_inspector(bool, default:True) –If
True, add the selected-element inspector to the viewer sidebar. show_contacts IfTrue, display computed contact regions. Every region remains independently selectable and can be hidden through the interaction view.
Notes
The model tree remains authoritative. This controller creates the matching
COMPAS scene hierarchy and indexes the resulting ElementObject
instances; it does not create a second hierarchy or element-view layer.
Attributes¤
selected
property
¤
selected: list[ElementObject]
list[ElementObject]: Selected element objects in model order.
Methods:¤
object_for_element
¤
object_for_element(element: Element) -> ElementObject
Return the scene object representing an element.
object_for_guid
¤
object_for_guid(guid: str) -> ElementObject
Return the scene object registered for an element GUID.
refresh
¤
Refresh one element object's render geometry.
Returns:
-
bool–Trueif the render geometry was replaced.
refresh_all
¤
refresh_all() -> list[ElementObject]
Refresh all changed element objects.
Returns:
-
list[ElementObject]–Objects whose render geometry was replaced.