Hmm it can't work, please do not consider the previous message, i'm doing changes.
Cheers, Rémi-C 2013/10/23 Rémi Cura <[email protected]> > Just to be sure could you validate please? > > The way I intend to find a source topogeom is related to target topogeom > is like this (in sql pseudo code): > > element_id is supposed to be the element_id found in the relation table > regarding *source* topogeom : > Example : what are the (lineal) target topogeom related to the (puntal) > source topogeom : > > `SELECT abs_next_left_edge UNION SELECT abs_next_right_edge > WHERE element_id = start_node OR element_id = end_node` > > > with the following > target > > puntal : SELECT start_node UNION SELECT end_node > lineal : SELECT abs_next_left_edge UNION SELECT abs_next_right_edge > areal : SELECT left_face UNION SELECT right_face > > > source: > > puntal : WHERE element_id = start_node OR element_id = end_node > lineal : WHERE element_id = abs_next_left_edge OR element_id = > abs_next_right_edge > areal : WHERE element_id = left_face OR element_id = right_face > > > > This may not be the optimal (we could use shortcut with edge_id), but it > is symmetric in every way. > > Cheers, > Rémi-C > > > 2013/10/23 Rémi Cura <[email protected]> > >> Function getRelated is working for getting lineal related to a given >> puntal topogeom, >> now I'm trying to generalize so to be able to get any topogeom related to >> any topogeom, whatever the feature_type. >> >> Cheers, >> >> Rémi >> >> >> 2013/10/22 Rémi Cura <[email protected]> >> >>> OK, >>> >>> for my private function I don't expect several topogeom columns in one >>> table. >>> I can correct the getlayerid function but I don't think other people >>> than me need it. >>> >>> For the GetRelated, I have a working query and I'm now trying to make it >>> a plpgsql function >>> >>> Cheers, >>> Rémi-C >>> >>> >>> 2013/10/22 Sandro Santilli <[email protected]> >>> >>>> On Tue, Oct 22, 2013 at 05:17:55PM +0200, Rémi Cura wrote: >>>> > I'm sorry for being so disorganized, >>>> > I lack experience with postgis_topology. >>>> > >>>> > It is only the 3d function I write for it. >>>> > >>>> > I was supposing you would need the layer_id in case there are multiple >>>> > topogeom columns in one table. >>>> > >>>> > Still I don't see a use case for having multiple topogeom columns in >>>> the >>>> > same table, even if I do use multiple geom columns for one table >>>> sometimes. >>>> > >>>> > I totally agree with your others conclusions and proposed signature >>>> > SET OF topogeometry GetRelatedLineal( >>>> > a_source_lineal_topogeom TOPOGEOMETRY, >>>> > a_target_puntal_topogeom_layer_id INT ) >>>> >>>> Note that there's no problem with having multiple TopoGeometry columns >>>> in >>>> the same table, as long as you reference a each column (layer) by the >>>> "topology_id"/"layer_id" pair (topology.layer primary key). >>>> >>>> > I don't like to put layer_id directly as input in function because it >>>> is >>>> > not a number user fixed. >>>> >>>> In that case you can specify (schema_name, table_name, feature_column), >>>> which _also_ identifies rows in topology.layer. >>>> >>>> > I think I can live with that as I wrote a function to get layer id >>>> from the >>>> > topogeom name : >>>> > public.rc_getlayerid(layer_name text, layer_schema text DEFAULT >>>> ''::text) >>>> >>>> Missing a column name here ? >>>> >>>> --strk; >>>> _______________________________________________ >>>> postgis-devel mailing list >>>> [email protected] >>>> http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-devel >>>> >>> >>> >> >
_______________________________________________ postgis-users mailing list [email protected] http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users
