Help with 3D: Difference between revisions
Line 10: | Line 10: | ||
* [http://grass.itc.it/grass61/screenshots/raster.php Screenshots] | * [http://grass.itc.it/grass61/screenshots/raster.php Screenshots] | ||
==== Example ==== | ==== Example ==== |
Revision as of 06:00, 16 October 2006
Raster 2.5D
This is the "typical" case, and most GRASS r.* modules work in this mode. The GIS layer is defined by north,south,east,west and the raster map's cell values represent the elevation.
Snippet from the Wikipedia definition: "The idea is that the program's canvas represents a normal 2D painting surface, but that the data structure that holds the pixel information is also able to store information regarding z-index (depth) as well as other information such as material settings, specularity, etc. With this data it is thus possible to simulate lighting, shadows, and so on."
Horizontal (2D) region settings are handled by the g.region module. The third dimension is unbound.
Example
(spearfish dataset)
g.region rast=elevation.10m nviz elev=elevation.10m
Raster 3D (voxels)
Support for 3D rasters (voxels) is relatively new in GRASS and is primarily handled by the r3.* modules. A 3D raster can be thought of as a stack of 2D raster maps forming a 3D cube of data cells.
Region settings
Region settings are handled by the g.region module. Special 3D raster controls for g.region include:
-3 flag: Prints 3D settings t Value for the top edge b Value for the bottom edge
res3 3D grid resolution (north-south, east-west and top-bottom) tbres Top-bottom grid resolution 3D
and
rast3d Set region to match this 3D raster map (both 2D and 3D values)
(??) 3dview Set region to match this 3dview file
Examples
- vox50 script
Vector 3D point data
- v.in.ascii -z
- r.in.xyz
Example
Vector 3D polygons
intro
- faces
- kernel
- GRASS ascii format definition
- v.in.ascii -z
Example
pyramid: the following is an example of 3D vector surfaces in GRASS standard ascii format. load with v.in.ascii.
# 3D Pyramid in GRASS: (kernel currently unused?) # v.in.ascii in=pyramid.vasc out=pyramid_3d format=standard -nz # g.region n=150 s=-50 w=-50 e=150 res=10 # r.mapcalc one=1 # nviz elev=one vect=pyramid_3d # # tip: in nviz try setting the raster surface transparency to 50% # F 5 0 0 10 0 100 10 100 100 10 100 0 10 0 0 10 F 4 0 0 10 50 50 80 100 0 10 0 0 10 F 4 0 100 10 50 50 80 0 0 10 0 100 10 F 4 100 100 10 50 50 80 0 100 10 100 100 10 F 4 100 0 10 50 50 80 100 100 10 100 0 10 K 1 1 40 50 40 1 1
Visualization Tools
- NVIZ: GRASS's own visualization suite
- output to VTK
- output to POVray
- output to V5D