1. LiveData, ViewModel은 Google에서 제공하는 라이브러리이자, MVVM 아키텍처(디자인패턴)을 구현하기 위한 컴포넌트입니다.2. MVVM는 UI와 UI에 표시되는 데이터를 묶어서 관리하자는 개념의 디자인 패턴입니다. Model(데이터), View(실제 뷰), ViewModel(뷰의 상태)가 있고, ViewModel의 상태가 업데이트 되면 자동으로 View가 업데이트 됩니다.2-1. 즉 원래같으면 Activity-UI가 직접연결되어있지만, 이 사이에 ViewModel 이라는 완충재가 들어간 느낌입니다.3. MVVM은 동적인 코드 부분 / UI부분을 확실하게 분리하기 위해서 주로 사용하는데, 이는 안드로이드에 GOD ACTIVITY 문제를 해결하는데 도움을 줍니다 (한 액티비티에 너무 ..

개념은 이렇다. 중심 좌표 데이터가 담긴 c와 원형 범위의 반지름(m)인 radius를 받아온다. 원형 범위의 반지름보다 작은 임의의 값 r을 생성하고, 0 - 360도 (theta의 단위는 라디안이라 Math.PI * (0~2.0)으로 표현)사의의 임의의 각 theta를 생성한다. 그 이후 원점c로부터 thetah각으로 r만큼 뻗어나간 위치를 계산한다. public LatLng getRandomLocation(LatLng c, int radius) { double d2r = Math.PI / 180; double r2d = 180 / Math.PI; double earth_rad = 6378000f; //지구 반지름 근사값 double r = new Random().nextInt(radius) + ne..

API에서 제공하는 Circle 써서는 불가능한듯. 그래서 Polygon을 사용해서 구현한다. polygon1은 Polygon객체임. addAll을 통해 큰 원을 그리고, addHole을 통해 구멍을 내준다. LatLng SEOUL = new LatLng(37.56, 126.97); ArrayList big = drawCircle(SEOUL, r2); ArrayList small = drawCircle(SEOUL, r1); if (polygon1 != null) polygon1.remove(); polygon1 = mMap.addPolygon(new PolygonOptions() .clickable(true) .addAll(big) .addHole(small) .strokeWidth(2) .strokeC..
blog.naver.com/PostView.nhn?blogId=ironbass&logNo=221129439375&categoryNo=40&parentCategoryNo=0 블로그 :: 네이버 죄송합니다. 유효하지 않은 요청입니다. 요청하신 페이지를 처리하는 도중 예기치 못한 에러가 발생했습니다. 잠시 후 다시 시도해 주세요. blog.naver.com blog.naver.com/PostView.nhn?blogId=ljhgus0&logNo=221438618952&parentCategoryNo=&categoryNo=37&viewDate=&isShowPopularPosts=true&from=search NDSL로 GBA 만들기 닌텐도 DSL게임보이 어드밴스 만들기 1호기에 이어2호기를 만들었습니다. 먼저 스피..