Modeling and representation 1 comparative review and polygon

  • Slides: 47
Download presentation
Modeling and representation 1 – comparative review and polygon mesh models 2. 1 Introduction

Modeling and representation 1 – comparative review and polygon mesh models 2. 1 Introduction 2. 2 Polygonal representation of three-dimensional objects 2. 3 High-level methods – constructive solid geometry 2. 4 High-level creation using modellers/ediotrs

2. 1 Introduction o Modelling and representation is a general phrase which can be

2. 1 Introduction o Modelling and representation is a general phrase which can be applied to any or all of the following aspects of objects: n n n Creation of a three-dimensional computer graphics representation The technique or method or data structure used to represent the object Manipulation of the representation – in particular changing the shape existing model.

2. 1 Introduction o o The representation of an object is very much an

2. 1 Introduction o o The representation of an object is very much an unsolved problem in computer graphics Representation for user or for renderer n n Polygon mesh representation : both Bi-cubic parametric patches and constructive solid geometry (CSG): for user, it may be converted into polygon meshes for rendering

2. 1 Introduction o o o Different representational methods have their advantages and disadvantages.

2. 1 Introduction o o o Different representational methods have their advantages and disadvantages. There is no universal solution to the many problems. Particular modelling methods have evolved for particular contexts.

2. 1 Introduction o Mainstream models used in computer graphics n n n Polygonal

2. 1 Introduction o Mainstream models used in computer graphics n n n Polygonal Bi-cubic parametric patches CSG (constructive solid geometry) Spatial subdivision techniques Implicit representation

2. 1 Introduction o Polygonal n n Objects are approximated by a net or

2. 1 Introduction o Polygonal n n Objects are approximated by a net or mesh of planar polygonal facets. With this form we can represent, to an accuracy that we chose, an object of an shape.

2. 1 Introduction o Example

2. 1 Introduction o Example

2. 1 Introduction o Bi-cubic parametric pathes n These are “curved quadrilaterals”. n Each

2. 1 Introduction o Bi-cubic parametric pathes n These are “curved quadrilaterals”. n Each patch is specified by a mathematical formula that gives the position of the patch in 3 D space and its shape. n A significant advantage of the representation is its ecnomy.

2. 1 Introduction o Example n Polygon mesh (2048 elements) n Patch (32 patches)

2. 1 Introduction o Example n Polygon mesh (2048 elements) n Patch (32 patches)

2. 1 Introduction o CSG (constructive solid geometry) n n This in an exact

2. 1 Introduction o CSG (constructive solid geometry) n n This in an exact representation to within certain rigid shape limits. The CSG method is a volumetric representation – shape is represented by elementary volumes or primitives

2. 1 Introduction o Example

2. 1 Introduction o Example

2. 1 Introduction o Spatial subdivision techniques n n This simply means dividing the

2. 1 Introduction o Spatial subdivision techniques n n This simply means dividing the object space into elementary cubes, known as voxels. Labelling each voxel as empty or as containing part of an object.

2. 1 Introduction o Implicit representation n Surfaces defined by underlying mathematical formula n

2. 1 Introduction o Implicit representation n Surfaces defined by underlying mathematical formula n An implicit function is, for example: (which is definition for a sphere)

2. 1 Introduction o Example

2. 1 Introduction o Example

2. 2 polygonal representation of threedimensional objects 2. 2. 1 creating polygonal objects 2.

2. 2 polygonal representation of threedimensional objects 2. 2. 1 creating polygonal objects 2. 2. 2 manual modelling of polygonal objects 2. 2. 3 automatic generation of polygonal objects 2. 2. 4 interactive/mathematical generation of polygon objects

2. 2 polygonal representation of threedimensional objects o o This is the classic representational

2. 2 polygonal representation of threedimensional objects o o This is the classic representational form in 3 D graphics Advantage n n o creating polygonal objects is straightforward visually effective algorithms exist highly efficient renderer simpler elements Disadvantage n n complex and high creation cost do not allow simple shape manipulation hard to do exact collision detection accuracy

2. 2 polygonal representation of threedimensional objects o Hierarchical structure n vertex-based boundary model

2. 2 polygonal representation of threedimensional objects o Hierarchical structure n vertex-based boundary model o n representing faces in terms of a sequences of vertices edge-based boundary model o representing faces in terms of a closing sequence of edges

2. 2 polygonal representation of threedimensional objects o Conceptual hierarchy

2. 2 polygonal representation of threedimensional objects o Conceptual hierarchy

2. 2 polygonal representation of threedimensional objects o Topological representation

2. 2 polygonal representation of threedimensional objects o Topological representation

2. 2 polygonal representation of threedimensional objects o Practical data structure

2. 2 polygonal representation of threedimensional objects o Practical data structure

2. 2 polygonal representation of threedimensional objects o Attribute n n n Polygon attribute

2. 2 polygonal representation of threedimensional objects o Attribute n n n Polygon attribute Edge attribute Vertex attribute

2. 2 polygonal representation of threedimensional objects o Polygon attributes n n n Triangular

2. 2 polygonal representation of threedimensional objects o Polygon attributes n n n Triangular or not Area Normal to the plane containing the polygon Coefficients (A, B, C, D) of the plane containing the polygon where Ax + By + Cz + D=0 Whether convex or not Whether it contain holes or not

2. 2 polygonal representation of threedimensional objects o Edge attributes n n n Length

2. 2 polygonal representation of threedimensional objects o Edge attributes n n n Length Whether it is an edge between two polygons or an edge between two surfaces Polygons on each side of the edge

2. 2 polygonal representation of threedimensional objects o Vertex attribute n n n Polygons

