Thank you Rémi,
I think I have mixed up some issues. I thought the error was produced by
the problematic layer, but is mapa_ruido_dia the problem, it's a
completly mess :(
I have tried to clean the layer, but I don't know how exactly should I
proceed.
Can anyone lead me in this task with some links or tips?
Thank you!!
On 12/02/2014 11:49 AM, Rémi Cura wrote:
Hey,
some common answer about precision issue :
1. : offset your coordinate to gain in precision :
723120.23091093975 4379700.195452339 -> 120.23091093975XXX ,
700.195452339XXXX
2. snap to grid you input data
3. check that your input geoms are valid : st_isvalid : st_makevalid()
Cheers,
Rémi-C
2014-12-02 11:45 GMT+01:00 Luís Miguel Royo Pérez
<[email protected] <mailto:[email protected]>>:
Hi everyone,
I'm trying to perform a quite simple analysis in Postgis, but I'm
facing a TopologyException where there's no features.
You can find the data I'm using in this link
<https://mega.co.nz/#%21pFgnCBoA%21zx-Tb78nPGzL7Fcbw7dMheSbIrMfRJjJ9yV1Qv7Wx6o>.
What I try to do is the next:
* First I want to create a buffer for emt_paradas, and the layer
valenbisi, and then intersect them, the result I will call
"intersect_1".
| select st_intersection(buf_emt.st_union,buf_valenbisi.st_union)
from
(SELECT ST_union(st_buffer(emt_paradas.geom, 200)) FROM emt_paradas
)as buf_emt,
(SELECT ST_union(st_buffer(valenbisi.geom, 200)) FROM valenbisi )as
buf_valenbisi|
* Second, I want to create a buffer for carril_bici, and
intersect with "intersect_1". The result I will call
"intersect_2".
| select
st_intersection(buf_carril_bici.st_union,inter_emt_valenbisi.st_intersection)
from
(select st_intersection(buf_emt.st_union,buf_valenbisi.st_union)
from
(SELECT ST_union(st_buffer(emt_paradas.geom, 200)) FROM emt_paradas
)as buf_emt,
(SELECT ST_union(st_buffer(valenbisi.geom, 200)) FROM valenbisi )as
buf_valenbisi) as intersect_1|
* Third, I want to create a buffer for layer ocio and make a
difference with "intersect_2". The result I will call: "diff_1".
| select st_difference(intersec_2.st_intersection, buf_ocio.st_union)
from
(select
st_intersection(buf_carril_bici.st_union,inter_emt_valenbisi.st_intersection)
from
(select st_intersection(buf_emt.st_union,buf_valenbisi.st_union)
from
(SELECT ST_union(st_buffer(emt_paradas.geom, 200)) FROM emt_paradas
)as buf_emt,
(SELECT ST_union(st_buffer(valenbisi.geom, 200)) FROM valenbisi )as
buf_valenbisi) as inter_emt_valenbisi,
(SELECT ST_union(st_buffer(carril_bici.geom, 200)) FROM carril_bici
)as buf_carril_bici) as intersectionEMT_valenbisi_carrilBici,
(SELECT ST_union(st_buffer(ocio.geom, 250)) FROM ocio )as buf_ocio|
* Finnaly I want to intersect "diff_1" with layer
mapa_ruido_dia, ideally where the field gridcode equals one or
two.
| select 1 as id, st_intersection(diff_1.st_difference,
mapa_ruido_dia.geom)
from
(select
st_difference(intersectionEMT_valenbisi_carrilBici.st_intersection,
buf_ocio.st_union)
from
(select
st_intersection(buf_carril_bici.st_union,inter_emt_valenbisi.st_intersection)
from
(select st_intersection(buf_emt.st_union,buf_valenbisi.st_union)
from
(SELECT ST_union(st_buffer(emt_paradas.geom, 200)) FROM emt_paradas
)as buf_emt,
(SELECT ST_union(st_buffer(valenbisi.geom, 200)) FROM valenbisi )as
buf_valenbisi) as inter_emt_valenbisi,
(SELECT ST_union(st_buffer(carril_bici.geom, 200)) FROM carril_bici
)as buf_carril_bici) as intersectionEMT_valenbisi_carrilBici,
(SELECT ST_union(st_buffer(ocio.geom, 250)) FROM ocio )as buf_ocio)as
diff_1, mapa_ruido_dia
where mapa_ruido_dia.gridcode='1' or mapa_ruido_dia.gridcode='2'
|
Is in this last one query when Postgis show me the TopologyException
|> Error performing intersection: TopologyException: Input geom 1 is
> invalid: Self-intersection at or near point 723120.23091093975
> 4379700.195452339 at 723120.23091093975 4379700.195452339
Any ideas? Thank you very much!|
_______________________________________________
postgis-users mailing list
[email protected] <mailto:[email protected]>
http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users
_______________________________________________
postgis-users mailing list
[email protected]
http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users
_______________________________________________
postgis-users mailing list
[email protected]
http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users