forked from 1b-agent/opencadstudio-upstream
Fix extruded solid grip preview and taper range
This commit is contained in:
1 parent
3ad0423393
commit
ea6eb58c53
8 files changed
+87
-10
No files matched your search
@@ -272,6 +272,7 @@ impl Scene {
|
||||
// flips the wire content id back to the base tessellation id, which
|
||||
// re-uploads the base wires (without the preview) on the next frame.
|
||||
self.preview_wires = vec![];
|
||||
self.solid_history_preview_wires.clear();
|
||||
if !self.preview_hatches.is_empty() {
|
||||
self.preview_hatches = std::sync::Arc::new(Vec::new());
|
||||
}
|
||||
@@ -302,6 +303,21 @@ impl Scene {
|
||||
.collect()
|
||||
}
|
||||
|
||||
/// Current candidate geometry for a hot grip. Solid-history candidates
|
||||
/// live outside the document until placement; ordinary entities continue
|
||||
/// to use their current tessellation.
|
||||
pub fn grip_wire_models_for(&self, handles: &[acadrust::Handle]) -> Vec<WireModel> {
|
||||
handles
|
||||
.iter()
|
||||
.flat_map(|handle| {
|
||||
self.solid_history_preview_wires
|
||||
.get(handle)
|
||||
.cloned()
|
||||
.unwrap_or_else(|| self.wire_models_for(std::slice::from_ref(handle)))
|
||||
})
|
||||
.collect()
|
||||
}
|
||||
|
||||
/// Split a MIRROR selection into plain ghost wires (reflected wholesale) and
|
||||
/// text ghosts paired with their bounding-box centre. Lets the preview match
|
||||
/// the commit for TEXT: MIRRTEXT on → true glyph mirror (full reflection, same
|
||||
|
||||
Reference in new issue
Block a user