Get viewer selection
get_selectionWhat the human selected in the viewer, fixed as a set: a write with this set hits exactly these elements, even if the selection changes meanwhile. Also picked points without an element. Chosen openings, grids (a grid group with every member), structural items (IfcStructuralItem), spatial nodes without node address (IfcBridge, IfcSpatialZone ...) and an IfcAlignment or IfcReferent join the set too; no element - a writer that does not take its class rejects it with its way, set_properties writes it as by guid. Beside the set, never a target: refs (what each click hit: kind element|point|edge|face, guid, point; at a point, edge or face also grip: which part of the definition that place is, match one|choice|withheld|none, as the call that moves it - fill names the field to add; grip null with grip_reason stale when the model moved on; source measured mesh with snap: vertex|edge_midpoint|grid|circle_center|circle_quadrant|edge_perpendicular|face_perpendicular|edge|face|free, strongest first; edge, face and free are a mere click spot), measure (the distance the human measured: refs [from, to], from, to, length_m, delta_m per axis, source with the weaker snap of both ends; null without one), section (the cut the human sees, null without one: planes [{normal, d}], what stays is normal . p <= d for every plane - a box has six; axis_parallel false means render_view and draw_section cannot show it). All in project m. rows lists the first 20; the whole set reads in pages with find_elements filter.set (next). Read-only.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "get_selection"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||