|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() |
Bonjour,
J'espère poster dans la bonne rubrique. J'essaye de calculer une zone autour d'une (multi)ligne sur un SIG. Je pensais m'en sortir avec un buffer, mais cela ne correspond pas à ma demande. Pour faire simple, ce que j'aimerai avoir c'est : ![]() La ligne centrale étant le chemin. J'ai essayé (pour voir le résultat que j'aurai obtenu) : CREATE TABLE Essai as select MemGeomUnion(buffer) from buffer2030; alter table Essai add gid serial; alter table Essai add primary key (gid); Mais Quantum GIS se ferme lorsque je souhaite visualiser le résultat. Quelqu'un pourrait-il m'aider svp? Merci Dernière modification par Frederick_Etudiant ; 23/05/2007 à 16h26. |
|
|
|
|
|
#2 |
|
Membre actif
![]() Date d'inscription: avril 2007
Messages: 188
|
tu devrais poster ici : http://www.postgis.fr/forum
|
|
|
|
|
|
#3 |
|
Membre à l'essai
![]() |
merci
|
|
|
|
|
|
#4 |
|
Membre à l'essai
![]() |
N'ayant pas résolu mon problème, je fais un petit up
|
|
|
|
|
|
#5 |
|
Membre actif
![]() Date d'inscription: janvier 2006
Messages: 179
|
bonjour essaye seulement:
CREATE TABLE Essai as select MemGeomUnion(buffer) from buffer2030; n'ajoute pas la cle primaire |
|
|
|
|
|
#6 |
|
Membre actif
![]() Date d'inscription: janvier 2006
Messages: 179
|
bonjour essaye seulement:
CREATE TABLE Essai as select MemGeomUnion(buffer) from buffer2030; n'ajoute pas la cle primaire |
|
|
|
|
|
#7 |
|
Membre à l'essai
![]() |
J'obtiens dans ce cas l'erreur :
No oid column in table The table has no primary key nor oid column. Qgis requires that the table either has a primary key or has a column containing the PostgreSQL oid. For better performance the column should be indexed. |
|
|
|
|
|
#8 |
|
Membre actif
![]() Date d'inscription: janvier 2006
Messages: 179
|
peut_etre ceci
CREATE TABLE Essai as select MemGeomUnion(buffer) from buffer2030 with OIDS; |
|
|
|
|
|
#9 |
|
Membre à l'essai
![]() |
C'est bon, je suis parvenu à mes fins avec :
DROP TABLE Essai; CREATE TABLE Essai as select MemGeomUnion(buffer) from buffer2030; alter table Essai add gid serial; alter table Essai add primary key (gid); drop table EssaiInter; CREATE TABLE EssaiInter AS select B.gid, memgeomunion(intersection(B.the_geom,E.memgeomunion)) from buildup B, Essai E where isempty(intersection(B.the_geom,E.memgeomunion))=false GROUP BY B.gid; alter table EssaiInter add primary key (gid); J'ai donc l'intersection entre le buffer et buildup. Bon, maintenant il ne me reste plus qu'à échanger la fonction buffer par une fonction qui me retournera l'image que j'ai mise dans mon premier post. |
|
|
|
|
|
![]() |
||
Quantum GIS et postGIS
|
||
| Outils de la discussion | |
|
|