[GRASS-dev] 2D to 3D points
Michael Barton
michael.barton at asu.edu
Sun Mar 2 21:00:25 EST 2008
On Mar 2, 2008, at 12:03 PM, grass-dev-request at lists.osgeo.org wrote:
> Date: Sun, 2 Mar 2008 09:24:52 -0800
> From: Dylan Beaudette <dylan.beaudette at gmail.com>
> Subject: Re: [GRASS-dev] 2D to 3D points
> To: grass-dev at lists.osgeo.org
> Cc: Benjamin Ducke <benjamin.ducke at ufg.uni-kiel.de>
> Message-ID: <200803020924.52526.dylan.beaudette at gmail.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> On Saturday 01 March 2008 10:20:45 pm Hamish wrote:
>> Benjamin Ducke wrote:
>>> That should work but it may not exactly be easy to locate for a
>>> novice user.
>>>
>>> How about a little wrapper script for v.transform that simplifies
>>> this action?
>>>
>>> I am increasingly concerned about the number of, sometimes basic,
>>> geoprocessing functions that are present in GRASS but "hidden"
>>> in complex module options. Of course people can always mail to
>>> this list but in the first place it will create frustration for
>>> them and possible turn them away.
>>
>> So we make little wrapper scripts like v.dissolve and v.centroids.
>> That's much better than dealing with code duplication.
>>
>> but that shouldn't wrap 3 module commands together with temporary
>> maps
>> etc to perform something as simple as the 2d+attr column -> 3d points
>> conversion. If as Maciek suggests v.transform could do the job then
>> it's not so bad. The v.transform name even sounds right for the job.
>>
>>
>> Hamish
>>
>
> I agree that we should avoid code duplication at any cost, and
> v.transform
> does the job. However, doesn't it make more sense to put that code
> (for
> points) into v.extrude ? Or, is v.extrude primarily for areas by
> design?
>
> Dylan
>
IMHO, v.type is a much better place to put this. v.type is already
designed to transform vector objects from one type of vector object
to another. Changing a vector object from a 2D point to a 3D point
seems to fit this concept well. (And while we're at it, v.type should
be changed to work like v.type.sh).
v.transform is really a georectifying module for vector objects. It's
a conceptual stretch to include transforming 2D to 3D points there--
though it does work.
v.extrude is designed to extrude a 'flat' object into a 3-dimensional
space--primarily polygon to polyhedron. Following this concept, it
should extrude a line into a 'wall' and a point into a 1-dimensional
'pole'. It is not aimed at repositioning dimensionless points in 3D
space.
Michael
More information about the grass-dev
mailing list