[GRASS-user] 3-D plane workflow

Adam Dershowitz adershowitz at exponent.com
Sun Mar 3 09:07:19 PST 2013


Thanks very much.
That is just what I had in mind. Is it then possible to convert that to a raster elevation to use for some height calculations?

--Adam


-----Original Message-----
From: Anna Kratochvílová [kratochanna at gmail.com<mailto:kratochanna at gmail.com>]
Sent: Saturday, March 02, 2013 09:12 AM Pacific Standard Time
To: Adam Dershowitz
Cc: GRASS user list
Subject: Re: [GRASS-user] 3-D plane workflow


On Wed, Feb 27, 2013 at 12:38 AM, Adam Dershowitz
<adershowitz at exponent.com> wrote:
> I would like to be able to put some surfaces in the space over a DEM.  In
> other words, I have a DEM, and then I need to calculate some regions that
> are "keep-out zones" in space above.  I can calculate where these surfaces
> are fairly easily in Python, for example.  So the output of my calculation
> would be some points.  In the easiest example, it would just be 4 sets of
> x,y,z that represent the four corners of a plane.
> I would then like to be able to visually show this plane (or multiple
> planes), over the DEM, and show that the DEM does, or doesn't, penetrate
> this surface.  If it does penetrate, I would like to be able to calculate
> the penetration height.
>
> The kind of thing that I would like to do, would end up looking like the
> examples of Slovakia precipitation that Mitasova has done.  Some of those
> examples show a DEM, and then a surface that is being penetrated by the DEM.
> I have been reading some of the examples for 3D visualization (such as here:
> http://grasswiki.osgeo.org/wiki/Help_with_3D), but figured that a post here,
> but might get me a little more guidance about a general suggested workflow.
>
> In those examples, are the isosurfaces does as 3D rasters?  If I just want a
> plane in space, and I have the four corner points, is a 3D raster seem like
> the best way to draw it?  Are those examples displayed with NVIZ or
> paraview?
>
> Is the following a reasonable approach:
>
> Calculate the surfaces in some code and export as faces:
>
> F 4
>  0 100 10
>  50 50 80
>  0 0 10
>  0 100 10
>
> Then, import into Grass with v.in.ascii.
> Next, I would have to convert to a raster:  v.to.rast.
> Then, I would have to convert to an elevation:  r.to.rast3elev
> Finally, I could export both the surfaces and the ground DEM with
> r3.out.vtk, and visualize with paraview.
>
> Is this a reasonable workflow?  If I just need a semitransparent surface, is
> it necessary for it to be 3D, or can it be done with 2.5D (all I really need
> is x,y and elevation, like a DEM).  For, example, I might be able to just
> skip the raster version and use v.out.vtk?    Or maybe I can just use nviz
> to visualize what I need, if I can get it to the right format.
> If I do convert the plane to a raster, I suppose I can then use mapcalc to
> calculate the height difference between the plane and the ground DEM?
>
> I am just looking for some general workflow guidance for a good overall
> approach to get going.  It seems like there are some things that are not as
> clear about 3D work in GRASS, and I am just trying to get a reasonable
> picture.
> Any thoughts are greatly appreciate.
>
> Thanks much,
>


Hi Adam,

I am not sure if this is exactly what you want but have a look at the
attached screenshots. This is done in wxNviz. I created a plane (3
points) with

v.in.ascii -n input=inputFile.txt output=out format=standard separator=" "  z=3

The file containes what you already used (F 4 ...). Then you can
display it in 3D view. However, the transparency of the surface is not
working well together with the vector (note to developers: the same
issue is in old nviz). You can play with using wire style as in the
screenshot. If it is not clear, just ask for more details.

Regards,
Anna
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/grass-user/attachments/20130303/bad7ecd9/attachment.html>


More information about the grass-user mailing list