라벨이 jts인 게시물 표시

Clipping Contest 후기

이미지
약 한달전 FOSS4G 분야를 뜨겁게 달구었던 이슈가 하나 있었다. 바로 대용량 데이터 Clipping Contest! 다양한 상업 및 오픈소스 GIS 프로그램들이 참여(?)했으며, 수많은 댓글이 달렸다. 자세한 내용은 아래 참조 사이트들을 방문해 보면 된다. ESRI의 경우 이에 이의(?)를 제기하고 10.1 버전에 반영하겠다고도 하니 집단 지성의 힘은 참으로 대단하다. ▣ 샘플 데이타 개요  - Contours20Ft : 52,521개로 구성된 등고선 라인 데이터  - StudyArea1MileBuffer : 938개의 버텍스로 구성된 단일 폴리곤 데이터 ▣ 정리  - GIS엔진에서 Clip 성능에 영향을 주는 요인들  : Spatial Indexing  : Geometry Engine & Robustness  : Spatial Data I/O  : Clip 전략 및 방법  - 주요 Geometry(Topology) Engine들   : Open Source Java 계열: JTS Topology Suite(GeoTools/uDig/gvSIG...)   : Open Source C 계열: GEOS, 자체(GRASS 등)   : 상용: ESRI(ArcGIS Topology Engine), 기타 자체 엔진 - JTS Topology Suite/GEOS는 이미 충분히 검증됨  - Clip function에 대한 이해  : 다음과 같이 1개 이상 피쳐로 구성된 원본데이터(위 샘플데이터에 의하면 등고선), 여러개의 폴리곤 피쳐로 구성된 클립 영역 데이터가 있다고 가정하자.  : ArcGIS의 경우에는 아래 그림의 왼쪽과 같이 한 개의 라인이 생성  : 몇몇 GIS 프로그램에서는 아래 그림의 오른쪽과 같이 한개 이상의 라인이 생성  ...

JTS Topology Suite - Geometry Engine

이미지
현 Java 기반 Open Source GIS에서 거의 대부분 사용하고 있는 Geometry Engine은 JTS( JTS Topology Suite - Java API for geometric operations)입니다. JTS는 C++ 포팅버전인 GEOS(Geometry Engine - Open Source) , .NET C# 버전 NTS(Net Topology Suite) 의 전신이기도 합니다. 현재(2010년 3월 1일 기준) 1.11 버전이 Release되어 있으며 다음의 URL에서 최신버전이나 정보를 확인할 수 있습니다. ▣ JTS Topology Suite  - Tsusiat Software  - Martin Davis's Blog  : Lin.ear th.inking  - VIVID Solutions 특히 Martin Davis의 Blog Title이 정말 멋집니다... Lin.ear th.inking - Because the shortest distance between two thoughts is a straight line ▣ JTS를 활용하는 Open Source GIS 및 JTS의 위상 <그림출처: http://www.osgeo.org/files/tyler/images/siglibre_foss_sig_relacion.png>

[ArcObjects]다양한 Geometry 버퍼(Buffer) 연산들

벡터 공간정보의 근린연산(proximity analysis)을 수행하기 위해서는 Geometry에 대한 Buffer 연산이 필수적이다. 버퍼 연산을 이용하여 공간상에서 주어진 지점과 주변객체들의 탐색 및 관계를 파악할 수 있다. 지난 시간의 Geometry Union에 이어 Geometry의 Buffer 연산에 대해 알아보기로 한다. Geometry의 버퍼연산은 다음 그림을 통해 이해하도록 하자. &amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;div class="imageblock center" style="text-align: center; clear: both;"&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;img src="http://ss.textcube.com/blog/3/30800/attach/XF9bszzWtp.png" alt="사용자 삽입 이미지" /&amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp...