Hostname: page-component-78c5997874-lj6df Total loading time: 0 Render date: 2024-11-10T21:19:33.413Z Has data issue: false hasContentIssue false

Algorithms for computing intersection and union of toleranced polygons with applications

Published online by Cambridge University Press:  27 February 2009

F. Cazals
Affiliation:
iMAGIS-IMAG, BP 53–38041 Grenoble Cedex 09, France
G.D. Ramkumar
Affiliation:
Robotics Laboratory, Department of Computer Science, Stanford University, Stanford, CA 94396, USA

Abstract

Because mechanical operations are performed only up to a certain precision, the geometry of parts involved in real-life products is never known precisely. But if tolerance models for specifying acceptable variations have received a substantial attention, operations on toleranced objects have not been studied extensively. That is the reason why we address in this paper the computation of the union and the intersection of toleranced simple polygons, under a simple and already known tolerance model. First, we provide a practical and efficient algorithm that stores in an implicit data structure the information necessary to answer a request for specific values of the tolerances without performing a computation from scratch. If the polygons are of sizes m and n, and s is the number of intersections between edges occurring for all the combinations of tolerance values, the preprocessed data structure takes O(s) space and the algorithm that computes a union/intersection from it takes O((n + m)log s + k' + k log k) time, where k is the number of vertices of the union/intersection and kk' ≤ s. Although the algorithm is not output sensitive, we show that the expectations of k and k' remain within a constant factor τ, a function of the input geometry. Second, we define and study the stability of union or intersection features. Third, we list interesting applications of the algorithms related to feasibility of assembly and assembly sequencing of real assemblies.

Type
Articles
Copyright
Copyright © Cambridge University Press 1997

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

REFERENCE

Avnaim, F., Boissonnat, J.-D., Devillers, O., Preparata, F., & Yvinec, M. (1994). Evaluating signs of determinants using single-precision arithmetic. Research Report 2306, INRIA, BP93, 06902 Sophia-Antipolis, France.Google Scholar
Chazelle, B. (1991). Triangulating a simple polygon in linear time. Discrete Comput. Geom. 6, 485524.CrossRefGoogle Scholar
Chazelle, B., & Edelsbrunner, H. (1992). An optimal algorithm for intersecting line segments in the plane. J. ACM 39, 154.CrossRefGoogle Scholar
Dagum, P., Karp, R., Luby, M., & Ross, S. (1995). An optimal algorithm for Monte Carlo estimation (extended abstract). 36th Annu. Symp. Found. Comput. Sci. pp. 142149.Google Scholar
de Berg, M., et al. (1996). Computational geometry by example. Stanford University Press (draft version).Google Scholar
Dyer, M., Frieze, A., & Kannan, R. (1989). A random polynomial time algorithm for approximating the volume of convex bodies. ACM STOC, pp. 375381.CrossRefGoogle Scholar
ElMaraghy, W.H., et al. (1994). Intersection volumes and surface areas of cylinders for geometrical modelling and tolerancing. CAD 26(1), 2945.Google Scholar
Fang, S., & Brüderlin, B. (1991). Robustness in geometric modeling—tolerance-based methods. Computational Geometry—Methods, Algorithms and Applications: Proc. Int. Workshop Comput. Geom. CG '91, vol. 553 of Lecture Notes in Computer Science, pp. 85101.CrossRefGoogle Scholar
Finke, U., & Hinrichs, K. (1995). Overlaying simply connected planar subdivisions in linear time. 11th ACM Symp. Comput. Geom.CrossRefGoogle Scholar
Fung, K.Y., et al. (1990). Simplified linear-time Jordan sorting and polygon clipping. IPL 35.Google Scholar
Guibas, L.J., Salesin, D., & Stolfi, J. (1989). Epsilon geometry: Building robust algorithms from imprecise computations. Proc. 5th Annu. ACM Symp. Comput. Geom., pp. 208217.Google Scholar
Latombe, J.C., Wilson, R.H., & Cazals, F. (1997). Assembly sequencing with toleranced parts. Computer Aided Design 29(2).CrossRefGoogle Scholar
Lawrence, J. (1991). Polytope volume computation. Mathematics of Computations 57(195), 259271.CrossRefGoogle Scholar
Moller, B. (1991). Tolerances in product modelling. Informatik, Informationen Reporte 1991(5), 452.Google Scholar
Motwani, R., & Raghavan, P. (1995). Randomized algorithms. Cambridge University Press, New York.CrossRefGoogle Scholar
Preparata, F.P., & Shamos, M.I. (1985). Computational geometry: An introduction. Springer-Verlag, New York.Google Scholar
Roy, U., Liu, C.R., & Woo, T.C. (1991). Review of dimensioning and tolerancing: Representation and processing. Computer Aided Design 23(7), 466483.Google Scholar
Salesin, D.H. (1991). Epsilon geometry: Building robust algorithms from imprecise computations. PhD thesis, Stanford University.Google Scholar
Shewchuk, J.R. (1996). Robust adaptive floating-point geometric predicates. Proc. 12th Annu. ACM Symp. Comput. Geom., pp. 141150.CrossRefGoogle Scholar
Srinivasan, V. (1993). Recent efforts in mathematization of asme/ansiy14.5m standard. 3rd CIRP Seminars on Computer Aided Tolerancing.Google Scholar
Walker, R.K., & Srinivasan, V. (1994). Creation and evolution of the asmey14.5.1 standard. Manufact. Rev. 7(1).Google Scholar
Wang, N., & Ozsoy, T.M. (1991). A scheme to represent features, dimensions, and tolerances in geometric modeling. J. Manufact. Syst. 10(3), 233240.CrossRefGoogle Scholar