Re: [GRASS-user] Apply arbitrary edit to all coordinates in a vector

2018-03-14 Thread Ken Mankoff
One solution is to export, pipe through invproj, and re-import:


v.out.ascii Z layer=-1 -c format=standard output=Zproj --o

rm Zrot
regex="[-]\d*\.\d*\s*\d*\.\d*"
while read line; do
  if [[ $line =~ $regex ]]; then
echo $line | invproj -f "%f" +proj=ob_tran +o_proj=latlon +o_lon_p=-200
+o_lat_p=18 +lon_0=180 -m 57.295779506 >> Zrot
  else
echo $line >> Zrot
  fi
done < Zproj

  -k.


On Tue, Mar 13, 2018 at 3:06 PM, Ken Mankoff  wrote:

>
>
> On Tue, Mar 13, 2018 at 1:05 PM, Ken Mankoff  wrote:
>
>>
>>
>> On Tue, Mar 13, 2018 at 12:21 PM, Helmut Kudrnovsky 
>> wrote:
>>
>>> Ken Mankoff wrote
>>> > Is there a way to take an arbitrary vector from
>>> > GRASS and apply an arbitrary transformation to each element? v.edit
>>> has a
>>> > move feature, but this is not what I want.
>>> >
>>>
>>> v.transform - Performs an affine transformation (shift, scale and
>>> rotate) on
>>> vector map.
>>> https://grass.osgeo.org/grass74/manuals/v.transform.html
>>>
>>> not sure it is what you're looking for.
>>>
>>
>> Yes that would do it just fine. Unfortunately I'm not sure how to get the
>> transformation matrix that invproj uses. I'll try to figure this out...
>>
>>
> Actually this does not work because I'm in EPSG:4326 (lon,lat) location
> and there are scaling issues. I think I need to access proj directly for
> all vertices...
>
>   -k.
>
___
grass-user mailing list
grass-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-user

Re: [GRASS-user] Apply arbitrary edit to all coordinates in a vector

2018-03-13 Thread Ken Mankoff
On Tue, Mar 13, 2018 at 1:05 PM, Ken Mankoff  wrote:

>
>
> On Tue, Mar 13, 2018 at 12:21 PM, Helmut Kudrnovsky  wrote:
>
>> Ken Mankoff wrote
>> > Is there a way to take an arbitrary vector from
>> > GRASS and apply an arbitrary transformation to each element? v.edit has
>> a
>> > move feature, but this is not what I want.
>> >
>>
>> v.transform - Performs an affine transformation (shift, scale and rotate)
>> on
>> vector map.
>> https://grass.osgeo.org/grass74/manuals/v.transform.html
>>
>> not sure it is what you're looking for.
>>
>
> Yes that would do it just fine. Unfortunately I'm not sure how to get the
> transformation matrix that invproj uses. I'll try to figure this out...
>
>
Actually this does not work because I'm in EPSG:4326 (lon,lat) location and
there are scaling issues. I think I need to access proj directly for all
vertices...

  -k.
___
grass-user mailing list
grass-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-user

Re: [GRASS-user] Apply arbitrary edit to all coordinates in a vector

2018-03-13 Thread Ken Mankoff
On Tue, Mar 13, 2018 at 12:21 PM, Helmut Kudrnovsky  wrote:

> Ken Mankoff wrote
> > Is there a way to take an arbitrary vector from
> > GRASS and apply an arbitrary transformation to each element? v.edit has a
> > move feature, but this is not what I want.
> >
>
> v.transform - Performs an affine transformation (shift, scale and rotate)
> on
> vector map.
> https://grass.osgeo.org/grass74/manuals/v.transform.html
>
> not sure it is what you're looking for.
>

Yes that would do it just fine. Unfortunately I'm not sure how to get the
transformation matrix that invproj uses. I'll try to figure this out...

  -k.
___
grass-user mailing list
grass-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-user

Re: [GRASS-user] Apply arbitrary edit to all coordinates in a vector

2018-03-13 Thread Helmut Kudrnovsky
Ken Mankoff wrote
> Dear GRASS list,
> 
> I'm working with data in a rotated pole projection. I'm able to convert
> any
> (lon,lat) pair from its "real" coordinates to its rotated pole coordinates
> by piping it through the following proj command:
> 
> invproj -f "%f" +proj=ob_tran +o_proj=latlon +o_lon_p=-200 +o_lat_p=18
> +lon_0=180 -m 57.295779506
> 
> In order to maintain the integrity of the data, I'd like to keep working
> in
> its native coordinates. Is there a way to take an arbitrary vector from
> GRASS and apply an arbitrary transformation to each element? v.edit has a
> move feature, but this is not what I want.
> 
> I think I can access all points and lines and boundaries with "v.out.ascii
> Z layer=-1 -c format=standard". But if I go this route I'll need to parse
> apart the output, pipe only the coordinates through the invproj command,
> and then re-assemble. I hope there is an easier way.
> 
> Thanks,


v.transform - Performs an affine transformation (shift, scale and rotate) on
vector map. 
https://grass.osgeo.org/grass74/manuals/v.transform.html

not sure it is what you're looking for.



-
best regards
Helmut
--
Sent from: http://osgeo-org.1560.x6.nabble.com/Grass-Users-f3884509.html
___
grass-user mailing list
grass-user@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-user