SHAPE.TXT
Description
This text file is the shape model that SPC uses. SHAPE.TXT is output by densify.
The shape is in the ICQ format, which is basically a 6-sided cube. Q size (resolution) values are between 8 and 512 in increments of factors of 2: 8, 16, 32, 64, 128, 256, 512.
densify generates this file, usually by taking an existing shape model, increasing the scale of the vertices by a factor of two and calculating the height of the average maplet the passes through that vector. The program dumber will downscale the shape model to a lower resolution.
ICQ Format Description
The global topography models (GTM) are presented here in an implicitly connected quadrilateral (ICQ) format. The vertices are labeled as though they were grid points on the faces of a cube
0 --------- I --------- Q 0 . . . . . . . . . | . . . . . . . . . | . . . . . . . . . | . . . . . . . . . J . . . . F. . . . . | . . . . . . . . . | . . . . . . . . . | . . . . . . . . . Q . . . . . . . . .
so that each of the six faces (F) contains (Q+1)^2 vertices v(I,J,F) (I=0,Q; J=0,Q) and Q^2 facets f(I,J,F) (I=0,Q-1; J=0,Q-1).
The facet f(I,J,F) implicitly has the vertices v(I,J,F), v(I,J+1,F), v(I+1,J+1,F), v(I+1,J,F).
If the cube is unfolded, the six faces are arranged as
----------- | | | 1 | | | ----------------------------------------- | | | | | | 5 | 4 | 3 | 2 | | | | | | ----------------------------------------- | | | 6 | | | -----------
At each of the 12 edges of the cube, faces share common vertices so that, for example, the last row of face 1 has the same vertices as the first row of face 2. The common edge vertices are, with I=(0,Q),
v(I,Q,6)=v(Q-I,Q,4) v(I,0,6)=v(I,Q,2) v(I,0,5)=v(Q,Q-I,1) v(I,0,4)=v(Q-i,0,1) v(I,0,3)=v(0,I,1) v(I,0,2)=v(I,Q,1) v(q,I,6)=v(I,Q,5) v(q,I,5)=v(0,I,4) v(q,I,4)=v(0,I,3) v(q,I,3)=v(0,I,2) v(0,I,6)=v(Q-I,Q,3) v(0,I,5)=v(Q,I,2)
and the eight corners share vertices from three faces:
v(0,0,1) = v(0,0,3) = v(Q,0,4) v(0,Q,1) = v(0,0,2) = v(Q,0,3) v(Q,0,1) = v(0,0,4) = v(Q,0,5) v(Q,Q,1) = v(0,0,5) = v(Q,0,2) v(0,0,6) = v(0,Q,2) = v(Q,Q,3) v(0,Q,6) = v(0,Q,3) = v(Q,Q,4) v(Q,0,6) = v(0,Q,5) = v(Q,Q,2) v(Q,Q,6) = v(0,Q,4) = v(Q,Q,5)
Thus of the 6(Q+1)2 labeled vertices, only 6Q2+2 are independent.
File Structure
The file structure is quite simple. The first line contains the value of Q, and is followed by 6(Q+1)^2 lines containing the vertices. A piece of Fortran code for reading the file would look like:
READ(10,*) Q DO F=1,6 DO J=0,Q DO I=0,Q READ(10,*) (V(K,I,J,F), K=1,3) ENDDO ENDDO ENDDO
Here the vertices are represented by three-vectors. In some cases extra components are added representing albedo, color, surface gravity, or other surface characteristics. Since the labeling scheme implicitly contains the connectivity, no facet table is necessary.
The quadrilateral facets in the model are not necessarily flat, since there is no guarantee that the four vertices are coplanar. The facet normals are defined by the cross product of their diagonals. This approximation presents no real difficulty because the spacings of the vertices are very small compared to the size of the body. The standard form (Q=512) has 1.57 million vertices.
Although it is not necessary, it is convenient to take Q to be a power of 2. Because of this choice, it is easy to 'dumb down' a model by increasing the spacing by factors of 2. Vertices of the form v(2I,2J,F) are retained and the others discarded. Because of the quadrilateral facet structure, the models can also be 'densified' through bilinear interpolation.
Example
Here is a sample SHAPE.TXT file:
128 -218.72182 -8.78589 136.89489 -217.94953 -6.10207 138.09736 -217.59664 -3.46244 139.74751 -216.83911 -0.75086 140.98874 -216.04842 1.95086 142.19411 -215.34667 4.53459 143.49143 -214.06968 7.13078 144.16124 -212.35048 9.69145 144.34511 -210.62577 12.23122 144.54863 -209.47201 14.69014 145.33889 -208.85169 17.21845 146.67393 -208.58685 19.86090 148.37467 .....
Q Value
Q |
Vertices |
4 |
151 |
8 |
487 |
16 |
1735 |
32 |
6534 |
64 |
25351 |
128 |
99846 |
256 |
396294 |
512 |
1579014 |
The output values are:
Line 1 - Q (resolution). This gives the number of nodes for i and j. Multiple Q by 6 coordinate vector spaces to fill out the entire region.
Q*Q*6 is the total number of nodes, and line entries in this file.
A Q of 512 is the largest that we represent. It contains 1.5 million vertices and is 56 MB uncompressed.
Lines 2 and following - The location of a vertex in i, j, k space (Cartesian coordinates).
(Compiled by KD)
References
Gaskell, R.W., O. Barnouin-Jha, and D. Scheeres, Modeling Eros with Stereophotoclinometry, Abstract #1333, 38th LPSC, Houston, TX, 2007. [GASKELLETAL2007]
Gaskell R.W., Landmark navigation and target characterization in a simulated Itokawa encounter, AAS paper 05-289, AAS/AIAA Astrodynamics Specialists Conf., Lake Tahoe, CA, 2005. [GASKELL2005]