Problems in curves and surfaces

advertisement
Problems in curves and surfaces
M. Ramanathan
Problems in curves and surfaces
Simple problems
• Given a point p and a parametric curve C(t),
find the minimum distance between p and
C(t)
C(t)
<p – C(t), C’(t)> = 0
Constraint equation
p
Problems in curves and surfaces
Point-curve tangents
Given a point p and a parametric curve C(t), find the
tangents from p to C(t)
Problems in curves and surfaces
Common tangent lines
Problems in curves and surfaces
The IRIT Modeling Environment
• www.cs.technion.ac.il/~irit
• More like a kernal not a software – code can
be downloaded from the same webpage.
• Add your own functions and compile with
them (written in C language)
• User’s manual as well as programming
manual is available
Problems in curves and surfaces
Convex hull of a point set
 Given a set of pins on a pinboard
 And a rubber band around them
 How does the rubber band look
4
5
when it snaps tight?
3
A CH is a convex polygon - nonintersecting polygon whose internal
angles are all convex (i.e., less than
π)
6
2
0
Problems in curves and surfaces
1
Bi-Tangents and Convex hull
Problems in curves and surfaces
CH of closed surfaces
Problems in curves and surfaces
CH of closed surfaces
Problems in curves and surfaces
Minimum enclosing circle
• smallest circle that
completely contains
a set of points
Problems in curves and surfaces
Minimum enclosing circle – two
curves
Problems in curves and surfaces
Minimum enclosing circle – three
curves
Problems in curves and surfaces
MEC of a set of closed curves
Problems in curves and surfaces
Kernel problem
• Given a freeform curve/surface, find a point
from which the entire curve/surface is
visible.
Problems in curves and surfaces
Kernel problem (contd.)
Solve
Problems in curves and surfaces
Kernel problem in surfaces
Problems in curves and surfaces
Duality
• duality refers to geometric transformations
that replace points by lines and lines by
points while preserving incidence properties
among the transformed objects. The
relations of incidence are those such as 'lies
on' between points and lines (as in 'point P
lies on line L')
Problems in curves and surfaces
Point-Line Duality
Problems in curves and surfaces
Common tangents
Problems in curves and surfaces
Voronoi Cell (Points)
• Given a set of points {P1, P2, … , Pn}, the
Voronoi cell of point P1 is the set of all points
closer to P1 than to any other point.
Problems in curves and surfaces
Skeleton – Voronoi diagram
The Voronoi diagram is the union of the
Voronoi cells of all the free-form curves.
Problems in curves and surfaces
Voronoi diagram (illustration)
P3
P1
P2
P2
P1
Remember that VD is not
defined for just points but
for any set e.g. curves,
surfaces etc. Moreover, the
definition is applicable for
any dimension.
Problems in curves and surfaces
Skeleton – Medial Axis
The medial axis (MA), or
skeleton of the set D, is defined
as the locus of points inside
which lie at the centers of all
closed discs (or balls in 3-D)
which are maximal in D.
Problems in curves and surfaces
Skeletons – medial axis
Problems in curves and surfaces
Definition (Voronoi Cell)
• Given - C0(t), C1(r1), ... ,
Cn(rn) - disjoint rational
planar closed regular C1
free-form curves.
• The Voronoi cell of a
curve C0(t) is the set of all
points closer to C0(t) than
to Cj(rj), for all j > 0.
Problems in curves and surfaces
C2(r2)
C1(r1)
C0(t)
C3(r3)
C4(r4)
Definition (Voronoi cell (Contd.))
C2(r2)
• Boundary of the Voronoi
cell.
• Voronoi cell consists of
points that are equidistant
and minimal from two
different curves. C0(t),C3(r3)
C0(t), C4(r4)
Problems in curves and surfaces
C1(r1)
C0(t)
C3(r3)
C4(r4)
Definition (Voronoi cell (Contd.))
“The Voronoi cell consists of points that are
equidistant and minimal from two different curves.”
r3
• The above definition excludes
non-minimal-distance bisector
points.
• This definition excludes selfVoronoi edges.
r4
r
r1
C1(r)
q
p
t
Problems in curves and surfaces
r2
C0(t)
Definition (Voronoi diagram)
The Voronoi diagram
is the union of the
Voronoi cells of all the
free-form curves.
Problems in curves and surfaces
C0(t)
Skeleton-Bisector relation
Problems in curves and surfaces
Bisector for simple curves
Problems in curves and surfaces
Bisector for simple curves (contd)
Problems in curves and surfaces
Point-curve bisector
Problems in curves and surfaces
Curve-curve bisector
RR
C1(r)
LL
C0
(t)
Problems in curves and surfaces
LR
RL
Euclidean space
Outline of the algorithm
tr-space
C1(r)
Implicit bisector function
C0(t)
Splitting into monotone pieces
Limiting constraints
Lower envelope algorithm
Problems in curves and surfaces
The implicit bisector function
• Given two regular C1 parametric curves C0(t) and
C1(r), one can get a rational expression for the
two normals’ intersection point: P(t,r) = (x(t,r),
y(t,r)).
• The implicit bisector function F3 is defined by:
C0 (t )  C1 (r )
F3 (t , r )  P(t , r ) 
, C0 (t )  C1 (r )  0
2



C1 (r )
P (t , r )
P(t,r) - q

