Employing Pythagorean Hodograph Curves for Artistic Patterns Conference of PhD Students in Computer Science June 29 - July 2, 2010 Szeged, Hungary Gergely.

Slides:



Advertisements
Similar presentations
Arc-length computation and arc-length parameterization
Advertisements

Splines I – Curves and Properties
A control polygon scheme for design of planar PH quintic spline curves Francesca Pelosi Maria Lucia Sampoli Rida T. Farouki Carla Manni Speaker:Ying.Liu.
Parametric Curves Ref: 1, 2.
Chapter 9: Vector Differential Calculus Vector Functions of One Variable -- a vector, each component of which is a function of the same variable.
© University of Wisconsin, CS559 Spring 2004
2002 by Jim X. Chen: Bezier Curve Bezier Curve.
Lecture 10 Curves and Surfaces I
Geometric Modeling Notes on Curve and Surface Continuity Parts of Mortenson, Farin, Angel, Hill and others.
ICS 415 Computer Graphics Bézier Splines (Chapter 8)
CS 445/645 Fall 2001 Hermite and Bézier Splines. Specifying Curves Control Points –A set of points that influence the curve’s shape Knots –Control points.
© University of Wisconsin, CS559 Spring 2004
CS 445 / 645 Introduction to Computer Graphics Lecture 22 Hermite Splines Lecture 22 Hermite Splines.
1 Introduction Curve Modelling Jack van Wijk TU Eindhoven.
Interpolation to Data Points Lizheng Lu Oct. 24, 2007.
Dr. S.M. Malaek Assistant: M. Younesi
08/30/00 Dinesh Manocha, COMP258 Hermite Curves A mathematical representation as a link between the algebraic & geometric form Defined by specifying the.
Splines II – Interpolating Curves
1Notes  Assignment 0 is being marked  Textbook reference for arc-length parameterization:  Section 3.2.
Week 4 : Curves Topics: parametric curves, Bezier curves, Hermite curves, b-splines/NURBS curves, NURBS surfaces.
Offset of curves. Alina Shaikhet (CS, Technion)
Curves Locus of a point moving with one degree of freedom
Cubic Bezier and B-Spline Curves
Curves Mortenson Chapter 2-5 and Angel Chapter 9
Drawing Parametric Curves Jean-Paul Mueller. Curves - The parametric form of a curve expresses the value of each spatial variable for points on the curve.
ENDS 375 Foundations of Visualization Geometric Representation 9/30/04.
Modelling: Curves Week 11, Wed Mar 23
RASTER CONVERSION ALGORITHMS FOR CURVES: 2D SPLINES 2D Splines - Bézier curves - Spline curves.
University of British Columbia CPSC 414 Computer Graphics © Tamara Munzner 1 Curves Week 13, Mon 24 Nov 2003.
Solving Inequalities We can solve inequalities just like equations, with the following exception: Multiplication or division of an inequality by a negative.
Splines III – Bézier Curves
Curve Modeling Bézier Curves
2010 Asian Conference on Design & Digital Engineering Fairing spline curves: a thorough and precise criteria and practical algorithm Xiaoguang Han, Ligang.
11/19/02 (c) 2002, University of Wisconsin, CS 559 Last Time Many, many modeling techniques –Polygon meshes –Parametric instancing –Hierarchical modeling.
CS 376 Introduction to Computer Graphics 04 / 23 / 2007 Instructor: Michael Eckmann.
Surface modeling through geodesic Reporter: Hongyan Zhao Date: Apr. 18th
Algebraic geometric nd geometric modeling 2006 Approximating Clothoids by Bezier curves Algebraic geometric and geometric modeling, September 2006, Barcelona.
V. Space Curves Types of curves Explicit Implicit Parametric.
Curves.
Vector Computer Graphic. Vector entities Line Circle, Ellipse, arc,… Curves: Spline, Bezier’s curve, … … Areas Solids Models.
Evolution-based least-squares fitting using Pythagorean hodograph spline curves Speaker: Ying.Liu November
Quadratic Surfaces. SPLINE REPRESENTATIONS a spline is a flexible strip used to produce a smooth curve through a designated set of points. We.
Gergely Klár, Gábor Valasek
Curves. First of all… You may ask yourselves “What did those papers have to do with computer graphics?” –Valid question Answer: I thought they were cool,
Ship Computer Aided Design MR 422. Geometry of Curves 1.Introduction 2.Mathematical Curve Definitions 3.Analytic Properties of Curves 4.Fairness of Curves.
CS 376 Introduction to Computer Graphics 04 / 25 / 2007 Instructor: Michael Eckmann.
Rational curves interpolated by polynomial curves Reporter Lian Zhou Sep
04/18/02(c) 2002 University of Wisconsin Last Time Hermite Curves Bezier Curves.
L5 – Curves in GIS NGEN06 & TEK230: Algorithms in Geographical Information Systems by: Sadegh Jamali (source: Lecture notes in GIS, Lars Harrie) 1 L5-
11/6/ :55 Graphics II Introduction to Parametric Curves and Surfaces Session 2.
Greg Humphreys CS445: Intro Graphics University of Virginia, Fall 2003 Parametric Curves & Surfaces Greg Humphreys University of Virginia CS 445, Spring.
Splines I – Curves and Properties based on: Michael Gleicher Curves, chapter 15 in Fundamentals of Computer Graphics, 3 rd ed. (Shirley & Marschner) Slides.
CSCE 441: Keyframe Animation/Smooth Curves (Cont.) Jinxiang Chai.
CSCE 441: Keyframe Animation/Smooth Curves (Cont.) Jinxiang Chai.
(c) 2002 University of Wisconsin
Designing Parametric Cubic Curves 1. 2 Objectives Introduce types of curves ­Interpolating ­Hermite ­Bezier ­B-spline Analyze their performance.
MA2213 Lecture 2 Interpolation.
CS559 – Curves Lecture These are course notes (not used as slides) Written by Mike Gleicher, Oct Updates Oct 2006, 2007 Updates Oct 2008 © 2005 Michael.
Ship Computer Aided Design
Foundations of Computer Graphics (Spring 2012) CS 184, Lecture 12: Curves 1
Rendering Bezier Curves (1) Evaluate the curve at a fixed set of parameter values and join the points with straight lines Advantage: Very simple Disadvantages:
Curves University of British Columbia CPSC 314 Computer Graphics Jan-Apr 2013 Tamara Munzner.
CS552: Computer Graphics Lecture 19: Bezier Curves.
Introduction to Parametric Curve and Surface Modeling.
CSCI480/582 Lecture 9 Chap.2.2 Cubic Splines – Hermit and Bezier Feb, 11, 2009.
© University of Wisconsin, CS559 Spring 2004
Spline Interpolation Class XVII.
Implicit Functions Some surfaces can be represented as the vanishing points of functions (defined over 3D space) Places where a function f(x,y,z)=0 Some.
CSCE 441: Keyframe Animation/Smooth Curves (Cont.)
Introduction to Parametric Curve and Surface Modeling
Presentation transcript:

