forked from 1b-agent/opencadstudio-upstream
ocs_doc_api: Phase 3 (block references)
- Operation::CreateInsert(InsertSpec) appended to the wire enum (append-only). - backend add_insert validates the BlockRecord exists (unknown block -> Validation, no mutation); host inserts acadrust::entities::Insert with scale+rotation. - Insert transform moves insert_point (transform_entity_geometry) + ensure_transformable includes Insert. - facade EntityCollection::create_insert; spec Insert family; api_reference + binding_schema regenerated; mocks updated. - Test phase3_create_insert_and_transform -> 599 host lib green. - IMPLEMENTATION.md: Phase 3 done (attributes/traversal remaining).
This commit is contained in:
1 parent
d46351cdb3
commit
b03f68737e
13 files changed
+146
-5
No files matched your search
@@ -237,6 +237,21 @@ args = [{ name = "origin", ty = "[f64; 3]" }, { name = "direction", ty = "[f64;
|
||||
op = "CreateCurve"
|
||||
fixed = { curve = "XLine" }
|
||||
|
||||
# ============================================================================
|
||||
# CONTAINER FAMILY (phase 3) — block references
|
||||
# ============================================================================
|
||||
[[family]]
|
||||
name = "Insert"
|
||||
acadrust_variant = "Insert"
|
||||
handle = "Entity"
|
||||
collection = "entities"
|
||||
description = "Block reference. Place an existing BlockRecord by name; transform moves its insert point."
|
||||
|
||||
[[family.constructor]]
|
||||
name = "create_insert"
|
||||
args = [{ name = "block_name", ty = "&str" }, { name = "insert_point", ty = "[f64; 3]" }, { name = "scale", ty = "f64" }, { name = "rotation", ty = "f64" }]
|
||||
op = "CreateInsert"
|
||||
|
||||
# ============================================================================
|
||||
# Cross-cutting ops (generic handles + bulk) — documented in build.rs
|
||||
# ============================================================================
|
||||
|
||||
Reference in new issue
Block a user