본문 바로가기

지오서버

(2)
[OpenLayers] geoServer CQL_FILTER를 활용한 폴리곤 버퍼검색(WITHIN, INTERSECTS) 이전 포스팅에서는 기준점을 기준으로 반경 검색을 하는 것에 대해 알아보았다. 이번에 시도할 기능은 면(POLYGON)에 대한 일정 거리의 버퍼를 부여해서 이 버퍼에 걸리는 Feature들을 검색해 볼 것이다. BUFFER생성 일단 해당 레이어에 대한 버퍼를 만들어준다. 여러 방법이 있겠지만 필자는 JSTS라이브러리를 활용했다. //JSTS를 활용해 Buffer Feature 생성 //필요한 파라미터 : feature, radius //피처 geometry 파싱 var parser = new jsts.io.OL3Parser(); var jstsGeom = parser.read(feature.getGeometry()); //버퍼 geometry 생성 var buffered = jstsGeom.buffer(r..
[OpenLayers] geoServer CQL_FILTER를 활용한 반경검색(DWITHIN) 프로젝트중에 레이어에 대해서 반경에 걸리는 Feature를 찾아야 하는 기능이 필요했다. 원래는 OpenLayers api중 intersectsCoordinate 기능으로 구현 했었지만 전체레이어 Feature수가 많은 레이어에서 수행할 경우 느려지는 이슈가 발생하기도 하고 필요없는 레이어가 보이기도 했다. 그래서 기존 레이어를 활용하는 것이 아닌 geosever에서 필요한 범위만 검색해서 인스턴트 레이어를 생성해 뿌려주는 방법으로 수정방향을 잡았다. DWITHIN 일반적인 geoserver 요청 url 형식에 뒤에 DWITHIN을 이용한 cql_filter 하나만 적용시켜주었다. DWITHIN(geom_col,POINT(x y),radius,unit) //geom_col : 레이어 geometry 스키..