1 parent
04b4381b54
commit
bb13799246
3 files changed
+4
-4
No files matched your search
@@ -5597,7 +5597,7 @@ mod tests {
|
||||
assert!((s.base.area() - base).abs() < tol, "{what}: {} vs {base}", s.base.area());
|
||||
assert!((flat_area(&s) - (base + len * (ba + panel))).abs() < 1e-6, "{what}: {}", flat_area(&s));
|
||||
// (A sliver 0.0001 wide is below the flat pattern's shortest edge.)
|
||||
if hair < 0.0 || hair > 1e-3 {
|
||||
if !(0.0..=1e-3).contains(&hair) {
|
||||
holds_the_flat_material(&s, &what);
|
||||
} else {
|
||||
let b = s.solid().unwrap_or_else(|e| panic!("{what}: no solid: {e}"));
|
||||
|
||||
@@ -239,7 +239,8 @@ fn survey(body: &Body, d: Vec3, tol: f64, mesh_tol: f64, axes: [Vec3; 3]) -> Opt
|
||||
let o = p.origin();
|
||||
flat.push((n, n.dot(Vec3::new(o.x, o.y, o.z))));
|
||||
let along = n.dot(d).abs();
|
||||
!(along > 1.0 - 1e-9 || along < 1e-9)
|
||||
// NaN counts as inside, as the comparisons it replaces did.
|
||||
along.is_nan() || (1e-9..=1.0 - 1e-9).contains(&along)
|
||||
}
|
||||
_ => !crate::prism::wall_along(&surface, d, tol, &mut work),
|
||||
}
|
||||
|
||||
@@ -165,8 +165,7 @@ pub(crate) fn modifier_motion(
|
||||
&& app.viewport.boxsel.is_none()
|
||||
&& !(picking && hover.is_some_and(|p| app.viewport.rect.is_some_and(|rect| crate::canvas::owns_pointer(app, &projection(app, rect), p))))
|
||||
&& !hover.is_some_and(|p| app.viewport.layout.as_ref().is_some_and(|l| l.navigation.contains(p)));
|
||||
let next =
|
||||
hover.filter(|p| owns && p.is_finite()).and_then(|p| crate::prefs::nav_preset(&app.preferences.nav).motion_mode(mods).map(|mode| (mode, p)));
|
||||
let next = crate::prefs::nav_preset(&app.preferences.nav).motion_mode(mods).zip(hover.filter(|p| owns && p.is_finite()));
|
||||
let previous = app.viewport.modifier_nav;
|
||||
if previous.map(|(m, _)| m) != next.map(|(m, _)| m) {
|
||||
app.viewport.orbit_pivot = None;
|
||||
|
||||
Reference in new issue
Block a user