![]() |
Crtanje koordinata u JAVI
Tražim neki primjer kako jednostavno smjestiti hrpu koordinata 44-46 LAT i 14-17 LON na ekran veličine 1280x720 px.
Ima li nekakva klasa koju samo ubacim i crtam do mile volje? :) |
Nisam siguran točno što ti treba ali možda je ovo to što tražiš...
|
Citiraj:
Konkretnije, trebam postupak prenošenja Merkatorove kartografske projekcije (mercator map projection) koje koristi Google Maps na "papir" 1280x720px i tako da 14 bude lijeva stranica, 17 desna stranica, 44 donja i 46 gornja stranica "papir" tj. tog mog okvira - tako da sve točke budu jednoliko raspoređene unutar tog okvira. |
Ja sam se nešto osnovno s tim bavio, povlačio sam poligone iz baze podataka (sql) i iscrtavao, ali se nisam previše zezao pa sam sve prebacio u lokalni sustav ekrana i to je to bilo, ali vjerujem da se mogu postaviti granice sustava. Obrati pažnju na to da ti je ishodište ekrana gore ljevo i da su koordinatne osi obratne.
Mislim da bi ti sve skupa bilo lakše u pythonu s matplotlib, ali ako treba biti java, nek bude :D Ti nisi moja struka, a stalno tu navračaš :) Evo ti kod tog mog, nemoj se zgražat, nije mi se dalo optimirat :) Code:
import java.awt.Graphics; |
Citiraj:
ako imaš nešto jednostavno što funkcionira u Pythonu/nečemu/bilo čemu... i da mogu samo "prepisati" svoje podatke unutra dapače :D budem sad ovo pogledao... |
Evo u pythonu, osakatio sam jedan drugi program pa probaj :D
Code:
#!/usr/bin/env python 45.79880556;15.95253333 45.811575;15.97999444 45.79605278;15.95978333 45.80117222;15.94436944 45.80418889;15.94404167 45.79942778;15.92806667 45.77279444;15.98232778 45.82538889;15.93781667 45.81059722;15.89199167 45.81554444;15.97460556 45.81335833;15.96428333 45.80950278;15.98833889 45.81265556;15.97189722 45.80843889;16.01774444 45.82552222;15.97701944 45.81465278;15.97399444 45.77222778;15.98186667 45.8059;16.02977778 45.80943611;15.96471667 A ovo je izlazna slika |
Ja imam .txt fajl (8MB) sa mrežom - bilo bi dobro kad bi program bio .exe pa samo u njegov folder popikam svoje "resource" fajlove (mrežu i sam algoritam) i samo pokrenem.
Znači imam .exe fajl/nešto što pokrenem :), u njegov folder strpam "mreza.txt" i "algoritam.txt" čiji je sastav ovakav 45.815189,15.933249-45.815189,15.933249 45.815189,15.933249-45.813824,15.928523 45.815189,15.933249-45.812246,15.920229 45.815189,15.933249-45.811674,15.917397 45.815189,15.933249-45.813024,15.905263 45.815189,15.933249-45.811543,15.905375 ... Kad pokrenem program on povuče mrežu i nacrta je (sive tanke linije) iz datoteke mreza.txt. Nakon toga počinje crtati algoritam iz datoteke algoritam.txt - znači ista stvar kao i mreža ide red po red i crta linije - ovaj puta crvenom debljom bojom samo (da se vidi razlika). Ako naiđe na liniju koja počinje sa "G" npr. (kao "gotovo") crta ju samo zeleno. Ako počinje sa F crta debelo zeleno. Znači stalno ista stvar - samo druge boje/debljine. Nakon svake linije napravi delaj od 100ms npr. da se vidi kako algoritam "radi". mreza.txt = sve linije tanke sive algoritam.txt obicna linija = deblje crvene crte algoritam.txt linija pocinje sa slovom G = tanke zelene linije algoritam.txt linija pocinje sa F = debela zelena linija Nešto tipa ovo (naravno ne 3D i te fičre) - http://www.youtube.com/watch?v=jjpmuZEbtok Ima li zainteresiranih? Plaćam :) |
kolko?:)
platforma? python? java? nekaj mobilnog do kad? dodatna funkcionalnost? edit: output? mora li pratit strukturu citanja predefiniranu? |
Citiraj:
|
Citiraj:
Citiraj:
|
Citiraj:
BTW, mozda ce ti ovo pomoci, samo sto je vezano direktno za Google Maps API (to sam osobno koristio, i iako te jos uvijek ne shvatjam sto ti tocno treba, meni je za GPS pracenje i crtanje povijesti ruta posluzilo savrseno elegantno). http://www.svennerberg.com/2008/10/p...n-google-maps/ http://econym.org.uk/gmap/ HTH. |
Njemu treba da mu prvo iscrta sve linije u jednoj boji (recimo sve ulice). To nije problem, mala modifikacija mog koda gore gdje umjesto plt.scatter ide plt.plot(x,y) gdje su x,y matrice koordinata početnih i završnih točaka linije.
Nakon toga mu treba drugi dio program, koji će preko tih linija iscrtavati druge, redom, s malom pauzom i tako da mjenjaju boje. Algoritam koji traži put od neke točke/čvora, preko tih "ulica" iz prvog dijela do druge točke. :D Vjerujem da nije neki problem sve skupa iako mu je struktura samih ulaznih podataka malo zeznuta :D Ne kužim zašto 2 vrste delimitera, zašto je boja na početku i tako hehe :-) Samo je pitanje vremena :) |
Citiraj:
inače ovo da - to mi treba :) prvo obična mreža, pa linije u bojama preko te iste mreže (vidi video iznad) :beer: |
bump, zar nitko ne zna ovo sklepati? :D
|
majstore mogu ti ja u cem god oces, samo sam tolko bez vremena da ak se mos stript jos tj-2 inace 4 money i prek noci
|
Sva vremena su GMT +2. Sada je 18:32. |
Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 1999-2024 PC Ekspert - Sva prava pridržana ISSN 1334-2940
Ad Management by RedTyger