![]() |
|||||||||||
| |||||||||||
![]() |
|
|
Outils de la discussion | Rechercher | Modes d'affichage |
|
|
|
(#1)
|
|
|||
[ArcGIS 9.x] Travailler avec des couches issues de sélection -
08/03/2006, 11h02
Bonjour à tous.
Je suis complétement néophyte en matière de SIG (mais je fais des efforts pour apprendre...) et l'utilisation que je fais d'Arcgis est certainement très loin de vos applications. Néanmoins, cela ne m'empêche pas d'avoir quelques soucis... Mon but est d'utiliser Arcmap pour étudier la répartition spatiale d'une collection osseuse provenant d'une grotte sépulcrale. J'ai donc une base mère, sous Access, où je rentre tous les os, avec pour chacun un certain nombre de caractéristiques : identification (fémur, humérus, tibia...), côté (droit, gauche ou indéterminé), coordonnées dans la grotte, classe d'âge (adulte, immature, indéterminé), pour les principales. J'ai également un champ qui me permet d'attribuer un même numéro aux fragments qui appartiennent à un même os (liaisons par collage) et un autre pour identifier, selon le même principe, les os qui appartiennent à une même personne (os symétriques notamment). Mon objectif est à la fois d'étudier la répartition des os en fonction de différents critères (par exemple, répartition des tibias droits, des humérus, des fémurs gauches...) et d'étudier les liaisons. Pour le premier, je procède de la façon suivante : j'ouvre la table mère, je crée un layer avec tous les os, puis je sélectionne par attribut dans ce layer pour créer un nouveau layer. Par exemple, je fais une sélection sur les fémurs et je crée un nouveau calque à partir de cette sélection. Ici, je rencontre deux problèmes : 1/ Ce n'en est pas vraiment un, mais j'aimerais pouvoir, sur un même layer, afficher différemment des os aux caractéristiques différentes. Par exemple, sur mon layer "fémurs", j'aimerais que les droits soient figurés avec des points rouge et les gauches avec des carrés verts. Je l'ai vu faire sous Mapinfo, mais impossible de le faire sous Arcmap... Ce n'est pas faisable ou quelque chose m'a échappé ? 2/ Là, c'est vraiment un problème... Lorsque je construits un layer à partir d'une sélection sur ma table principale, le programme fait une extraction est construit une table fille (je ne sais pas si on peut appeler cela comme ça, mais je pense que c'est compréhensible). Si je modifie les coordonnées d'un os existant dans Access, toutes les tables se mettent à jour et la position de l'os est corrigé. Jusque-là tout va bien... Par contre, si je rajoute un os de la même catégorie dans ma base, la table mère est bien mise à jour, ainsi que le plan général, mais... pas la table fille (ni le calque correspondant, bien sûr)... Je suppose, sans avoir essayé, qu'il en est de même si on supprime un os ou si on modifie son identification. Évidemment, cela procède d'une certaine logique : on peut penser qu'il n'y aura pas de mise à jour tant qu'on ne refera pas l'extraction. Oui, mais lorsqu'on a 50 calques, s'il faut les refaire à chaque fois qu'on ajoute ou enlève un enregistrement, l'utilisation du SIG perd un peu de son intérêt... Ce problème a-t-il une solution ? Pour mon second objectif, figurer les liaisons, j'utilise les Hawth's Tools. Ça marche, mais... Si je demande au programme de figurer les liaisons entre fémurs, par exemple, je sélectionne le layer "Fémurs" dans la liste déroulante, mais je me retrouve avec un calque où les liaisons sont figurées pour tous les os, c'est-à-dire que le programme a travaillé non pas sur la table fille des fémurs, mais sur la table mère. J'ai essayé avec ET Geowizards et j'ai exactement le même problème (+ d'autres, mais je sais pourquoi). Donc me voilà en panne... Je remercie déjà tous ceux qui sont arrivés à lire jusque-là... Et je remercie d'avance tous ceux qui pourront m'apporter leurs lumières. |
|
(#2)
|
|
(#3)
|
|
|||
|
Merci Quef pour cette première réponse ultra-rapide. Bravo pour la réactivité !
Voilà déjà une chose de réglée. Je n'étais visiblement pas allé jusqu'au chapitre symbologie, si tant est qu'il soit traité dans la maigre doc que je possède. Il faut dire qu'en plus je travaille sur la version anglaise d'Arcgis et que déjà que ce n'est pas simple, alors en V.O... Pour la question, il s'agit de la deuxième solution : je crée une couche en fonction de la sélection (i. e. je fais une sélection par attributs puis "Create layer from selected features"). Le logiciel utilisé est Arcmap 9.0 Je pense que le troisième problème n'est pas étranger au second et quelque chose me dit que si je règle ce dernier, le reste suivra. Mais une chose après l'autre ! Pour le reste, je ne manquerai pas de vous tenir au courant du devenir du projet (et pas seulement des problèmes rencontrés !). Il s'agit d'un travail que j'ai proposé à un étudiant en master pro "Méthodes de l'archéologie", dans le cadre d'un stage. En effet, nous n'avons guère d'outils pour étudier la répartition spatiale et les liaisons des matériels dans des sites archéologiques (ou des restes humains dans des sépultures collectives, comme ici, mais le principe est le même) et que l'utilisation d'un SIG présente de ce point de vue, du moins sur le papier, des potentialités intéressantes, même si c'est un peu éloigné de la fonction première de ce type de logiciel (mais il faut dire que les archéologues sont un peu spécialites du détournement des logiciels de leur fonction première ). Curieusement pourtant, il n'y a quasiment aucune étude qui ait été faite sur ce type d'utilisation. Même si les SIG sont régulièrement utilisés en archéologie (il y a d'ailleurs quelques réprésentants de cette branche sur ce forum), c'est surtout pour faire des plans d'ensemble de structures sur des sites de taille importante, ou des cartes archéologiques (là, c'est une application plus adaptée). En tout cas, je suis content que ça intéresse certains d'entre vous ! |
|
(#4)
|
|
||||
|
Ce détournement de logiciel me semble très pertinent, et j'ai envie de savoir si ça marchera !
Pour en revenir à la question 2, je comprend pourquoi ça ne fonctionne pas. En fait, vous avez fait une sélection par requête, puis créé une couche à partir de celle ci. L'ajout d'une entité, même correspondant à la requête, n'est pas répercutée sur les couches virtuelles. En effet, le logiciel retient la sélection effectuée, mais pas le principe de la sélection. Il existe un moyen pour aboutir à votre souhait, en cas de figuration de couche via requête. Il s'agit de dupliquer la présence de votre shape (ou classe d'entité) à l'écran - en lançant autant de fois que nécessaire ce fichier, ou en faisant un copier/coller - puis, dans les propriétés de chaque couche, établir l'ensemble de définition via requête. Dès lors, l'ajout dans le "fichier mère" d'une entité correspondant à cette requête figure automatiquement dans la couche. |
|
(#5)
|
|
|||
|
1/ Merci pour les encouragements !
2/ Merci pour le "truc" ! Ça marche parfaitement ! Évidemment, pour les pros du SIG ça doit faire partie des manip de base, mais moi qui ai passé deux jours à essayer de bidouiller mes extractions pour que ça fonctionne et parcouru les forums de long en large pour trouver la solution, je suis comme un enfant devant le sapin le matin de Noël Bon, comme ce monde est imparfait, ça n'a pas réglé le problème des liaisons avec le Hawth's tools : il cherche toujours les os ayant le même identifiant dans toute la base, et non dans le résultat de la requête... Bad intuition ! Mais là je crains hélas, à moins que quelqu'un sorte de son chapeau une solution miracle, que pour obtenir exactement ce que je veux il faille tremper les mains dans le camboui de VB... En tout cas, encore merci Quef ! Le projet a fait des pas de géant aujourd'hui ! Je pense qu'à terme, je mettrai un lien sur un pdf du mémoire, afin que ceux qui le voudraient puissent y jeter un coup d'oeil. |
|
(#6)
|
|
||||
|
Pour que Hawth travaille avec chaque sélection, il faut préalablement exporter ces couches "en dur" (clic droit / exporter des données). Un nouveau fichier sera créé, mais celui-ci ne subira pas les modifications du fichier mère.
Donc ces tratements sont à effectuer une fois que la base de données est stabilisée, pour éviter de refaire plusieurs fois la même manipulation... P.S. : je ne connais pas Hawth, donc il peut exister une option pour un traitement sur une partie d'un fichier. Un autre utilisateur d'ArcGIS pourra, le cas échéant, le signaler... |
![]() |
| Outils de la discussion | Rechercher |
| Modes d'affichage | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| [Actualité] Le Géoportail de l'IGN | Marie | Ressources | 174 | 14/07/2009 12h07 |
| [ArcGIS 9.x] Afficher des couches de dataframes et instancier table | lilas_blanc | Programmation | 1 | 04/12/2006 08h47 |
| [ArcGIS 9.x] Intersection de plusieurs couches | stephoufe | Assistance Technique | 7 | 29/06/2006 14h20 |
| [ArcGIS 9.x] Travailler avec du raster | Bessi | Assistance Technique | 2 | 05/04/2006 23h24 |
| [Access 97/2000] Capacités et comparaison | Thomas | Assistance et Programmation | 10 | 04/06/2004 17h14 |