Employing Pythagorean Hodograph Curves for Artistic Patterns Conference of PhD Students in Computer Science June 29 - July 2, 2010 Szeged, Hungary Gergely Klár, Gábor Valasek Eötvös Loránd University Faculty of Informatics

Goal Create a tool to aid the design of aesthetical, fair curves In particular design element creator for vines, swirls, swooshes and floral components

Previous work Floral components are popular elements in both ornamental and contemporary abstract design Tools can aid among other things: ◦ Generation of ornamental elements ◦ Generation of ornamental patterns

Previous work Plants generated with L-systems, proposed by Prusinkiewicz and Lindenmayer

Previous work Wong et. al. proposed a method for filling a region of interest with ornaments using proxy objects that can be replaced by arbitrary ornamental elements

Previous work Xu and Mould created ornamental patters by simulating a charged particle's movement in a magnetic field (magnetic curves)

Our focus We concentrate on using polynomial curves for element design Let us presume that a pleasing curve has a smooth and monotone curvature  Farin's definition:  A curve is fair if its curvature plot is continuous and consists of only a few monotone pieces  A fair curve should only have curvature extrema where the designer explicitly states

Our focus To satisfy the fairness conditions we use G2 splines, that consist of spiral segments A spiral is a curved line segment whose curvature varies monotonically with arc- length

Designer control An intuitive way to control our curves is required Use hiearchy of circles:

Designer control – an alternative If we let the user specify the curve segment’s starting- and endpoints on the control circles, we can formulate the problem as geometric Hermite interpolation

Designer control – an alternative Given are position, tangent, and curvature data at each the endpoint Find a Bézier curve which reconstructs these quantities at it’s endpoints These are 2x4 scalar constraints on each segment Position: 2 scalar Tangent: 1 scalar Curvature: 1 scalar

Designer control – an alternative Cubic Bézier solution for GH A cubic Bézier curve has 8 scalar degrees of freedom A quadratic equation system results from

Designer control – an alternative Cubic Bézier solution for GH With appropriate geometric constraints on position, tangent and curvature the following system has positive real roots Resulting curve is not a spiral

Designer control Let us use Pythagorean Hodograph spirals for the transition curves curvecurve’s hodograph

Let the parameterization be such that For some integral polynomial The arc-length can be expressed in closed-form Pythagorean Hodographs

Theorem: the Pythagorean condition for polynomials holds if and only if they can be expressed in terms of other polynomials as where u(t) and v(t) are relative primes. Pythagorean Hodographs

PH curves’ hodographs satisfy: PH curves of degree n have n+3 degrees of freedom General polynomials of degree n have 2n+2 degrees of freedom

Pythagorean Hodographs Arc-length is a polynomial Offset of a degree n PH curve is a rational polynomial of degree 2n-1 For practical usage ◦ Cubic PH curves cannot have an inflection point ◦ We use quintic PH curves

Method Let the user create a hierarchy of control circles Create spiral segments between a node and its descendants ◦ Three cases are possible:  Circles can be connected by an S-shaped circle-to- circle curve  Circles can be connected by a C-shaped circle-in- circle curve  The circles cannot be connected

Circle-to-circle transition The circles have to be non-touching and non-overlapping We used the work of Walton and Meek to define the quintic PH curve’s control points

Circle-to-circle transition

The circle centres have to be within a certain distance (depending on their radii) We have to solve Where

Circle-in-circle transition A fully contained circle is joined to its ancestor if such transition is possible The conditions and the derivation of control points can be found in Habib and Sakai’s work

Circle-in-circle transition

Constraints on the radius of the smaller circle and its distance from the big circle In our tool the user only specifies that a circle is needed within a given control circle, it’s position and radius will be computed automatically The resulting smaller circle can be adjusted within the valid range of solutions

Export Since most vector graphics systems support cubic Bézier curve’s we provide export in such format The quintic Bézier curve is approximated by cubic Bézier segments

Design process

Future work Integration into vector graphics systems More streamlined workflow Use of improved transition curves