q
C0 (t )
Problems in curves and surfaces
The untrimmed implicit bisector function
C1(r)
F3(t,r)
C0(t)
r
t
Comment: Note
we capture in the
(finite) F3 the entire
(infinite) bisector in
R2.
Problems in curves and surfaces
Splitting the bisector, the zero-set of F3,
into monotone pieces
r
r
t
Keyser et al., Efficient and exact manipulation of algebraic
points and curves, CAD, 32 (11), 2000, pp 649--662.
Problems in curves and surfaces
t
Constraints - orientation
• Orientation Constraint –
purge regions of the
untrimmed bisector that
do not lie on the proper side.
• LL considers left side of both curves as proper:
N1L (t1 )
C1(t1 )
Problems in curves and surfaces
C2 (t 2 )
The orientation constraints (Contd.)
RR
C1(r)
LR
LL
C0(t)
Problems in curves and surfaces
RL
The curvature constraints
Curvature Constraint (CC) – purge away
regions of the untrimmed bisector whose
distance to its footpoints (i.e., the radius of the
Voronoi disk) is larger than the radius of
curvature (i.e., 1/κ) at the footpoint.
N1/κ1
C1(t1)
C2(t2)
 i (ti ) N i (ti ), P(ti , t j )  Ci (t )  1
 
P(t1, t2)
Problems in curves and surfaces
Effect of the curvature constraint
 i (ti ) N i (ti ), P(ti , t j )  Ci (t )  1
Problems in curves and surfaces
Application of curvature constraint
Before
After
Problems in curves and surfaces
Lower envelopes
D
D
t
t
D
(b)
(a)
t
(c)
Problems in curves and surfaces
Lower envelope algorithm
General Lower Envelope
• Standard Divide and
Conquer algorithm.
• Main needed functions
are:
– Identifying intersections of
curves.
– Comparing two curves at a
given parameter
(above/below).
– Splitting a curve at a given
parameter.
VC Lower Envelope
Distance function D defined
by Di(t, ri) = || P(t, ri) - Ci(t) ||
• ||Di (t, ri)||2 = ||Dj (t, rj)||2 ,
F3(t, ri) = 0,
F3(t, rj) = 0.
• Compare ||Di (t, ri)||2 and
||Dj(t,rj)||2 at the
parametric values.
• Split F3(t, ri) = 0 at the triparameter.
Problems in curves and surfaces
Result I
C0(t)
C0(t)
C2(r2)
C1(r1)
C1(r1)
Problems in curves and surfaces
Result I (Contd.)
C0(t)
C1(r1)
C2(r2)
C2(r2)
C0(t)
C1(r1)
Problems in curves and surfaces
Results II
C3(r3)
C1(r1)
C0(t)
C2(r2)
C0(t)
C3(r3)
C2(r2)
C4(r4)
Problems in curves and surfaces
C1(r1)
Results III
C0(t)
C2(r2)
C2(r2)
C3(r3)
C4(r4)
C0(t)
C1(r1)
C1(r1)
Problems in curves and surfaces
Results IV (For Non-Convex C0(t))
Voronoi cell is obtained by performing the lower envelope on both t and r
parametric directions.
C3(r3)
C0(t)
C2(r2)
C1(r1)
C0(t)
C2(r2)
C1(r1)
Problems in curves and surfaces
Bisectors in 3D
Problems in curves and surfaces
Bisector in 3D
Problems in curves and surfaces
Bisectors in 3D
Problems in curves and surfaces
Bisector in 3D (space curves)
Problems in curves and surfaces
Bisectors in 3D
Problems in curves and surfaces
Surface-surface bisector
Problems in curves and surfaces
Surface-surface bisector
Problems in curves and surfaces
Constraints
Problems in curves and surfaces
-sector Constraints
Y-axis
Problems in curves and surfaces
-sector
Problems in curves and surfaces
References
•
•
•
•
•
•
•
•
•
http://www.cs.technion.ac.il/~irit
Gershon Elber and Myung-soo Kim. The convex hull of rational plane curves, Graphical
Models, Volume 63, 151-162, 2001
J. K. Seong, Gershon Elber, J. K. Johnstone and Myung-soo Kim. The convex hull of freeform
surfaces, Computing, 72, 171-183, 2004
Elber Gershon, Kim Myung-Soo. Geometric constraint solver using multivariate rational
spline functions. In: Proceedings of the sixth ACM symposium on solid modeling and
applications; 2001. p. 1–10.
ELBER, G., AND KIM, M.-S. 1998. Bisector curves for planar rational curves. ComputerAided Design 30, 14, 1089–1096.
ELBER, G., AND KIM, M.-S. 1998. The bisector surface of rational space curves. ACM
Transaction on Graphics 17, 1 (January), 32–39.
FAROUKI, R., AND JOHNSTONE, J. 1994. The bisector of a point and a plane parametric
curve. Computer Aided Geometric Design, 11, 2, 117–151.
Ramanathan Muthuganapathy, Gershon Elber, Gill Barequet, and Myung-Soo
Kim, "Computing the Minimum Enclosing Sphere of Free-form Hypersurfaces in
Arbitrary Dimensions" , Computer-Aided Design, 43(3), 2011, 247-257
Iddo Hanniel, Ramanathan Muthuganapathy, Gershon Elber and Myugn-Soo Kim "Precise
Voronoi Cell Extraction of Free-form Rational Planar Closed Curves ", Solid and
Physical Modeling (SPM), 2005, MIT, USA, pp 51-59
Problems in curves and surfaces
Download