forked from 1b-agent/opencadstudio-upstream
Integrate a large batch of standard CAD commands and fix several name/behaviour mismatches, with no product references in code. 3D solids (reusing the truck B-rep pipeline): - SLICE, INTERFERE, PRESSPULL, POLYSOLID, PYRAMID, SECTION - 3DROTATE, 3DMIRROR, 3DALIGN (cached-solid transforms) Annotation / text: - ARCTEXT, SPLINEFIT (Catmull-Rom to Bezier), DIMJOGGED, OBJECTSCALE (XData markers honoured by the existing geometry-gen / tessellator) Blocks / misc: - NCOPY (block-content extraction via explode_entity) - OPTIONS, SYNCPVIEWPORTS, THICKEN, plus earlier toggles, aliases, system variables, and layer/style/view commands POINTCLOUD/RECAP and UNDERLAYLAYERS/UOSNAP are intentionally left out: they require a proprietary binary / PDF-layer parser, a GPU point renderer, and real test files. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
15 lines
604 B
Rust
15 lines
604 B
Rust
// Orthographic-projection toggle (Projection ribbon group).
|
|
// id "ORTHO" keys the active-state highlight (is_active_tool) off the ribbon's
|
|
// projection state; the event uses the PARALLEL verb so the typed ORTHO command
|
|
// stays free for the orthogonal cursor-constraint drafting aid.
|
|
use crate::modules::{IconKind, ModuleEvent, ToolDef};
|
|
pub const ICON: IconKind = IconKind::Svg(include_bytes!("../../../assets/icons/ortho.svg"));
|
|
pub fn tool() -> ToolDef {
|
|
ToolDef {
|
|
id: "ORTHO",
|
|
label: "Ortho",
|
|
icon: ICON,
|
|
event: ModuleEvent::Command("PARALLEL".into()),
|
|
}
|
|
}
|