Toon posts:

Google maps in Processing

Pagina: 1
Acties:
  • 617 views

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hallo iedereen,

Ik had deze vraag al gesteld, alleen op het verkeerde forumdeel. Vandaar dat ik m nu nogmaals hier stel.

Ik ben nu al een aantal weken aan het zoeken op Google en heb al diverse dingen uitgeprobeerd, maar elke keer lukt het niet.

Mijn vraag is: kun je kaarten van Google Maps importeren in Processing en vervolgens in een gebied Processing een random adres te laten kiezen, die door middel van een markering op de kaart wordt aangegeven? Hiervoor wil ik eigenlijk bijna geen bestanden downloaden op mijn computer.

Het is me wel al gelukt zonder enige verbinding met Google Maps een gemeente en stad te kiezen, maar er zijn zoooooveel straten in een stad, dat het niet te doen is om die allemaal handmatig te gaan programmeren.

Ik hoop dat jullie mij hier verder mee kunnen helpen!

Alvast bedankt.
Joost70

Acties:
  • 0 Henk 'm!

  • ajakkes
  • Registratie: Maart 2004
  • Laatst online: 16-05 22:32

ajakkes

👑

Hey leuk deze topic start heb ik al eens gelezen.

Dus je hebt al wat code geschreven. Hoe ziet deze code er uit?

De reden dat in je vorige topic weinig reacties kwamen was niet zo zeer dat hij verkeerd stond, maar dat je niet duidelijk vermeld heb wat je zelf hebt geprobeerd zodat iemand anders begrijpt wat je aan het doen bent.

👑


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik bedoelde met 'verkeerd stond' dat hij op deze website verkeerd stond (onder Client Software) en dus niet een ander topic.

Ik heb in Processing een library 'Unfolding Maps' gevonden, alleen is het probleem dat ik elke keer een foutmelding krijg dat de kaart/map verkeerde data bevat of geen afbeelding is.

Ik probeer altijd alles eerst zelf uit te proberen d.m.v. processing.org en examples, maar hier kom ik dus echt niet uit!

Groet,
Joost70

Acties:
  • 0 Henk 'm!

  • skate master
  • Registratie: September 2004
  • Laatst online: 08:46

skate master

Autodesk Educator Expert

Misschien handig om de bewuste code te plaatsen zodat we gericht naar een probleem of oplossing kunnen zoeken.
Het is voor onsnu gissen wat je precies doet.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Het is bij alle codes, als voorbeeld deze:

/*
* Bike Map showing all Cycle Hire stations and their available bikes.
*
* Example shows how to load and display CSV data. Shows bike stations directly (i.e. without markers)
*
* Created for Unfolding workshop at Royal College of Art.
* (c) 2014 Till Nagel, tillnagel.com
*/
import de.fhpotsdam.unfolding.*;
import de.fhpotsdam.unfolding.geo.*;
import de.fhpotsdam.unfolding.utils.*;

String bikeAPIUrl = "http://api.bike-stats.co.uk/service/rest/bikestats?format=csv";
//String bikeFile = "bikestats.csv"; // in case URL goes down
String bikeDataFile = bikeAPIUrl;

UnfoldingMap map;

ArrayList<BikeStation> bikeStations = new ArrayList();
int maxBikesAvailable = 0;

void setup() {
size(800, 600, P2D);
smooth();

// Create interactive map centered around London
map = new UnfoldingMap(this);
map.zoomAndPanTo(12, new Location(51.500, -0.118));
MapUtils.createDefaultEventDispatcher(this, map);
map.setTweening(true);

// Load CSV data
Table bikeDataCSV = loadTable(bikeDataFile, "header, csv");
for (TableRow bikeStationRow : bikeDataCSV.rows()) {
// Create new empty object to store data
BikeStation bikeStation = new BikeStation();

// Read data from CSV
bikeStation.id = bikeStationRow.getInt("ID");
bikeStation.name = bikeStationRow.getString("Name");
bikeStation.bikesAvailable = bikeStationRow.getInt("BikesAvailable");
float lat = bikeStationRow.getFloat("Latitude");
float lng = bikeStationRow.getFloat("Longitude");
bikeStation.location = new Location(lat, lng);

// Add to list of all bike stations
bikeStations.add(bikeStation);

// Debug Info
//println("Added " + bikeStation.name + " with " + bikeStation.bikesAvailable + " bikes.";

// Statistics (well, sort of)
maxBikesAvailable = max(maxBikesAvailable, bikeStation.bikesAvailable);
}

println("Loaded " + bikeStations.size() + " bikeStations. Max bikes: " + maxBikesAvailable);
}

