Visualizing High-Order Surface Geometry

Similar documents
Minimizing Curvature Variation for Aesthetic Surface Design

Construction and smoothing of triangular Coons patches with geodesic boundary curves

COMP30019 Graphics and Interaction Transformation geometry and homogeneous coordinates

The Geometric Primitive MatOrus Francisco A. Madera 1, Jorge Madera-Valdez 2

Graphics and Interaction Transformation geometry and homogeneous coordinates

Flank Millable Surface Design with Conical and Barrel Tools

MEI GeoGebra Tasks for AS Pure

Curve and Surface Basics

MATHEMATICS FOR ENGINEERING TUTORIAL 5 COORDINATE SYSTEMS

Honors Precalculus: Solving equations and inequalities graphically and algebraically. Page 1

Computer Vision. Coordinates. Prof. Flávio Cardeal DECOM / CEFET- MG.

MEI Desmos Tasks for AS Pure

CS 523: Computer Graphics, Spring Shape Modeling. Differential Geometry of Surfaces

Trigonometric Graphs Dr. Laura J. Pyzdrowski

ON THE GEODESIC TORSION OF A TANGENTIAL INTERSECTION CURVE OF TWO SURFACES IN R Introduction

Vector Addition. Qty Item Part Number 1 Force Table ME-9447B 1 Mass and Hanger Set ME Carpenter s level 1 String

Review of Trigonometry

Foundations for Functions Knowledge and Skills: Foundations for Functions Knowledge and Skills:

DD2429 Computational Photography :00-19:00

Graphing Trig Functions - Sine & Cosine

