Surface Modelling - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

Surface Modelling

Description:

In the Cartesian plane, an explicit equation of a planar curve is given by y = f(x) ... The derivative of Q(t) is the parametric tangent vector of the curve. ... – PowerPoint PPT presentation

Number of Views:1507
Avg rating:3.0/5.0
Slides: 26
Provided by: bmcc1
Category:

less

Transcript and Presenter's Notes

Title: Surface Modelling


1
Surface Modelling
2
Modelling the Elegant Teapot
Many real-world objects are inherently smooth,
therefore need infinitely many points to model
it. This is not feasible for a computer with
finite storage. More often we merely approximate
the object with pieces of planes, spheres, or
other shapes that are easy to describe
mathematically. We will introduce two most common
representations for 3D surfaces polygon mesh
surfaces and parametric surfaces. We will also
discuss parametric curves since parametric
surfaces are a generalisation of the curves.
3
Polygon Meshes
or
4
Polygon Meshes
  • The geometry can be stored as three tables a
    vertex table, an edge table, and a polygon table.
    Each entry in the vertex table is a list of
    coordinates defining that point. Each entry in
    the edge table consists of a pointer to each
    endpoint of that edge. And the entries in the
    polygon table define a polygon by providing
    pointers to the edges that make up the polygon.
  • We can eliminate the edge table by letting the
    polygon table reference the vertices directly,
    but we can run into problems, such as drawing
    some edges twice, because we don't realise that
    we have visited the same set of points before, in
    a different polygon. We could go even further and
    eliminate the vertex table by listing all the
    coordinates explicitly in the polygon table, but
    this wastes space because the same points appear
    in the polygon table several times.

5
Representing Polygon Meshes
1). The explicit way just list 3D vertices of
each polygon in a certain order. The problems
are, firstly it represents same vertex many
times and secondly, no explicit representation
of shared edges and vertices 2). Pointer to a
vertex list store all vertices once into a
numbered list, and represent each polygon by its
vertices. It saves space (vertex only listed
once) but still has no explicit representation of
shared edges and vertices 3). Explicit
edges list all edges that belong to a polygon,
and for each edge list the vertices that define
it along with the polygons of which it is a
member.
6
Types of Curves
1). Explicit In the Cartesian plane, an
explicit equation of a planar curve is given by
y f(x). The difficulties with this approach are
that (1) it is impossible to get multiple values
of y for a single x, so curves such as circles
and ellipses must be represented by multiple
curve segments and (2) describing curves with
vertical tangents is difficult and numerically
unstable. 2). Implicit f(x, y)
0 AxByC 0 This method has difficulties on
determining tangent continuity of two given
curves which is crucial in many
applications. (Circle can be defined as
x2y21, but what about a half circle?)
7
Types of Curves
3). Parametric Curves The cubic polynomials
that defines a curve segment Q(t) x(t) y(t)T
are of the form Written in matrix form, it
becomes Q(t) x(t) y(t) T?
C where
8
Parametric Curves
The equations that describe a parametric curve
depend on a variable t that is not explicitly
part of the geometry. By sweeping through t,
in our case 0 t 1, it is possible to evaluate
the equations and determine the x and y values
for points on the curve.
t 1.0
t
t 0.0
Parameter space
Object space
9
Continuity
The derivative of Q(t) is the parametric tangent
vector of the curve. Applying the definition to
the curves equation, we have Often we
will want to represent a curve as a series of
curves pieced together. But if we will want these
curves to fit together reasonably
... continuity!
10
Continuity
Two curve segments join together G0 geometric
continuity.
The directions of the tangent vectors (not
necessarily the magnitudes) are equal G1
geometric continuity. Both the directions and
magnitudes are equal C1 parametric continuity.
Second-order parametric continuity C2
parametric continuity.
Note For two curves to join smoothly, we require
only that their tangent-vector directions match
we do not require that their magnitudes match.
11
Parametric Cubic Curves
To join multiple curves into one curve smoothly,
we need to specify the positions and their
tangent-vectors of both ends, i.e. the
continuity requirements. This gives us four
constraints, and so the four knowns can be used
to solve the four unknowns, i.e. coefficients, in
a cubic polynomial.
12
Specifying Curves
  • Control Points
  • control points that lie on the curve
  • Knots
  • a set of points that influence the curve's shape
  • Interpolating spline
  • curve passes through the control points knots
    (Cardinal spline, Catmull-Rom spline)
  • Approximating spline
  • control points merely influence shape (Hermite
    Curves, B-spline)

13
Examples of Cubic Curves
  • Hermite
  • Defined by two end points two endpoint tangent
    vectors.
  • Bézier
  • Defined by two endpoints two other points that
    control the endpoints tangent vectors.

14
Hermite Curves
Depending on which four knowns we have,
parametric curves can be divided into different
groups. The simplest of the cubic curves, the
Hermite form, is defined by two endpoints and the
tangent vectors at these endpoints.
15
Hermite Curves
16
Hermite Curves (cont.)
17
Hermite Curves (cont.)
Basis Matrix
Geometry Vector
18
Bézier Curves
A cubic Bézier curve indirectly specifies the
endpoint tangent-vector by specifying two
intermediate points that are not on the curve.
19
Bézier Curves (cont.)
20
Bézier Curves (cont.)
21
A Bézier Curve
For example, if we are given four control points
(0,0), (0.2,0.8), (0.9, 0.1), (1,1). Then we
have And the parametric equation will
be At any point on this curve, the tangent
vector to the curve is
22
Parametric Bicubic Surfaces
The equations that describe a parametric curve
depend on a variable t that is not explicitly
part of the geometry. By sweeping through t,
in our case 0 t 1, it is possible to evaluate
the equations and determine the x and y values
for points on the curve.
t 1.0
t
t 0.0
Parameter space
Object space
23
Parametric Bicubic Surfaces
Parametric Bicubic Surfaces are a generalisation
of parametric cubic curves
  • If one parameter, say v, is held at a constant
    value then the above will
  • represent a curve.
  • The surface is then generated by sweeping all
    points on the boundary curve
  • P(u,0) (say) through cubic trajectories,
    defined using the parameter v, to the
  • boundary curve P(u,1).

24
Bézier Surface Patch
The representation of the bicubic surface patch
can be illustrated by considering the Bézier
Surface Patch. The edge P(0,v) of a Bezier patch
is defined by giving four control points P00,
P01, P02 and P03. Similarly the opposite edge
P(1,v) can be represented by a Bezier curve with
four control points. The surface patch is
generated by sweeping the curve P(0,v) through a
cubic trajectory in the parameter u to P(1,v). To
define this trajectory we need four control
points, hence the Bezier surface patch requires a
mesh of 4?4 control points as illustrated below.
25
Further reading
  • Chapter 11 of Foley and VanDam
  • Representing Curves and Surfaces
Write a Comment
User Comments (0)
About PowerShow.com