forked from 1b-agent/opencadstudio-upstream
ocs_doc_api: Phase 4 set_view + viewport-view query
- SetViewportView op + GetViewportView query (append-only). - backend set_viewport_view (update Viewport.view_target/view_height) + viewport_view. - facade Entity::set_view/viewport_view (Viewport returns Entity). - spec Viewport methods; api_reference + binding_schema regenerated; mocks + baseline. - Test phase4_set_view_and_view_query -> 609 host lib + 3 consistency green. - Phase 4 complete.
This commit is contained in:
1 parent
67655add72
commit
e6c132e0eb
15 files changed
+187
-7
No files matched your search
@@ -158,6 +158,11 @@ Paper-space viewport: a width×height window at center looking at view_target wi
|
||||
|
||||
- **create_viewport**(`center: [f64; 3], width: f64, height: f64, view_target: [f64; 3], view_height: f64`) -> `Entity`
|
||||
|
||||
### Methods
|
||||
|
||||
- **viewport_view**(``) -> `([f64; 3], f64)` — query `GetViewportView`
|
||||
- **set_view**(`view_target: [f64; 3], view_height: f64`) -> `()` — op `SetViewportView`
|
||||
|
||||
## `Entity` (acadrust `RasterImage`, collection `entities`)
|
||||
|
||||
Raster image (read-mostly): GetEntity kind + coarse bounds (insertion + u*width + v*height); generic delete. No typed create in v1.
|
||||
|
||||
@@ -339,7 +339,39 @@
|
||||
"acadrust_variant": "Viewport",
|
||||
"collection": "entities",
|
||||
"handle": "Entity",
|
||||
"methods": [],
|
||||
"methods": [
|
||||
{
|
||||
"args": [],
|
||||
"bulk": false,
|
||||
"fixed": null,
|
||||
"kind": "query",
|
||||
"name": "viewport_view",
|
||||
"op": null,
|
||||
"query": "GetViewportView",
|
||||
"read_only": true,
|
||||
"returns": "([f64; 3], f64)"
|
||||
},
|
||||
{
|
||||
"args": [
|
||||
{
|
||||
"name": "view_target",
|
||||
"ty": "[f64; 3]"
|
||||
},
|
||||
{
|
||||
"name": "view_height",
|
||||
"ty": "f64"
|
||||
}
|
||||
],
|
||||
"bulk": false,
|
||||
"fixed": null,
|
||||
"kind": "op",
|
||||
"name": "set_view",
|
||||
"op": "SetViewportView",
|
||||
"query": null,
|
||||
"read_only": false,
|
||||
"returns": "()"
|
||||
}
|
||||
],
|
||||
"name": "Viewport"
|
||||
},
|
||||
{
|
||||
|
||||
@@ -42,4 +42,6 @@ pub enum Operation {
|
||||
CreateDimensionLinear(DimensionSpec),
|
||||
// attributes
|
||||
SetAttribute { id: ObjectId, tag: String, value: String },
|
||||
// viewport view
|
||||
SetViewportView { id: ObjectId, view_target: [f64; 3], view_height: f64 },
|
||||
}
|
||||
@@ -30,4 +30,6 @@ pub enum Query {
|
||||
GetAttributes { id: ObjectId },
|
||||
/// The entity ids + kinds inside a block definition (read-only traversal).
|
||||
GetBlockEntities { block_name: String },
|
||||
/// A viewport's view (target + zoom height).
|
||||
GetViewportView { id: ObjectId },
|
||||
}
|
||||
Reference in new issue
Block a user