Convergence of Geometric Algorithms for Graphics & Animation
|
|
- Eustace Chandler
- 5 years ago
- Views:
Transcription
1 Convergence of Geometric Algorithms for Graphics & Animation E Antonov, J. Bisceglio, I. Borovikov, N. Noble, T. J. Peters October 28, 2008 Abstract Many graphics and animation applications depend upon convergence of geometric algorithms, which is the unifying theme for the two innovations presented here. The first extends ray-tracing in graphics over a richer family of input surfaces. The second improves temporal anti-aliasing in animation through topological considerations. Results of numerical experiments on convergence are provided for both algorithms to indicate the performance measures used by these authors in developing commercial applications for graphics and animation. Keywords: G.1.2: Numerical Analysis; Approximation, Special function approximations. I.3.5: Computer Graphics: Computational Geometry and Object Modeling, Splines. Kerner Graphics, Inc., 90 Windward Way, San Rafael, CA, me@eugeneantonov.com Kerner Graphics, Inc., 90 Windward Way, San Rafael, CA, justin.bisceglio@gmail.com Kerner Graphics, Inc., 90 Windward Way, San Rafael, CA, igor.borovikov@gmail.com Kerner Graphics, Inc., 90 Windward Way, San Rafael, CA, norm@kerner.com Kerner Graphics, Inc., 90 Windward Way, San Rafael, CA and Department of Computer Science & Engineering, University of Connecticut, Storrs, CT , tpeters@cse.uconn.edu. 1
2 1 Introduction Algorithmic theory can often be refined by experimentation and testing [11], as will be demonstrated for two geometric algorithms: the determination of plane/surface intersection and finding line segments whose end points are both normal to a given surface. The first is used for ray-tracing and the second is used for temporal anti-aliasing. Algorithms for ray/surface intersections for Bézier surfaces have appeared [8], relying upon uniform parameterization. In the industrial practice of aircraft manufacture, it is necessary to compute ray/surface intersection with more general NURBS surfaces. Applications include the projection of curves onto surfaces along a particular vector and surface gridding. For this more general problem, no applicable research was found in the literature, leading to the generalizations presented here in Section 2. Tubular neighborhoods from differential topology [3] have been shown to be a useful topological construct to prevent temporal aliasing [4]. An algorithm to determine the appropriate tubular radius for NURBS curves has appeared [9]. It is based upon finding all pairs of points on the curve such that the line segment joining them is normal to the curve at both end points. These will be called doubly normal segments. The natural extension to surfaces is presented here. Furthermore, dynamic updates of these computations are desirable for temporal anti-aliasing in animation, but all known algorithms involve root finding techniques that are not easily adapted to dynamic situations. Aggressive convergence methods are presented in Section 3 that approach the performance needed for dynamic updating. In the study of each of these problems, topological analysis has proven valuable for extending known theoretical foundations to wider practical applications. 2 Topological Analysis for Ray Tracing The consideration of intersections between sets is a fundamental, unifying concern between topology and geometry. The integration of a topological analysis with a surface intersector provides a sound basis for extending ray/surface intersections beyond Bézier surfaces. The integration begins with the planar cut method, as explained, below. 2
3 2.1 Planar Cut Method The state of the art for efficient ray/surface intersection algorithms is limited to Bézier surfaces [8]. The successful extension here to NURBS surfaces relies upon rapid convergence obtained from adopting the topological analysis technique used in the planar cutting method. This extension also delivers the accuracy required by CAD/CAM applications. We first review the planar cutting method and then describe how we use it to compute ray/surface intersections. The planar cut method computes the intersection between a parametric surface and a plane. The intersection is represented as contours along the parametric surface. Developed by Grandine and Klein [2], planar cutting is summarized by the following steps: 1. subdivide the parametric region into panels to find all turning and critical points that lie on the intersection contours; 2. find all intersections of the surface boundaries and the plane; 3. order all points found in steps 1 and 2 according to their distance from the origin; initialize an ordered list of contours; 4. iterate through each point in the list; if the point is a boundary point go to step 5, otherwise go to step 6; 5. decide if the point corresponds to a contour which is starting or ending as determined by the panel direction and, accordingly, either add a new contour to the list or remove a completed contour from the list; return to step 4; 6. decide if the point is a turning or critical point; for turning points, test if two contours start or two contours end; return to step 4; 7. use spline collocation to trace the contours. Both critical and turning points are roots along the intersection contour where the gradient vanishes. The distinction is that turning points lie on the intersection of two contour branches. The spline collocation method used for approximating the contours can achieve arbitrary accuracy and can be adjusted to accommodate the requirements of any particular computer graphics application. The topology resolution scheme is designed to determine the number of contour branches as well as the endpoints for each of those branches. This helps guarantee the robustness of the method. The next section explains how the planar cutting algorithm is used in computing ray/surface intersections. 3
4 2.2 Root Finding with Intersecting Contours Consider an intersecting ray and a surface, such as shown in Figure 1. The ray is reformulated as two planes and two planar cuts are performed. Each planar cut contour represents an intersection between a plane and the surface, and these two contours themselves intersect at the same point(s) where the ray intersects the surface. Boundary and turning points are found in the same manner as the planar cut method by using the projected polyhedron algorithm (PPA) [9]. Once these Figure 1: Surface and ray. roots are ordered, topologically correct contours may be traced and intersections of the two planar cut contours queried. This intersection problem may easily be solved in the two dimensional parametric space of the surface. Much of the collocation work to trace the contours to an arbitrary degree of accuracy can be eliminated since only the intersection regions are of importance. Because the ordered roots guarantee a topologically correct contour, a piecewise linear approximation to the contour that connects the points will suffice to quickly identify and narrow the intersection regions. 2.3 Numerical Examples An experiment was conducted with a quadratic, non-rational, Bézier surface, depicted in Figure 1. A ray was drawn by selecting a position on the surface at random and drawing a line to the origin. A solution within tolerance to the selected point on the surface was required of the intersection algorithm. A tolerance condition of was used throughout the experiment. Generally, tolerance conditions are measured in parametric space. Because the solution for this experiment is known, a tolerance measure in model space was possible, as recorded here. Isoparametric curves were extracted from the surface boundaries and from 4
5 the interior of the patch where minimum and maximum features are defined by convex hull spans [10]. This creates a bound around the features and guarantees a topologically correct contour. For this example, twelve curves are produced, as shown in Figure 2(a). The isoparametric curves were used to find roots between the surface and each of the two planes that represent the ray. This was done with PPA. Transforming the ray and the twelve curves such that the ray became parallel with the x-axis allowed the control points of the twelve curves to be projected onto the XY-plane and the XZ-plane. Creating a graph with the parametric axis yielded the twenty-four curves shown in Figure 2(b). In this example, there were eight intersections with the two planes - four with each plane. These eight roots appear in Figure 2(c). Since none of the roots were turning points, the roots were ordered sequentially across the parametric domain and connected by piecewise-linear segments to form an approximation of the intersection contours. This is shown in parametric space in Figure 3(a) and in model space in Figure 3(b). The two dimensional line segments were then intersected: in this step the segments that intersect can be tracked to any desired level of accuracy before they are intersected, and can be subdivided to increase accuracy after intersection, until a solution within a desired tolerance is reached. Iterative refinements under convergence are shown in Figure 3(c), the final intersection result is illustrated in Figure 3(d), and Table 1 demonstrates the convergence to the solution through each iteration. In this experiment, the root ordering was a simple step, but ordering roots can sometimes be tricky. Detailed explanations and illustrated examples have been published for this task [2]. Iteration Model error Parametric error e e e e e e e e e e-16 Table 1: Convergence for first example. Three additional experiments, illustrated in Figure 4, were performed to examine the robustness of the algorithm. In the second experiment, the 5
6 (a) (b) (c) Figure 2: (a) Contours. (b) Projections. (c) Roots. 6
7 (a) (b) (c) (d) Figure 3: (a) Parameter space. (b) Approximation. (c) Refinement (d) Solution. 7
8 ray intersected a discontinuous region along the crease of the example surface. The third experiment was a classic tangency case. The last experiment demonstrates the flexibility of the algorithm with a rational quadric NURBS surface. The internal knots on this surface make it more general then a Bézier surface. Furthermore, the ray intersects this surface in two locations, both of which are reported by the algorithm. These experiments had similar convergence behavior to the first experiment. 3 Temporal Anti-aliasing & Topology Animation displays slightly differing images (called frames) at rates that produce an illusion of motion. That illusion can be destroyed by unexpected changes between frames a problem known as temporal aliasing. A topological approach for preventing temporal aliasing [4] relies upon ambient isotopy [3]. Following previous work on curves (1-manifolds) [9], algorithms for identifying ambient isotopies rely upon finding the doubly normal segment of minimal length. This minimal length is known as the minimum separation distance (MSD). The PPA was previously used [9] to find the MSD on 1-manifolds. As an alternative, Newton s method 1 was used elsewhere [7]. While both the PPA and Newton s methods are effective in the case of 1-manifolds, the extension of Newton s method to 2-manifolds is more natural [5] and is pursued here. The formulation of the partial differential equations for this bivariate Newton s method is a straightforward adaptation from the previously published univariate case [6, 7]. As with the previous demonstration on a trefoil knot [6, 7], the imperative for optimal performance is the efficient creation of seeds for Newton s method. This use of Newton s method over multiple seeds can result in many local minima being returned. From these local minima, the length of the shortest segment is chosen as MSD. Since seeds are easily created and Newton s method is called for each seed, the focus becomes to effectively cull to a small set of good seeds in order to reduce both: the number of times Newton s method is called, and the convergence time for each invocation of Newton s method. 1 Newton s method uses basic tools of calculus to iteratively improve upon an initial estimate to converge to an acceptable approximation of the roots of a given equation. 8
9 (a) (b) (c) Figure 4: (a) Discontinuous. (b) Tangential. (c) Multiple. 9
10 Only manifolds without boundary are considered. Consistent with the previous approach [6, 7], each 2-manifold is partitioned into sub-patches, with computations proceeding between each pair of sub-patches. For this initial research, the typical restriction to Bézier surfaces was adopted. 3.1 A Naïve Seeding Approach The most straight-forward approach to generating seeds is to select N points along each side of the unit square (in parametric coordinates), providing a uniformly distributed set of points over both manifolds, and to consider all N 4 pairs as initial seeds. Of course, most of the pairs can be culled since the connecting line segment is far from satisfying the normality conditions, but still the fourth power growth of data raises concerns about scalability. With this method, taking N = 10 was sufficient for some initial experiments. A representative example of two sub-patches is shown in Figure 5, where all 28 seeds were retained (Figure 5(a)) as being within sufficient tolerance of satisfying the normality threshold. Coded in C# and running on a 3 GHz computer, our prototype found three segements within tolerance of the double normality condition described in Section 3.3, below. The time expended was less than 1 second (Figure 5(b)), approaching the speeds needed to satisfy realistic requirements. Further optimization is expected by even more aggressive culling of seeds. 3.2 A Continuum of Seeds Despite this initial success, some problems have appeared when there is a high degree of symmetry, as often happens in objects used in animation, as well as in engineering design. Under those circumstances, there can be a continuum of double normals, as shown in Figure 6. For this continuum case, the culling comparison described in Section 3.3, below, fails to satisfactorily reduce the sample set of seeds for Newton s method. This is in contrast to the good performance seen on cases where such symmetry does not prevail, such as in examples previously published [6], shown here in Figure 7. One generally thinks of symmetries as reducing the difficulty of a problem, but, here, this essentially amounts to much redundant information that needs culling. One culling alternative under consideration is prompted by other graphics developments, specifically the gaming technique for shadow volume rendering using stencils [1]. 10
11 (a) (b) Figure 5: (a) Seeds. (b) Result. 3.3 Numerical Experiments for Seeding The results of Newton s method will, of course, vary according to the number of seeds permitted by the user and by the thresholds used for culling out seeds that are unlikely to be helpful in the convergence process. The results of numerical experiments to assess those trade-offs are reported in Table 2. Samples Thresholds ; 2 ; 0.015s * * * ; 3 ; 0.280s 16 ; 3 ; 0.050s * * ; 3 ; 4.22s 432 ; 3 ; 0.72s 44 ; 3 ; 0.41s * ; 3 ; 70.6s 7540 ; 3 ; 11.1s 784 ; 3 ; 5.81s 64 ; 3 ; 5.28s Table 2: Trade-offs between Samples and Thresholds The explanations for this table are as follows: The left hand column indicates the number of seed pairs initially cho- 11
12 Figure 6: A continuum of normals. sen. Each value is of the form N 4, where N is the number of samples chosen along each axis in the parametric domain. The variable D used for culling is defined by D = max{d 1, D 2, D 3 }. Let P 1 and P 2 be sample points defined in the previous item, and let N 1 and N 2 be the unit normals at each of P 1 and P 2, respectively. Let L be the normalized vector between P 1 and P 2 and let D 1 (N 1, N 2 ) = min( N 1 N 2, N 1 + N 2 ), D 2 (N 1, L) = min( N 1 L, N 1 + L ), D 3 (L, N 2 ) = min( L N 2, L + N 2 ). If D is greater than a user-supplied threshold value, then the pair of points P 1, P 2 was culled. An asterisk indicates that no solutions were found. Time spent for such failed runs was always less than or around 1 second, except for the last row where it was a few seconds (C# code, 3 GHz CPU). In each column, consider the numbers separated by semi-colons. The first number denotes the number of seeds left after culling, the second number is the number of solutions found and the third number is the 12
13 Figure 7: Many doubly normal segments efficiently calculated. time required to terminate. Only one case produced an incorrect number of solution as 2 the correct number of solutions for all cases was 3. When the threshold was lowered to no solutions were found for any of the numbers of initial seeds indicated. Increasing the initial sample size further was not explored, nor were smaller thresholds examined. The expectation is that for smaller thresholds, the sample size needed would become prohibitive regarding performance expectations. The conclusion draw from these experiments is that finding good parameters is a non-trivial endeavor: the sweet spot is located along the diagonal; moving far to the right gives no solutions (failure), while moving too far down leads to a very steep increase in calculation time while all solutions are produced. Moving to the left also results in increased calculation time. Determination of an optimal combination of parameters remains an object of our investigations. Concurrent with these investigations, contemporary graphics cards are shifting to support massively parallel computation. The analysis of the numerous seeds for Newton s method is thought to be a good candidate to 13
14 leverage the massively parallel capabilities of today s conventional graphics card. It is expected that future experiments will show that parallelization will nicely complement the algorithms presented here. 4 Conclusion Careful attention to convergence properties of geometric algorithms led to the innovations in graphics and animation presented here. For a graphics application, topological analysis helped to solve a geometric problem in computing ray/surface intersections robustly and efficiently, allowing extensions beyond Bézier surfaces to NURBS surfaces. Regarding animation, culling by geometric methods produce convergence of Newton s method with sufficient performance to obtain topological limits for temporal anti-aliasing. In both cases, a wider viewpoint on convergence has proven to be beneficial in developing software for commercial applications in graphics and animation. Acknowledgements: All authors were partially supported by NSF SBIR grant IIP and the third author was also partially supported by NSF grant CCR All statements here are the responsibility of the authors, not of the National Science Foundation. The authors express gratitude to Fritz W. Klein IV for many helpful conversations. References [1] [2] T. A. Grandine and F. W. Klein. A new approach to the surface intersection problem. Computer Aided Geometric Design, 14(2), , [3] M. W. Hirsch. Differential Topology. Springer-Verlag, New York, [4] K. E. Jordan, L. E. Miller, E. L. F. Moore, T. J. Peters, A. C. Russell, Modeling time and topology for animation and visualization with examples on parametric geometry, Theoretical Computer Science 405, (1-2), Computational Structures for Modelling Space, Time and Causality, 41 49,
15 [5] J. H. Mathews, Numerical Methods, Prentice-Hall, Englewood Cliffs, NJ, [6] L. E. Miller, E. L. F. Moore, T. J. Peters, A. C. Russell, Topological neighborhoods for spline curves : practice & theory, 5045, , [7] E. L. F. Moore. Computational Topology of Spline Curves for Geometric and Molecular Approximations. PhD Thesis, The University of Connecticut, [8] T. Nishita and T. W. Sederberg and M. Kakimoto. Ray tracing trimmed rational surface patches. Siggraph 90: Proceedings of the 17th annual conference on Computer graphics and interactive techniques, , 1990, ACM Press. [9] Nicholas M. Patrikalakis and Takashi Maekawa. Shape Interrogation for Computer Aided Design and Manufacturing, 2002, Springer-Verlag. [10] Les Piegl and Wayne Tiller. The NURBS Book, 1995, Springer-Verlag. [11] N. F. Stewart, Science and computer science. ACM Computing Surveys (27), No. 1, 39-41,
Preserving computational topology by subdivision of quadratic and cubic Bézier curves
Computing (2007) DOI 10.1007/s00607-006-0208-9 Printed in The Netherlands Preserving computational topology by subdivision of quadratic and cubic Bézier curves E. L. F. Moore, T. J. Peters, and J. A. Roulier,
More informationReconstructing Surfaces Using Envelopes: Bridging the Gap between Theory and Practice
Reconstructing Surfaces Using Envelopes: Bridging the Gap between Theory and Practice Justin Bisceglio Blue Sky Studios, and University of Connecuticut, Department of Computer Science T.J. Peters University
More informationComputergrafik. Matthias Zwicker Universität Bern Herbst 2016
Computergrafik Matthias Zwicker Universität Bern Herbst 2016 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling 2 Piecewise Bézier curves Each
More informationComputergrafik. Matthias Zwicker. Herbst 2010
Computergrafik Matthias Zwicker Universität Bern Herbst 2010 Today Curves NURBS Surfaces Parametric surfaces Bilinear patch Bicubic Bézier patch Advanced surface modeling Piecewise Bézier curves Each segment
More informationThe Convex Hull of Rational Plane Curves
Graphical Models 63, 151 162 (2001) doi:10.1006/gmod.2001.0546, available online at http://www.idealibrary.com on The Convex Hull of Rational Plane Curves Gershon Elber Department of Computer Science,
More informationUntil now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple
Curves and surfaces Escaping Flatland Until now we have worked with flat entities such as lines and flat polygons Fit well with graphics hardware Mathematically simple But the world is not composed of
More informationMultipatched B-Spline Surfaces and Automatic Rough Cut Path Generation
Int J Adv Manuf Technol (2000) 16:100 106 2000 Springer-Verlag London Limited Multipatched B-Spline Surfaces and Automatic Rough Cut Path Generation S. H. F. Chuang and I. Z. Wang Department of Mechanical
More informationA second order algorithm for orthogonal projection onto curves and surfaces
A second order algorithm for orthogonal projection onto curves and surfaces Shi-min Hu and Johannes Wallner Dept. of Computer Science and Technology, Tsinghua University, Beijing, China shimin@tsinghua.edu.cn;
More informationGeometric Topology & Visualizing 1-Manifolds
Geometric Topology & Visualizing 1-Manifolds K. E. Jordan 1, L. E. Miller 2, T. J. Peters 3, and A. C. Russell 4 1 IBM Corporation, One Rogers St., Cambridge, MA 02142 kjordan@us.ibm.com 2 University of
More informationCurve and Surface Basics
Curve and Surface Basics Implicit and parametric forms Power basis form Bezier curves Rational Bezier Curves Tensor Product Surfaces ME525x NURBS Curve and Surface Modeling Page 1 Implicit and Parametric
More informationKnot Insertion and Reparametrization of Interval B-spline Curves
International Journal of Video&Image Processing and Network Security IJVIPNS-IJENS Vol:14 No:05 1 Knot Insertion and Reparametrization of Interval B-spline Curves O. Ismail, Senior Member, IEEE Abstract
More informationB-spline Curves. Smoother than other curve forms
Curves and Surfaces B-spline Curves These curves are approximating rather than interpolating curves. The curves come close to, but may not actually pass through, the control points. Usually used as multiple,
More informationLecture 25: Bezier Subdivision. And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10
Lecture 25: Bezier Subdivision And he took unto him all these, and divided them in the midst, and laid each piece one against another: Genesis 15:10 1. Divide and Conquer If we are going to build useful
More informationCurves and Curved Surfaces. Adapted by FFL from CSE167: Computer Graphics Instructor: Ronen Barzel UCSD, Winter 2006
Curves and Curved Surfaces Adapted by FFL from CSE167: Computer Graphics Instructor: Ronen Barzel UCSD, Winter 2006 Outline for today Summary of Bézier curves Piecewise-cubic curves, B-splines Surface
More informationNormals of subdivision surfaces and their control polyhedra
Computer Aided Geometric Design 24 (27 112 116 www.elsevier.com/locate/cagd Normals of subdivision surfaces and their control polyhedra I. Ginkel a,j.peters b,,g.umlauf a a University of Kaiserslautern,
More information2) For any triangle edge not on the boundary, there is exactly one neighboring
Triangulating Trimmed NURBS Surfaces Chang Shu and Pierre Boulanger Abstract. This paper describes techniques for the piecewise linear approximation of trimmed NURBS surfaces. The problem, called surface
More informationGenerating Tool Paths for Free-Form Pocket Machining Using z-buffer-based Voronoi Diagrams
Int J Adv Manuf Technol (1999) 15:182 187 1999 Springer-Verlag London Limited Generating Tool Paths for Free-Form Pocket Machining Using z-buffer-based Voronoi Diagrams Jaehun Jeong and Kwangsoo Kim Department
More informationDgp _ lecture 2. Curves
Dgp _ lecture 2 Curves Questions? This lecture will be asking questions about curves, their Relationship to surfaces, and how they are used and controlled. Topics of discussion will be: Free form Curves
More informationClosest Points, Moving Surfaces, and Algebraic Geometry
Closest Points, Moving Surfaces, and Algebraic Geometry Jan B. Thomassen, Pål H. Johansen, and Tor Dokken Abstract. This paper presents a method for computing closest points to a given parametric surface
More informationCurves and Surfaces. Chapter 7. Curves. ACIS supports these general types of curves:
Chapter 7. Curves and Surfaces This chapter discusses the types of curves and surfaces supported in ACIS and the classes used to implement them. Curves ACIS supports these general types of curves: Analytic
More informationDirect Rendering of Trimmed NURBS Surfaces
Direct Rendering of Trimmed NURBS Surfaces Hardware Graphics Pipeline 2/ 81 Hardware Graphics Pipeline GPU Video Memory CPU Vertex Processor Raster Unit Fragment Processor Render Target Screen Extended
More informationSolving Systems of Spline Equations: A Linear Programming-based Approach
Engineering, Test & Technology Boeing Research & Technology Solving Systems of Spline Equations: A Linear Programming-based Approach Thomas Grandine Senior Technical Fellow Support and Analytics Technology
More informationTowards Automatic Recognition of Fonts using Genetic Approach
Towards Automatic Recognition of Fonts using Genetic Approach M. SARFRAZ Department of Information and Computer Science King Fahd University of Petroleum and Minerals KFUPM # 1510, Dhahran 31261, Saudi
More informationProgressive Surface Modeling Based On 3D Motion Sketch
Progressive Surface Modeling Based On 3D Motion Sketch SHENGFENG IN, and DAVID K WRIGHT School of Engineering and Design Brunel University Uxbridge, Middlesex UB8 3PH UK Abstract: - This paper presents
More informationCurves and Surfaces 1
Curves and Surfaces 1 Representation of Curves & Surfaces Polygon Meshes Parametric Cubic Curves Parametric Bi-Cubic Surfaces Quadric Surfaces Specialized Modeling Techniques 2 The Teapot 3 Representing
More informationCentral issues in modelling
Central issues in modelling Construct families of curves, surfaces and volumes that can represent common objects usefully; are easy to interact with; interaction includes: manual modelling; fitting to
More informationComputational Geometry
Lecture 1: Introduction and convex hulls Geometry: points, lines,... Geometric objects Geometric relations Combinatorial complexity Computational geometry Plane (two-dimensional), R 2 Space (three-dimensional),
More informationFurther Graphics. Bezier Curves and Surfaces. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd
Further Graphics Bezier Curves and Surfaces Alex Benton, University of Cambridge alex@bentonian.com 1 Supported in part by Google UK, Ltd CAD, CAM, and a new motivation: shiny things Expensive products
More informationApproximation of 3D-Parametric Functions by Bicubic B-spline Functions
International Journal of Mathematical Modelling & Computations Vol. 02, No. 03, 2012, 211-220 Approximation of 3D-Parametric Functions by Bicubic B-spline Functions M. Amirfakhrian a, a Department of Mathematics,
More information15.10 Curve Interpolation using Uniform Cubic B-Spline Curves. CS Dept, UK
1 An analysis of the problem: To get the curve constructed, how many knots are needed? Consider the following case: So, to interpolate (n +1) data points, one needs (n +7) knots,, for a uniform cubic B-spline
More informationMonotone Paths in Geometric Triangulations
Monotone Paths in Geometric Triangulations Adrian Dumitrescu Ritankar Mandal Csaba D. Tóth November 19, 2017 Abstract (I) We prove that the (maximum) number of monotone paths in a geometric triangulation
More informationA NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION OF FLOW DOMAINS
6th European Conference on Computational Mechanics (ECCM 6) 7th European Conference on Computational Fluid Dynamics (ECFD 7) 11 15 June 2018, Glasgow, UK A NURBS-BASED APPROACH FOR SHAPE AND TOPOLOGY OPTIMIZATION
More informationRASTERIZING POLYGONS IN IMAGE SPACE
On-Line Computer Graphics Notes RASTERIZING POLYGONS IN IMAGE SPACE Kenneth I. Joy Visualization and Graphics Research Group Department of Computer Science University of California, Davis A fundamental
More informationLes Piegl Wayne Tiller. The NURBS Book. Second Edition with 334 Figures in 578 Parts. A) Springer
Les Piegl Wayne Tiller The NURBS Book Second Edition with 334 Figures in 578 Parts A) Springer CONTENTS Curve and Surface Basics 1.1 Implicit and Parametric Forms 1 1.2 Power Basis Form of a Curve 5 1.3
More informationand the crooked shall be made straight, and the rough ways shall be made smooth; Luke 3:5
ecture 8: Knot Insertion Algorithms for B-Spline Curves and Surfaces and the crooked shall be made straight, and the rough ways shall be made smooth; uke 3:5. Motivation B-spline methods have several advantages
More informationAdvanced Geometric Modeling CPSC789
Advanced Geometric Modeling CPSC789 Fall 2004 General information about the course CPSC 789 Advanced Geometric Modeling Fall 2004 Lecture Time and Place ENF 334 TR 9:30 10:45 Instructor : Office: MS 618
More informationComputer Graphics I Lecture 11
15-462 Computer Graphics I Lecture 11 Midterm Review Assignment 3 Movie Midterm Review Midterm Preview February 26, 2002 Frank Pfenning Carnegie Mellon University http://www.cs.cmu.edu/~fp/courses/graphics/
More informationCutting Force Simulation of Machining with Nose Radius Tools
International Conference on Smart Manufacturing Application April. 9-11, 8 in KINTEX, Gyeonggi-do, Korea Cutting Force Simulation of Machining with Nose Radius Tools B. Moetakef Imani 1 and N. Z.Yussefian
More informationRational Bezier Surface
Rational Bezier Surface The perspective projection of a 4-dimensional polynomial Bezier surface, S w n ( u, v) B i n i 0 m j 0, u ( ) B j m, v ( ) P w ij ME525x NURBS Curve and Surface Modeling Page 97
More informationModule 1 Lecture Notes 2. Optimization Problem and Model Formulation
Optimization Methods: Introduction and Basic concepts 1 Module 1 Lecture Notes 2 Optimization Problem and Model Formulation Introduction In the previous lecture we studied the evolution of optimization
More informationCurve Construction via Local Fitting
Curve Construction via Local Fitting Suppose we are given points and tangents Q k, and T k (k = 0,..., n), and a fitting tolerance ε. We want to fit this data with the minimum (in some sense) number of
More informationCOMPUTER AIDED GEOMETRIC DESIGN. Thomas W. Sederberg
COMPUTER AIDED GEOMETRIC DESIGN Thomas W. Sederberg January 31, 2011 ii T. W. Sederberg iii Preface This semester is the 24 th time I have taught a course at Brigham Young University titled, Computer Aided
More informationAn introduction to interpolation and splines
An introduction to interpolation and splines Kenneth H. Carpenter, EECE KSU November 22, 1999 revised November 20, 2001, April 24, 2002, April 14, 2004 1 Introduction Suppose one wishes to draw a curve
More informationFrom curves to surfaces. Parametric surfaces and solid modeling. Extrusions. Surfaces of revolution. So far have discussed spline curves in 2D
From curves to surfaces Parametric surfaces and solid modeling CS 465 Lecture 12 2007 Doug James & Steve Marschner 1 So far have discussed spline curves in 2D it turns out that this already provides of
More informationAdaptive Tessellation for Trimmed NURBS Surface
Adaptive Tessellation for Trimmed NURBS Surface Ma YingLiang and Terry Hewitt 2 Manchester Visualization Centre, University of Manchester, Manchester, M3 9PL, U.K. may@cs.man.ac.uk 2 W.T.Hewitt@man.ac.uk
More informationCurriki Geometry Glossary
Curriki Geometry Glossary The following terms are used throughout the Curriki Geometry projects and represent the core vocabulary and concepts that students should know to meet Common Core State Standards.
More information03 Vector Graphics. Multimedia Systems. 2D and 3D Graphics, Transformations
Multimedia Systems 03 Vector Graphics 2D and 3D Graphics, Transformations Imran Ihsan Assistant Professor, Department of Computer Science Air University, Islamabad, Pakistan www.imranihsan.com Lectures
More informationKeyword: Quadratic Bézier Curve, Bisection Algorithm, Biarc, Biarc Method, Hausdorff Distances, Tolerance Band.
Department of Computer Science Approximation Methods for Quadratic Bézier Curve, by Circular Arcs within a Tolerance Band Seminar aus Informatik Univ.-Prof. Dr. Wolfgang Pree Seyed Amir Hossein Siahposhha
More informationLocal Modification of Subdivision Surfaces Based on Curved Mesh
Local Modification of Subdivision Surfaces Based on Curved Mesh Yoshimasa Tokuyama Tokyo Polytechnic University tokuyama@image.t-kougei.ac.jp Kouichi Konno Iwate University konno@cis.iwate-u.ac.jp Junji
More informationNormals of subdivision surfaces and their control polyhedra
Normals of subdivision surfaces and their control polyhedra I. Ginkel, a, J. Peters b, and G. Umlauf a, a University of Kaiserslautern, Germany b University of Florida, Gainesville, FL, USA Abstract For
More informationDecomposition of the figure-8 knot
CHAPTER 1 Decomposition of the figure-8 knot This book is an introduction to knots, links, and their geometry. Before we begin, we need to define carefully exactly what we mean by knots and links, and
More informationDevelopment of Reverse Engineering System for Machine Engineering Using 3D Bit-map Data. Tatsuro Yashiki* and Tarou Takagi*
Development of Reverse Engineering System for Machine Engineering Using 3D Bit-map Data Tatsuro Yashiki* and Tarou Takagi* *Power & Industrial Systems R&D Laboratory, Hitachi, Ltd. Abstract In this paper,
More information3D Modeling Parametric Curves & Surfaces. Shandong University Spring 2013
3D Modeling Parametric Curves & Surfaces Shandong University Spring 2013 3D Object Representations Raw data Point cloud Range image Polygon soup Surfaces Mesh Subdivision Parametric Implicit Solids Voxels
More informationTexture Mapping using Surface Flattening via Multi-Dimensional Scaling
Texture Mapping using Surface Flattening via Multi-Dimensional Scaling Gil Zigelman Ron Kimmel Department of Computer Science, Technion, Haifa 32000, Israel and Nahum Kiryati Department of Electrical Engineering
More informationUNSTRUCTURED GRIDS ON NURBS SURFACES. The surface grid can be generated either in a parameter. surfaces. Generating grids in a parameter space is
UNSTRUCTURED GRIDS ON NURBS SURFACES Jamshid Samareh-Abolhassani 1 Abstract A simple and ecient computational method is presented for unstructured surface grid generation. This method is built upon an
More informationTrimming Local and Global Self-intersections in Offset Curves/Surfaces using Distance Maps
Trimming Local and Global Self-intersections in Offset Curves/Surfaces using Distance Maps Joon-Kyung Seong a Gershon Elber b, Myung-Soo Kim a,c a School of Computer Science and Engineering, Seoul National
More informationSome Thoughts on Visibility
Some Thoughts on Visibility Frédo Durand MIT Lab for Computer Science Visibility is hot! 4 papers at Siggraph 4 papers at the EG rendering workshop A wonderful dedicated workshop in Corsica! A big industrial
More informationCS123 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics 1/15
Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon
More informationComputer Graphics Curves and Surfaces. Matthias Teschner
Computer Graphics Curves and Surfaces Matthias Teschner Outline Introduction Polynomial curves Bézier curves Matrix notation Curve subdivision Differential curve properties Piecewise polynomial curves
More informationEngineering designs today are frequently
Basic CAD Engineering designs today are frequently constructed as mathematical solid models instead of solely as 2D drawings. A solid model is one that represents a shape as a 3D object having mass properties.
More information13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY
13.472J/1.128J/2.158J/16.940J COMPUTATIONAL GEOMETRY Lecture 23 Dr. W. Cho Prof. N. M. Patrikalakis Copyright c 2003 Massachusetts Institute of Technology Contents 23 F.E. and B.E. Meshing Algorithms 2
More informationFlank Millable Surface Design with Conical and Barrel Tools
461 Computer-Aided Design and Applications 2008 CAD Solutions, LLC http://www.cadanda.com Flank Millable Surface Design with Conical and Barrel Tools Chenggang Li 1, Sanjeev Bedi 2 and Stephen Mann 3 1
More informationDEVELOPMENT OF GEOMETRICAL MODELS OF HARD-ALPHA INCLUSIONS
DEVELOPMENT OF GEOMETRICAL MODELS OF HARD-ALPHA INCLUSIONS FOR ULTRASONIC ANALYSIS IN TITANIUM ALLOYS Brian Boyd, Chien-Ping Chiou, and Bruce Thompson Center for Non-Destructive Evaluation Ames, Iowa 50011
More informationRevision of Inconsistent Orthographic Views
Journal for Geometry and Graphics Volume 2 (1998), No. 1, 45 53 Revision of Inconsistent Orthographic Views Takashi Watanabe School of Informatics and Sciences, Nagoya University, Nagoya 464-8601, Japan
More informationComputer Graphics. Curves and Surfaces. Hermite/Bezier Curves, (B-)Splines, and NURBS. By Ulf Assarsson
Computer Graphics Curves and Surfaces Hermite/Bezier Curves, (B-)Splines, and NURBS By Ulf Assarsson Most of the material is originally made by Edward Angel and is adapted to this course by Ulf Assarsson.
More informationAlmost Curvature Continuous Fitting of B-Spline Surfaces
Journal for Geometry and Graphics Volume 2 (1998), No. 1, 33 43 Almost Curvature Continuous Fitting of B-Spline Surfaces Márta Szilvási-Nagy Department of Geometry, Mathematical Institute, Technical University
More informationIntroduction to the Mathematical Concepts of CATIA V5
CATIA V5 Training Foils Introduction to the Mathematical Concepts of CATIA V5 Version 5 Release 19 January 2009 EDU_CAT_EN_MTH_FI_V5R19 1 About this course Objectives of the course Upon completion of this
More informationAccelerated Ambient Occlusion Using Spatial Subdivision Structures
Abstract Ambient Occlusion is a relatively new method that gives global illumination like results. This paper presents a method to accelerate ambient occlusion using the form factor method in Bunnel [2005]
More information(Refer Slide Time: 00:02:24 min)
CAD / CAM Prof. Dr. P. V. Madhusudhan Rao Department of Mechanical Engineering Indian Institute of Technology, Delhi Lecture No. # 9 Parametric Surfaces II So these days, we are discussing the subject
More informationINF3320 Computer Graphics and Discrete Geometry
INF3320 Computer Graphics and Discrete Geometry More smooth Curves and Surfaces Christopher Dyken, Michael Floater and Martin Reimers 10.11.2010 Page 1 More smooth Curves and Surfaces Akenine-Möller, Haines
More informationCS-184: Computer Graphics
CS-184: Computer Graphics Lecture #12: Curves and Surfaces Prof. James O Brien University of California, Berkeley V2007-F-12-1.0 Today General curve and surface representations Splines and other polynomial
More informationCS337 INTRODUCTION TO COMPUTER GRAPHICS. Describing Shapes. Constructing Objects in Computer Graphics. Bin Sheng Representing Shape 9/20/16 1/15
Describing Shapes Constructing Objects in Computer Graphics 1/15 2D Object Definition (1/3) Lines and polylines: Polylines: lines drawn between ordered points A closed polyline is a polygon, a simple polygon
More informationNURBS: Non-Uniform Rational B-Splines AUI Course Denbigh Starkey
NURBS: Non-Uniform Rational B-Splines AUI Course Denbigh Starkey 1. Background 2 2. Definitions 3 3. Using NURBS to define a circle 4 4. Homogeneous coordinates & control points at infinity 9 5. Constructing
More informationBezier Curves, B-Splines, NURBS
Bezier Curves, B-Splines, NURBS Example Application: Font Design and Display Curved objects are everywhere There is always need for: mathematical fidelity high precision artistic freedom and flexibility
More informationLecture 11: Ray tracing (cont.)
Interactive Computer Graphics Ray tracing - Summary Lecture 11: Ray tracing (cont.) Graphics Lecture 10: Slide 1 Some slides adopted from H. Pfister, Harvard Graphics Lecture 10: Slide 2 Ray tracing -
More informationGeometric Modeling Mortenson Chapter 11. Complex Model Construction
Geometric Modeling 91.580.201 Mortenson Chapter 11 Complex Model Construction Topics Topology of Models Connectivity and other intrinsic properties Graph-Based Models Emphasize topological structure Boolean
More informationDrawing hypergraphs using NURBS curves
Drawing hypergraphs using NURBS curves Ronny Bergmann Institute of Mathematics University of Lu beck presentation at the Kolloquium der Institute fu r Mathematik und Informatik November 25th, 2009 Content
More informationEECS 487, Fall 2005 Exam 2
EECS 487, Fall 2005 Exam 2 December 21, 2005 This is a closed book exam. Notes are not permitted. Basic calculators are permitted, but not needed. Explain or show your work for each question. Name: uniqname:
More informationReparametrization of Interval Curves on Rectangular Domain
International Journal of Video&Image Processing and Network Security IJVIPNS-IJENS Vol:15 No:05 1 Reparametrization of Interval Curves on Rectangular Domain O. Ismail, Senior Member, IEEE Abstract The
More informationG 2 Interpolation for Polar Surfaces
1 G 2 Interpolation for Polar Surfaces Jianzhong Wang 1, Fuhua Cheng 2,3 1 University of Kentucky, jwangf@uky.edu 2 University of Kentucky, cheng@cs.uky.edu 3 National Tsinhua University ABSTRACT In this
More informationMA 323 Geometric Modelling Course Notes: Day 21 Three Dimensional Bezier Curves, Projections and Rational Bezier Curves
MA 323 Geometric Modelling Course Notes: Day 21 Three Dimensional Bezier Curves, Projections and Rational Bezier Curves David L. Finn Over the next few days, we will be looking at extensions of Bezier
More informationCurves & Surfaces. Last Time? Progressive Meshes. Selective Refinement. Adjacency Data Structures. Mesh Simplification. Mesh Simplification
Last Time? Adjacency Data Structures Curves & Surfaces Geometric & topologic information Dynamic allocation Efficiency of access Mesh Simplification edge collapse/vertex split geomorphs progressive transmission
More informationCURVILINEAR MESH GENERATION IN 3D
CURVILINEAR MESH GENERATION IN 3D Saikat Dey, Robert M. O'Bara 2 and Mark S. Shephard 2 SFA Inc. / Naval Research Laboratory, Largo, MD., U.S.A., dey@cosmic.nrl.navy.mil 2 Scientific Computation Research
More informationProperties of Blending Functions
Chapter 5 Properties of Blending Functions We have just studied how the Bernstein polynomials serve very nicely as blending functions. We have noted that a degree n Bézier curve always begins at P 0 and
More informationFall CSCI 420: Computer Graphics. 4.2 Splines. Hao Li.
Fall 2014 CSCI 420: Computer Graphics 4.2 Splines Hao Li http://cs420.hao-li.com 1 Roller coaster Next programming assignment involves creating a 3D roller coaster animation We must model the 3D curve
More information2D Spline Curves. CS 4620 Lecture 18
2D Spline Curves CS 4620 Lecture 18 2014 Steve Marschner 1 Motivation: smoothness In many applications we need smooth shapes that is, without discontinuities So far we can make things with corners (lines,
More informationMultimaterial Geometric Design Theories and their Applications
Multimaterial Geometric Design Theories and their Applications Hong Zhou, Ph.D. Associate Professor Department of Mechanical Engineering Texas A&M University-Kingsville October 19, 2011 Contents Introduction
More informationCS559 Computer Graphics Fall 2015
CS559 Computer Graphics Fall 2015 Practice Final Exam Time: 2 hrs 1. [XX Y Y % = ZZ%] MULTIPLE CHOICE SECTION. Circle or underline the correct answer (or answers). You do not need to provide a justification
More informationLecture 9: Introduction to Spline Curves
Lecture 9: Introduction to Spline Curves Splines are used in graphics to represent smooth curves and surfaces. They use a small set of control points (knots) and a function that generates a curve through
More informationEfficient Degree Elevation and Knot Insertion for B-spline Curves using Derivatives
Efficient Degree Elevation and Knot Insertion for B-spline Curves using Derivatives Qi-Xing Huang a Shi-Min Hu a,1 Ralph R Martin b a Department of Computer Science and Technology, Tsinghua University,
More informationGeometric Modeling for Rapid Prototyping and Tool Fabrication
Geometric Modeling for Rapid Prototyping and Tool Fabrication E. Levent Gursoz Lee E. Weiss Fritz B. Prinz The Engineering Design Research Center, and The Robotics Institute Carnegie Mellon University
More informationAn Efficient Visual Hull Computation Algorithm
An Efficient Visual Hull Computation Algorithm Wojciech Matusik Chris Buehler Leonard McMillan Laboratory for Computer Science Massachusetts institute of Technology (wojciech, cbuehler, mcmillan)@graphics.lcs.mit.edu
More informationA fast approximation of the Voronoi diagram for a set of pairwise disjoint arcs
A fast approximation of the Voronoi diagram for a set of pairwise disjoint arcs Dmytro Kotsur Taras Shevchenko National University of Kyiv 64/13, Volodymyrska, st., Kyiv, Ukraine dkotsur@gmail.com Vasyl
More informationMODERN DESCRIPTIVE GEOMETRY SUPPORTED BY 3D COMPUTER MODELLING
International Conference on Mathematics Textbook Research and Development 2014 () 29-31 July 2014, University of Southampton, UK MODERN DESCRIPTIVE GEOMETRY SUPPORTED BY 3D COMPUTER MODELLING Petra Surynková
More informationGeometric and Solid Modeling. Problems
Geometric and Solid Modeling Problems Define a Solid Define Representation Schemes Devise Data Structures Construct Solids Page 1 Mathematical Models Points Curves Surfaces Solids A shape is a set of Points
More informationGeometric Modeling Systems
Geometric Modeling Systems Wireframe Modeling use lines/curves and points for 2D or 3D largely replaced by surface and solid models Surface Modeling wireframe information plus surface definitions supports
More informationApproaching an Approximation of Freeform Surfaces by Developable Strips using Apparent Contours.
Proceedings of Bridges 2013: Mathematics, Music, Art, Architecture, Culture Approaching an Approximation of Freeform Surfaces by Developable Strips using Apparent Contours. Francisco González-Quintial,
More informationAdvanced Graphics. Beziers, B-splines, and NURBS. Alex Benton, University of Cambridge Supported in part by Google UK, Ltd
Advanced Graphics Beziers, B-splines, and NURBS Alex Benton, University of Cambridge A.Benton@damtp.cam.ac.uk Supported in part by Google UK, Ltd Bezier splines, B-Splines, and NURBS Expensive products
More informationEvaluating the knot vector to synthesize the cam motion using NURBS
Evaluating the knot vector to synthesize the cam motion using NURBS T.T.N. Nguyen 1, S. Kurtenbach 2, M. Hüsing 3 and B. Corves 4 Department of Mechanism Theory and Dynamics of Machines, RWTH Aachen University,
More informationShape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include
Shape Representation Basic problem We make pictures of things How do we describe those things? Many of those things are shapes Other things include motion, behavior Graphics is a form of simulation and
More information