Skip to main content
Log in

How to Cut Corners and Get Bounded Convex Curvature

  • Published:
Discrete & Computational Geometry Aims and scope Submit manuscript

Abstract

We describe an algorithm for solving an important geometric problem arising in computer-aided manufacturing. When cutting away a region from a solid piece of material—such as steel, wood, ceramics, or plastic—using a rough tool in a milling machine, sharp convex corners of the region cannot be done properly, but have to be left for finer tools that are more expensive to use. We want to determine a toolpath that maximizes the use of the rough tool. In order to formulate the problem in mathematical terms, we introduce the notion of bounded convex curvature. A region of points in the plane \(Q\) has bounded convex curvature if for any point \(x\in \partial Q\), there is a unit disk U and \(\varepsilon >0\) such that \(x\in \partial U\) and all points in U within distance \(\varepsilon \) from x are in \(Q\). This translates to saying that as we traverse the boundary \(\partial Q\) with the interior of \(Q\) on the left side, then \(\partial Q\) turns to the left with curvature at most 1. There is no bound on the curvature where \(\partial Q\) turns to the right. Given a region of points \(P\) in the plane, we are now interested in computing the maximum subset \(Q\subseteq P\) of bounded convex curvature. The difference in the requirement to left- and right-curvature is a natural consequence of different conditions when machining convex and concave areas of \(Q\). We devise an algorithm to compute the unique maximum such set \(Q\), when the boundary of \(P\) consists of n line segments and circular arcs of arbitrary radii. In the general case where \(P\) may have holes, the algorithm runs in time \(O(n^2)\) and uses O(n) space. If \(P\) is simply-connected, we describe a faster \(O(n\log n)\) time algorithm.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20
Fig. 21
Fig. 22

Similar content being viewed by others

Data availability

Data sharing is not applicable to this article as no datasets were generated or analyzed during the current study.

