Generating Surface Geometry in Higher Dimensions Using Local Cell Tilers
Total Page:16
File Type:pdf, Size:1020Kb
Generating Surface Geometry in Higher Dimensions using Local Cell Tilers Dr Steve A. Hill Dr Jonathan C. Roberts Computing Laboratory, Computing Laboratory, University of Kent, University of Kent, England, UK; England, UK; [email protected] [email protected] Abstract dimensional model using motion, edge and depth cues. However, higher dimensions have been In two dimensions contour elements surround two proposed and considered for many years; with dimensional objects, in three dimensions surfaces the fourth dimension representing time, distance, surround three dimensional objects and in four a fourth spatial coordinate and even a spiritual dimensions hypersurfaces surround hyperobjects. realm. These surfaces can be represented by a collection Objects within four and higher dimensions can of connected simplices, hence, continuous n di- be generated from natural extensions to plane or mensional surfaces can be represented by a lat- solid geometry, with each three dimensional ob- 1 tice of connected n dimensional simplices. ject (plane, cube, cone) having a four and higher The lattice of connected simplices can be cal- dimensional equivalent (hyperplane, hypercube, culated over a set of adjacent n-dimensional hypercone). Data sets with higher dimensions cubes, via for example the Marching Cubes Al- can be generated from simulations, collated from gorithm. These algorithms are often named local statistics or sampled from real-life phenomena; cell tilers. We propose that the local-cell tiling many diverse ®elds-of-study provide data with method can be usefully-applied to four dimen- copious variables that can be displayed in a num- sions and potentially to N-dimensions. ber of dimensions using various imaging tech- We present an algorithm for the generation of niques. major cases (cases that are topologically invari- Modern computer graphics provide the abil- ant under standard geometrical transformations) ity to view, interrogate and understand objects and introduce the notion of a sub-case which sim- and phenomena that exist in higher dimensions. pli®es their representations. Each sub-case can For example, an image of a Klein bottle, with a be easily subdivided into simplices for rendering twisted surface, intersects itself within three di- and we describe a backtracking tetrahedroniza- mensions, whereas within four dimensional space tion algorithm for the four dimensional case. An the bottle can be depicted without the self inter- implementation for surfaces from the fourth di- section [3]. mension is presented and we describe and discuss Geometry in higher dimensions can be (1) pro- ambiguities inherent within this and related algo- jected down to lower dimensions, using a variety rithms. of projection methods including parallel, perspec- tive and central or (2) represented in other coordi- 1 Introduction and Motivation nate systems, including Parallel Coordinates [17] that depict the relationships and dependencies be- tween N-Dimensional data (especially geometry) We live within three dimensional space; see- within a two dimensional parallel axis coordinate ing our world via a two dimensional projection, system. which is reconstructed by our brain into a three Visualizations of n-dimensional data can be 1 obtained by rendering the `surface' of the data. paths [10, 11, 21]; and (2) Local Cell evaluation, The surface created is one dimension less than the that can be further subdivided into: (a) Advanc- original data: for example, the surfaces from two ing Front, that ®nds the surface by growing a seed dimensional data create contour plots (one dimen- point on the surface, from where the other surface sional line segments in two dimensions) and three segments are found [33, 27]; and (b) Complete dimensional (volume) data produces two dimen- Cell Evaluation, that evaluates each cell's con- sional faces in three dimensions. Hence, from a tribution to the surface: forming a surface made four dimensional data volume a hypersurface is from tiles [25, 20, 7]. We use and extend the lat- formed. ter method to four and theoretically higher dimen- A two dimensional contour on a map, repre- sions. Moreover the advancing front techniques senting a particular height above sea-level, can be could be likewise extended to n-dimensions. created using a continuous connection of straight line segments. Similarly, a continuous surface 2.1 3D Local Cell Surface Generation within three dimensions can be represented by a lattice of two-dimensional polygons. Therefore, a The local cell tilers evaluate a single cell for its continuous hypersurface can be represented by a contribution to the surface. Two such methods in lattice of n-dimensional simplices. These simplex three dimensions are by lookup (e.g. Marching elements can be calculated from how the `sur- Cubes) [20] and algorithmically [6]. An estimate face' intersects a set of adjacent n-dimensional of the position of the surface intersection along a cubes. A surface at a particular value (isosurface) particular edge can be found by linear interpola- through sampled data can be realised at the point tion. Multiple surfaces at the same threshold can of zero value, interpolated between any edge of an be produced by the local cell methods, but erro- opposing sign. The signs at the n-cube vertices neous surfaces due to the locality of the surface are found by thresholding the spatial data at a decision (by false positives or false negatives) can discrete data point. Consequently, hypersurfaces be produced. Hill and Roberts [16] and Ning and within higher dimensions can be depicted using a Bloomethal [25] discuss some methods to disam- lattice of three-dimensional simplices (volumes), biguate a cell and hence remove the erroneous generated by local evaluation through a sample surfaces. Degenerate triangle pieces, where the set of points. surface-simplices become in®nitesimal, can also This paper discusses the problems, require- be created (as a result of the interpolation pro- ments and some solutions in implementing an cess), slowing the rendering and increasing the n-dimensional isosurface algorithm from spatial storage. However, decimation [30] or mesh dis- data, using local cell tiling methods. We fo- placement [23] techniques can be used to reduce cus on the generation of the n-dimensional ge- the number of (tiny) polygons. ometry rather than the rendering or realistic- representation (using say higher-dimensional 2.2 Surface Creation ± the Use of Sim- light) of the n-dimensional image. plices Initially we present some background informa- tion. We then describe the algorithms and tech- The local cell tilers often use a cube (rectilin- niques: ®rstly from a theoretical viewpoint and ear) cell representation, as in the Marching Cubes secondly within a practical framework. Finally, Algorithm. Tetrahedral cells have also been we discuss other possible implementations and used [34], the advantage being that a ®ner detailed solutions with their relevant merits and pitfalls, surface is created and, that from local sign alter- ending with conclusions and possible future ex- nations only one surface can intersect the tetra- tensions. hedron Ð there is no ambiguous face. However more polygons are usually generated [34] and as the tetrahedra can be divided into a local cube 2 Background cell, in con®gurations of ®ve or six tetrahedra, ambiguities are still present: because the isosur- There are (broadly) two ¯avours of surface mesh face is created by considering only neighbour data algorithms: (1) Planar Contours, that generate points. The ambiguities can be resolved using a surface over the boundary of adjacent contour twelve tetrahedra con®guration [5] requiring an 2 additional (tri-linear [15] or tri-cubic [1]) interpo- creating the popular hypercube depiction, where a lated center point. cube is displayed within a cube [12]. Simplices are also used in the representation of the surface mesh. All two and three dimensional graphic libraries support their rendering and there 3 De®nitions are algorithms that ef®ciently triangulate two and three dimensional areas [4]. Within this section we (1) present how the major- cases are generated; (2) describe a secondary par- tition separating the major-cases into sub-cases; 2.3 The Marching Cubes Surface Algo- (3) describe the various transformations that are rithm available and enumerate their respective major 8 and sub-cases. A surface can intersect a cube in 256 (2 ) ways: this can be broken down into 14 cases if mir- ror and rotational symmetry are considered or 15 3.1 The Motivation cases without the mirror operation. The 256 com- ponents can be stored in a lookup table containing A lookup table, to hold a complete enumeration of appropriate surface topology segments. the cases within three dimensions, contains 256 n n The marching cubes algorithm [20] uses a bi- elements (2 ± where is the number of ver- 16 nary threshold (the isosurface value) on the ver- tices). Therefore, there are 65536 (2 ) con®g- tices of a cube to generate an eight bit (one for urations for the vertex classi®cation on a four di- each vertex) number that is used as the key into mensional cube. If a Marching Cube method was the lookup table. The algorithm `marches' se- applied directly to four dimensions the lookup ta- quentially through the data, thresholding the eight ble could become unmanageable; with an aver- neighbouring data-samples and looking up the age of 20 tetrahedra for each major case. More- index to collect the surface intersections at that over techniques to subdivide the problem domain position. The vertices of the retrieved surface would (a) simplify the algorithm for explanation triangles are then interpolated into the position and implementation and (b) hopefully provide far governed by the threshold value, appropriately more ef®cient storage. shaded and rendered. 3.2 Major-Cases 2.4 N-dimensional geometry n 2 In n-dimensions each cube has vertices each Perceiving geometry within a higher dimensional of which may be inside or outside the surface, space is not intuitive.