Measure tool (I): pick one or two vertices, edges or faces for length/area/position, minimum distance with ΔX/ΔY/ΔZ and a line in the view, and the angle between planar faces or straight edges (MeasureCommand items, engine test); theme switch from the control channel no longer leaves stale scene colours
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AS5Tn3xieewUSg3uxrMVdL
This commit is contained in:
1 parent
7518c4f4b5
commit
beab69cfb2
8 files changed
+337
-7
No files matched your search
@@ -342,6 +342,13 @@ impl Session {
|
||||
Ok(self.model.state())
|
||||
}
|
||||
|
||||
/// Measure one or two selections (see `MeasureCommand` with `items`); errors come back as
|
||||
/// `{"error": …}`.
|
||||
pub fn measure_items(&self, items: &[Sel]) -> Value {
|
||||
let v = serde_json::to_value(items).unwrap_or(Value::Null);
|
||||
cmd::measure_items(self, &v).unwrap_or_else(|e| serde_json::json!({ "error": e.to_string() }))
|
||||
}
|
||||
|
||||
/// Run a script: a JSON array of `{"command": id, "params": {...}}` (or an object with a
|
||||
/// `commands` array). Stops at the first error. Returns each command's result.
|
||||
pub fn run_script(&mut self, script: &Value) -> Result<Vec<Value>> {
|
||||
|
||||
Reference in new issue
Block a user