References

  1. Aamand, A., Abrahamsen, M., Ahle, T.D., Rasmussen, P.M.R.: Tiling with squares and packing dominos in polynomial time. In: 38th International Symposium on Computational Geometry (Berlin 2022). (to appear)

  2. Aamand, A., Abrahamsen, M., Thorup, M.: Disks in curves of bounded convex curvature. Am. Math. Mon. 127(7), 579–593 (2020)

    Article  MathSciNet  MATH  Google Scholar 

  3. Abrahamsen, M., Thorup, M.: Finding the maximum subset with bounded convex curvature. In: 32nd International Symposium on Computational Geometry (Boston 2016). Leibniz Int. Proc. Inform., vol. 51, # 4. Leibniz-Zent. Inform., Wadern (2016)

  4. Agarwal, P.K., Biedl, T., Lazard, S., Robbins, S., Suri, S., Whitesides, S.: Curvature-constrained shortest paths in a convex polygon. SIAM J. Comput. 31(6), 1814–1851 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  5. Ahn, H.-K., Cheong, O., Matoušek, J., Vigneron, A.: Reachability by paths of bounded curvature in a convex polygon. Comput. Geom. 45(1–2), 21–32 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  6. Ayala, J.: Length minimising bounded curvature paths in homotopy classes. Topol. Appl. 193, 140–151 (2015)

    Article  MathSciNet  MATH  Google Scholar 

  7. Blelloch, G.E.: Space-efficient dynamic orthogonal point location, segment intersection, and range reporting. In: 19th Annual ACM-SIAM Symposium on Discrete Algorithms (San Francisco 2008), pp. 894–903. ACM, New York (2008)

  8. Burek, J., Flejszar, R.: Simulation analysis of the wrap angle in internal corners finishing milling. Mechanik 92(11), 726–728 (2019)

    Article  Google Scholar 

  9. Burek, J., Flejszar, R., Jamuła, B.: Numerical simulation of cutting layer in internal corners milling. Mechanik 92(7), 412–414 (2019)

    Article  Google Scholar 

  10. Chazelle, B., Edelsbrunner, H., Grigni, M., Guibas, L., Hershberger, J., Sharir, M., Snoeyink, J.: Ray shooting in polygons using geodesic triangulations. Algorithmica 12(1), 54–68 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  11. Chen, D.Z., Wang, H.: Visibility and ray shooting queries in polygonal domains. Comput. Geom. 48(2), 31–41 (2015)

    Article  MathSciNet  MATH  Google Scholar 

  12. Cheng, S.-W., Cheong, O., Everett, H., van Oostrum, R.: Hierarchical decompositions and circular ray shooting in simple polygons. Discrete Comput. Geom. 32(3), 401–415 (2004)

    Article  MathSciNet  MATH  Google Scholar 

  13. Choy, H.S., Chan, K.W.: A corner-looping based tool path for pocket milling. Comput. Aided Des. 35(2), 155–166 (2003)

    Article  Google Scholar 

  14. Devillers, O., Fronville, A., Mourrain, B., Teillaud, M.: Algebraic methods and arithmetic filtering for exact predicates on circle arcs. Comput. Geom. 22(1–3), 119–142 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  15. Han, X., Tang, L.: Precise prediction of forces in milling circular corners. Int. J. Mach. Tools Manuf. 88, 184–193 (2015)

    Article  Google Scholar 

  16. Hatna, A., Grieve, R.J., Broomhead, P.: Automatic CNC milling of pockets: geometric and technological issues. Comput. Integr. Manuf. Syst. 11(4), 309–330 (1998)

    Article  Google Scholar 

  17. Held, M.: Voronoi diagrams and offset curves of curvilinear polygons. Comput. Aided Des. 30(4), 287–300 (1998)

    Article  MATH  Google Scholar 

  18. Held, M., Eibl, J.: Biarc approximation of polygons within asymmetric tolerance bands. Comput. Aided Des. 37(4), 357–371 (2005)

    Article  Google Scholar 

  19. Held, M., Lukács, G., Andor, L.: Pocket machining based on contour-parallel tool paths generated by means of proximity maps. Comput. Aided Des. 26(3), 189–203 (1994)

    Article  MATH  Google Scholar 

  20. Hershberger, J., Suri, S.: A pedestrian approach to ray shooting: shoot a ray, take a walk. J. Algorithms 18(3), 403–431 (1995)

    Article  MathSciNet  MATH  Google Scholar 

  21. Iwabe, H., Fujii, Y., Saito, K., Kishinami, T.: Study on corner cut by end mill. Int. J. Jpn. Soc. Precis. Eng. 28(3), 218–223 (1994)

    Google Scholar 

  22. Lazard, S., Reif, J., Wang, H.: The complexity of the two dimensional curvature-constrained shortest-path problem (2002). https://users.cs.duke.edu/~reif/paper/hongyan/curve/curve.pdf

  23. Lee, J.-H., Cheong, O., Kwon, W.-Ch., Shin, S.Y., Chwa, K.-Y.: Approximation of curvature-constrained shortest paths through a sequence of points. In: 8th Annual European Symposium on Algorithms (Saarbrücken 2000). Lecture Notes in Comput. Sci., vol. 1879, pp. 314–325. Springer, Berlin (2000)

  24. Park, S.C., Chung, Y.C.: Mitered offset for profile machining. Comput. Aided Des. 35(5), 501–505 (2003)

    Article  Google Scholar 

  25. Pateloup, V., Duc, E., Ray, P.: Corner optimization for pocket machining. Int. J. Mach. Tools Manuf. 44(12), 1343–1353 (2004)

    Article  Google Scholar 

  26. Pestov, G., Ionin, V.: On the largest possible circle imbedded in a given closed curve. Dokl. Akad. Nauk SSSR 127(6), 1170–1172 (1959). (in Russian)

  27. Shixiong, W., Zhiyang, L., Chengyong, W., Suyang, L., Wei, M.: Tool wear of corner continuous milling in deep machining of hardened steel pocket. Int. J. Adv. Manuf. Technol. 97(1–4), 1315–1333 (2018)

    Article  Google Scholar 

  28. Toh, C.K.: A study of the effects of cutter path strategies and orientations in milling. J. Mater. Process. Technol. 152(3), 346–356 (2004)

    Article  Google Scholar 

  29. Tong, X., Liu, Q.: Prediction of cutting forces in circular corner milling process. In: 15th IEEE International Conference on Mechatronics and Automation (Changchun 2018), pp. 655–660. IEEE (2018)

  30. Yap, C.-K.: An \(O(n\log n)\) algorithm for the Voronoi diagram of a set of simple curve segments. Discrete Comput. Geom. 2(4), 365–393 (1987)

    Article  MathSciNet  MATH  Google Scholar 

  31. Zhao, Z.Y., Wang, C.Y., Zhou, H.M., Qin, Z.: Pocketing toolpath optimization for sharp corners. J. Mater. Process. Technol. 192–193, 175–180 (2007)

Download references

Acknowledgements

We thank the anonymous reviewers for their thorough comments and one reviewer for spotting a glitch in the submitted manuscript.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Mikkel Abrahamsen.

Additional information

Editor in Charge: Csaba D. Tóth

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

A preliminary version of this paper was presented at SoCG 2016 [3]. The authors are part of BARC, Basic Algorithms Research Copenhagen, supported by the VILLUM Foundation grant 16582. Mikkel Abrahamsen is supported by Starting Grant 1054-00032B from the Independent Research Fund Denmark under the Sapere Aude research career programme.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Abrahamsen, M., Thorup, M. How to Cut Corners and Get Bounded Convex Curvature. Discrete Comput Geom 69, 1195–1231 (2023). https://doi.org/10.1007/s00454-022-00404-w

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00454-022-00404-w

Keywords

Mathematics Subject Classification

Navigation