# Route in JxMapkit zeichnen



## FreeStyleSkier (4. Sep 2010)

Hallo Leute!

Habe folgende Frage:

Ist es möglich mit JxMapKit eine Route einzuzeichnen?
Voraussetzungen sind folgende:
Bekomme ca. im 1 sek. Takt GPS-Daten herein und sollte diese auf einer Karte darstellen. Die GPS-Daten stammen von einem fahrend Fahrzeug, also eine Art Tracking. Und ist es nun möglich mit JxMapkit dies darzustellen, wie z.b. in GoogleMaps auf mobilen Geräten der ja zusätzlich die gefahrene Strecke farbig einzeichnet (inkl. Echtzeitverfolgung)?

Hoffe ihr könnt mir weiterhelfen!!

Danke im voraus


----------



## eRaaaa (4. Sep 2010)

Hey,

ich musste das vor kurzem auch machen, du kannst dazu einen Painter mit setOverlayPainter anmelden und dann wie gewohnt mit dem graphics-Objekt darauf zeichnen.
Hier findest du ein Beispiel mit Waypoints


----------



## FreeStyleSkier (4. Sep 2010)

Danke für die schnelle Antwort!

Hast du dann die Koordinaten mit getToPixel umgewandelt, oder einfach die GPS-Koordinaten verwendet?


Greets


----------



## eRaaaa (4. Sep 2010)

Nein, die wurden umgerechnet. getToPixel sagt mir jetzt nichts, aber ich denke wir meinen beide das gleiche?! Ich habe convertGeoPositionToPoint benutzt!
 Und dann eben an der Psoition entweder ein Marker mit drawImage gemalt, oder eben von diesme Punkt zu einem anderen mit drawLine die Linie gezeichnet


----------



## FreeStyleSkier (4. Sep 2010)

Ja wir meinen das gleiche!

Danke für die Hilfe, werde es mal ausprobieren


----------



## FreeStyleSkier (4. Sep 2010)

Habe da iwie einen sehr komischen Fehler. :S

Habe nun zuerst ganz normal zwei Waypoints setzten wollen. Nun aber sagt cannot find symbol bei der *Set* in *Set*<Waypoint> waypoints = new HashSet<Waypoint>();

Habe alles importiert. :S
Irgendwelche Ideen?

Erledigt musste nur set durch HashSet ersetzen !?! :S


----------



## tobi193 (28. Feb 2011)

Das ganze ist zwar schon ne Weile her, aber kannst du hier noch verraten wie du die Route hinbekommen hast ?


----------



## FreeStyleSkier (28. Feb 2011)

Hier mit zeichnest du die Route ein.

Hoffe du kannst damit was anfangen.


```
public void paint(Graphics2D g, JXMapViewer map, int w, int h){
					g = (Graphics2D) g.create();
	        		
	        		Rectangle rect =  map.getViewportBounds();
	        		g.translate(-rect .x, -rect .y);
	        		
	        		g.setColor(getColor().get(index-1));
	        		g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
	        		g.setStroke(new BasicStroke(2));
	        		
	        		int lastX = -1;
	        		int lastY = -1;
	        		
	        		if(ConnectTab.Tabregion.size() >= 1)
	        		{
	        			for(GeoPosition gp : ConnectTab.Tabregion)
	        			{
	        				Point2D pt = map.getTileFactory().geoToPixel(gp, map.getZoom());
	        				
	        				if(lastX != -1 && lastY != -1)
	        				{
	        					g.drawLine(lastX, lastY, (int) pt.getX(), (int) pt.getY()); 
	        				}
	        				
	        				lastX = (int) pt.getX();
	        				lastY = (int) pt.getY();
	        				
	        			}
	        		}
	        		g.dispose();
				}
				
			};
```


----------

