Open large designs faster: meshes, face names and Measure on all cores (#916)

Display meshes after opening, the face names read when a feature finds a face by name, and inspect.measure over all bodies are now worked out per body on plain scoped threads (solidcraft_kernel::for_each_on_threads / map_on_threads), in body order and with the same results; the browser build stays serial.
This commit is contained in:
bherbruck authored and GitHub committed 2026-10-13 19:49:04 -04:00
1 parent c333889fc0
commit 6c61442bb2
7 files changed
+110 -6

No files matched your search

+3 -5
View File
@@ -370,11 +370,9 @@ fn compute(mut session: Session, command: &str, params: &Value, thumbnail: bool,
let placement_ms = view_began.elapsed().as_secs_f64() * 1000.0;
let mesh_began = std::time::Instant::now();
// Fit, picking and the first viewport frame must not trigger cold tessellation on the UI.
for b in &world.bodies {
if progress.is_cancelled() {
return cancelled();
}
let _ = b.mesh();
world.warm_meshes(|| !progress.is_cancelled());
if progress.is_cancelled() {
return cancelled();
}
let tessellation_ms = mesh_began.elapsed().as_secs_f64() * 1000.0;
phase.store(2, Ordering::Relaxed);