Date post: | 12-Jan-2016 |
Category: |
Documents |
Upload: | georgia-reynolds |
View: | 216 times |
Download: | 0 times |
Employing Pythagorean Employing Pythagorean Hodograph Curves for Artistic Hodograph Curves for Artistic
PatternsPatterns
Conference of PhD Students in Computer Science
June 29 - July 2, 2010Szeged, Hungary
Gergely Klár, Gábor Valasek
Eötvös Loránd UniversityFaculty of Informatics
GoalGoal Create a tool to aid the design of
aesthetical, fair curves In particular design element creator
for vines, swirls, swooshes and floral components
Previous workPrevious 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 workPrevious work Plants generated with L-systems,
proposed by Prusinkiewicz and Lindenmayer
Previous workPrevious 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 workPrevious work Xu and Mould created ornamental
patters by simulating a charged particle's movement in a magnetic field (magnetic curves)
OurOur focusfocus 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 focusOur focusTo 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 controlDesigner control An intuitive way to control our
curves is required Use hiearchy of circles:
Designer control – an Designer control – an alternativealternativeIf 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 Designer control – an alternativealternativeGiven are position, tangent, and
curvature data at each the endpointFind a Bézier curve which
reconstructs these quantities at it’s endpoints
These are 2x4 scalar constraints on each segment
Position: 2 scalarTangent: 1 scalarCurvature: 1 scalar
Designer control – an alternative Designer control – an alternative
Cubic Bézier solution for GHCubic Bézier solution for GHA cubic Bézier curve has 8 scalar
degrees of freedomA quadratic equation system
results from
Designer control – an alternative Designer control – an alternative
Cubic Bézier solution for GHCubic Bézier solution for GHWith appropriate geometric constraints on position, tangent and curvature the following system has positive real roots
Resulting curve is not a spiral
Designer controlDesigner controlLet us use Pythagorean Hodograph
spirals for the transition curves
curve curve’s hodograph
Let the parameterization be such that
For some integral polynomial The arc-length
can be expressed in closed-form
Pythagorean HodographsPythagorean 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 HodographsPythagorean Hodographs
Pythagorean HodographsPythagorean HodographsPH 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 HodographsPythagorean HodographsArc-length is a polynomialOffset of a degree n PH curve is a
rational polynomial of degree 2n-1For practical usage
◦Cubic PH curves cannot have an inflection point
◦We use quintic PH curves
MethodMethodLet the user create a hierarchy of
control circlesCreate 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 transitionCircle-to-circle transitionThe circles have to be non-
touching and non-overlappingWe used the work of Walton and
Meek to define the quintic PH curve’s control points
Circle-to-circle transitionCircle-to-circle transition
Circle-to-circle transitionCircle-to-circle transitionThe circle centres have to be
within a certain distance (depending on their radii)
We have to solve
Where
Circle-in-circle transitionCircle-in-circle transitionA 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 transitionCircle-in-circle transition
Circle-in-circle transitionCircle-in-circle transitionConstraints 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
ExportExportSince 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 processDesign process
Future workFuture workIntegration into vector graphics
systemsMore streamlined workflow Use of improved transition curves