Presentation is loading. Please wait.

Presentation is loading. Please wait.

Implicit Surfaces Tom Ouyang January 29, 2004. Outline Properties of Implicit Surfaces Polygonization Ways of generating implicit surfaces Applications.

Similar presentations


Presentation on theme: "Implicit Surfaces Tom Ouyang January 29, 2004. Outline Properties of Implicit Surfaces Polygonization Ways of generating implicit surfaces Applications."— Presentation transcript:

1 Implicit Surfaces Tom Ouyang January 29, 2004

2 Outline Properties of Implicit Surfaces Polygonization Ways of generating implicit surfaces Applications

3 What are Implicit Surfaces? 2D Geometric shapes that exist in 3D space Surface representation through a function f(x, y, z) = 0 Most methods of analysis assume f is continuous and not everywhere 0.

4 Example of an Implicit Surface 3D Sphere centered at the origin x 2 + y 2 + z 2 = r 2 x 2 + y 2 + z 2 – r 2 = 0

5 Point Classification Inside Region: f < 0 Outside Region: f > 0 Or vice versa depending on the function f < 0 f > 0 f = 0

6 Manifold A 2D Manifold separates space into a natural inner and natural outer region A manifold surface is “watertight” and contains no holes or dangling edges

7 Manifold It is difficult to determine enclosed region in non-manifold surfaces

8 Surface Normals Usually gradient of the function  f(x,y,z) = (  f/  x,  f/  y,  f/  z) Points at increasing f

9 Properties of Implicits Easy to check if a point is inside the implicit surface Evaluate f at that point Fairly easy to check ray intersection Substitute ray equation into f for simple functions Binary search

10 Properties of Implicits Simple set operations Union: min(f, g) Intersection: max(f, g) Difference: max(f,-g) Complement: -f f < 0g < 0 f < 0 g < 0

11 Polygonal Representation Partition space into convex cells Find cells that intersect the surface traverse cells Compute surface vertices

12 Spatial Partitioning Exhaustive Enumeration Divide space into regular lattice of cells Traverse cells polygonized

13 Spatial Partitioning Subdivision Start with root cell and subdivide Continue subdividing traverse cells

14 Spatial Partitioning Adaptive Polygonization

15 Determining Intersections

16 Implicit Surfaces vs Polygons Advantages Smoother and more precise More compact Easier to interpolate and deform Disadvantages More difficult to display in real time

17 Implicits vs Parametrics Advantages Implicits are easier to blend and morph Interior/Exterior description Ray-trace Disadvantages Rendering Control

18 Types of Implicit Surfaces Mathematic Polynomial or Algebraic Non polynomial or Transcendental Exponential, trigonometric, etc. Procedural Black box function

19 Algebraic Surfaces Degree 6CubicDegree 4

20 Non-Algebraic Surfaces

21 Distance Functions D(p) = R Sphere: Distance to a point Cylinder: Distance to a line

22 Distance Functions

23 Interpolation Interpolate corresponding algebraic equations

24 Solid Modeling Solid model consists of a surface and its interior Point classification Constructive solid geometry (CSG)

25 Variational Implicit Surfaces Specify boundary locations boundary, interior, and exterior Generate surfaces that interpolate boundary points

26 Compression Mesh of 473,000 vertices and 871,000 facets Implicit function of 32,000 terms

27 Procedural Methods f as an arbitrary process or algorithm Fractal (Julia Set)

28 Deformation p’ = D(p) D maps each point in 3-space to some new location Twist, bend, taper, and offset

29 Visualization Contours

30 Visualization Particle Display

31 Particle Display Demo

32 Visualization Ray Tracing

33 Other Coordinate Systems Cylindrical Coordinates Spherical Coordinates

34 Summary Surface defined implicitly by f(p) = 0 Easy to test if point is on surface, inside, or outside Easy to handle blending, interpolation, and deformation Difficult to render


Download ppt "Implicit Surfaces Tom Ouyang January 29, 2004. Outline Properties of Implicit Surfaces Polygonization Ways of generating implicit surfaces Applications."

Similar presentations


Ads by Google