|
Publicité | ||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() |
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. |
|
|
00
|
|
|
#2 |
|
Membre actif
![]() Développeur multimédia Inscription : avril 2007 Messages : 175 ![]() |
tu devrais poster ici : http://www.postgis.fr/forum
|
|
|
00
|
|
|
#3 |
|
Futur Membre du Club
![]() |
merci
|
|
|
00
|
|
|
#4 |
|
Futur Membre du Club
![]() |
N'ayant pas résolu mon problème, je fais un petit up
|
|
|
00
|
|
|
#5 |
|
Membre confirmé
![]() Inscription : janvier 2006 Messages : 223 ![]() |
bonjour essaye seulement:
CREATE TABLE Essai as select MemGeomUnion(buffer) from buffer2030; n'ajoute pas la cle primaire |
|
|
00
|
|
|
#6 |
|
Membre confirmé
![]() Inscription : janvier 2006 Messages : 223 ![]() |
bonjour essaye seulement:
CREATE TABLE Essai as select MemGeomUnion(buffer) from buffer2030; n'ajoute pas la cle primaire |
|
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() |
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. |
|
|
00
|
|
|
#8 |
|
Membre confirmé
![]() Inscription : janvier 2006 Messages : 223 ![]() |
peut_etre ceci
CREATE TABLE Essai as select MemGeomUnion(buffer) from buffer2030 with OIDS; |
|
|
00
|
|
|
#9 |
|
Futur Membre du Club
![]() |
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. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com