strk,

I changed from 0.001 to 0.00001 and had the similar error.  When I leave out he tolerance value all together, I got the following msg:

   ERROR: SQL/MM Spatial exception - geometry crosses edge 571239
   CONTEXT: PL/pgSQL function totopogeom(geometry,topogeometry,double
   precision) line 112 at FOR over SELECT rows PL/pgSQL function
   totopogeom(geometry,character varying,integer,double precision) line
   88 at assignment SQL state: XX000

I will try to break the update into multiple batches

Bo
On 1/16/19 9:14 AM, Sandro Santilli wrote:
On Tue, Jan 15, 2019 at 09:48:30AM -0700, Bo Guo wrote:

     UPDATE azgiv.roadcenterlines SET grd_topo_geom =
topology.totopogeom(grd_geom, 'azgiv_topo', l_topo_layer_id, l_tolerance);

I am getting the following error similar to below:

     ERROR: SQL/MM Spatial exception - geometry crosses edge 566760 CONTEXT:
PL/pgSQL function totopogeom(geometry,topogeometry,double precision)

Wonder if someone could shed some light as to what I need to look for?
I suggest you try with a smaller tolerance for a start. Variations to
tolerance can help in both directions too. Also try to converting to
TopoGeometry in chunks rather than all at once, so you can take the
chance to clean up small faces between runs.

PS: toTopoGeom _does_ split existing edges

--strk;
_______________________________________________
postgis-users mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/postgis-users
--
Bo Guo, PhD, PE
Gistic Research, Inc.
2033 E Warner Rd. Ste 105
Tempe, AZ 85284
www.gisticinc.com
Tel: 480-656-9962
_______________________________________________
postgis-users mailing list
[email protected]
https://lists.osgeo.org/mailman/listinfo/postgis-users

Reply via email to