Cartographie avec couches et transparence

Résolu
fafazoom Messages postés 3 Date d'inscription mardi 21 octobre 2003 Statut Membre Dernière intervention 16 juillet 2008 - 10 juil. 2008 à 15:35
fafazoom Messages postés 3 Date d'inscription mardi 21 octobre 2003 Statut Membre Dernière intervention 16 juillet 2008 - 16 juil. 2008 à 00:37
Bonjour,

Étant étudiant en architecture, je cherche à pouvoir présenter mes travaux d'urbanisme dans une interface qui me permettrait de superposer plusieurs couches (vectoriel ou bitmap) et des régler pour chacune l'affichage et/ou la transparence. Un peu comme on peut voir sur GéoPortail et de plus en plus de site actuelement.
Je voudrait pouvoir simplement rajouter des nouvelles couches et puis bien sur naviguer et zoomer dedans.

Pensez-vous qu'un script flash puisse réaliser cela ? Ou faut-il que je me tourne vers une autre techno?

Merci de vos réponses et suggestions.

4 réponses

raddreamer Messages postés 170 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 22 décembre 2010
10 juil. 2008 à 16:29
Bonjour,
Vu que flash permet de gérer des clips dynamiquement, tu peux te permettre toutes les fantaisies que tu veux,
Suffit de construire ta petite interface correctement pour la navigation (ou un système astucieux de clics et assigner des commandes gérant la transparence de chaque image (mise dans un clip)
pas facile pour arriver au niveau de geoportail quand on s'y connait pas mais c'est possible de faire un truc plus simple :)
3
fafazoom Messages postés 3 Date d'inscription mardi 21 octobre 2003 Statut Membre Dernière intervention 16 juillet 2008
12 juil. 2008 à 03:32
Ok, merci de la réponse, ça fesait longtemps que j'avais pas touché à Flash alors j'appréhendais un peu (surtout l'AS).
En bidouillant avec l'aide de Flash et les composants CheckBox et Slider, j'arrive à un truc comme ça :

avec ce code sur la première image:
import fl.controls.Slider;
import fl.events.SliderEvent;
import fl.controls.Label;
import fl.controls.CheckBox;
slider1.value = 100;
slider1.addEventListener(SliderEvent.CHANGE, changeHandler);
check1.addEventListener(MouseEvent.CLICK, clickHandler);

function changeHandler(event:SliderEvent):void {
    label1.text = event.value + "%";
    habitats.alpha = event.value * .01;
}
function clickHandler(event:MouseEvent):void {
    habitats.alpha = 0;
}
Le problème c'est que j'arrive pas à faire que l'image réapparaisse quand je clique sur le bouton CheckBox
Ça doit être tout bête mais j'arrive pas à trouver...

Sinon le top serait un flash ou en mettant les images dans un dossier, le flash génère automatiquement les couches  . Mais bon, j'ai pas trouve de source dans ce sens la...
Merci pour votre aide.
0
raddreamer Messages postés 170 Date d'inscription lundi 19 février 2007 Statut Membre Dernière intervention 22 décembre 2010
12 juil. 2008 à 05:10
- j'ai pas encore essayé mais ça doit être possible de charger ça dans un loadvars avec un fichier xml contenant les coordonnées de chaque image,

- faire que le fichier flash génère autant que movieclip avec l'image correspondante à l'intérieur à l'intérieur et les charger dans des depths différents

- créer à partir d'une variable contenu dans le xml le nombre d'instance nécessaire pour tes boutons gérant l'apparition et la transparence de tes différentes images.

En discutant de ça faudrait que j'essaie j'ai cette carte du Japon réalisée en flash que j'aimerai bien gérer dynamiquement dans ce sens :
http://radidaldream.free.fr/carte/ pour le moment c'est un chargement de carte avec des calques différents à chaque fois mais le but ensuite est de faire la meme chose comme tu veux le faire sur ton site ;)
enfin pour le moment priorité au concours de jeu !

si j'ai le temps faudrait que j'essaie d'améliorer ma carte tiens
0
fafazoom Messages postés 3 Date d'inscription mardi 21 octobre 2003 Statut Membre Dernière intervention 16 juillet 2008
16 juil. 2008 à 00:37
Ok, merci de tes précisions.
J'arrive à faire marcher mon fichier manuellement avec le code suivant :
import fl.controls.Slider;
import fl.events.SliderEvent;
import fl.controls.Label;
import fl.controls.CheckBox;
// valeur slider
slider1.value = 100;
// déclaration
slider1.addEventListener(SliderEvent.CHANGE, changeHandler1);
check1.addEventListener(MouseEvent.CLICK, clickHandler1);
// fonction
function changeHandler1(event:SliderEvent):void {
    label1.text = event.value + "%";
    habitatsN.alpha = event.value * .01;
}
function clickHandler1(event:MouseEvent):void {
    habitatsN.visible = event.target.selected;
}
Le problème après c'est qu'il faut que je place et nome, à chaque carte ajoutée ,un curseur et sa légende + le code AS ...
Pas très chic tout cela.

Donc je vais essayer de réfléchir à la solution que tu évoque, mais pas évident vu mes connaissances limités du codage.
Sinon t'aurais pas vu une source qui pourrait servir de base de départ?

Merci
0
Rejoignez-nous