Download presentation
Presentation is loading. Please wait.
Published byJemimah Porter Modified over 9 years ago
1
3D Object Representations 2011, Fall
2
Introduction What is CG? Imaging : Representing 2D images Modeling : Representing 3D objects Rendering : Constructing 2D images from 3D objects Animation : Simulating changes over time
3
Course Syllabus Image Processing Modeling Rendering Animation
4
Modeling How do we.. Represent 3D objects in a computer? Acquire computer representations of 3D objects? Manipulate computer representations of 3D objects? Analyze computer representations of 3D objects? Different methods for different object representations
5
3D Object
6
Why Different Representations? Efficiency for different tasks Acquisition Rendering Manipulation Animation Analysis The choice of 3D object representation can have great impact on algorithms Data structures determine algorithms!
7
3D Object Representations Desirable properties depend on intended use Easy acquisition Accurate Concise Intuitive editing Efficient editing Efficient display Efficient intersections Guaranteed validity Guaranteed smoothness Etc.
8
3D Scene Representation Scene is usually approximated by 3D primitives Point Line segment Polygon Polyhedron Curved surface Solid object etc.
9
3D point Specifies a location Represented by three coordinates Infinitely small
10
3D Vector Specifies a direction and a magnitude Represented by three coordinates Magnitude Has no location
11
3D Vector Dot(=Scalar) product of two 3D vectors
12
3D Vector Cross(=Vector) product of two 3D vectors V 1 X V 2 = vector perpendicular V 1 and V 2 (dx2, dy2, dz2) (dx1, dy1, dz1)
13
3D Line Segment Linear path between two points Use a linear combination of two points Parametric representation
14
3D Ray Line segment with one endpoint at infinity Parametric representation
15
3D Line Line segment with both endpoints at infinity Parametric representation
16
3D Plane A linear combination of three points Implicit representation, or N is the plane “normal” Unit-length vector Perpendicular to plane
17
3D Polygon Area “inside” a sequence of coplanar points Triangle Quadrilateral Convex Star-shaped Concave Self-intersection Holes (use > 1 polygon struct) Points are in counter-clockwise order
18
3D Sphere All points at distance “r” from point “(c x, c y, c z )” Implicit representation Parametric representation
19
3D Scenes Comprise set of geometric primitives
20
Other Geometric Primitives More detail on 3D modeling in course Point Line segment Polygon Polyhedron Curved surface Solid object etc.
21
3D Object Representations Raw data Point cloud Range Image Polygon soup Surface Mesh Subdivision Parametric Implicit Solids Voxels BSP tree CSG Sweep High-level structures Scene graph Skeleton Application specific
22
Point Cloud Unstructured set of 3D point samples Acquired from range finer, computer vision, etc
23
Range Image Set of 3D points mapping to pixels of depth Image Acquired from range scanner
24
Point Sample Rendering an object representation consisting of a dense set of surface point samples, which contain color, depth and normal information Point Sample Rendering (Surfel)
25
Polygon Soup Unstructured set of polygons Many polygon models are just lists of polygons Created with interactive modeling systems?
26
3D Object Representations Raw data Point cloud Range Image Polygon soup Surface Mesh Subdivision Parametric Implicit Solids Voxels BSP tree CSG Sweep High-level structures Scene graph Skeleton Application specific
27
Curved Surfaces Motivation Exact boundary representation for some objects More concise representation than polygonal mesh
28
Mesh Connected set of polygons (usually triangles) May not be closed
29
Subdivision Surface Coarse mesh & subdivision rule Define smooth surfaces as limit of sequence of refinements Subdivision (Smooth Curve) Subdivision Surface
30
Parametric Surface Boundary defined by parametric functions x = f x (u, v) y = f y (u, v) z = f z (u, v) Example: ellipsoid
31
Parametric Surface Tensor product spline patchs Each patch is defined by blending control points Careful constrains to maintain continuity
32
Implicit Surfaces Boundary defined by implicit function f(x, y, z) = 0 Example linear (plane) ax + by + cz + d = 0 Ellipsoid
33
Implicit Surface Examples
34
3D Object Representations Raw data Point cloud Range Image Polygon soup Surface Mesh Subdivision Parametric Implicit Solids Voxels BSP tree CSG Sweep High-level structures Scene graph Skeleton Application specific
35
Solid Modeling Represent solid interiors of objects Surface may not be described explicitly
36
Voxels Partition space into uniform grid Grid cells are called a voxels (like pixels) Store properties of solid object with each voxel Occupancy Color Density Temperature Etc.
37
Quadtrees & Octrees Refine resolution of voxels hierarchically More concise and efficient for non-uniform objects
38
Quadtree Display
39
Binary Space Partitions (BSPs) Recursive partition of space by planes Mark leaf cells as inside or outside object
40
Binary Space Partitions (BSPs) recursively divide space into pairs of subspaces each separated by a plane of arbitrary orientation and position
41
Constructive Solid Geometry (CSG) Represent solid object as hierarchy of boolean operations Union Intersection Difference
42
Constructive Solid Geometry
43
Constructive Solid Geometry (CSG) CSG Acquisition Interactive modeling programs CAD/CAM
44
To generate a 3-D surface, revolve a two dimensional entity, e.g., a line or plane about the axis in space. called surfaces of revolution Surface of Revolution (SOR)
46
Sweep surfaces (1/2) A 3-D surface is obtained by traversing an entity such as a line, polygon or curve, along a path in space the resulting surfaces are called sweep surfaces Frequently used in Geometric modeling ex) entity : point path : curve Generates curve
48
Closed polygons and curves generates finite volume by sweeping transformation ex) square or rectangle swept along a - straight path yields a parallel piped - circle on straight path cylinder - Rotation is also possible Sweep surfaces (2/2)
49
Sweep Solid swept by curve along trajectory
50
3D Object Representations Raw data Point cloud Range Image Polygon soup Surface Mesh Subdivision Parametric Implicit Solids Voxels Octree BSP tree CSG Sweep High-level structures Scene graph Skeleton Application specific
51
Scene Graph Union of objects at leaf nodes
52
Skeleton Graph of curves with radii
53
Application Specific
54
Taxonomy of 3D Representations
55
Computational Differences Efficiency Combinatorial complexity (Ex: O( n log n)) Space/time trade-offs (Ex: Z-buffer) Numerical accuracy/stability (Degree of polynomial) Simplicity Ease of acquisition Hardware Acceleration Software creation and maintenance Usability Designer interface vs. computational engine
56
Advanced Modeling Procedural Modeling Fractal Modeling Grammar-based Modeling Particle System Physically Based Modeling
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.