분류 전체보기 462

[Django] Python hexagon grid (Map 공간 일정 간격으로 규격화 하기, hexgrid)

졸업작품으로 안전한 보행길 경로를 찾아주는 지도 프로젝트를 만들고 있는데.. 우리 세상은 알고리즘처럼 2차원 배열이나 노드의 집합이 아니기때문에.. 지도를 일정한 간격으로 규격화해야했다. 이 부분이 굉장히 힘들었는데 기록으로 남겨놓으려한다. 방법 1. 출발지와 목적지의 좌표를 계산하여 사각형 범위를 구한다. ( = Map Size ) 2. 범위를 2차원 배열처럼 규격화한다(?) 3. 해당 범위내에서 적합한 경로를 찾는다(??) ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 2번 방법을하기위해 많은 고민을 했는데 첫번째. 2차원 배열처럼 정사각형으로 해당 범위를 규격화하기. → 실제 지도는 이동가능한 공간이 뒤죽박죽 삐뚤빼뚤이기 때문에 적합하지 않다고 생각했다. 두번째. 육각형의 hexgon grid로 규격화하기 ..

[Leaflet] Django에 Leaflet Marker 표시하기(Point Array)

졸업작품으로 Leaflet.js를 이용해서 map을 만드는 중 DB에 저장된 가로등 좌표를 Point로 받아와 지도위에 marker 표시를 해줄려고 한다. 1. DB에 저장된 좌표 중 범위 설정해서 가져오기 lamp = Lamp.objects.filter(lon__range=(endx,startx),lat__range=(endy,starty)).order_by('lat') # lamp.order_by('lon') print("가로등 개수 : ",len(lamp)) plist=[] for l in lamp : # print(l.lon) point=[float(l.lon),float(l.lat)] plist.append(point) Django의 filter 템플릿을 이용해서 DB에 저장된 좌표중 필요한 데..

[Django] GeoJson 파일 파싱하기 (Json이란 무엇일까?)

지난번에 도로명주소 전자지도 데이터를 사용하기 위해서 shp -> json 형식의 파일로 변환해 주었다. thalals.tistory.com/24?category=476043 QGIS shp 파일 좌표계 변환, Gson 데이터 변환(직렬화) 도로명 주소 전자지도 데이터를 다운받으면, 해당 지역의 많은 shp파일을 확보할 수 있다. 이 데이터를 활용하기 위해서는 좌표계를 GRS80 UTM-K기준 좌표계에서 WGS 84 / Pseudo-Mercator(EPSG:3857)로 바꿔 thalals.tistory.com 이제 이 GeoJson 파일을 파싱하여 원하는 데이터만 사용할려고 한다. 그전에 JSON에 대해서 정리를 해보자 1. Json이란 Json이란, JavaScript Object Notation으로 ..

Django/응용 2021.05.10

[Git] Git 풀리퀘스트(pull request) 하기

내가 쓰기위한 Git PR 하기 방법 정리! ​ 매우매우 헷갈리고 저도 잘모르기 때문에 너무 믿지 마시고 본인이 직접 해보시며 연습해보시는걸추천드려요 ​ PR하기 위한 첫번째 1. Fork 하기 • 먼저 PR하기위한 원본 레포지토리를 ⇀ 본인의 레포지토리로 포크해 옵니다. ​ • 그 후에 본인 레포지토리에서 git clone 을 해줍니다. $ git clone https://github.com/본인레포주소.git $ git clone https://github.com/본인레포주소.git • 그 다음에 로컬저장소에 원격 저장소(fork 해온 레포)를 추가합니다. 원본 프로젝트 저장소 (직접 추가 필요) fork한 로컬 프로젝트 (origin이라는 별명으로 기본으로 추가되어 있다. 따로 추가할 필요 없음) ..

Git 2021.05.07

[Github] Git 명령어 정리 (Git cheatsheet)

내가 볼려고 쓰는 깃 명령어 정리 어느정도 순서대로 정리했다고 보면 됩니다. ​ ​ CLI (Command Line Interface) 명령어 인터페이스라고 불리며, 텍스트 터미널을 통해 사용자와 컴퓨터가 상호 작용하는 방식을 뜻함 ​ $ git log commit한 이력을 볼 수 있음 HEAD -> main : 컴퓨터에 커밋 (HEAD: 지금 시점에 파일이 있는 위치) origin/main : github repository에 커밋 git log에서 빠져나오기 -> q 타이핑 ​ $ git status 커밋의 상태를 보여줌 ​ $ git init 버전 관리를 위한 기본 폴더를 생성하는 명령어 ​ $ git add [file name] ex) git add test.txt 파일을 추가 등록하는 명령어 ​..

Git 2021.05.07

[MySQL]"DB" 제약 조건, 뷰, 트랜젝션

