600 likes | 759 Views
Problems in curves and surfaces. M. Ramanathan. 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. Point-curve tangents.
E N D
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
4 5 3 6 2 1 0 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 when it snaps tight? • A CH is a convex polygon - non-intersecting polygon whose internal angles are all convex (i.e., less than π) Problems in curves and surfaces
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 B(P2,P3) B(P1,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. B(P1,P2) B(P1,P2) 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) C2(r2) • 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. C1(r1) C0(t) C3(r3) C4(r4) Problems in curves and surfaces
Definition (Voronoi cell (Contd.)) C2(r2) • Boundary of the Voronoi cell. • Voronoi cell consists of points that are equidistant and minimal from two differentcurves. C1(r1) C0(t) C3(r3) C3(r3) C0(t), C4(r4) C0(t), C4(r4) Problems in curves and surfaces
Definition (Voronoi cell (Contd.)) “The Voronoi cell consists of points that are equidistant and minimal from two differentcurves.” • The above definition excludes non-minimal-distance bisector points. • This definition excludes self-Voronoi edges. r3 r4 r2 r C1(r) r1 q p t C0(t) Problems in curves and surfaces
Definition (Voronoi diagram) The Voronoi diagram is the union of the Voronoi cells of all the free-form curves. C0(t) Problems in curves and surfaces
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
C1(r) RR LR C0(t) LL RL Curve-curve bisector Problems in curves and surfaces
Euclidean space C1(r) C0(t) Splitting into monotone pieces Limiting constraints Lower envelope algorithm Outline of the algorithm tr-space Implicit bisector function Problems in curves and surfaces
P(t,r) - q 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: q Problems in curves and surfaces
F3(t,r) C1(r) t r C0(t) The untrimmed implicit bisector function Comment: Note we capture in the (finite) F3 the entire (infinite) bisector in R2. Problems in curves and surfaces
r t t Splitting the bisector, the zero-set of F3, into monotone pieces r Keyser et al., Efficient and exact manipulation of algebraic points and curves, CAD, 32 (11), 2000, pp 649--662. Problems in curves and surfaces
Constraints - orientation • Orientation Constraint – purge regions of the untrimmed bisector that do not lie on the proper side. • LL considers leftside of both curves as proper: Problems in curves and surfaces
C1(r) RR LR C0(t) LL RL The orientation constraints (Contd.) Problems in curves and surfaces
N1/κ1 C1(t1) P(t1, t2) C2(t2) 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. Problems in curves and surfaces
Effect of the curvature constraint Problems in curves and surfaces
Application of curvature constraint Before After Problems in curves and surfaces
D D t D t (b) (a) t (c) Lower envelopes Problems in curves and surfaces
Lower envelope algorithm General Lower Envelope VC Lower Envelope Distance function D defined by Di(t, ri) = ||P(t, ri) - Ci(t) || • 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. • ||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 tri-parameter. Problems in curves and surfaces
C0(t) C0(t) C0(t) C2(r2) C1(r1) C1(r1) C1(r1) Result I Problems in curves and surfaces
C2(r2) C0(t) C2(r2) C0(t) C1(r1) C1(r1) Result I (Contd.) Problems in curves and surfaces
C3(r3) C1(r1) C0(t) C1(r1) C2(r2) C0(t) C3(r3) C2(r2) C4(r4) Results II Problems in curves and surfaces
C2(r2) C2(r2) C3(r3) C0(t) C4(r4) C0(t) C1(r1) C1(r1) Results III Problems in curves and surfaces
C1(r1) C0(t) C2(r2) 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) C2(r2) C0(t) C1(r1) Problems in curves and surfaces
Bisectors in 3D Problems in curves and surfaces