안드로이드 개발 질문/답변
(글 수 45,052)
package kr.oc.jin.soccerinformation;
import java.util.List;
import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Paint; import android.graphics.Point; import android.os.Bundle; import android.view.Window;
import com.google.android.maps.GeoPoint; import com.google.android.maps.MapActivity; import com.google.android.maps.MapController; import com.google.android.maps.MapView; import com.google.android.maps.Overlay; import com.google.android.maps.Projection;
public class MapsActivity extends MapActivity {
MapView mMap;
protected boolean isRouteDisplayed() {
return false;
}
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.maps);
mMap = (MapView)findViewById(R.id.mview);
MapController mapControl = mMap.getController();
mapControl.setZoom(15);
mMap.setBuiltInZoomControls(true);
GeoPoint pt = new GeoPoint(35159746,126851552);
mapControl.setCenter(pt);
Tourmap tour = new Tourmap();
List<Overlay> overlays = mMap.getOverlays();
overlays.add(tour);
}
class Tourmap extends Overlay {
public void draw(Canvas canvas, MapView mapView, boolean shadow) {
super.draw(canvas, mapView, shadow);
Paint pnt = new Paint();
Bitmap bit;
Point pt;
Projection projection;
projection = mapView.getProjection();
// 광주
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35164736,126796331), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35159913,126796164), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35190754,126845622), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35203617,126804181), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35128647,126753989), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35214271,126839189), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35207374,126841396), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35128601,126771704), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35195466,126816399), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35197125,126800697), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35131720,126769397), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35185023,126792839), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35189892,126793648), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35158836,126921909), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35160340,126921644), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35156511,126928926), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35184210,126915885), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35179579,126899836), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35181760,126879495), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35177529,126885277), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
//부산
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35214016,1290948486), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(352207298,1290926971), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(352006721,1290911102), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(352148743,129073761), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(351965294,1290521851), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(351442642,1290108337), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(351468086,1290055237), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(352030602,1290010376), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(352168045,129010025), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(352145348,1290309143), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35235272,129074655), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(352022514,1291094971), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(350732269,1290776672), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(350732422,1290643616), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(351719322,1291614532), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
//울산
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35588873,12964409), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35587265,129373122), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35578766,129348661), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35562657,129328651), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35557171,129318888), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35550773,129288220), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(3556235,129348060), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35562124,129346236), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35516291,129372157), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35516212,129372178), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35518683,129362683), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35532995,129357791), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
//대구
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35804031,128621814), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35822554,128632704), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35816473,128639506), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35848726,128639721), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35852674,128654569), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35874507,128651919), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35890180,128633455), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35901722,128622437), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35908283,128624357), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35845843,128570750), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35856066,128575691), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35865961,128580809), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35882305,128579392), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35881270,128588265), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35879834,128562473), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(35857881,128589467), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
//대전
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36454429,127431648), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36439004,127428564), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36416344,127413479), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36413141,127407578), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36426553,127428698), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36428836,127434851), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36442116,127410003), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36437036,127404644 ), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36402259,127350351), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36413529,127353333), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36365146,127325084), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36363107,127323132), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36338878,127372562), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36354951,127401087), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36347654,127398378), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
bit = BitmapFactory.decodeResource(getResources(), R.drawable.jandi);
pt = projection.toPixels(new GeoPoint(36324617,127339622), null);
canvas.drawBitmap(bit, pt.x, pt.y, pnt);
}
}
}
이 소스안에 현재위치보기와 메뉴를넣어서 메뉴를누르면 현재위치로 되돌아오는
그리고 움직일때마다 맵으로 실시간으로 위칭이동시켜주는걸 넣으려고합니다.
어느쫌에 어떻게 넣어야하는지 질문합니다.




자신의 위치 표시용으로 MyLocationOverlay라는 것을 기본 제공합니다.
MapOverlay에 추가하셔서 적용시키시면 됩니다.
그나저나... draw안에 있는.... 추가하는 소스들이 너무 무식하게 ;;
좌표들만 다른것 같은데.... 좌표들을 Array같은걸로 놓고
반복문 돌리면 깔끔해지겠네요.