[Gfoss] openlayers, highlight features al passaggio su elemento esterno alla mappa

luca.casagrande a gmail.com luca.casagrande a gmail.com
Gio 6 Gen 2011 00:28:39 CET


Esatto, come suggerito da Giovanni,
è meglio applicare lo stile "evidenziato" solo alla feature che hai
scelto per poi tornare al "default" quando deselezioni la riga della
tabella (due stili e due eventi uno in e l'altro in out).

Ciao
Luca

Il 05 gennaio 2011 19:03, G. Allegri <giohappy a gmail.com> ha scritto:
> Applicare solo uno stile non è sufficiente, è necessario richiamare
> ridisegnare la feature.
>
>
> feat = wfs.getFeatureByFid(fid_della_deature);
> (oppure feat = wfs.getFeatureById(id_della_feature);)
> vectorlayer.drawFeature(feat,'temporary');
>
> 'temporary' è lo stile di selezione standard di OL esposto tramite
> OpenLayers.Feature.Vector.style
>
> Per deselezionare devi reimpostare a 'default' lo stile e ridisegnare
> nuovamente. In modo molto banale potresti salvarti una feature temporanea,
> contente l'ultima feature selezionata, da deselezionare prima di
> selezionarne una nuova.
>
> Per gestire tutto ciò in maniera elegante converrebbe crearsi un controllino
> ad hoc, tipo il SelectFeature, con un Handler apposito (invece
> OpenLayers.Handler.Feature) che si preoccupi di intercettare gli eventi
> sulla tabella (click, mouseout, ecc.).... Non so quanta esprienza hai con js
> e OL, non è una cosa complessa cmq.
>
> PS: invece di loopare tu sulle feature, in fase di creazione della tabella
> attributi registrati per ogni riga FID o ID della feature, così la puoi
> richiamare direttamente coi metodi dell'esempio.
>
> giovanni
>
>
>
> Il giorno 05 gennaio 2011 15:57, luca.casagrande a gmail.com
> <luca.casagrande a gmail.com> ha scritto:
>>
>> Brutalmente e senza ragionarci sopra, potresti:
>> - creare uno stile del tuo layer di punti in modo da avere una
>> rappresentazione evidenziata/non evidenziata in funzione di un certo
>> attributo
>> - al passaggio del mouse, leggere l'id della riga dalla tabella
>> - looppare tra le features e per quella che ha id uguale a quello
>> letto dalla tabella, aggiornare l'attributo in modo che risulti
>> evidenziata.
>>
>> Nella doc di OL dovresti trovare maggiori informazioni.
>>
>> Ciao
>> Luca
>>
>>
>> Il 05 gennaio 2011 15:41, beppe <beppenapo a gmail.com> ha scritto:
>> > Salve a tutti e buon inizio d'anno,
>> > vado subito al sodo: ho una mappa con una serie di elementi puntuali e,
>> > accanto, una tabella con alcune informazioni sugli elementi.
>> > Allo stato attuale delle cose, ogni punto si evidenzia (highlight) al
>> > passaggio del mouse su di esso. Vorrei, invece, che il punto si
>> > evidenziasse al passaggio del mouse sulla corrispondente riga della
>> > tabella.
>> >
>> > Sto provando, ma mi sono leggermente incartato :( ...  qualche dritta?
>> >
>> > Grazie a tutti per l'aiuto
>> >
>> > -beppe-
>> >
>> >
>> > _______________________________________________
>> > Iscriviti all'associazione GFOSS.it:
>> > http://www.gfoss.it/drupal/iscrizione
>> > Gfoss a lists.gfoss.it
>> > http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
>> > Questa e' una lista di discussione pubblica aperta a tutti.
>> > Non inviate messaggi commerciali.
>> > I messaggi di questa lista non rispecchiano necessariamente
>> > le posizioni dell'Associazione GFOSS.it.
>> > 485 iscritti al 20.11.2010
>>
>>
>>
>> --
>> Luca Casagrande
>> http://www.lucacasagrande.net
>> twitter: lucacasagrande
>> _______________________________________________
>> Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione
>> Gfoss a lists.gfoss.it
>> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
>> Questa e' una lista di discussione pubblica aperta a tutti.
>> Non inviate messaggi commerciali.
>> I messaggi di questa lista non rispecchiano necessariamente
>> le posizioni dell'Associazione GFOSS.it.
>> 485 iscritti al 20.11.2010
>



-- 
Luca Casagrande
http://www.lucacasagrande.net
twitter: lucacasagrande


Maggiori informazioni sulla lista Gfoss