제약조건, 뷰 제약조건은 열에 넣을 수 있는 값에 대하여 제한하는 것, 테이블의 생성 시에 추가됩니다. 제약조건의 종류로는 NOT NULL, PRIMARY KEY, FOREIGN KEY, UNIQUE, CHECK가 있습니다. ​ 1) 체크 제약조건 열에 넣을 수 있는 값을 제한 - Where 절과 같은 조건식을 사용하며 그 형식은 ex) Alter Tale "테이블명" ADD Constraint Check "칼럼" in ('값','값') ​ - 거의 모든 조건을 사용할수 있지만 서브쿼리는 사용할 수 없습니다. - 에러 발생시 데이터 추가 X ​ 2) 뷰 반복되서 사용되는 쿼리를 데이터베이스 안에 저장하여 사용하는 것 - 뷰안에 무엇이 저장되었는지 보기위해서는 테이블 처럼 다루면 된다. - 뷰는 쿼리상에서..

DataBase/Mysql 2021.05.07

[MySQL] "DB" 조인(Join)과 다중 테이블 연산

조인과 다중테이블 연산 ​ 1) 다중 테이블이란 다중 테이블이란 데이터베이스에 테이블이 하나 이상 존재하는걸 말한다. * 다중테이블에서 원하는 데이터들을 모두 얻으려 할 때에는, 조인을 사용하여 테이블을 연결하면 많은 도움이 된다. ​ 2) 카티션 조인 내부 조인의 한 형태, 크로스 조인이라고도 한다. - 한 테이블의 모든 행과 다른 테이블의 모든행을 짝지어 반환한다. - 내부 조인은 쿼리의 조건에 따라 일부 결과 행이 제거된 크로스 조인이다. - 내부조인의 종류로는 동등조인, 비 동등조인, 자연조인이 있다. ​ 3) 동등 조인 같은지를 테스트하는 내부조인 ON 이나 Where절을 이용하여 '=' 연산자를 이용하여 결과 테이블을 도출해 낸다. ​ 4) 비동등 조인 동등조인과 반대로 같지않은 모든 행들을 ..

DataBase/Mysql 2021.05.07

[MySQL] "DB" SQL 이란

SQL SQL은 관계대수와 관계해석을 기반을 집단함수, 그룹화, 갱신 연산등을 추가하여 개발한 언어이다. 1. SQL은 비절차적인 언어 sql은 비절차적인 언어로서 자시니 원하는 데이터만을 명시하고 어떻게(How) 수행할지는 명시할 수 없다. 관계 DBMS는 사용자가 입력한 SQL문을 번역하여 사용자가 요구한 데이터를 찾는데 필요한 모든 과정을 담당한다. SQL문은 자연어에 가까운 구문을 사용하여 질의를 표현할 수 있으며 2가지 인터페이스를 제공한다. 😋 Interface 1) 대화식 SQL : 주로 DBA가 사용하는 것, 뷰와 테이블을 다룬다. ​ 2) 내포된 SQL : 호스트언어에 SQL을 포함하는 것, 호스트언어와 GUI를 이용하여 프로그램을 작성할 수 있게 된다. ​ ​ 2. SQL은 데이터 정의..

DataBase/Mysql 2021.05.07

[MySQL] "DB" 관계대수와 SQL

관계대수와 SQL 1. "관계 해석" 과 "관계 대수" 위 2개는 관계 데이터 모델이 지원되는 2가지 정형적인 언어이다. 1) 관계해석 관계해석은 원하는(What) 데이터만을 명시하고 어떻게 수행할것인가에(How) 대한 명시가 없는 선언적인 언어이다. ​ 2) 관계대수 관계대수는 어떻게 수행할 것인지에 대해 명시가 되어있는 절차적 언어이다. 관계대수는 사용관계 DBMS들에서 널리 사용되는 SQL의 이론적인 기초이다. ​ 2. SQL이란 SQL이란 상용관계 DBMS들의 사실상의 표준 질의어 이다. * 사용자는 SQL을 사용하여 관계 데이터베이스에 다음과 같은 일들을 할 수 있다. ​ 1) DB에 릴레이션 정의 2) 정보 검색 3)관계데이터베이스 갱신(Update) 4) 여러 무결성 제약조건들을 명시 ​ 3..

DataBase/Mysql 2021.05.07

QGIS 지도 데이터 불러오기 (네이버, 다음, 구글, 카카오 지도)

QGIS를 이용해 shp을 열어서 시각화할 수 있지만, 실제 지도와 맞불려서 보야할 필요성을 느꼈다. 그래서 QGIS에서 제공하는 openstreatmap을 이용하려 하였으나 EPSG가 맞지않아 불편함이 생겼다. 해서 플러그인 설치를 통해 한국에서 이용하는 배경지도를 불려오려 한다. 1. 플러그인 설치 1) 플러그인 - 플러그인 설치 2) 설정에서 "실험적인 플러그인도 표시"를 체크 이걸 해야 플러그인 검색했을 때 뜬다고 한다. 3) 모두 - 검색창에 tms 를 검색 tms for Korea설치 4) 실행방법 윕 -> TMS for Korea 원하는 지도 클릭 네이버 maps v3 streatMap 실행 실행 후 레이어의 프로젝트 좌표계를 네이버 지도 좌표계인 5179로 맞춰주면 위와같이 나온다! + 라..

QGIS(지리정보) 2021.05.07
반응형