27.09.2018, 10:17
Hallo Christian,
folgend meiner E-Mail von vor ein paar Tagen bzgl. der Darstellung von mehreren Tracks gleichzeitig ...
Ich habe bereits einen funktionierenden Prototyp erstellt. Als Illustration wie das am lebenden Objekt aussieht habe ich einen Screenshot angehängt. Es werden alle vorhandenen Tracks blau dargestellt, die selektierte Positionsliste rot. Das funktioniert prinzipiell, allerdings nicht zuverlässig. Die Implementierung funktioniert folgendermaßen:
P.S. eine Alternative zu dem beschriebenen Vorgehen wäre vielleicht die Nutzung eines Overlays, das habe ich aber nicht probiert ...
Grüße, Andreas
folgend meiner E-Mail von vor ein paar Tagen bzgl. der Darstellung von mehreren Tracks gleichzeitig ...
Ich habe bereits einen funktionierenden Prototyp erstellt. Als Illustration wie das am lebenden Objekt aussieht habe ich einen Screenshot angehängt. Es werden alle vorhandenen Tracks blau dargestellt, die selektierte Positionsliste rot. Das funktioniert prinzipiell, allerdings nicht zuverlässig. Die Implementierung funktioniert folgendermaßen:
- Ich habe mir zunächst mit einem statischen Objekt ('RouteSelectionModel') beholfen, in dem die aktuell selektierte BaseRoute sowie alle existierenden gespeichert sind (nicht schön, aber erstmal egal!)
- Wenn die comboBoxChoosePositionList in ConverPanel einen stateChange bekommt, das wird dieses RouteSelectionModel aktualisiert. Alle Routen sowie die selektierte Route kommen aus dem formatAndRoutesModel - soweit so gut.
- Zum eigentlichen Zeichen der Tracks habe ich MapsforgeMapView erweitert.
- In TrackUpdater.internalAdd() werden alle existierenden Routen gezeichnet - außer der selektierten (das ist ja auch nicht nötig). Das passiert, BEVOR die Positionsliste gezeichnet wird, damit selbige die 'inaktiven' Tracks überlagert. Dazu wird ein neuer GroupLayer eingefügt und je eine Polyline gezeichnet. in internalRemove() werden diese gelöscht, wenn sich die Selektion ändert.
P.S. eine Alternative zu dem beschriebenen Vorgehen wäre vielleicht die Nutzung eines Overlays, das habe ich aber nicht probiert ...
Grüße, Andreas