To graph the point (r, θ), simply go out r units along the initial ray, then rotate through the angle θ. The point (1, 5π 6

Texture. Outline. Image representations: spatial and frequency Fourier transform Frequency filtering Oriented pyramids Texture representation

1. Carlos A. Felippa, Introduction to Finite Element Methods,

MATHEMATICS 105 Plane Trigonometry

ON THE GEODESIC TORSION OF A TANGENTIAL INTERSECTION CURVE OF TWO SURFACES IN R Introduction

Sung-Eui Yoon ( 윤성의 )

Section 10.1 Polar Coordinates

Dr. Allen Back. Nov. 19, 2014

Analysis of Euler Angles in a Simple Two-Axis Gimbals Set

Math Analysis Chapter 1 Notes: Functions and Graphs

A GENTLE INTRODUCTION TO THE BASIC CONCEPTS OF SHAPE SPACE AND SHAPE STATISTICS

Planar quad meshes from relative principal curvature lines

Algebra II. Slide 1 / 162. Slide 2 / 162. Slide 3 / 162. Trigonometric Functions. Trig Functions

Trigonometry Curriculum Guide Scranton School District Scranton, PA

MATH 2400, Analytic Geometry and Calculus 3

05 - Surfaces. Acknowledgements: Olga Sorkine-Hornung. CSCI-GA Geometric Modeling - Daniele Panozzo

Shape Control of Cubic H-Bézier Curve by Moving Control Point

MTH 120 Fall 2007 Essex County College Division of Mathematics Handout Version 6 1 October 3, 2007

Coordinate Transformations in Advanced Calculus

To graph the point (r, θ), simply go out r units along the initial ray, then rotate through the angle θ. The point (1, 5π 6. ) is graphed below:

Circular Arc Approximation by Quartic H-Bézier Curve

Object Representation Affine Transforms. Polygonal Representation. Polygonal Representation. Polygonal Representation of Objects

given B-spline surface. As described earlier, if the points at which curvature minimas or

Almost Curvature Continuous Fitting of B-Spline Surfaces

CS-184: Computer Graphics. Today

Limits and Continuity: section 12.2

Algebra II Trigonometric Functions

Math12 Pre-Calc Review - Trig

Calculus III. Math 233 Spring In-term exam April 11th. Suggested solutions

Using Perspective Rays and Symmetry to Model Duality

(Refer Slide Time: 00:02:24 min)

A lg e b ra II. Trig o n o m e tric F u n c tio

FURTHER MATHS. WELCOME TO A Level FURTHER MATHEMATICS AT CARDINAL NEWMAN CATHOLIC SCHOOL

Computer Graphics Curves and Surfaces. Matthias Teschner

Interpolating Splines: Which is the fairest of them all?

CSC418 / CSCD18 / CSC2504

1 We plan to describe the construction, by straightedge and compass, of certain geodesic triangles in the hyperbolic plane.

Dr. Allen Back. Nov. 21, 2014

Shape Modeling and Geometry Processing

Aliasing. Can t draw smooth lines on discrete raster device get staircased lines ( jaggies ):

Chapter 6. Curves and Surfaces. 6.1 Graphs as Surfaces

SOLVING PARTIAL DIFFERENTIAL EQUATIONS ON POINT CLOUDS

62 Basilio Bona - Dynamic Modelling

Precalculus, Quarter 2, Unit 2.1. Trigonometry Graphs. Overview

Optimal (local) Triangulation of Hyperbolic Paraboloids

5/27/12. Objectives. Plane Curves and Parametric Equations. Sketch the graph of a curve given by a set of parametric equations.

Preliminaries: Size Measures and Shape Coordinates

Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ x + 5y + 7z 9x + 3y + 11z

+ i a y )( cosφ + isinφ) ( ) + i( a x. cosφ a y. = a x

Math Analysis Chapter 1 Notes: Functions and Graphs

CLEP Pre-Calculus. Section 1: Time 30 Minutes 50 Questions. 1. According to the tables for f(x) and g(x) below, what is the value of [f + g]( 1)?

Experiments on Animated Visual Forms

CW High School. Advanced Math A. 1.1 I can make connections between the algebraic equation or description for a function, its name, and its graph.

16.6. Parametric Surfaces. Parametric Surfaces. Parametric Surfaces. Vector Calculus. Parametric Surfaces and Their Areas

Introduction p. 1 What Is Geometric Modeling? p. 1 Computer-aided geometric design Solid modeling Algebraic geometry Computational geometry

A DH-parameter based condition for 3R orthogonal manipulators to have 4 distinct inverse kinematic solutions

Adding vectors. Let s consider some vectors to be added.

CS 523: Computer Graphics, Spring Differential Geometry of Surfaces

This blog addresses the question: how do we determine the intersection of two circles in the Cartesian plane?

DOWNLOAD PDF BIG IDEAS MATH VERTICAL SHRINK OF A PARABOLA

February 2017 (1/20) 2 Piecewise Polynomial Interpolation 2.2 (Natural) Cubic Splines. MA378/531 Numerical Analysis II ( NA2 )

CS-184: Computer Graphics

IMECE FUNCTIONAL INTERFACE-BASED ASSEMBLY MODELING

Short on camera geometry and camera calibration

Computer Graphics. Lecture 2. Doç. Dr. Mehmet Gokturk

Industrial Robots : Manipulators, Kinematics, Dynamics

Geometric Primitives. Chapter 5

MATHEMATICS Curriculum Grades 10 to 12

Constructing Blending Surfaces for Two Arbitrary Surfaces

Outcomes List for Math Multivariable Calculus (9 th edition of text) Spring

Summer Review for Students Entering Pre-Calculus with Trigonometry. TI-84 Plus Graphing Calculator is required for this course.

Until now we have worked with flat entities such as lines and flat polygons. Fit well with graphics hardware Mathematically simple

5-2 Verifying Trigonometric Identities

Exam 3 SCORE. MA 114 Exam 3 Spring Section and/or TA:

CS 285 Final Project - Design, Modeling and Fabrication of the Möbius Gear

Variational Design and Fairing of Spline Surfaces

MATH STUDENT BOOK. 12th Grade Unit 4

MEI GeoGebra Tasks for A2 Core

Lagrange Multipliers and Problem Formulation

The Humble Tetrahedron

Transcription:

1 Computer-Aided Design and Applications 2009 CAD Solutions, LLC http://www.cadanda.com Visualizing High-Order Surface Geometry Pushkar P. Joshi 1,2 and Carlo H. Séquin 2 1 Adobe Systems Inc., pushkarj@adobe.com 2 University of California, Berkeley, sequin@cs.berkeley.edu ABSTRACT We have derived parameters that describe the higher-order geometric behavior of smooth surfaces. Our parameters are similar in spirit to the principal directions and principal curvatures that succinctly capture second-order shape behavior. We derive our parameters from a cylindrical Fourier decomposition around the surface normal. We present a visualization program for studying the influence of the various terms of different degrees on the shape of the local neighborhood of a surface point. We display a small surface patch that is controlled by two sets of parameters: One set is a simple polynomial description of the surface geometry in Cartesian coordinates. The other one is a set of Fourier components grouped by angular frequency and by their phase shifts. Manipulating the values in one parameter set changes the geometry of the patch and also updates the parameter values of the other set. Keywords: principal curvature, higher-order shape parameters, Fourier analysis of geometry, interactive visualization. DOI: 10.3722/cadaps.2009.xxx-yyy 1. INTRODUCTION The geometric neighborhood of a point on a smooth surface is commonly studied and readily understood up to second order. Analysis of the zero th -order (position) and first-order (tangent) shape needs only an elementary knowledge of geometry. Most courses and books on differential geometry give a detailed, visual exposition of second-order geometric concepts like mean curvature, Gaussian curvature, principal curvatures and their directions. As a result, up to second-order, the shape of a surface point can be intuitively expressed using simple geometric primitives. For example, we can characterize the second-order shape of a surface point as elliptic, parabolic, or hyperbolic simply by querying the sign of Gaussian curvature at that point. This characterization of geometric analysis has resulted in a widespread intuitive understanding of second-order shape behavior. Beyond second order, an equivalent understanding of the shape of a surface point is rare. Researchers solve geometric problems involving higher-order terms by using a parameterization-dependent tensor analysis of the surface behavior. For example, to study surface behavior up to third order, Mehlum and Tarrou [5] build a function that yields the derivative of normal curvature in any specified direction. Similarly, Maekawa et al. [4] solve a cubic equation to produce the directions that have local maxima or minima in curvature variation. While such third-order tensor analysis yields accurate information for specific directions, it is difficult to obtain a quick, intuitive understanding of the entire third-order shape at a surface point in question.

2 The recent Ph.D. thesis by P. P. Joshi [2] shows that all the third-order shape behavior at a surface point can be succinctly expressed using only four geometrically intuitive, parameterizationindependent parameters. In order to study the various parameters and to demonstrate their respective influence on surface geometry, we developed an interactive visualization program. Our program displays a small surface patch centered at the point of analysis, and shows the different shapes achieved under the influence of different combinations of shape parameters. In particular we provide two different ways to specify the geometry of that surface patch. On the one hand, we describe it as a complete polynomial expression that includes all terms up to third order (an extension to higher-order terms is currently under way). Alternatively, the same geometry is described as a set of angular Fourier components around the surface normal at the given point. Either one of these two parameter sets can be adjusted interactively through a bank of sliders. As one set of parameter values is modified, the other set of parameter values is updated appropriately. The few users who have used this visualization program so far all have felt that it greatly enhanced their understanding of higherorder surface geometry. This paper describes the visualization tool that we built to study high-order surface behavior and to observe the high-order basis shapes. The mathematical derivations that yield these basis shapes are presented in Chapter 3 ( Intuitive Exposition of Third-Order Surface Behavior ) of the thesis [2]. 2. FOURIER ANALYSIS Our program currently displays shape behavior up to third order. We start by constructing a polynomial height field representation of the local neighborhood of the point of analysis. We first build an orthonormal x-y-z coordinate frame centered at the surface point. At any location (x,y), the height (z) is a function of x and y: z(x,y) = Jx 3 + Iy 3 + Hx 2 y + Gxy 2 + Fx 2 + Ey 2 + Dxy + Cx + By + A By varying the parameters A through J, we can change the shape of this surface patch. Obviously, parameters J, I, H, and G control the third-order shape, F, E, D control the second-order shape, C and B control the first-order shape, and A controls the zero th -order shape. For simplicity, and without loss of generality, the point of analysis is placed at the origin (0,0) of the polynomial patch. While the parameters A through J allow us to completely control the shape of the surface patch, they are dependent on the user-defined x-y coordinate frame of the patch. Changing the coordinate frame may change A through J, even though the shape may not have changed. As a result, we argue that the parameters A through J are not the purely geometric, intuitive parameters we seek. As was shown in a recent thesis [2], the shape of the local neighborhood of a surface point can be expressed more generically (up to any order) as a sum of angular Fourier components extracted in a cylindrical coordinate system around the z-axis. The second-order behavior is controlled by three parameters. Assuming for the moment that the three parameters A, B, C are all zero, so that the cylinder axis of our Fourier analysis coincides with the surface normal, the three parameters D, E, and F alone will define second-order behavior. Alternatively that same behavior can be described by three Fourier components: a constant term (F2_0) with no angular dependency, which characterizes mean curvature; and a pair of sine and cosine terms with two complete periods around the z-axis that together describe the undulating behavior of a saddle at the point of interest. See the top row of Figure 1 for a graphical depiction, and [2] for the algebraic proof. Typically these two terms are combined into a single Fourier term with maximum amplitude (F2_2) and a phase-shift term that characterizes the direction in which that maximum occurs (one of the principal directions). The principal curvatures then can be expressed as k1 = F2_0 + F2_2 and k2 = F2_0 F2_2. We have found a way to capture third-order behavior in a similar manner. In essence, the third-order shape function characterizes the derivative of normal curvature. If all the parameters A through F are

3 set to zero, then the four parameters G, H, I, and J specify pure third-order behavior. Carrying out the same angular Fourier analysis around the z-axis as above, we find four relevant components: two with a single period around the z-axis, and two more with three periods each. By combining the sine and cosine terms with the same periodicity, we can characterize the whole third-order system (Fig. 1, bottom row) with two amplitudes (F3_1, F3_3) and their corresponding phase shifts (α, β). It is convenient to reference the maximum direction of F3_1 (expressed by α ) with respect to a direction specified by the user, and to reference the maximum direction of F3_3 (expressed by β ) with respect to the direction of F3_1. See the thesis [2] for the mathematical details. Fig. 1: The top row shows the basis functions for second order shape: F2_0 and F2_2. All second-order shapes are scaled and rotated combinations of these two shapes. Similarly, the bottom row shows the basis functions for third-order shape: F3_1 and, F3_3. Once this decomposition principle is understood, it is clear how it can be extended to higher order terms, and what we can expect to find there. For the fourth-order characterization we will need five additional parameters: K, L, M, N, O in the Cartesian setting, and they will transform into an additional constant Fourier term (F4_0), another two-period term (F4_2), and a new four-period term (F4_4); the latter two Fourier components are both associated with an angular direction parameter, each of which can again be referenced in the same way as the two direction parameters (α, β). Every next-higher-order term will require one more parameter to fully characterize the new generic undulations that will be possible at that degree of a polynomial surface. 3. USER INTERFACE A screenshot of the visualization program is shown in Figure 2. The surface patch whose shape we want to study is displayed in the middle, centered at the point of analysis (which is shown as a small sphere). The shape is controlled independently by two sets of sliders. The sliders on the LEFT control

4 the polynomial parameters A through J and thus specify the height of the surface patch above the rectangular domain in a Cartesian coordinate system. The sliders on the RIGHT control the amplitude of the Fourier components and their phase-shifts around the z-axis. The sliders on the right have four parameters (F3_1, α, F3_3, β ) to control the third-order shape, three parameters (F2_0, F2_2, γ ) to control the second-order shape, and two parameters (F1_1, δ ) to control the first-order shape. (As explained in Section 4, γ and δ denote the phase-shifts of the second- and first-order Fourier components.) The shape of the surface patch can be controlled by either set of parameters. As we change one set of parameters, the sliders corresponding to the other set change simultaneously. In this way, we can readily see the relationship between the two different representations. Fig. 2: The user interface for our visualization program. The sliders on the LEFT describe a polynomial height field over a rectangular domain in a Cartesian coordinate system. The sliders on the RIGHT describe the same patch in terms of angular Fourier components around the z- axis. The two sets of parameter values are coupled, so that they both always describe the same geometry, regardless of which slider bank gets manipulated. In addition to the sliders on each side of the surface patch, our visualization program offers a number of optional display features. For example, using keyboard hotkeys or menu item selections, we can toggle the display of: 1. The second-order surface: With the second-order surface overlaid on the third-order surface, we can spot the differences between the two surfaces and understand the types of shape changes possible by manipulating the third-order shape parameters. See Figure 3. 2. Fourier frame directions: Arrows corresponding to the directions of the peaks and troughs of the Fourier shape components are useful for understanding the orientation of the Fourier shape components and also point out the effects of changing phase-shift shape parameters like α, β. See Figure 4.

5 Fig. 3: The quadratic surface at the point of analysis (plain blue) is shown simultaneously with the cubic surface (ruled red) to highlight the difference between the second-order and thirdorder shape and the extent with which the third-order parameters can affect the surface shape. Fig. 4: The orange and blue (horizontal) arrows indicate, respectively, the directions corresponding to the maxima of the first (F3_1) and third (F3_3) Fourier component of thirdorder shape. The red (vertical) line indicates the direction of the Z axis (that measures height). 4. IMPLEMENTATION The surface patch is rendered using OpenGl and the user interface widgets (sliders, menu items, keyboard shortcuts) are built using the Fast Light Toolkit (FLTK). The shape of the surface patch is stored by the parameters A through J. Whenever a user changes any of the parameters from one set, we update the values of the other set of sliders. We convert the height equation into polar coordinates: z(r, θ) = r 3 [ J cos 3 θ + I sin 3 θ + H cos 2 θ sinθ + G cosθ sin 2 θ ] + r 2 [ F cos 2 θ + E sin 2 θ + D cosθ sinθ ] + r [ C cosθ + B sinθ ] + A

6 We can also express the height as a function of the amplitudes and phase shifts of the Fourier components: z(r, θ) = r 3 [ F3_1 cos(θ + α) + F3_3 cos3(θ + α + β) ] + r 2 [ F2_0 + F2_2 cos2(θ + γ) ] + r [ F1_1 cos(θ + δ) ] + F0_0 By expanding trigonometric identities and grouping and comparing coefficients, we can obtain the Fourier components as a function of the parameters A through J and vice versa. In the related thesis [2], we provide explicit formulae for converting between the third-order parameters (J, I, H, G to F3_1, F3_3, α, β and vice versa). 5. CONCLUSIONS Using our visualization program, we were able to visualize the exact basis functions that compose surface shapes. Since the basis functions are independent of the surface parameterization and are purely geometric in nature, visualizing their combinations allowed us to develop a strong intuition for the types of shapes that can be formed at a given order. The question of how to best characterize higher-order surface behavior was raised when we were trying to understand how many different, linearly independent functionals that measure curvature variation could be formulated. The first functional with curvature variation terms was introduced by Moreton and Séquin [6] and focused on the inline derivative of normal curvature. Mehlum and Tarrou [5] and Joshi and Séquin [3] introduced two other functionals that considered curvature derivatives in different directions. Gravesen [1] formulated 18 functionals that contain third-order terms. It was unclear which of these different functionals were contained in the minimal set of basis functionals, and which were simply combinations of the functionals from that minimal set. In the thesis [2] we show how a number of popular third-order functionals simplify down to terms involving F3_1 and F3_3. In fact, we show that based on our Fourier shape parameters, we can formulate a complete set of basis functional components, which can then be combined linearly to form all other third-order functionals. We also show that the functional proposed by Mehlum and Tarrou [5] is a complete third-order functional in the sense that other functionals that measure third-order behavior produce information that is measured also by the Mehlum-Tarrou functional. REFERENCES [1] Gravesen, J.; Ungstrup, M.: Constructing invariant fairness measures for surfaces. Advances in Computational Mathematics 17 (1), 2001, 67 88. [2] Joshi, P.: Minimizing curvature variation for aesthetic surface design. Ph.D. thesis, Oct 2008. EECS Department, University of California, Berkeley. http://www.eecs.berkeley.edu/pubs/techrpts /2008/EECS-2008-129.html [3] Joshi, P.; Séquin, C. H.: Energy minimizers for curvature-based surface functionals. Computer- Aided Design and Applications 4 (5), 2007, 607 617 [4] Maekawa, T.; Wolter, F.; Patrikalakis, N.: Umbilics and lines of curvature for shape interrogation. Computer-Aided Geometric Design 13 (2), 1996, 133 161. [5] Mehlum, E.; Tarrou, C.: Invariant smoothness measures for surfaces. Advances in Computational Mathematics 8 (1), 1998, 49 63. [6] Moreton, H.; Séquin, C. H.: Functional optimization for fair surface design. In: ACM SIGGRAPH 1992, pp. 167 176