Creating geomodels with Generalized Maps - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

Creating geomodels with Generalized Maps

Description:

example: all polyhedra (k=3) connected to a vertex (i=0) 3 relationship classes in a GMap ... by polyhedra sewn along their faces; a polyhedron is represented ... – PowerPoint PPT presentation

Number of Views:88
Avg rating:3.0/5.0
Slides: 26
Provided by: apelc
Category:

less

Transcript and Presenter's Notes

Title: Creating geomodels with Generalized Maps


1
Creating geomodels with Generalized Maps
Marcus Apel, 2004based on works of the Gocad
Research Group, Nancyreference J-L Mallet
 Geomodeling , Oxford University Press 2002
2
Reminders How are objects defined?
  • cellular partition sub-division into cells in
    N-dimensions
  • connectivity with other objects
  • embedding
  • geometry in 3d space
  • numerical properties

3
cellular partition and connectivity - incidence
graph
  • describes all possible paths to go from a n-cell
    to a 0-cell, with only connecting k-cells to
    (k-1)-cells, ngtkgt0

4
incidence graph
  • nodes ? Cells, edges ? CellViews
  • incidence cell C is an element of CellView w.

5
3 relationship classes in a GMap
  • a cell Ci is i-adjacent to another cell Ck, iff
  • ki
  • a (i-1)-cell incident to both can be found, or
    (i, k) are incident to at least one common
    (i1)-cell
  • example 2 triangles (i,k2) sharing an edge
  • a cell Ci is a sub-cell of Ck, iff
  • iltk
  • Ci can be reached by descending the incidence
    graph
  • example polygon (k2) with sub-cells edges (i1)
    and vertices (i0)
  • the k-adjacency of a i-cell Ci contains all
    k-cells Ck such that Ci is a subcell of Ck.
  • example all polyhedra (k3) connected to a
    vertex (i0)

6
adjacency
7
adjacency
8
adjacency
9
adjacency classes
10
darts, involution, GMap
  • a dart corresponds to a path (CellView) in the
    incidence graph
  • adjacency relations are translated in relations
    between pairs of darts
  • a dart has N1 ai functions (maps), defined from
    Ai adjacency relations
  • for example a0 connects each pair of darts
    (d1,d2) a0(d1)d2 a0(d2)d1 ? involution
  • a N-GMap D, (a0, ..., aN) is a set D of darts
    with a set of N1 ai involution functions

11
incidence graph
12
Simplified data structure of a GMap
  • struct GMap SetltDartgt d
  • struct Dart Dart alphaN1 Embedding
    embN1

13
GMap - Example
  • GMapd1a0,d2a0,..., d3a1 // darts for 63
    involutions
  • Dart d1a0d2 emb1,
  • Dart d2a0d1 emb2, ...
  • Embedding emb1coordxyz, p, ...

F1
E1
E2
E3
d2
d1
V1
V2
V3
14
Functions acting on a GMap
  • the basic function traversing the orbit of a
    dart d
  • iterating the set of darts that can be reached by
    a given set of ai involutions

15
Basic operations on GMaps
  • recursive subdivision an GMap of dimension N may
    be thought of a set of GMaps of dimension N-1
    sewn along cells of dimension N-2
    (N-2)-cells are sewn (N-3)-cells etc. until
    vertices are reached
  • example a volume can be represented by polyhedra
    sewn along their faces a polyhedron is
    represented by its boundary polygons sewn along
    their edges.

16
Basic operations on GMaps
  • create new GMap
  • delete GMap
  • create isolated dart and add it to a GMap,
    involutions are initialized as ai(d)d
  • delete a dart from a GMap
  • create an ai involution between 2 darts
  • delete an ai involution between 2 darts

17
Sew algorithm - create a N-GMap from (N-1)-cells
  • 2 orbit traversals of the (N-1)-cells along which
    the N-cell will be sewn, and setting the
    involution
  • sew(d1,d2,N) for (d'1 in lt gt(d1),
    d'2 in lt gt(d2) )
  • dispatchCellEmbedding(d'1,d'2)
  • d'1-gtaNd'2
  • d'2-gtaNd'1
  • how does unsew work?

18
Representing Objects with G-Maps hierarchical
GMaps with Frame
1) Represents the objects boundaries
(Macro-topology)
19
Representing Objects with G-Maps hierarchical
GMaps with Frame
2) Can be used to subdivide space in regions
20
Representing Objects with G-Maps
21
Representing 3d-Objects with G-Maps
  • 3 glued surfaces along a radial line
  • free edges a3(d) ? a2(d)
  • glued edges a3(d) a2(d)

22
Construction of a model
  • create empty (N1) dimensional model M
  • create a cellular GMap-partition L(W) of the
    N-dimensional dividing wall W
  • create Frame F(W) such that L(W) is the Lattice
    of F(W) and add W to model M
  • repeat (2) and (3) for a set of N-dividing walls
    ? MM(W1,..., Wi)
  • if necessary, use the glue ("sew") operator to
    weld frames of the model M

23
Building a Model with G-Maps (I)
24
Building a Model with G-Maps (II)
25
Building a Model with G-Maps (III)
26
Building a Model with G-Maps (IV)
Horizon
Fault
Region
27
Strong points of G-Maps
  • Strong mathematical basis
  • - data structure
  • - operators
  • only 2 concepts to understand darts and
    involution
  • uncoupling of topology and geometry
  • generically defined in N dimensions
  • generic functions work for for N-cells

28
more GMap model examples
Write a Comment
User Comments (0)
About PowerShow.com