#1 Mon 17 November 2008 15:48
- satsdt
- Participant actif
- Lieu: montreux
- Date d'inscription: 6 Oct 2008
- Messages: 69
(MI 8.0) Tampons
Bonjour!
Tout d'abord désolé pour la faible description du sujet dans le titre, mais j'ai des difficultés à nommer ce que je veux faire...
J'ai donc mis sur une image attachée un exemple de ce que j'aimerai faire... il s'agit de zones tampons correspondant à des classes, ici de qualité de desserte en transports publics. En rouge, la qualité est supérieure, alors qu'en vert elle est plus faible.
Je possède une table de donnée contenant tous mes points, plus une pour chaque classe. Je sais faire des tampons, je sais aussi les assembler, par contre je ne sais pas comment faire cette superposition de classe et cette agrégation de valeur, i.e. lorsque le rayon du tampon grandit en fonction de la superposition des points.
Quelqu'un pour m'aider?
Merci beaucoup!
Hors ligne
#2 Mon 17 November 2008 16:22
- pierre agha
- Participant actif
- Lieu: TOULOUSE
- Date d'inscription: 15 Oct 2005
- Messages: 97
Re: (MI 8.0) Tampons
J'aurais tendance à dire
1 - il faut sauvegarder les tampons dans une table séparée; au préalable, nettoyer les chevauchements
2 - il faut ajouter un champ TXT "QUALITE DE LA DESSERTE"
3 - récupérer l'attribut du point desservi qui est dans le tampon (bonne, mauvaise desserte etc.)
4 - analyse thématique sur le champ "QUALITE" de la table tampon
PS : il m'est arrivé de faire un travail de ce type, j'ai alors construit une grille (chaque cellule est venue envelopper un arrêt, peu importe le sens). La fréquence (ou nombre) de passage à l'arrêt X est récupérable facilement dans la cellulle de la grille qui contient le point X. (Je suis parti du principe qu'un arrêt en milieu dense peut couvrir une zone de 300 m de côtés, en milieu diffus, c'est forcément plus.). Puis j'ai fait l'analyse thématique sur les cellules, ce qui a donné une image assez convenable de la desserte.
J'espère vous avoir aidé.
Hors ligne
#3 Tue 18 November 2008 16:43
- satsdt
- Participant actif
- Lieu: montreux
- Date d'inscription: 6 Oct 2008
- Messages: 69
Re: (MI 8.0) Tampons
Oui merci pour l'aide, je suis arrivé à qqch de correct en bidouillant mes tables.
Par contre, maintenant j'aimerai faire des découpages pour ne garder que la surface correspondant à chaque classe, dans le bute de calculer, à l'aide d'une autre couche, combien de personnes habitent dans chacune des classes. Le problème, c'est que je n'arrive pas à faire de découpage! Mes polygones ont des multipoints et je ne sais pas comment les enlever.
Hors ligne
#4 Tue 18 November 2008 16:58
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: (MI 8.0) Tampons
Pour ne garder que les polygones de ma_table (si c'est bien le but)
select * from ma_table where int(objectinfo(obj,1))=7 into sel1
Puis enregistrer sel1 sous un nouveau nom: ce sera une table "pur polygone" ...
Hors ligne
#5 Wed 19 November 2008 09:06
- satsdt
- Participant actif
- Lieu: montreux
- Date d'inscription: 6 Oct 2008
- Messages: 69
Re: (MI 8.0) Tampons
Merci beaucoup Maurice, ça a résolu le problème!
La grande classe!
Par contre, je n'ai pas compris comment ça marche. Est-ce que tu peux m'expliquer ce que fait MI avec
int(objectinfo(obj,1))=7 into sel1
???
Merci!!!
Hors ligne
#6 Wed 19 November 2008 09:27
- Maurice
- Membre
- Lieu: Montpellier
- Date d'inscription: 5 Sep 2005
- Messages: 5331
Re: (MI 8.0) Tampons
Alors: ObjectInfo(obj,1) questionne l'objet obj et la question est la 1: à quel type appartiens-tu svp (toujours poli )
La condition pour que l'objet soit sélectionné est qu'il réponde 7, soit "je suis un polygone"
Comme on n'est pas sûr de savoir en quoi cette réponse est donnée (float, smallint, int...), on met devant un int() qui traduit quoi qu'il en soit la réponse en integer et nous permet d'écrire sans crainte la condition "réponse"=7 ...
Hors ligne