Web area + svg + clic objet

Salut,

Je cherche une demo minimale.

Je charge dans une zone web un fichier svg
Le fichier svg contient des sièges d’avion, de théâtre

Je souhaite cliquer sur un siège dans la zone web et avoir une interaction avec la base de données 4D

C’est tout (pour commencer)

En v13 je me souviens avoir fait ça d’après une NT de Thomas Maul en attribuant une url aux objets html puis http://doc.4d.com/4Dv16/4D/16.3/WA-FIXER-FILTRES-URL.301-3652386.fr.htmlen les filtrant>. Mais maintenant il y a sans doute mieux, regarde “Accéder aux méthodes 4D” http://doc.4d.com/4Dv16/4D/16.3/Gestion-programmee-des-zones-Web.300-3652400.fr.htmlici>.

Ce n’est pas ça, a priori, que je veux. Ma zone web affiche un objet (un siège par exemple) issu d’une image svg et en cliquant sur cette objet j’attends des informations en retour. Comment détecter le clic et organiser une recherche dans la base, c’est ça que je cherche à étudier

C’est faisable sur http://doc.4d.com/4Dv17/4D/17/Outils-de-developpement.300-3932397.fr.htmlune image svg> mais t’as besoin d’une zone web absolument ?

: Manuel PIQUET

t’as besoin d’une zone web absolument ?

Je ne sais pas.

Je veux cliquer sur un siège et avoir de l’info
Survoler des objets et afficher des bulles d’aide
etc.

J’ai déjà vu ces demos mais je ne sais plus où.

Bonjour,

Dans la zone web, il faut mettre un https://developer.mozilla.org/fr/docs/Web/API/EventTarget/addEventListenereventListener> sur la zone svg. Dans la fonction appelée, on peut récupérer sur quoi a eu lieu l’event.

Ensuite, avec la méthode citée par Arnaud, on remonte ce qu’on veut à 4D.

j’ai trouvé ftp://ftp.4d.com/SAMPLE_DATABASES/4D/4D_v11_SQL_Samples/demo_dbs/svg/SVG%20Theater%20seating%20plan.4dbase.zipça> dans les ressources du site 4D sic…
c’est une base v11… :wink:

Une autre solution est d’utiliser des modules javascript purs du web. J’ai utilisé ceci :

http://www.goocode.net/demo/seat/

Pour le lien avec 4D, je me suis inspiré d’une base exemple de Miyako d’un carrousel :

Bonjour,

Oui, le plus simple reste d’utiliser une image et d’utiliser les commandes 4D du thème SVG et d’identifier la position souris.

Il faudrait sans doute que tu modifies le SVG en indiquant des IDs à tes sièges ou sur les objets qui doivent être réactifs au survol, au clic etc…
Dans les goodies SVG de VDL tu as tout ce qui faut pour commencer.

Je seconde sur l’approche d’utiliser une image au lieu de la zone web. Cela fonctionne très bien.

: Eric JUHEL

Bonjour,

Oui, le plus simple reste d’utiliser une image et d’utiliser les
commandes 4D du thème SVG et d’identifier la position souris.

Il faudrait sans doute que tu modifies le SVG en indiquant des IDs à
tes sièges ou sur les objets qui doivent être réactifs au survol, au
clic etc…
Dans les goodies SVG de VDL tu as tout ce qui faut pour commencer.

On fait de trucs plutôt sympa!

Quand faut il utiliser une zone web ou une image basique ?