2. 2 polygonal representation of threedimensional objects o Vertex attribute n n n Polygons that contribute to the vertex Shading or vertex normal – the average of the normals of the polygons that contribute to the vertex Texture coordinates (u, v) specifying a mapping into a two-dimensional texture image

2. 2 polygonal representation of threedimensional objects o Another problems n n n Scale

2. 2 polygonal representation of threedimensional objects o Another problems n n n Scale problem: the needs to control the detail of objects Solution : maintain a hierarchy of models in different detail and use the one appropriate. Problem s to be solved: o o o Visual disturbances How to generate the hierarchy How many levels

2. 2. 1 Creating polygonal objects o Four common examples of polygon modelling methods:

2. 2. 1 Creating polygonal objects o Four common examples of polygon modelling methods: n n Using a three-dimensional digitiser or adopting an equivalent manual strategy Using an automatic device such as a laser ranger Generating an object from a mathematical description Generating an object by sweeping

2. 2. 2 manual modelling of polygonal objects o The easiest way to model

2. 2. 2 manual modelling of polygonal objects o The easiest way to model a real object is manually using a three-dimensional digitiser.

2. 2. 3 Automatic generation of polygonal objects o A device that is capable

2. 2. 3 Automatic generation of polygonal objects o A device that is capable of creating very accurate or high-resolution polygon mesh objects from real objects is a laser ranger.

2. 2. 4 Interactive/mathematical generation of polygon objects o o Many polygonal objects are

2. 2. 4 Interactive/mathematical generation of polygon objects o o Many polygonal objects are generated through an interface into which a user puts a model description in the form of a set of curves. The most popular paradigm is that of sweeping a cross-section in a variety of different ways.

2. 2. 4 Interactive/mathematical generation of polygon objects o Examples

2. 2. 4 Interactive/mathematical generation of polygon objects o Examples

2. 2. 4 Interactive/mathematical generation of polygon objects o Synder’s rail curve product surfaces

2. 2. 4 Interactive/mathematical generation of polygon objects o Synder’s rail curve product surfaces

2. 2. 4 Interactive/mathematical generation of polygon objects o Synder’s Affine Transformation Surface

2. 2. 4 Interactive/mathematical generation of polygon objects o Synder’s Affine Transformation Surface

2. 2. 4 Interactive/mathematical generation of polygon objects o Three problems n n n

2. 2. 4 Interactive/mathematical generation of polygon objects o Three problems n n n The size of the polygonal primitives depends on the excursion of the spine curve. How do we orient the cross-section with respect to a varying spine. How do we prevent cross-sections self-intersecting

2. 2. 4 Interactive/mathematical generation of polygon objects o Three problems

2. 2. 4 Interactive/mathematical generation of polygon objects o Three problems

2. 2. 4 Interactive/mathematical generation of polygon objects o Solve problem 1 n n

2. 2. 4 Interactive/mathematical generation of polygon objects o Solve problem 1 n n The more polygons occur when the curvature twists rapidly. The most direct way to do this is to use the curve subdivision algorithm and subdivide the curve until a linearity test is positive.

2. 2. 4 Interactive/mathematical generation of polygon objects o Solve problem 2 (Frenet frame)

2. 2. 4 Interactive/mathematical generation of polygon objects o Solve problem 2 (Frenet frame) n The unit length tangent vector T: n The derivative of the curve V: n The principal normal N: n The second derivative of the curve A: n B:

2. 2. 4 Interactive/mathematical generation of polygon objects o Solve problem 2 (Frenet frame)

2. 2. 4 Interactive/mathematical generation of polygon objects o Solve problem 2 (Frenet frame)

2. 2. 4 Interactive/mathematical generation of polygon objects o Solve problem 3

2. 2. 4 Interactive/mathematical generation of polygon objects o Solve problem 3

2. 3 High-level methods – constructive solid geometry (CSG) o o o The CSG

2. 3 High-level methods – constructive solid geometry (CSG) o o o The CSG approach is a powerful high-level tool that is found in many modelling packages. It does not manipulate polygons directly but produces polygon models after the modelling or design phase is complete. The logic of the shape in this representation is in how the final shape can be made or represented as a combination of primitive shapes.

2. 3 High-level methods – constructive solid geometry (CSG) o Motivation n o Object

2. 3 High-level methods – constructive solid geometry (CSG) o Motivation n o Object representation n n o Facilitate an interactive mode for solid modelling Primitives are combined using Boolean set operators and linear transformations An object representation is stored as an attributed tree. Disadvantage n n High rendering cost Limited primitives and operators

2. 3 High-level methods – constructive solid geometry (CSG) o Boolean operations possible between

2. 3 High-level methods – constructive solid geometry (CSG) o Boolean operations possible between solids. n Union n Subtraction n Intersection

2. 3 High-level methods – constructive solid geometry (CSG) o CSG tree

2. 3 High-level methods – constructive solid geometry (CSG) o CSG tree

2. 3 High-level methods – constructive solid geometry (CSG) o Geometric complex objects

2. 3 High-level methods – constructive solid geometry (CSG) o Geometric complex objects

2. 4 High-level creation using modellers/editors o o The previous sections described modelling methods

2. 4 High-level creation using modellers/editors o o The previous sections described modelling methods that are commonly embedded in modellers/editors. Such software will generally contain many high-level facilities.

2. 4 High-level creation using modellers/editors o Example

2. 4 High-level creation using modellers/editors o Example

2. 4 High-level creation using modellers/editors

2. 4 High-level creation using modellers/editors

2. 4 High-level creation using modellers/editors

2. 4 High-level creation using modellers/editors