void draw() {
// Draw map and darken it a bit
map.draw();
fill(0, 200);
rect(0, 0, width, height);

noStroke();

// Iterate over all bike stations
for (BikeStation bikeStation : bikeStations) {
// Convert geo locations to screen positions
ScreenPosition pos = map.getScreenPosition(bikeStation.location);
// Map number of free bikes to radius of circle
float s = map(bikeStation.bikesAvailable, 0, maxBikesAvailable, 1, 50);
// Draw circle according to available bikes
fill(255, 0, 255, 50);
ellipse(pos.x, pos.y, s, s);

if (bikeStation.showLabel) {
fill(200);
text(bikeStation.name, pos.x - textWidth(bikeStation.name)/2, pos.y);
}
}
}

void mouseClicked() {
// Simple way of displaying bike station names. Use markers for single station selection.
for (BikeStation bikeStation : bikeStations) {
bikeStation.showLabel = false;
ScreenPosition pos = map.getScreenPosition(bikeStation.location);
if (dist(pos.x, pos.y, mouseX, mouseY) < 10) {
bikeStation.showLabel = true;
}
}
}

Ik krijg de melding:

at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
java.lang.RuntimeException: java.lang.NullPointerException
at com.jogamp.common.util.awt.AWTEDTExecutor.invoke(AWTEDTExecutor.java:58)
at jogamp.opengl.awt.AWTThreadingPlugin.invokeOnOpenGLThread(AWTThreadingPlugin.java:103)
at jogamp.opengl.ThreadingImpl.invokeOnOpenGLThread(ThreadingImpl.java:206)
at javax.media.opengl.Threading.invokeOnOpenGLThread(Threading.java:172)
at javax.media.opengl.Threading.invoke(Threading.java:191)
at javax.media.opengl.awt.GLCanvas.display(GLCanvas.java:541)
at processing.opengl.PJOGL.requestDraw(PJOGL.java:688)
at processing.opengl.PGraphicsOpenGL.requestDraw(PGraphicsOpenGL.java:1651)
at processing.core.PApplet.run(PApplet.java:2256)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
at java.io.Reader.<init>(Unknown Source)
at java.io.InputStreamReader.<init>(Unknown Source)
at processing.core.PApplet.createReader(PApplet.java:7045)
at processing.data.Table.parse(Table.java:348)
at processing.data.Table.<init>(Table.java:152)
at processing.core.PApplet.loadTable(PApplet.java:6505)
at BikeObjectsMap.setup(BikeObjectsMap.java:53)
at processing.core.PApplet.handleDraw(PApplet.java:2361)
at processing.opengl.PJOGL$PGLListener.display(PJOGL.java:862)
at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:665)
at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:649)
at javax.media.opengl.awt.GLCanvas$10.run(GLCanvas.java:1289)
at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1119)
at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:994)
at javax.media.opengl.awt.GLCanvas$11.run(GLCanvas.java:1300)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Could not run the sketch (Target VM failed to initialize).
For more information, read revisions.txt and Help ? Troubleshooting.

Acties:
  • 0 Henk 'm!

  • Laurens-R
  • Registratie: December 2002
  • Laatst online: 29-12-2024
En nu graag in een
code:
1
code
block :)

Acties:
  • 0 Henk 'm!

  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 08:57

Creepy

Tactical Espionage Splatterer

We kunnen topics ook verplaatsen he ;)

Anyway, het lijkt erop alsof je een oplossing wilt hebben om geen straten te hardcoden, maar een paar posts later kom je ineens met een Exceptionm aanzetten? We zijn nu al een paar post verder maar echt duidelijk is het nog steeds niet.

Ik ga dit topic dan ook sluiten. Lees zelf je topic eens door en doe eens net alsof je ons bent en dat je alleen maar de info hebt die je zelf heb gegeven. Zou jij dan een idee hebben wat er nu aan de hand is? Ik denk van niet.

Je kan weer een nieuw topic openen maar let dan aub goed op Het algemeen beleid #quickstart. Daarin staat precies uitgelegd welke zaken we willen terugzien in een topicstart en wat je zelf al gedaan zou moeten hebben. Wat je in je laatste post doet (een stacktrace neerzetten, je code dumpen en zonder verdere info om hulp vragen) is nu net niet de bedoeling hier. We verwachten net ff wat meer info.

[ Voor 3% gewijzigd door Creepy op 26-10-2015 10:52 ]

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney

Pagina: 1

Dit topic is gesloten.