diff --git a/src/main/java/com/neuronrobotics/bowlerstudio/threed/BowlerStudio3dEngine.java b/src/main/java/com/neuronrobotics/bowlerstudio/threed/BowlerStudio3dEngine.java index 044b1d411..8e7a6b006 100644 --- a/src/main/java/com/neuronrobotics/bowlerstudio/threed/BowlerStudio3dEngine.java +++ b/src/main/java/com/neuronrobotics/bowlerstudio/threed/BowlerStudio3dEngine.java @@ -340,7 +340,8 @@ public double sceneToWorldFixedXY_WP(Point2D scenePixel, double fixedX, double f else t = ((fixedX - ox) * dx + (fixedY - oy) * dy) / denom; - return localOrigin.getZ() + t * localDir.z; + // Limit range to within -1200 and +1200mm + return Math.max(-1200, Math.min(localOrigin.getZ() + t * localDir.z, 1200)); } catch (NonInvertibleTransformException e) { return 0;