본문 바로가기

전체 글138

파이썬 정렬 팁 data = [ {'name': '김철수', 'age': 8}, {'name': '홍길동', 'age': 17}, {'name': '고길동', 'age': 43} ] # age 순으로 오름차순 sorted(data, key=lambda item: item['age']) # name 순으로 내림차순 sorted(data, key=lambda item: item['name'], reverse=True) ※ data 자체가 바뀌지는 않고, sorted 함수를 실행하면 정렬된 목록을 리턴해줍니다. 2022. 6. 24.
윈도우 Speech Properties 창 띄우기 윈도우에서 TTS 설정 한줄 팁 실행 명령창(단축키 : Win + R)에서 아래 내용을 실행시키면 Rundll32.exe shell32.dll,Control_RunDLL %SystemRoot%\System32\Speech\SpeechUX\sapi.cpl,,1 아래와 같은 설정창이 표시됩니다. 언어별 목소리를 바꿀 수 있습니다. 2022. 5. 12.
MapLibre - #7 나만의 맞춤 지도 앱스토어 주소 MapLibre 강좌를 통해 설명드렸던 기능들을 모아 구글 앱 스토어에 올렸습니다. (*2월21일 현재 구글 앱스토어에 등록 심사중입니다) 브이월드에서 받은 API키를 입력하면 아래 영상처럼 오픈 스트리트맵 배경지도 위에 연속지적도를 겹처서 볼 수 있습니다. 한번 입력한 API키는 앱 환경설정(shared preferences)에 저장되어 매번 입력할 필요 없게 했습니다. 만약 유효기간이 지나면 브이월드 API 키 수정 메뉴로 갱신 가능합니다. 연속지적도 뿐 아니라 다양한 정보를 불러서 응용할 수 있습니다. * WMS명, WFS명, 스타일명은 소문자만 가능합니다. 구분한글명칭WMS명WFS명스타일명비고 경계 광역시도 lt_c_adsido lt_c_adsido_info lt_c_adsido 2D lt_c_a.. 2022. 2. 21.
한줄 팁 - PostGIS 교차 중복된 면적 구하기 PostGIS에 저장된 폴리곤 레이어가 있다고 가정하고, 이 레이어의 feature들 중 내가 설정한 영역과 중복되는 폴리곤들의 면적을 구하는 한줄 쿼리 입니다. select pnu, ST_Area( st_intersection( geom, st_transform( st_setsrid(st_geomfromtext('POLYGON ((127.00143 37.49791, 127.00635 37.49791, 127.00635 37.50109, 127.00143 37.50109, 127.00143 37.49791))'), 4326), 3857)))as area from lp_pa_cbnd where st_intersects(geom, st_transform( st_setsrid(st_geomfromtext('P.. 2022. 2. 16.
한줄 팁 - Postgresql에서 CSV 바로 만들기 Postgresql의 Copy라는 명령어로 간단하게 CSV(Comma Separated Values) 포맷 파일을 만들 수 있습니다. 즉 좌표가 포함된 PostGIS 레이어 테이블도 간단하게 CSV 파일로 만들 수 있습니다. 문법은 아래와 같습니다. COPY [Table 이름 또는 쿼리] to '[파일경로/파일이름.csv]' csv header; 파일경로는 서버에서 수행할 경우 절대 경로로 해줘야 합니다. 이 명령어를 이용해 PostGIS 레이어 테이블에서 폴리곤으로 되어 있는 레이어에서 중심점 좌표만 추출한 CSV 파일을 만들고자 한다면 다음과 같이 명령어를 만들 수 있습니다. COPY ( select gate_no, gate_nm, st_x(st_centroid(st_transform(geom,432.. 2022. 2. 16.
MapLibre - #6 내 위치 공시지가 확인 코딩 2편 이번 글에서는 브이월드 WFS 서비스로 가져온 지적정보를 화면에 표시하는 방법을 설명드리겠습니다. 아래 실행 화면처럼 정보창을 표시하기위해 MapLibre에서 제공하는 MarkerView 플러그인을 사용하겠습니다. MarkerView 플러그인을 사용하시려면 build.gradle 파일에 아래 내용을 추가하시고 Sync Project with gradle files(안드로이드 스튜디오 기준) 해 주시면됩니다. implementation 'org.maplibre.gl:android-plugin-markerview-v9:1.0.0' Repository 이름이 Mapbox SDK v9와 거의 동일한 명명 규칙을 갖고 있으니, 참고하십시오. 주요 소스는 아래와 같습니다. AddMarkerSymbol이라는 메서드를.. 2022. 2. 16.