Re: [GRASS-dev] v.to.db: next/prev line

2019-05-08 Thread Markus Metz
On Wed, May 8, 2019 at 2:34 PM Moritz Lennert 
wrote:
>
> On 8/05/19 11:44, Martin Landa wrote:
> > Hi,
> >
> > st 8. 5. 2019 v 11:31 odesílatel Moritz Lennert
> >  napsal:
> >> I don't think we have a tool for this currently. However, I'm not sure
that right and left are relevant terms for this case. Also: what do you do
in the case when three lines meet at a node. What would be the
'next_left_edge line' ?
> >
> > right, these terms comes from TopoGeo model based described in ISO
13249-3:2006.
> >
> > See eg.
> >
> > http://freegis.fsv.cvut.cz/gwiki/PostGIS_Topology
> >
https://trac.osgeo.org/postgis/attachment/ticket/3046/error_in_getRingedge.png
>
> Right. That does make sens. I didn't think of left and right in that way.
>
> I don't know what use cases are for this feature, compared to the ones I
> listed in my previous mail...

If I understand all this correctly, there is a next_left_edge,
next_right_edge,  previous_left_edge, previous_right_edge. Left would be
equivalent to going CW from the current node, right would be going CCW from
the current node. Next would be the end node, previous would be the start
node.

GRASS example (different from PostGIS terminology): if there are no other
lines connected at the start node of line 1, previous_left_edge =
next_edge_edge = 1, conforming to the GRASS topology model. The
corresponding function to get the next/previous line is
dig_angle_next_line().

Markus M
___
grass-dev mailing list
grass-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-dev

Re: [GRASS-dev] v.to.db: next/prev line

2019-05-08 Thread Moritz Lennert

On 8/05/19 11:44, Martin Landa wrote:

Hi,

st 8. 5. 2019 v 11:31 odesílatel Moritz Lennert
 napsal:

I don't think we have a tool for this currently. However, I'm not sure that 
right and left are relevant terms for this case. Also: what do you do in the 
case when three lines meet at a node. What would be the 'next_left_edge line' ?


right, these terms comes from TopoGeo model based described in ISO 13249-3:2006.

See eg.

http://freegis.fsv.cvut.cz/gwiki/PostGIS_Topology
https://trac.osgeo.org/postgis/attachment/ticket/3046/error_in_getRingedge.png


Right. That does make sens. I didn't think of left and right in that way.

I don't know what use cases are for this feature, compared to the ones I 
listed in my previous mail...


Moritz
___
grass-dev mailing list
grass-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-dev

Re: [GRASS-dev] v.to.db: next/prev line

2019-05-08 Thread Martin Landa
Hi,

st 8. 5. 2019 v 11:31 odesílatel Moritz Lennert
 napsal:
> I don't think we have a tool for this currently. However, I'm not sure that 
> right and left are relevant terms for this case. Also: what do you do in the 
> case when three lines meet at a node. What would be the 'next_left_edge line' 
> ?

right, these terms comes from TopoGeo model based described in ISO 13249-3:2006.

See eg.

http://freegis.fsv.cvut.cz/gwiki/PostGIS_Topology
https://trac.osgeo.org/postgis/attachment/ticket/3046/error_in_getRingedge.png

Martin

-- 
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa
___
grass-dev mailing list
grass-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-dev

Re: [GRASS-dev] v.to.db: next/prev line

2019-05-08 Thread Moritz Lennert
Hi Martin,

Am 8. Mai 2019 08:29:22 MESZ schrieb Martin Landa :
>Hi,
>
>I wonder whether there is a tool in GRASS which enables writing to
>attribute table information about next/previous lines. Basically info
>about next_right_edge/next_left_edge.
>
>My idea is to extend `v.to.db` option `sides` to work also for lines.
>
>v.to.db mysoils option=roads columns=left,right layer=2
>
>would write into `left` column next_left_edge line category, similarly
>for `right` column.
>
>Does it make sense to you or I am simply overlooking some existing
>tool in GRASS?



I don't think we have a tool for this currently. However, I'm not sure that 
right and left are relevant terms for this case. Also: what do you do in the 
case when three lines meet at a node. What would be the 'next_left_edge line' ?

I think this needs a little bit more thinking through...

I think a connectivity matrix between lines could be a possible alternative, as 
was recently discussed on the lists. Or possibly some form of association table 
node cats <-> line cats, knowing that will be n-to-n, so maybe best not to be 
directly integrated into the layers attribute table at least not the nodes' 
table. From the perspective of lines, one related lower hanging fruit I thought 
about was to extend v.to.db to include start_cat, stop_cat in addition to the 
current start/stop which provide the coordinates of nodes. This would then 
allow to easily identify lines that share common nodes.

Moritz
___
grass-dev mailing list
grass-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-dev

[GRASS-dev] v.to.db: next/prev line

2019-05-08 Thread Martin Landa
Hi,

I wonder whether there is a tool in GRASS which enables writing to
attribute table information about next/previous lines. Basically info
about next_right_edge/next_left_edge.

My idea is to extend `v.to.db` option `sides` to work also for lines.

v.to.db mysoils option=roads columns=left,right layer=2

would write into `left` column next_left_edge line category, similarly
for `right` column.

Does it make sense to you or I am simply overlooking some existing
tool in GRASS?

Thanks, Martin

-- 
Martin Landa
http://geo.fsv.cvut.cz/gwiki/Landa
http://gismentors.cz/mentors/landa
___
grass-dev mailing list
grass-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/grass-dev