Files
OneCAD-Draft/crates/ocs_doc_api/src/gen/binding_schema.json
T
Sebastian 2dba0158ca ocs_doc_api: Phase 2b-c (linear Dimension) — Phase 2 complete
- CreateDimensionLinear(DimensionSpec) op + GetDimensionMeasurement query (append-only).
- backend add_dimension_linear (Dimension::Linear via DimensionLinear::new) +
  dimension_measurement (linear/radius/diameter distance).
- Dimension bounds from measured + definition points; Dimension handle + measurement().
- spec Dimension family; api_reference + binding_schema regenerated; mocks + baseline.
- Test phase2c_dimension_linear_create_measurement_bounds -> 607 host lib + 8 crate
  + 3 consistency green. Phase 2 (full 2D + annotations) is now complete.
2026-09-06 09:43:37 +02:00

389 lines
8.5 KiB
JSON

{
"envelope_version": 1,
"families": [
{
"acadrust_variant": "Solid3D",
"collection": "solids",
"handle": "Solid",
"methods": [
{
"args": [
{
"name": "other",
"ty": "Solid"
}
],
"bulk": false,
"fixed": {
"erase_sources": true,
"op": "Intersection"
},
"kind": "op",
"name": "intersect",
"op": "SolidBoolean",
"query": null,
"read_only": false,
"returns": "Solid"
},
{
"args": [
{
"name": "other",
"ty": "Solid"
}
],
"bulk": false,
"fixed": {
"erase_sources": true,
"op": "Union"
},
"kind": "op",
"name": "union",
"op": "SolidBoolean",
"query": null,
"read_only": false,
"returns": "Solid"
},
{
"args": [
{
"name": "other",
"ty": "Solid"
}
],
"bulk": false,
"fixed": {
"erase_sources": true,
"op": "Difference"
},
"kind": "op",
"name": "subtract",
"op": "SolidBoolean",
"query": null,
"read_only": false,
"returns": "Solid"
},
{
"args": [],
"bulk": false,
"fixed": null,
"kind": "query",
"name": "volume",
"op": null,
"query": "GetVolume",
"read_only": true,
"returns": "f64"
},
{
"args": [],
"bulk": false,
"fixed": null,
"kind": "query",
"name": "centroid",
"op": null,
"query": "GetCentroid",
"read_only": true,
"returns": "[f64; 3]"
},
{
"args": [
{
"name": "other",
"ty": "Solid"
}
],
"bulk": false,
"fixed": null,
"kind": "query",
"name": "intersects",
"op": null,
"query": "GetIntersects",
"read_only": true,
"returns": "bool"
}
],
"name": "Solid"
},
{
"acadrust_variant": "Line",
"collection": "curves",
"handle": "Line",
"methods": [],
"name": "Line"
},
{
"acadrust_variant": "Circle",
"collection": "curves",
"handle": "Circle",
"methods": [],
"name": "Circle"
},
{
"acadrust_variant": "LwPolyline",
"collection": "curves",
"handle": "Polyline",
"methods": [
{
"args": [
{
"name": "at",
"ty": "usize"
},
{
"name": "point",
"ty": "[f64; 3]"
}
],
"bulk": false,
"fixed": null,
"kind": "op",
"name": "add_vertex",
"op": "AddVertex",
"query": null,
"read_only": false,
"returns": "()"
}
],
"name": "Polyline"
},
{
"acadrust_variant": "Point",
"collection": "curves",
"handle": "Point",
"methods": [],
"name": "Point"
},
{
"acadrust_variant": "Arc",
"collection": "curves",
"handle": "ArcCurve",
"methods": [],
"name": "Arc"
},
{
"acadrust_variant": "Ellipse",
"collection": "curves",
"handle": "Ellipse",
"methods": [],
"name": "Ellipse"
},
{
"acadrust_variant": "Spline",
"collection": "curves",
"handle": "Spline",
"methods": [],
"name": "Spline"
},
{
"acadrust_variant": "Ray",
"collection": "curves",
"handle": "Ray",
"methods": [],
"name": "Ray"
},
{
"acadrust_variant": "XLine",
"collection": "curves",
"handle": "XLine",
"methods": [],
"name": "XLine"
},
{
"acadrust_variant": "Text",
"collection": "curves",
"handle": "Text",
"methods": [
{
"args": [],
"bulk": false,
"fixed": null,
"kind": "query",
"name": "content",
"op": null,
"query": "GetTextContent",
"read_only": true,
"returns": "String"
},
{
"args": [
{
"name": "value",
"ty": "&str"
}
],
"bulk": false,
"fixed": null,
"kind": "op",
"name": "set_content",
"op": "SetTextContent",
"query": null,
"read_only": false,
"returns": "()"
}
],
"name": "Text"
},
{
"acadrust_variant": "MText",
"collection": "curves",
"handle": "MText",
"methods": [
{
"args": [],
"bulk": false,
"fixed": null,
"kind": "query",
"name": "content",
"op": null,
"query": "GetTextContent",
"read_only": true,
"returns": "String"
},
{
"args": [
{
"name": "value",
"ty": "&str"
}
],
"bulk": false,
"fixed": null,
"kind": "op",
"name": "set_content",
"op": "SetTextContent",
"query": null,
"read_only": false,
"returns": "()"
}
],
"name": "MText"
},
{
"acadrust_variant": "Hatch",
"collection": "curves",
"handle": "Entity",
"methods": [
{
"args": [],
"bulk": false,
"fixed": null,
"kind": "query",
"name": "boundary",
"op": null,
"query": "GetHatchBoundary",
"read_only": true,
"returns": "Vec<Vec<[f64; 2]>>"
}
],
"name": "Hatch"
},
{
"acadrust_variant": "Dimension",
"collection": "curves",
"handle": "Dimension",
"methods": [
{
"args": [],
"bulk": false,
"fixed": null,
"kind": "query",
"name": "measurement",
"op": null,
"query": "GetDimensionMeasurement",
"read_only": true,
"returns": "f64"
}
],
"name": "Dimension"
},
{
"acadrust_variant": "Insert",
"collection": "entities",
"handle": "Entity",
"methods": [],
"name": "Insert"
},
{
"acadrust_variant": "Viewport",
"collection": "entities",
"handle": "Entity",
"methods": [],
"name": "Viewport"
},
{
"acadrust_variant": "RasterImage",
"collection": "entities",
"handle": "Entity",
"methods": [],
"name": "RasterImage"
},
{
"acadrust_variant": "Table",
"collection": "entities",
"handle": "Entity",
"methods": [],
"name": "Table"
}
],
"layouts": {
"ObjectId": {
"struct": [
{
"name": "0",
"type": "u64"
}
]
},
"Operation": {
"enum": [
"CreateSolid(SolidPrimitive)",
"CreateCurve(Curve2Spec)",
"Extrude { profile: ObjectId, direction: [f64; 3] }",
"Revolve { profile: ObjectId, axis: ([f64; 3], [f64; 3]), angle: f64 }",
"Transform { id: ObjectId, placement: PlacementSpec }",
"SolidBoolean { op: BoolOp, a: ObjectId, b: ObjectId, erase_sources: bool }",
"AddVertex { id: ObjectId, at: usize, point: [f64; 3] }",
"Delete { id: ObjectId }",
"CreateMany(Vec<EntitySpec>)",
"TransformMany { ids: Vec<ObjectId>, placement: PlacementSpec }",
"DeleteMany(Vec<ObjectId>)"
]
},
"Query": {
"enum": [
"GetEntity { id: ObjectId }",
"GetBounds { id: ObjectId }",
"GetCentroid { id: ObjectId }",
"GetVolume { id: ObjectId }",
"GetIntersects { a: ObjectId, b: ObjectId }",
"GetGeometryRevision"
]
}
},
"object_model": {
"collections": [
"solids",
"curves",
"entities"
],
"document": "Document",
"handles": [
"Entity",
"Solid",
"Line",
"Circle",
"Polyline",
"Point",
"ArcCurve",
"Ellipse",
"Spline",
"Ray",
"XLine",
"Text",
"MText",
"Dimension"
],
"root": "DocApi"
},
"schema": "ocs_doc_api/binding_schema"
}