SlideShare une entreprise Scribd logo
1  sur  119
2012년 8월 6일

KOPSS 응용프로그램 개발팀
KOPSS
API
소개




        2
History
 2009년 KOPSS 4차 사업부터 KOPSS에 다양한 GIS엔진이 진입할 수
 있는 기반을 마련하기 위해 KOPSS Open API 설계 시작

 - 1차(2009~2010년) : GIS 기본기능 및 단순한 기능들을 중심으로
 KOPSS의 공통기능과 도시재정비계획지원모형에 대한 설계

 - 2차(2010~2011년) : 1차 설계내용 이외의 모든 기능들(고급분석기
 능 포함)에 대한 설계

 - 3차(2011 ~ 2012년): 1, 2차 설계 보완, GIS 엔진 벤더사 피드백 반영
 등

 현재 약 120개(ST_* 33개, 분석 90여개)의 process들로 구성

              국토공간계획지원체계(KOPSS) Open API               3
용어정의
 WMS, WFS, WCS, WPS
    Web Map Service, Web Feature Service, Web Coverage Service, Web Processing
      Service
 Literal Type
    Boolean, short, integer, long, float, double, string…
 Complex Type
    User defined type, raw data, xml, gml…
 GML
    Vector layer, feature collection, feature layer…
 GridCoverage
    Raster, Grid
 Filter
    Filter Encoding
 SLD
    Styled Layer Descriptor
 SRS
    Spatial Reference System

                       국토공간계획지원체계(KOPSS) Open API                                 4
KOPSS 적용 OGC 표준 범위
Service   Version    Operator                Service                 Format & version
                    GetCapabilities
                                                           Filter Encoding 1.1(필수)
                                            COMMON
                    GetMap                                 SLD 1.0(필수) / SLD 1.1
 WMS       1.3.0
                    GetFeatureInfo
                                                           GML 3.1.1(필수)
                    GetLegendGraphic(SLD)
                                               WFS         GML 2.1.2
                    GetCapabilities                        GML 3.2.1
                    GetFeature
 WFS       1.1.0                                           GeoTiff(필수)
                                               WCS
                    DescribeFeatureType                    Jpeg2000
                    Transaction
                                                           PNG(필수),
                                               WMS
                    GetCapabilities                        GIF, JPG, BMP…
 WCS       1.1.1    DescribeCoverage

                    GetCoverage             Geometry
                                                     GeoJSON
                                               &
                    GetCapabilities                  KML 2.1, 2.2
                                            Features
 WPS       1.0.0    DescribeProcess                  WKT
                                              확장
                    Execute
                                                     GeoRSS 2.0

                              국토공간계획지원체계(KOPSS) Open API                                5
KOPSS API 구성
Geometry 연산, 벡터, 래스터, 통계, KOPSS Model 분석 프로세스로 구성
  Conversion, Density,                                                             Custom Extension / Model
 Distance, Interpolation,                                                                 Analysis
   Surface Analysis 등                             KOPSS Model
                                                    Analysis
                                                     (KM)



                              Grid Coverage                         Statistical      Basic & Spatial Statistics 등
                                 Analysis                           Analysis
                                   (CA)                                (SA)
                                                    WPS
 GeoProcessing, Conversion
  Calculation, Projection 등
                                                                                  Relationship, Topological
                                                                                  Proximity, Measurement
                                                                                          Operator
                                        Vector                  Geometry
                                       Analysis                 Operator
                                         (VA)                     (ST)



                                                                                                                    6
KOPSS API 구성
     Type              Category                                                      Process Identifier
                  Spatial Relationship    Equals, Disjoint, Intersects, Touches, Crosses, Within, Contains, Overlaps
                Geometry Edit Operators Rotate, Transform, SetSRID
   Geometry        Spatial Operators      Intersection, Union, Difference, Sym Difference, Buffer, Convex Hull, Centroid, Simplify
    Service
     (ST)            Proximity &
                                      Euclidean Distance, Manhattan Distance, Hausdorff Distance, Nearest Point, Area, Length, LFI
                Measurement Operators
                   Geometry Output        GML , WKB, WKT, GeoJSON, GeoRSS, KML, SVG
                                          Clip, Dissolve, Intersect, Merge, Union, Buffer, PointStatistics, PointDistance, Fishnet,
                    GeoProcessing
                                          ThiessenPolygon, UnionGeometry, MultipleRingBuffer
    Vector            Conversion          FeaturesToPoint, ShapefileToGML, FeaturesToShapefile, CadDatasetToGML, GetMap
    Service
     (VA)             Projection          Project

                      Calculation         CalculateXYCoordinate, CalculateArea, CalculateLength, CalculateField

                        Density           Density(Point, Kernel)
                      Conversion          FeaturesToCoverage, GeometryToCoverage, CoverageToFeatures, Resample, GetMap
                       Distance           Euclidean Distance
      Grid              Reclass           Reclass, ReclassStatistics
    Coverage
                      Extraction          Extraction, SetMask
     Service
      (CA)               Zonal            ZonalStatistics
                        Overlay           Math(+,-,*,%), ConditionEvaluation, Merge
                        Surface           Slope, Aspect, Hillshade, Cutfill
                        Custom             Fuzzy

(2012. 07 기준)                            국토공간계획지원체계(KOPSS) Open API                                                                   7
KOPSS API 구성
      Type          Category                                                    Process Identifier

                                      Statistics(Count, Sum, Mean, Minimum, Maximum, Standard Deviation), Histogram(Value-Frequenc
                     Statistics
    Statistics                        y pairs), Classify(Equal Interval, Quantile, Natural Breaks 등), AHP, StatisticsEx, Pearson, Regression
     Service
      (SA)
                 Spatial Statistics   Moran’s I(Global, Local), G Statistics(Global, Local), Spatial LQ, SpatialCrossAnalysis

                                      행정구역별 필지현황 생성, 행정구역별 건축물현황 생성, 접근성분석, 필지경계 생성
                       공통
                                      KOPSS Density, 접근성분석

                                      형상지수(LFI)

                                      인구추정
                                      - 단순증가선형모형(등차급수법), 등비급수형지수모형(등비급수법), 순간복리형지수모형(지수
    KOPSS             터잡이
                                      함수법), 로지스틱모형
    Model
    Service
                                      거주밀도 소요면적 산정, 주택호수 소요면적 산정, 상업용지 소요면적 산정, 공업용지 소요면적
     (KM)
                                      산정 정지량분석

                                      기초현황보기, 수요분석, 수요변화 시뮬레이션, 실제공급량계산, 공급변화 시뮬레이션, 공급적정
                      시설이
                                      성평가, 입지배분 후보지 탐색, 후보지 접근성분석

                      지역이             국토지표로부터 다차원 DB 생성
                      재생이             토지(필지)조서작성, 건축물조서작성, 도로점유율, 주택접도율, 노후불량 건축물조회
                                      기본레이어 생성, 지형도생성, 도로중심선 및 실폭도로, 도로교통주제도, 용도지역지구생성, 건축
      C/S           관리도구
                                      물대장 생성, 지적/토지특성 생성, 지적/건축물대장 생성, 인구정보 생성


(2012. 07 기준)                     국토공간계획지원체계(KOPSS) Open API                                                                                   8
KOPSS API 제약사항
 WMS(1.3.0), WFS(1.1.0), WCS(1.1.1), WPS(1.0.0)는 OGC 규격을 따름
 Filter는 Function을 제외한 다음을 지원
   Comparison: =, <>, <, >, >=, <=, like, null, between,
   Spatial:
     Equals, Disjoint, Touches, Within, Overlaps, Crosses, Intersects, Contains, BBOX, Dwit
     hin, Beyond
   Logical: And, Or, Not
   Arithmetic: Add(+), Sub(-), Mul(*), Div(/)

 GridCoverage(Raster)는 NoData 처리가 가능해야 함
 특정 알고리즘에 대해서는 KOPSS API 문서에 포함된 알고리즘을 구현
   KOPSS Density, LFI 등

 SRS가 포함된 Geometry가 Input 파라미터로 입력되는 경우 Output Geometry 역시
  SRS 정보가 포함되어야 함
         <gml:Polygon srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#5174">

 KML 및 GeoRSS 변환의 경우 WGS84 경위도로 변환

                           국토공간계획지원체계(KOPSS) Open API                                             9
KOPSS Architecture: Concept
 분석기능이 필요 없는 배경지도 및 주제도는 WMS를 이용
 분석기능이 필요 없는 레이어의 조회는 WFS를 이용
 상호운영성에 중점

 DEM/Slope/Aspect 등 대용량의 래스터는 WCS를 이용하여 WPS 등 클라이
 언트에서는 Resample, Subset, Reproject 하여 WPS의 파라미터로 넘김

 WPS는 WFS, WCS 및 External resource를 source 데이터로 이용하여 분석
 후 요청 format으로 리턴
   External resource
       WPS의 결과
       Zip-shapefile, cad 등 reference url

 국가공간정보체계 자원 활용하는 경우
   지자체의 상황에 따라 Altibase DBMS 를 지원(Data provider)



                         국토공간계획지원체계(KOPSS) Open API        10
KOPSS Architecture: Service
  KOPSS 관리도구               KOPSS Web Client                              API 단위테스트

       Mart 관리                                                                통합테스트

                           HTTP
                  2D Web KOPSS                                     연계 시스템

 토지이용계획 도시기반시설계획           지역계획        도시재정비계획                      UPIS, …


                          HTTP
                                 OGC OWS 기반 GIS Server


     WMS                   WFS                       WPS                WCS



                                                                외부기관
    KOPSS DB      Sync                        Sync         KLIS, 국토지표통계, 교통, 환경…
   (Altibase ?)             NSDI DB


                   국토공간계획지원체계(KOPSS) Open API                                         11
WMS
WFS
WCS




      12
Service     Version      Operator
Web Coverage Service                                                                        GetCapabilities

                                                                      WCS          1.1.1    DescribeCoverage

                                                                                            GetCoverage
 Why WCS?
    대용량 래스터에 대한 Resample, Subset, Reproject 지원
    대상레이어: DEM, Slope, Aspect, Hillshade 및 래스터 형태의 주제도
    Ex) 대구 DEM 5*5 = 7459, 9066
 Request
 <?xml version="1.0" encoding="utf-8"?>
 <GetCoverage version="1.1.1" service="WCS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns="http://www.opengis.net/wcs/1.1.1" xmlns:ows="http://www.opengis.net/ows/1.1"
 xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc"
 xsi:schemaLocation="http://www.opengis.net/wcs/1.1.1 http://schemas.opengis.net/wcs/1.1.1/wcsAll.xsd">
   <ows:Identifier>kopss:dem</ows:Identifier>
   <DomainSubset>
     <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::2096">
       <ows:LowerCorner>141265.143 234558.859</ows:LowerCorner>
       <ows:UpperCorner>178560.143 279888.859</ows:UpperCorner>
     </ows:BoundingBox>
   </DomainSubset>
   <Output store="true" format="image/geotiff">
     <GridCRS>
       <GridBaseCRS>urn:ogc:def:crs:EPSG::2096</GridBaseCRS>
       <GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType>
       <GridOffsets>5.0 -5.0</GridOffsets>
       <GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS>
     </GridCRS>
   </Output>
 </GetCoverage>


                              국토공간계획지원체계(KOPSS) Open API                                                       13
Service     Version      Operator
Web Coverage Service                                                                        GetCapabilities

                                                                      WCS         1.1.1     DescribeCoverage

                                                                                            GetCoverage

 서버의 특정 위치에 저장되며, 클라이언트는 위치만 알고 처리
 Response
    <Output store="true“…….>




 <?xml version="1.0" encoding="utf-8"?>
 <wcs:Coverages xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink"
 xmlns:ogc="http://www.opengis.net/ogc" xmlns:ows="http://www.opengis.net/ows/1.1"
 xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://localhost:8090/geoserver/schemas/wcs/1.1.1/wcsCoverages.xsd">
   <wcs:Coverage>
     <ows:Title>dem</ows:Title>
     <ows:Abstract>Generated from GeoTIFF</ows:Abstract>
     <ows:Identifier>dem</ows:Identifier>
     <ows:Reference xlink:href="http://localhost:8090/server/temp/wcs/dem_9507595085222.tif" />
   </wcs:Coverage>
 </wcs:Coverages>




                              국토공간계획지원체계(KOPSS) Open API                                                       14
Service      Version       Operator
Web Coverage Service                                                                                 GetCapabilities

                                                                                WCS        1.1.1     DescribeCoverage

                                                                                                     GetCoverage

 Response
    <Output store=“false“…….>
 MIME-Version: 1.0
 Content-Type: multipart/mixed; boundary="----=_Part_6_1071286.1341808158497"

 ------=_Part_6_1071286.1341808158497
 Content-Type: text/xml
 Content-Transfer-Encoding: 7bit
 Content-ID: <urn:ogc:wcs:1.1:coverages>

 <?xml version="1.0" encoding="UTF-8"?><wcs:Coverages xmlns:wcs="http://www.opengis.net/wcs/1.1.1"
 xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ogc="http://www.opengis.net/ogc"
 xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://localhost:8090/geoserver/schemas/wcs/1.1.1/wcsCoverages.xsd"><wcs:Coverage><ows:Title>dem</
 ows:Title><ows:Abstract>Generated from GeoTIFF</ows:Abstract><ows:Identifier>dem</ows:Identifier><ows:Reference
 xlink:href="cid:theCoverage"/></wcs:Coverage></wcs:Coverages>
 ------=_Part_6_1071286.1341808158497
 Content-Type: image/tiff;subtype="geotiff"
 Content-Transfer-Encoding: base64
 Content-ID: <theCoverage>

 TU0AKgAAAAgAEgEAAAMAAAABAJAAAAEBAAMAAAABAIcAAAECAAMAAAABACAAAAEDAAMAAAABAAUA
 .......................
 3z31333537393/4B4D4F4H4J4L4N4PseICA=
 ------=_Part_6_1071286.1341808158497--

                                 국토공간계획지원체계(KOPSS) Open API                                                               15
Web
Processing
Service




             16
WPS Parameter Type
 LiteralData, BoundingBoxData, ComplexData

1. Literal         Native: byte, short, int, long, float, double, String….


2. BoundingBox         Extent

                                                   GridCoverage
                       Binary
                                                    Zip-binary

3. Complex
                                                   Feature GML
                        XML
                                                   Custom XML
Mime type
상호운영성 및 버전관리를 위해 반드시 필요하며, Data source는 모든 WPS process의 결과를 포함
Category Data source             Format                            Mime type
                           GML2.1             text/xml; subtype=gml/2.1.2
                           GML3.1             text/xml; subtype=gml/3.1.1(필수)
                           GML3.2             text/xml; subtype=gml/3.2.1
               Custom
Geometry                   GeoJSON            application/json
              Features
     &                     KML2.1             text/xml; subtype=kml/2.1 (vnd.google-earth.kml+xml)
                WFS
 Feature                   KML2.2             text/xml; subtype=kml/2.2
              Shapefile
Collection                 GeoRSS2.0 Simple   text/xml; subtype=rss_simple/2.0 (rss+xml)
             Cad Dataset
                           GeoRSS2.0 GML      text/xml; subtype=rss_gml/2.0
                           Zip-shapefile      application/zip
                           Wkt                application/wkt(geometry)
                           Wkb                application/wkb(geometry)
  Grid
                WCS        GeoTiff            image/tiff(필수) 또는 image/geotiff
Coverage
                                              text/xml; subtype=sld/1.0.0(필수)
   SLD          User       XML
                                              text/xml; subtype=sld/1.1.0
 Filter         User       XML                text/xml; subtype=filter/1.1(필수)
  XML           User       XML                text/xml(필수)
 Literal        User       -                  -
                            국토공간계획지원체계(KOPSS) Open API                                               18
Mime type - example
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" ……………………………………..>
  <ows:Identifier>kopss:CA_FeaturesToCoverage</ows:Identifier>
  <wps:DataInputs>
    <wps:Input>
      <ows:Identifier>inputFeatures</ows:Identifier>
      <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://wps_server/wfs" method="POST">
        <wps:Body>
          <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1">
            <wfs:Query typeName="kopss:kot_b_uq111" srsName="EPSG:2096">
              <ogc:Filter>
                <ogc:PropertyIsEqualTo>
                  <ogc:PropertyName>sgg_cd</ogc:PropertyName>
                  <ogc:Literal>27110</ogc:Literal>
                </ogc:PropertyIsEqualTo>
                                                                                                                    확장
              </ogc:Filter>                                  <wps:ResponseForm>
            </wfs:Query>                                         <wps:RawDataOutput mimeType=“application/json">
          </wfs:GetFeature>                                        <ows:Identifier>result</ows:Identifier>
        </wps:Body>
      </wps:Reference>                                           </wps:RawDataOutput>
    </wps:Input>                                               </wps:ResponseForm>
    <wps:Input>
      <ows:Identifier>fieldName</ows:Identifier>             <wps:ResponseForm>
      <wps:Data>
        <wps:LiteralData>ucode</wps:LiteralData>                 <wps:RawDataOutput mimeType="text/xml; subtype=kml/2.2">
      </wps:Data>                                                  <ows:Identifier>result</ows:Identifier>
    </wps:Input>                                                 </wps:RawDataOutput>
     …………………………..
  </wps:DataInputs>                                            </wps:ResponseForm>
  <wps:ResponseForm>
    <wps:ResponseDocument storeExecuteResponse="false">      <wps:ResponseForm>
      <wps:Output mimeType="image/tiff" asReference="true">      <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.2.1">
        <ows:Identifier>result</ows:Identifier>
      </wps:Output>                                                <ows:Identifier>result</ows:Identifier>
    </wps:ResponseDocument>                                      </wps:RawDataOutput>
  </wps:ResponseForm>                                          </wps:ResponseForm>
</wps:Execute>


                                  국토공간계획지원체계(KOPSS) Open API                                                                  19
WPS Request: Process Identifier
 Process Identifier 규칙: namespace:process identifier
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs"
xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1"
xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc"
xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink"
xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd">
  <ows:Identifier>kopss:ST_Centroid</ows:Identifier>
  <wps:DataInputs>
    <wps:Input>
      <ows:Identifier>inputGeometry</ows:Identifier>
      <wps:Data>
        <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1">
          <gml:LineString srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#4326">
            <gml:posList>-290.0 60.0 -240.0 150.0 -100.0 130.0 -100.0 100.0 20.0 130.0 100.0 90.0 180.0
60.0 260.0 -70.0</gml:posList>
          </gml:LineString>
        </wps:ComplexData>
      </wps:Data>
    </wps:Input>
  </wps:DataInputs>
  <wps:ResponseForm>
    <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1">
      <ows:Identifier>result</ows:Identifier>
    </wps:RawDataOutput>
  </wps:ResponseForm>
</wps:Execute>

                             국토공간계획지원체계(KOPSS) Open API                                                   20
WPS Request: Parameter
 Parameter: Reference POST
 Ex) wfs, wcs, gml, filter, sld … complex type
 <?xml version="1.0" encoding="utf-8"?>
 <wps:Execute version="1.0.0" service="WPS" .. xmlns:wfs="http://www.opengis.net/wfs" >
   <ows:Identifier>kopss:VA_Buffer</ows:Identifier>
   <wps:DataInputs>
     <wps:Input>
       <ows:Identifier>inputFeatures</ows:Identifier>
       <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://server/wfs" method="POST">
         <wps:Body>
           <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1">
             <wfs:Query typeName="kopss:kob_tl_subway" srsName="EPSG:2096" />
           </wfs:GetFeature>
         </wps:Body>
       </wps:Reference>
     </wps:Input>
     <wps:Input>
       <ows:Identifier>distance</ows:Identifier>
       <wps:Data>
         <wps:LiteralData>100</wps:LiteralData>
       </wps:Data>
     </wps:Input>
   </wps:DataInputs>
   <wps:ResponseForm>
     <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1">
       <ows:Identifier>result</ows:Identifier>
     </wps:RawDataOutput>
   </wps:ResponseForm>
 </wps:Execute>

                              국토공간계획지원체계(KOPSS) Open API                                                     21
WPS Request: Parameter
 Parameter: Reference POST CDATA
 Ex) wfs, wcs, gml, filter, sld, custom xml … complex type
 <?xml version="1.0" encoding="utf-8"?>
 <wps:Execute version="1.0.0" service="WPS" ...>
   <ows:Identifier>kopss:CA_Slope</ows:Identifier>
   <wps:DataInputs>
     <wps:Input>
       <ows:Identifier>inputCoverage</ows:Identifier>
       <wps:Reference mimeType="image/tiff" xlink:href="http://server/wcs" method="POST">
         <wps:Body><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
 <GetCoverage version="1.1.1" service="WCS" xmlns="http://www.opengis.net/wcs/1.1.1" ...>
   <ows:Identifier>kopss:raster_dem</ows:Identifier>
   <DomainSubset>
     <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::2096">
       <ows:LowerCorner>249126.90643187007 366434.5230430386</ows:LowerCorner>
       <ows:UpperCorner>260621.90643187007 377144.5230430386</ows:UpperCorner>
     </ows:BoundingBox>
   </DomainSubset>
   <Output store="true" format="image/geotiff">
     <GridCRS>
       <GridBaseCRS>urn:ogc:def:crs:EPSG::2096</GridBaseCRS>
       <GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType>
       <GridOffsets>5.0 -5.0</GridOffsets>
       <GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS>
     </GridCRS>
   </Output>
 </GetCoverage>]]></wps:Body>
       </wps:Reference>
     </wps:Input>

                              국토공간계획지원체계(KOPSS) Open API                                    22
WPS Request: Parameter
 Parameter: Reference GET
 Ex)wps process result(asReference=true), external resource(dxf…)..


 <?xml version="1.0" encoding="utf-8"?>
 <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs"
 xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1"
 xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc"
 xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink"
 xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd">
   <ows:Identifier>kopss:VA_FeaturesToPoint</ows:Identifier>
   <wps:DataInputs>
     <wps:Input>
       <ows:Identifier>inputFeatures</ows:Identifier>
       <wps:Reference mimeType="text/xml; subtype=gml/3.1.1"
 xlink:href="http://server/temp/api_data/areaFeatures.xml" method="GET" />
     </wps:Input>
   </wps:DataInputs>
   <wps:ResponseForm>
     <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1">
       <ows:Identifier>result</ows:Identifier>
     </wps:RawDataOutput>
   </wps:ResponseForm>
 </wps:Execute>



                              국토공간계획지원체계(KOPSS) Open API                                                  23
WPS Response: ResponseForm


RawDataOutput              GML, GridCovearge… rawdata



                   storeExecute
                                        Status & ID
                     Response
ResponseDocument
                                         Document + RawData
                   asReference
                                        Document + Result URL
WPS Response: RawDataOutput
 Literal, BoundingBox, Complex(Custom XML 등) 등 요청 후 클라
 이언트에서 재사용하지 않는 경우
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS"
   ……………………
  </wps:DataInputs>
  <wps:ResponseForm>
    <wps:RawDataOutput mimeType="text/xml">
      <ows:Identifier>result</ows:Identifier>
    </wps:RawDataOutput>
  </wps:ResponseForm>
</wps:Execute>

<?xml version="1.0" encoding="utf-8"?>
<SA_Classify>
  <TypeName>pfla_emd_pop</TypeName>
  <PropertyName>pop</PropertyName>
  <ClassBreaks BreakCount="5" Method="NaturalBreaks">
    <Value>5.0</Value>
    <Value>5137.000000</Value>
    <Value>13053.000000</Value>
    <Value>28370.000000</Value>
    <Value>62554.000000</Value>
    <Value>121279.0</Value>
  </ClassBreaks>
</SA_Classify>

                        국토공간계획지원체계(KOPSS) Open API        25
WPS Response: ResponseDocument
 asReference=true
 한번 요청 후 클라이언트에서 재사용하는 경우
 Tiff와 같이 클라이언트에서 처리하기 어려운 포맷인 경우 서버에서 처리
 대용량의 데이터인 경우
<wps:Execute version="1.0.0" service="WPS"
  ............
  </wps:DataInputs>
  <wps:ResponseForm>
    <wps:ResponseDocument storeExecuteResponse="false">
      <wps:Output mimeType="image/tiff" asReference="true">
        <ows:Identifier>result</ows:Identifier>
      </wps:Output>
    </wps:ResponseDocument>
  </wps:ResponseForm>
</wps:Execute>

<wps:ExecuteResponse service="WPS" version="1.0.0" ……….>
  ………
  <wps:ProcessOutputs>
    <wps:Output>
      <ows:Identifier>result</ows:Identifier>
      <wps:Reference href="http://server/temp/gridcoverage/result_230_2123fds.tif" mimeType="image/tiff" />
    </wps:Output>
  </wps:ProcessOutputs>
</wps:ExecuteResponse>


                             국토공간계획지원체계(KOPSS) Open API                                                       26
WPS Response: ResponseDocument
 storeExecuteResponse=true
<wps:Execute version="1.0.0" service="WPS"
  ............
  </wps:DataInputs>
  <wps:ResponseForm>
    <wps:ResponseDocument storeExecuteResponse=“true">
      <wps:Output mimeType="image/tiff" asReference="true">
        <ows:Identifier>result</ows:Identifier>
      </wps:Output>
    </wps:ResponseDocument>
  </wps:ResponseForm>
</wps:Execute>

<?xml version="1.0" encoding="utf-8"?>
<wps:ExecuteResponse xml:lang="en" service="WPS" serviceInstance="http://localhost:8090/geoserver/ows?"
statusLocation="http://localhost:8090/geoserver/ows?service=WPS&amp;version=1.0.0&amp;request=GetExecutionS
tatus&amp;executionId=142e4b6c-44e1-4aba-b8a2-6da8f0793198" version="1.0.0" ……..>
  <wps:Process wps:processVersion="1.0.0">
    <ows:Identifier>kopss:CA_Resample</ows:Identifier>
    ………..
  </wps:Process>
  <wps:Status creationTime="2012-07-08T05:41:45.198Z">
    <wps:ProcessAccepted>Process accepted.</wps:ProcessAccepted>
  </wps:Status>
</wps:ExecuteResponse>

http://server/ows?service=WPS&version=1.0.0&request=GetExecutionResult&executionId=142e4b6c-44e1-4aba-b8a2-
6da8f0793198&outputId=result.tiff&mimetype=image%2Ftiff

                             국토공간계획지원체계(KOPSS) Open API                                                       27
Geometry
Processes




            28
ST_* Process
 Geometry operator
    relationship, operator, proximity & distance, edit, conversion 등
    Data source = GML
 Issue
    Precision(이후 VA_* 계열 process 전체 영향)
    Buffer - option
    Simplify – Douglas-Peucker algorithm
    Rotate – radian angle




                    국토공간계획지원체계(KOPSS) Open API                          29
ST_* Process: Precision
 Single vs Double
    Database 저장구조
    Geometry 연산


 Geometry 연산을 사용하는 모든 분석에 영향
    거리, 면적 측정 등
    Operator(Function) 등


 API 결과 검증은 어떻게 할 것인가?
    인정하고 지자체가 도입시 판단?



              국토공간계획지원체계(KOPSS) Open API   30
ST_* Process: Function
 ST_Union, ST_Intersection, ST_Difference, ST_SymDifference


 Same Dimension
    Point : Point  Point
    LineString : LineString  LineString or MultiLineStrng
    Polygon : Polygon  Polygon or MultiPolygon


 Different Dimension
    Point : LineString or Polygon  Point
    MultiPoint : LineString or Polygon  Point or MultiPoint
    LineString : Polygon  LineString or MultiLineStrng

                   국토공간계획지원체계(KOPSS) Open API                   31
ST_* Process: Buffer
 ST_Buffer(inputGeometry Geometry, distance Double, endCapStyle String, joinStyle
  String, quadrantSegments Integer)) : Geometry
     endCapStyle: Round(1, default), Flat(2), Square(3)
     joinStyle: Round(1, default), Mitre(2), Bevel(3)
     Quadrant Segments: 8(left, default) vs 32(right)




                                국토공간계획지원체계(KOPSS) Open API                           32
ST_* Process: Buffer
 End cap style : Round(default), Flat, Square




                  국토공간계획지원체계(KOPSS) Open API     33
ST_* Process: Rotate
 rotZRadians = PI / 180.0 * angle(degree)
 Ex) rotate 75° = PI / 180.0 * 75 = 1.3089969389957472




                  국토공간계획지원체계(KOPSS) Open API              34
ST_* Process: Simplify
 Douglas-Peucker algorithm(default)
 Ex)
    Gray: source geometry
    Red: tolerance 1
    Blue: tolerance 5
LINESTRING (261956.05099999998 166101.414, 261956.09600000002
166103.87699999998, 261956.18200000003
166105.69799999997, 261956.60900000005 166106.811, 261957.34199999995
166108.251, 261957.72600000002 166108.772, 261957.74199999997
166111.33399999997, 261957.44900000002 166121.988, 261957.42099999997
166122.805, 261957.27500000002 166123.25799999997, 261956.816
166123.30800000002, 261954.527 166123.32900000003, 261951.22999999998
166123.342, 261949.59699999995 166122.10700000002, 261948.58900000004
166120.76299999998, 261947.22699999996
166118.05699999997, 261946.99399999995
166116.71999999997, 261947.22999999998 166112.919, 261947.05500000005
166111.322, 261946.59600000002 166110.34000000003, 261945.59100000001
166109.37099999998, 261944.39099999995
166108.23599999998, 261943.83200000005 166107.126, 261943.66299999994
166105.751, 261943.91000000003 166103.701, 261944.777
166100.41100000002, 261944.936 166098.336, 261944.68500000006
166096.54100000003, 261944.071 166095.206, 261943.38600000006
166094.48100000003, 261942.65099999995
166094.22999999998, 261940.05299999996
166094.18300000002, 261933.45900000003 국토공간계획지원체계(KOPSS) Open API       35
ST_* Process: NearestPoint
 returns the nearest point on a geometry to the input geometry.


                                               target




                     source                       Nearest Point




                  국토공간계획지원체계(KOPSS) Open API                       36
ST_* Process: SetSRID
 Sets the SRID on a geometry to a particular SRID
 <?xml version="1.0" encoding="utf-8"?>
 <wps:Execute version="1.0.0" service="WPS" ……..>
   <ows:Identifier>kopss:ST_SetSRID</ows:Identifier>
   <wps:DataInputs>
     <wps:Input>
       <ows:Identifier>inputGeometry</ows:Identifier>
       <wps:Data>
         <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1">
           <gml:Point>
             <gml:pos>129.6042549474073 36.80640958328785</gml:pos>
           </gml:Point>
         </wps:ComplexData>
       </wps:Data>
     </wps:Input>
     <wps:Input>
       <ows:Identifier>srID</ows:Identifier>
       <wps:Data>
         <wps:LiteralData>EPSG:4326</wps:LiteralData>
       </wps:Data>
     </wps:Input>
   </wps:DataInputs> …..

 <?xml version="1.0" encoding="UTF-8"?>
 <gml:Point srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#4326" ...>
   <gml:pos>129.6042549474073 36.80640958328785</gml:pos>
 </gml:Point>

                              국토공간계획지원체계(KOPSS) Open API                                   37
ST_* Process: Transform
 Geometry에 좌표체계 정보가 포함된 경우
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" …..>
  <ows:Identifier>kopss:ST_Transform</ows:Identifier>
  <wps:DataInputs>
    <wps:Input>
      <ows:Identifier>inputGeometry</ows:Identifier>
      <wps:Data>
        <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1">
          <gml:Point srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#2096">
            <gml:pos>250951.08217087443 371270.4452788795</gml:pos>
          </gml:Point>
        </wps:ComplexData>
      </wps:Data>
    </wps:Input>
    <wps:Input>
      <ows:Identifier>targetCRS</ows:Identifier>
      <wps:Data>
        <wps:LiteralData>EPSG:4326</wps:LiteralData>
      </wps:Data>
    </wps:Input>
  </wps:DataInputs> …..
<?xml version="1.0" encoding="UTF-8"?>
<gml:Point srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#4326" ...>
  <gml:pos>129.56890769890933 36.84149679781663</gml:pos>
</gml:Point>

                             국토공간계획지원체계(KOPSS) Open API                                         38
ST_* Process: Transform
 Geometry에 좌표체계 정보가 없는 경우
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" ...>
  <ows:Identifier>kopss:ST_Transform</ows:Identifier>
  <wps:DataInputs>
    <wps:Input>
      <ows:Identifier>inputGeometry</ows:Identifier>
      <wps:Data>
        <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1">
          <gml:Point>
            <gml:pos>250951.08217087443 371270.4452788795</gml:pos>
          </gml:Point>
        </wps:ComplexData>
      </wps:Data>
    </wps:Input>
    <wps:Input>
      <ows:Identifier>sourceCRS</ows:Identifier>
      <wps:Data>
        <wps:LiteralData>EPSG:2096</wps:LiteralData>
      </wps:Data>
    </wps:Input>
    <wps:Input>
      <ows:Identifier>targetCRS</ows:Identifier>
      <wps:Data>
        <wps:LiteralData>EPSG:4326</wps:LiteralData>
      </wps:Data>
    </wps:Input>
  </wps:DataInputs> …..
                             국토공간계획지원체계(KOPSS) Open API               39
ST_* Process: KML
 KML로 변환시 WGS84 경위도로 좌표변환 후 인코딩
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" …..>
  <ows:Identifier>kopss:ST_AsKML</ows:Identifier>
  <wps:DataInputs>
    <wps:Input>
      <ows:Identifier>inputGeometry</ows:Identifier>
      <wps:Data>
        <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1">
          <gml:Point srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#2097">
            <gml:pos>257601.70330083393 372312.5754942566</gml:pos>
          </gml:Point>
        </wps:ComplexData>
      </wps:Data>
    </wps:Input>
  </wps:DataInputs>
  <wps:ResponseForm>
    <wps:RawDataOutput mimeType="text/xml; subtype=vnd.google-earth.kml+xml">
      <ows:Identifier>result</ows:Identifier>
    </wps:RawDataOutput>
  </wps:ResponseForm>
</wps:Execute>
<?xml version="1.0" encoding="UTF-8"?>
<kml:Point xmlns:kml="http://earth.google.com/kml/2.1">
  <kml:coordinates>127.64373390338656,36.85046838175518</kml:coordinates>
</kml:Point>

                             국토공간계획지원체계(KOPSS) Open API                                         40
Vector
Analysis
Processes




            41
VA_* Process
 Vector(FeatureCollection) analysis
    Overlay, proximity, extraction, generalization, conversion,
     projection, calculation
    Data source = GML(WFS 포함)/XML
 Issue
    overlay(intersect, union, difference…) precision
    Cad(dxf) to feature collection
    Accessibility – Network(Dijkstra's algorithm)
    Fishnet




                    국토공간계획지원체계(KOPSS) Open API                     42
VA_* Process: Cad(dxf) Conversion
 Cad Dataset의 포맷은 DXF 버전 12 이상을 사용한다.
 Filter Encoding을 이용하여 제약조건을 설정할 수 있으며 변환
  가능한 Feature 유형은 Point, LineString, Polygon, Text(Point)의
  4가지 옵션을 설정할 수 있다.
 모든 Feature는 layer(String) 필드는 반드시 포함해야 한다.
 Feature 유형이 라인 및 포인트의 경우 height(Double) 필드를,
  Text일 경우 textlabel(String) 필드를 포함해야 한다.
 DXF 파일은 좌표체계정보를 가질 수 없으므로 forcedCRS(예
  EPSG:4326) 파라미터를 추가하여 좌표체계를 정의할 수 있도
  록 한다.


                국토공간계획지원체계(KOPSS) Open API                   43
WPS Request: Cad(dxf) Conversion
<?xml version="1.0" encoding="utf-8"?>
<wps:Execute version="1.0.0" service="WPS" ...>
  <ows:Identifier>kopss:VA_CadDatasetToGML</ows:Identifier>
  <wps:DataInputs>
    <wps:Input>
      <ows:Identifier>cadDatasetURL</ows:Identifier>
      <wps:Data>
        <wps:LiteralData>http://server/temp/cad/cadDataset.dxf</wps:LiteralData>
      </wps:Data>
    </wps:Input>
    <wps:Input>
      <ows:Identifier>forcedCRS</ows:Identifier>
      <wps:Data>
        <wps:LiteralData>EPSG:2096</wps:LiteralData>
      </wps:Data>
    </wps:Input>
    <wps:Input>
      <ows:Identifier>featureType</ows:Identifier>
      <wps:Data>
        <wps:LiteralData>1</wps:LiteralData>
      </wps:Data>
    </wps:Input>
  </wps:DataInputs>
  <wps:ResponseForm>
    <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1">
      <ows:Identifier>result</ows:Identifier>
    </wps:RawDataOutput>
  </wps:ResponseForm>
</wps:Execute>

                             국토공간계획지원체계(KOPSS) Open API                            44
VA_* Process: Cad(dxf) Conversion
 KOPSS에서는 주로 폴리곤(사업지구 경계 등) 및 텍스트포인트(지구명 등)를 추출
  하여 폴리곤 내 텍스트포인트의 속성을 계산하여 활용
 ArcGIS와 비교




             국토공간계획지원체계(KOPSS) Open API            45
VA_* Process: Fishnet
 boundary 입력시 boundaryInside 파라미터를 설정한다.
  boundary가 LineString일 경우 boundaryInside는 False만
  사용한다.
 column 및 row 수, width 및 height 파라미터가 모두 입력되
  는 경우 column 및 row가 방식이 우선한다.
 Fishnet 생성은 ArcGIS 또는 그리드 생성 방식에 맞춰 좌하
  단(LL)에서 우상단(UR) 방향으로 계산한다.
 셀의 width 및 height가 주어졌을 경우 extent 크기를 늘려
  분석영역을 완전히 포함해야 한다.
 리턴되는 feaure collection의 스키마는 UID(Interger, 일련
  번호)를 포함한다.

             국토공간계획지원체계(KOPSS) Open API             46
VA_* Process: Fishnet
좌하단(LL)에서 우상단(UR) 방향으로 계산
셀의 width 및 height가 주어졌을 경우 extent 크기를 늘려 분석영역을 완전히 포함


    21   22   23        24      25


    16   17   18        19      20


    11   12   13        14      15


    6    7    8          9      10


    1    2    3          4       5


                                               boundaryInside: true or false

                  국토공간계획지원체계(KOPSS) Open API                                   47
VA_* Process: ThiessenPolygon
 중복포인트 피쳐일 경우 하나만 취함
 clipArea가 주어졌을 경우 Clip 후 반환




              국토공간계획지원체계(KOPSS) Open API   48
VA_* Process: Overlay
 Overlay(intersect, union, difference<erase>, identity, symmetrical difference)
  precision
     Intersect = && (logical AND)
     Union = || (logical OR)
     Identity = a + (a AND b)
     Symmetrical Difference= (a OR b) - (a AND b)
     Erase(Difference) = a NOT b
     Update = (a NOT b) + b
 General Process
   ArcGIS: cracking features  assembling features  overlay processing
   Other Tools: overlay processing : 각 레이어별로 Feature의 Geometry가 중첩되는 경우
      ArcGIS와 결과 달라짐
 Cluster tolerance
   API 검증에서 ArcGIS는 0.0으로 설정하면 면적(10) 이상인 피쳐의 개수가 동일할 경우
 Overlay 연산 결과 피쳐의 Geomery가 Null 또는 Empty인 경우 결과에서 제외
 두 레이어의 Overlay 연산에서 두번째 레이어의 필드가 첫번째 필드와 이름이 같을
  경우 _1, _n 규칙으로 이름 변경


                          국토공간계획지원체계(KOPSS) Open API                               49
VA_* Process: Intersect
 Intersect
   서로 다른 차원의 레이어인 경우 차수가 낮은 차원의 레이어가 기준



Input layer         Overlay layer




              국토공간계획지원체계(KOPSS) Open API   50
VA_* Process: Union
 Union
   Polygon layer간의 연산만 수행



Input layer           Overlay layer




                국토공간계획지원체계(KOPSS) Open API   51
VA_* Process: Union & Intersect
 x,y resolution
        The precision with which coordinates within a feature class are recorded
        The default x,y resolution for feature classes is 0.0001 meters or its equivalent in the units of the dataset's
         coordinate system.

 x,y tolerance
        A cluster tolerance used to cluster features with coincident geometry; used in topology, feature overlay, and
         related operations
        The x,y tolerance is used to set the minimum distance between coordinates in clustering operations, such as
         topology validation, buffer generation, and polygon overlay, as well as in some editing operations.
        The default x,y tolerance is set to 0.001 meters or its equivalent in the units of the dataset's real-world
         coordinate system (in other words, 0.001 meters on the ground)
        The default value for the x,y tolerance is 10 times the default x,y resolution, and this is recommended for most
         cases.

 ArcGIS 사례 : Cluster tolerance = 0
   GDB를 사용하는 경우
     Tolerance = 0이라도 gdb의 default x,y tolerance를 따름
     API 단위테스트 샘플데이터셋 Union : 42개의 피쳐
   Shapefile을 사용하는 경우
     면적
     Null shape
     API 단위테스트 샘플데이터셋 Union : 55개의 피쳐



                                 국토공간계획지원체계(KOPSS) Open API                                                                 52
VA_* Process: Clip
 Case 1
   Input layer의 각 Feature별 clip layer의 Feature가 한 개 intersect 되는 경우
   Input layer의 속성 유지

Input layer               Clip layer




                   국토공간계획지원체계(KOPSS) Open API                          53
VA_* Process: Clip
 Case 2
   Input layer의 각 Feature별 clip layer의 Feature가 여러 개 intersect 되는 경우
   Input layer의 속성 유지

Input layer               Clip layer




                   국토공간계획지원체계(KOPSS) Open API                           54
VA_* Process: Buffer
 Quadrant Segments: 24(default), End cap style : Round(default)




                  국토공간계획지원체계(KOPSS) Open API                       55
VA_* Process: Dissolve & PointStatistics
 Sum.Jiga, Mean.Jiga  SUM_Jiga, AVG_Jiga

                            입력 파라미터                    리턴 필드

  First : String 필드, Dissolve 대상 Feature의 첫 번째 값     FST_필드명
  Last : String 필드, Dissolve 대상 Feature의 마지막 값       LST_필드명
  Sum : Numeric 필드, Dissolve 대상 Feature의 합           SUM_필드명
  Mean : Numeric 필드, Dissolve 대상 Feature의 평균값        AVG_필드명
  Min : Numeric 필드, Dissolve 대상 Feature의 최소값         MIN_필드명
  Max : Numeric 필드, Dissolve 대상 Feature의 최대값         MAX_필드명
  Std : Numeric 필드, Dissolve 대상 Feature의 표준편차        STD_필드명
  Var : Numeric 필드, Dissolve 대상 Feature의 분산          VAR_필드명
  Range : Numeric 필드, Dissolve 대상 Feature의 범위        RNG_필드명
  Count : Dissolve 대상 Feature의 수                     CNT_필드명
                        국토공간계획지원체계(KOPSS) Open API             56
VA_* Process: Accessibility Network
 Dijkstra's algorithm(default), A-Star(A*), Shooting-Star(Shooting*)
     길이 및 차선에 대한 weight 설정이 가능해야 함




                    국토공간계획지원체계(KOPSS) Open API                          57
GridCoverage
Analysis
Processes




               58
CA_* Process
 Raster analysis
    Conversion, density, distance, classification, extraction, zonal, overlay, s
     urface, math, custom…
    Data source = GML(WFS 포함)/GeoTIFF(WCS 포함)
 Issue
    Common – cell size, extent, search radius
    Zonal statistics - 통계
    Surface – slope, aspect, hillshade 등 algorithm
    Conversion – point, line, polygon
    Density – kernel 함수
     (Quadratic<Arcgis>, Binary, Cosine, Distance, Epanechnikov, Gaussian, In
     verse_Distance, Quartic, Triangular, Triweight, Tricube)
    Resample – origin point


                      국토공간계획지원체계(KOPSS) Open API                                    59
CA_* Process: Common
 Cell Size
    셀 크기가 주어지지 않은 래스터 분석의 경우 셀 크기는 입력데이
     터 Extent의 width 및 height 중 작은 값을 250으로 나눈 값을 사용
   Ex) CellSize = Math.min(Extent.getWidth(), Extent.getHeight()) / 250.0d
 Extent
    Extent가 주어지는 경우
    Default = 입력 데이터의 extent
    Density 등 분석에서 Extent가 주어지지 않는 경우
       …
 Search Radius(Band width)
    Density 등 기본 탐색반경
   Ex) searchRadius = Math.min(extent.getWidth(), extent.getHeight()) / 30.0d;



                     국토공간계획지원체계(KOPSS) Open API                                   60
CA_* Process: FeaturesToCoverage
 Point(MultiPoint)
 ArcGIS
   Cell assignment
     Most_Frequent(Default), Sum, Mean, Standard_Deviation, Maximum, Minimum,
      Range, Count




                    국토공간계획지원체계(KOPSS) Open API                                   61
CA_* Process: FeaturesToCoverage
 LineString(MultiLineString)


 Algorithm
   Bresenham's line algorithm ?
   Scan-line algorithm ?


 ArcGIS
   Cell assignment
     MAXIMUM_LENGTH(default)
 GDAL
   Bresenham's line algorithm



                    국토공간계획지원체계(KOPSS) Open API   62
CA_* Process: FeaturesToCoverage
 Polygon(MultiPolygon)


 Algorithm
  Polygon Filling Algorithm ?
  Scan Line Fill Algorithm ?


 ArcGIS & GDAL
  Cell assignment
    CELL_CENTER(default)




                    국토공간계획지원체계(KOPSS) Open API   63
CA_* Process: Surface
 Algorithm : Slope, Aspect, Hillshade 분석에 영향
① Neighborhood Method. Burrough, P. A. and Mcdonell, R.A. Algorithm
   (1998). Included in ArcGIS.
② 2nd Degree Polynomial Adjustment. Bauer, Rohdenburg and Bork
   Algorithm (1985)
③ 2nd Degree Polynomial Adjustment. Heerdegen and Beran Algorithm
   (1982).
④ 2nd Degree Polynomial Adjustment. Zevenbergen and Thorne Algorithm
   (1987).
⑤ 3rd Degree Polynomial Adjustment. Haralick Algorithm (1983)
⑥ Maximum Slope. Travis Algorithm (1975)
⑦ Maximum Slope by Triangles. Tarboton Algorithm (1997)
⑧ Least Squares Fit Plane. Costa-Cabral and Burgess Algorithm (1996)
⑨ Maximum Downhill Slope. Hickey, Van Remortel and Maichle Algorithm
   (2004)
  출처: http://www.unesco.org.uy/phi/aqualac/fileadmin/phi/aqualac/GarciaRodriguez_et_al_p78-82.pdf
                           국토공간계획지원체계(KOPSS) Open API                                               64
CA_* Process: Surface
  Slope algorithm: Neighborhood Method
                                  slope_degrees = ATAN (rise_run) * 57.29578 (180/pi)

                                  rise_run = √ ([dz/dx]2 + [dz/dy]2]

                                  [dz/dx] = ((c + 2f + i) - (a + 2d + g) / (8 * x_cellsize)

                                  [dz/dy] = ((g + 2h + i) - (a + 2b + c)) / (8 * y_cellsize)


  Edge 셀 처리
       • 위 (3 x 3 window) 셀에서 e(중심셀)의 값이 NoData이면 NoData값을 리턴
       • e 셀을 제외한 나머지 셀의 값이 NoData인 경우 e 셀 값으로 대체하여 계산

http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/How_Slope_works/009z000000vz000000/

                             국토공간계획지원체계(KOPSS) Open API                                             65
CA_* Process: Density
 Kernel Functions
   Quadratic<ArcGIS>
   Binary<Simple Density>
   Cosine
   Distance
   Epanechnikov
   Gaussian
   Inverse_Distance
   Quartic
   Triangular
   Triweight
   Tricube


http://en.wikipedia.org/wiki/Kernel_(statistics)
                       국토공간계획지원체계(KOPSS) Open API   66
CA_* Process: Density
 ArcGIS kernel function is based on the quadratic kernel function
  described in Silverman (1986, p. 76, equation 4.5).




 Silverman, B.W. Density Estimation for
 Statistics and Data Analysis. New York:
 Chapman and Hall, 1986.


                                                   출처: http://www.bchydro.com/
                      국토공간계획지원체계(KOPSS) Open API                                 67
CA_* Process: Density
    Quadratic (ArcGIS)




              국토공간계획지원체계(KOPSS) Open API   68
CA_* Process: Density
    Quadratic
    (Custom)




                국토공간계획지원체계(KOPSS) Open API   69
CA_* Process: Density
    Quartic




              국토공간계획지원체계(KOPSS) Open API   70
CA_* Process: Density
    Epanechnikov




             국토공간계획지원체계(KOPSS) Open API   71
CA_* Process: Density
    Tricube




              국토공간계획지원체계(KOPSS) Open API   72
CA_* Process: Density
    Triangular




                 국토공간계획지원체계(KOPSS) Open API   73
CA_* Process: Density
    Triweight




                국토공간계획지원체계(KOPSS) Open API   74
CA_* Process: Density
    Cosine




             국토공간계획지원체계(KOPSS) Open API   75
CA_* Process: Density
    Gaussian




               국토공간계획지원체계(KOPSS) Open API   76
CA_* Process: Density
    Inverse Distance




              국토공간계획지원체계(KOPSS) Open API   77
CA_* Process: Density
    Distance




               국토공간계획지원체계(KOPSS) Open API   78
CA_* Process: Density
    Binary=Point Density




              국토공간계획지원체계(KOPSS) Open API   79
CA_* Process: Density
 Vector vs RasterToPoint
   A




                국토공간계획지원체계(KOPSS) Open API   80
CA_* Process: Density
 Vector vs RasterToPoint
   G




                국토공간계획지원체계(KOPSS) Open API   81
CA_* Process: Density
   A




         국토공간계획지원체계(KOPSS) Open API   82
CA_* Process: Density
   B




         국토공간계획지원체계(KOPSS) Open API   83
CA_* Process: Euclidean distance
 폴리곤 데이터소스의 경우 Rasterizing 알고리즘에 따라 셀 크
 기가 클 경우 오차 발생


 A                                 G




                      Cellsize: 100
          국토공간계획지원체계(KOPSS) Open API       84
CA_* Process: Euclidean distance
 폴리곤 데이터소스의 경우 Rasterizing 알고리즘에 따라 셀 크
 기가 클 경우 오차 발생


 A                                   G




                      Cellsize: 30
          국토공간계획지원체계(KOPSS) Open API       85
CA_* Process: Euclidean distance
 Maximum distance: 2000 m




               국토공간계획지원체계(KOPSS) Open API   86
CA_* Process: Zonal statistics
 FeaturesToGridCoverage 와 관련
COUNT    AREA      MIN         MAX       RANGE        MEAN        STD         SUM
286673   7166825   49          490       441          177.32552   101.90411   50834436
286661   7166525   49          490       441          177.38812   101.94474   50850256
286674   7166850   49          490       441          177.32485   101.90420   50834425




                         국토공간계획지원체계(KOPSS) Open API                                      87
CA_* Process: CoverageToFeatures
 ArcGIS 9.3
   RasterToPolyline
       Weeding uses the Douglas – Peucker algorithm for line generalization
        with a tolerance of sqrt(0.5) * cell size.
   RasterToPolygon
       The weeding parameter uses an algorithm specifically designed for
        raster-to-vector conversion. It is not the Douglas – Peucker algorithm.
 ArcGIS 10.0/10.1
    정보 없음




 http://webhelp.esri.com/arcgisdesktop/9.3/index.cfm?TopicName=RasterDataToLineFeatureData

                       국토공간계획지원체계(KOPSS) Open API                                            88
CA_* Process: CoverageToFeatures
A                                 B




         국토공간계획지원체계(KOPSS) Open API   89
CA_* Process: Resample
  ArcGIS
      The lower left corner of the output raster dataset will be the
       same map space coordinate location as the lower left corner of
       the input raster dataset.
      The numbers of rows and columns in the output raster are
       determined as follows:
            columns = (xmax - xmin) / cell size
            rows = (ymax - ymin) / cell size




http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Resample/00170000009t000000/

                             국토공간계획지원체계(KOPSS) Open API                                      90
CA_* Process: Resample
 1 * 1 미터 래스터를 3 * 3 미터 래스터로 Nearest neighbor 방법으로 리샘플링

 Extent 및 Snap 설정: default                                 Extent 및 Snap 미설정




http://www.onspatial.com/2010/02/spatial-analysis%EB%B6%84%EC%84%9D%ED%99%98%EA%B2%BD%EC%9D%98-
%EC%A0%95%EC%9D%98%EA%B0%80-%EC%A4%91%EC%9A%94%ED%95%98%EB%8B%A4.html

                              국토공간계획지원체계(KOPSS) Open API                                          91
CA_* Process: Extraction
 Filter Encoding 표준을 이용하여 ArcGIS의 Spatial Analyst
  Extension 중 다음 툴을 포함
          Extract by Attributes
            Extracts the cells of a raster based on a logical query.

          Extract by Circle
            Extracts the cells of a raster based on a circle.

          Extract by Points
            Extracts the cells of a raster based on a set of coordinate points.

          Extract by Polygon
            Extracts the cells of a raster based on a polygon.

          Extract by Rectangle
            Extracts the cells of a raster based on a rectangle.

 공간필터를 사용하는 경우 래스터의 범위는 Geometry의 범위
http://resources.arcgis.com/en/help/main/10.1/#/An_overview_of_the_Extraction_tools/009z00000028000000/
                            국토공간계획지원체계(KOPSS) Open API                                                    92
CA_* Process: Extraction
 속성필터: Extract by Attributes
   Ex) Value >= 25

<wps:Input>
  <ows:Identifier>filter</ows:Identifier>
  <wps:Data>
    <wps:ComplexData mimeType="text/xml; subtype=filter/1.1">
      <ogc:Filter>
         <ogc:PropertyIsGreaterThan>
            <ogc:PropertyName>Value</ogc:PropertyName>
            <ogc:Literal>25</ogc:Literal>
         </ogc:PropertyIsGreaterThan>
      </ogc:Filter>
  </wps:ComplexData>
  </wps:Data>
</wps:Input>




                              국토공간계획지원체계(KOPSS) Open API        93
CA_* Process: Extraction
 공간필터: Extract by Polygon
    Ex) ST_Interects(the_geom, ST_GeomFromText('POLYGON((100 200, ……., 100 200)), 2096))

<wps:Input>
  <ows:Identifier>filter</ows:Identifier>
  <wps:Data>
    <wps:ComplexData mimeType="text/xml; subtype=filter/1.1">
      <ogc:Filter>
        <ogc:Intersects>
          <ogc:PropertyName>the_geom</ogc:PropertyName>
             <gml:Polygon srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#2096">
              <gml:exterior>
                 <gml:LinearRing>
                   <gml:posList>254709.22090040386 376440.6152000468
                   ........... 254709.22090040386 376440.6152000468
                   </gml:posList>
                 </gml:LinearRing>
             </gml:exterior>
             </gml:Polygon>
        </ogc:Intersects>
      </ogc:Filter>
    </wps:ComplexData>
  </wps:Data>
</wps:Input>




                            국토공간계획지원체계(KOPSS) Open API                                               94
CA_* Process: ConditionalEvaluation
 Ex) NoData를 100, 나머지는 200으로 변환하는 경우 = Con(IsNull([raster1]), 100, 200)

<wps:Input>
  <ows:Identifier>inputFilter</ows:Identifier>
  <wps:Data>
    <wps:ComplexData mimeType="text/xml; subtype=filter/1.1">
      <ogc:Filter>
        <ogc:PropertyIsEqualTo matchCase="true">
          <ogc:PropertyName>Value</ogc:PropertyName>
          <ogc:Literal>NoData</ogc:Literal>
        </ogc:PropertyIsEqualTo>
      </ogc:Filter>
    </wps:ComplexData>
  </wps:Data>
</wps:Input>
<wps:Input>
  <ows:Identifier>trueValue</ows:Identifier>
  <wps:Data>
    <wps:LiteralData>100</wps:LiteralData>
  </wps:Data>
</wps:Input>
<wps:Input>
  <ows:Identifier>falseValue</ows:Identifier>
  <wps:Data>
    <wps:LiteralData>200</wps:LiteralData>
  </wps:Data>
</wps:Input>

                             국토공간계획지원체계(KOPSS) Open API                    95
Statistical
Analysis
Processes




              96
SA_* Process
 Statistics(general & spatial) analysis
    Basic, advance, spatial statistics
    Data source = XML/GML(WFS 포함)/ GeoTIFF(WCS 포함)
 Issue
    Classify
        Equal interval, Quantile, Natural breaks, Standard deviation
    Moran’s I, G-statistics
        Ture centroid, Maximum Nearest Neighbor Distance
    SpatialLQ
        Centroid & polygon



                       국토공간계획지원체계(KOPSS) Open API                       97
SA_* Process: Classify
 Classify
    Equal Interval
        Min, Max
    Quantile
        sorting
    Natural Breaks
        sorting
    Standard Deviation
        Mean, StdDev.




                         국토공간계획지원체계(KOPSS) Open API   98
SA_* Process: Equal interval
 Equal interval
               Equal interval divides the range of attribute values into equal-sized
                subranges. ex)percentages and temperature
               interval = (max – min) / number of classes




http://resources.arcgis.com/en/help/main/10.1/#/Classifying_numerical_fields_for_graduated_symbology/00s50000001r000000/

                                                국토공간계획지원체계(KOPSS) Open API                                                 99
SA_* Process: Quantile
 Quantile
               Each class contains an equal number of features.
               quanta = number of samples / number of classes
               같은 값이 있거나 개수가 소수자리일 경우 오차 발생 가능




http://resources.arcgis.com/en/help/main/10.1/#/Classifying_numerical_fields_for_graduated_symbology/00s50000001r000000/

                                                국토공간계획지원체계(KOPSS) Open API                                                 100
SA_* Process: Quantile
A                             Q




         국토공간계획지원체계(KOPSS) Open API   101
SA_* Process: Quantile
A                             G




         국토공간계획지원체계(KOPSS) Open API   102
SA_* Process: Natural Breaks
 Natural Breaks(Jenks optimization method)
        Class breaks are identified that best group similar values and that maximize
         the differences between classes.
        http://support.esri.com/en/knowledgebase/techarticles/detail/11961




http://resources.arcgis.com/en/help/main/10.1/#/Classifying_numerical_fields_for_graduated_symbology/00s50000001r000000/

                                                국토공간계획지원체계(KOPSS) Open API                                                 103
SA_* Process: Natural Breaks
A                             Q




         국토공간계획지원체계(KOPSS) Open API   104
SA_* Process: Natural Breaks
A                             G




         국토공간계획지원체계(KOPSS) Open API   105
SA_* Process: Standard Deviation
 Standard Deviation
       Class breaks are created with equal value ranges that are a proportion of
        the standard deviation—usually at intervals of 1, ½, ⅓, or ¼ standard
        deviations using mean values and the standard deviations from the mean.
       소프트웨어마다 분류기준 및 계급 수의 변화 오차




                      국토공간계획지원체계(KOPSS) Open API                                    106
SA_* Process: Standard Deviation
A: Float                        G: Double




           국토공간계획지원체계(KOPSS) Open API       107
SA_* Process: Standard Deviation
A: Float                        G: Double




           국토공간계획지원체계(KOPSS) Open API       108
SA_* Process: Moran’s I Global
 Moran(1950)의 I 통계량은 공간자료들의 자기상관성을 측정, 전역적
 통계량은 분석지역 내에서 유사한 값들의 전반적인 공간군집경향을
 요약




            국토공간계획지원체계(KOPSS) Open API        109
SA_* Process: Moran’s I Local
 국지적 통계량은 특정지역을 중심으로 주변에 유사한 값들의 공간적
  군집도를 나타낸다. Anselin Local Moran's I statistic.
 True centroid




                  국토공간계획지원체계(KOPSS) Open API      110
SA_* Process: G-Statistics Global
 G 통계량은 큰 값들의 공간 군집도를 나타내며, 값이 클수록 공간군
 집도가 큰 것으로 해석한다(Getis and Ord, 1992)
  True centroid




                   국토공간계획지원체계(KOPSS) Open API   111
SA_* Process: G-Statistics Local
 국지적 G 통계량
  True centroid




                   국토공간계획지원체계(KOPSS) Open API   112
SA_* Process: SpatialLQ
 공간분화지수는 두 공간현상의 분리도를 측정할 때 분석단위들
 의 공간적 배열의 특성이 반영되도록 구조화(Wong, 2005)




          국토공간계획지원체계(KOPSS) Open API   113
SA_* Process: SpatialCrossAnalysis
 두 지표의 값들을 x, y 평면좌표에 점으로 나타내어 두 지표간 관계를
 보는 것으로 각 지표들 값을 ‘낮음’과 ‘높음’으로 양분




           국토공간계획지원체계(KOPSS) Open API       114
KOPSS
Model
Processes




            115
KM_* Process
 KOPSS model
    KOPSS Data와 강결합되어 있거나, WFS 서비스로 처리가 불가능한
     대용량의 데이터
    Data source = XML/GML(WFS 포함)/ GeoTIFF(WCS 포함) /Direct
     connection
 Issue
    Location-Allocation




                국토공간계획지원체계(KOPSS) Open API                116
KM_* Process: Location-Allocation
 시설의 공급적정성 평가에 의해 해당시설이 부족하다고 판단된 지역을 대상으로 신규 시설
  의 최적의 입지를 입지배분방법에 따라 탐색
 Location-Allocation Algorithm
    PMedian: 노드별 총통행거리합 최소화
   MaxiMin: 노드별 최대통행거리 최소화
   MiniMax: 노드별 최소통행거리 최대화




                  국토공간계획지원체계(KOPSS) Open API        117
참고: GIS Program
 KOPSS C/S Program – ArcGIS Engine
 ArcGIS 10.0
 MapInfo Professional 11.0
 Quantum GIS (1.7.0)
 GDAL library
 Open source GIS Tool & libraries




                  국토공간계획지원체계(KOPSS) Open API   118
참고: API 단위테스트 프로그램
 의견수렴 후 API 설계서/샘플 데이터셋과 함께 공지




          국토공간계획지원체계(KOPSS) Open API   119

Contenu connexe

Tendances

Analysing GeoServer compatibility with INSPIRE requirements
Analysing GeoServer compatibility  with INSPIRE requirements Analysing GeoServer compatibility  with INSPIRE requirements
Analysing GeoServer compatibility with INSPIRE requirements
GeoSolutions
 

Tendances (20)

FOSS4G 2017 Spatial Sql for Rookies
FOSS4G 2017 Spatial Sql for RookiesFOSS4G 2017 Spatial Sql for Rookies
FOSS4G 2017 Spatial Sql for Rookies
 
Osgis 2010
Osgis 2010Osgis 2010
Osgis 2010
 
GfossDAY2011 GeoServer Presentation
GfossDAY2011 GeoServer PresentationGfossDAY2011 GeoServer Presentation
GfossDAY2011 GeoServer Presentation
 
Foss4g it-2011 (english)
Foss4g it-2011 (english)Foss4g it-2011 (english)
Foss4g it-2011 (english)
 
Analysing GeoServer compatibility with INSPIRE requirements
Analysing GeoServer compatibility  with INSPIRE requirements Analysing GeoServer compatibility  with INSPIRE requirements
Analysing GeoServer compatibility with INSPIRE requirements
 
Agi08 Jeremy Morley
Agi08 Jeremy MorleyAgi08 Jeremy Morley
Agi08 Jeremy Morley
 
Geographic scripting in uDig
Geographic scripting in uDigGeographic scripting in uDig
Geographic scripting in uDig
 
GeoServer @ Osgis 2011
GeoServer @ Osgis 2011 GeoServer @ Osgis 2011
GeoServer @ Osgis 2011
 
Hengl & Reuter poster at Geomorphometry.org/2011
Hengl & Reuter poster at Geomorphometry.org/2011Hengl & Reuter poster at Geomorphometry.org/2011
Hengl & Reuter poster at Geomorphometry.org/2011
 
Comparing free software for spatial DBMSs
Comparing free software for spatial DBMSsComparing free software for spatial DBMSs
Comparing free software for spatial DBMSs
 
공간정보연구원 PostGIS 강의교재
공간정보연구원 PostGIS 강의교재공간정보연구원 PostGIS 강의교재
공간정보연구원 PostGIS 강의교재
 
Geosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 ReduxGeosolutions FOSS4g 2009 Redux
Geosolutions FOSS4g 2009 Redux
 
GeoServer, GeoNetwork and INSPIRE: where we are and what is missing
GeoServer, GeoNetwork and INSPIRE: where we are and what is missingGeoServer, GeoNetwork and INSPIRE: where we are and what is missing
GeoServer, GeoNetwork and INSPIRE: where we are and what is missing
 
GFOSS Day 2012 GeoServer Presentation
GFOSS Day 2012 GeoServer PresentationGFOSS Day 2012 GeoServer Presentation
GFOSS Day 2012 GeoServer Presentation
 
GeoServer, The Open Source Solution for the interoperable management of geo...
GeoServer, The Open Source Solution  for the interoperable management  of geo...GeoServer, The Open Source Solution  for the interoperable management  of geo...
GeoServer, The Open Source Solution for the interoperable management of geo...
 
Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...Using GeoServer for spatio-temporal data management with examples for MetOc a...
Using GeoServer for spatio-temporal data management with examples for MetOc a...
 
Phnom penh mapping meetup #15
Phnom penh mapping meetup #15Phnom penh mapping meetup #15
Phnom penh mapping meetup #15
 
Skills portfolio
Skills portfolioSkills portfolio
Skills portfolio
 
MongoDB + GeoServer
MongoDB + GeoServerMongoDB + GeoServer
MongoDB + GeoServer
 
Gis capabilities on Big Data Systems
Gis capabilities on Big Data SystemsGis capabilities on Big Data Systems
Gis capabilities on Big Data Systems
 

En vedette

Customizing Gis Programs
Customizing Gis ProgramsCustomizing Gis Programs
Customizing Gis Programs
MinPa Lee
 
단위테스트자동화지원도구 임성현 최종
단위테스트자동화지원도구 임성현 최종단위테스트자동화지원도구 임성현 최종
단위테스트자동화지원도구 임성현 최종
guest7178884
 

En vedette (20)

OGC 표준 서비스를 이용한 Web KOPSS 구현사례
OGC 표준 서비스를 이용한 Web KOPSS 구현사례OGC 표준 서비스를 이용한 Web KOPSS 구현사례
OGC 표준 서비스를 이용한 Web KOPSS 구현사례
 
[FOSS4G Korea 2016] Workshop - Advanced GeoServer
[FOSS4G Korea 2016] Workshop - Advanced GeoServer[FOSS4G Korea 2016] Workshop - Advanced GeoServer
[FOSS4G Korea 2016] Workshop - Advanced GeoServer
 
오픈소스 공간통계분석 패키지 개발
오픈소스  공간통계분석 패키지 개발오픈소스  공간통계분석 패키지 개발
오픈소스 공간통계분석 패키지 개발
 
[제86회 Open Technet]OGC 표준 기반의 공간자료 분석과 시각화 기술 개발
[제86회 Open Technet]OGC 표준 기반의 공간자료 분석과 시각화 기술 개발[제86회 Open Technet]OGC 표준 기반의 공간자료 분석과 시각화 기술 개발
[제86회 Open Technet]OGC 표준 기반의 공간자료 분석과 시각화 기술 개발
 
Java 기반의 오픈 소스 GIS를 지원하는 국내 공간 DBMS 드라이버 개발
Java 기반의 오픈 소스 GIS를 지원하는 국내 공간 DBMS 드라이버 개발Java 기반의 오픈 소스 GIS를 지원하는 국내 공간 DBMS 드라이버 개발
Java 기반의 오픈 소스 GIS를 지원하는 국내 공간 DBMS 드라이버 개발
 
Customizing Gis Programs
Customizing Gis ProgramsCustomizing Gis Programs
Customizing Gis Programs
 
GeoTools와 GeoServer를 이용한 KOPSS Open API의 구현
GeoTools와 GeoServer를 이용한 KOPSS Open API의 구현GeoTools와 GeoServer를 이용한 KOPSS Open API의 구현
GeoTools와 GeoServer를 이용한 KOPSS Open API의 구현
 
PostGIS - National Education Center for GIS: Open Source GIS
PostGIS - National Education Center for GIS: Open Source GIS PostGIS - National Education Center for GIS: Open Source GIS
PostGIS - National Education Center for GIS: Open Source GIS
 
GeoNode - Open Source Geospatial Content Management System
GeoNode - Open Source Geospatial Content Management SystemGeoNode - Open Source Geospatial Content Management System
GeoNode - Open Source Geospatial Content Management System
 
공간정보거점대학 - PyQGIS 및 플러그인 개발
공간정보거점대학 - PyQGIS 및 플러그인 개발공간정보거점대학 - PyQGIS 및 플러그인 개발
공간정보거점대학 - PyQGIS 및 플러그인 개발
 
Junit jasmine
Junit jasmineJunit jasmine
Junit jasmine
 
오픈소스GIS의 이해와활용
오픈소스GIS의 이해와활용오픈소스GIS의 이해와활용
오픈소스GIS의 이해와활용
 
Unit Test With J Unit
Unit Test With J UnitUnit Test With J Unit
Unit Test With J Unit
 
[FOSS4G Korea 2014] Making Base Maps with Open Data
[FOSS4G Korea 2014] Making Base Maps with Open Data[FOSS4G Korea 2014] Making Base Maps with Open Data
[FOSS4G Korea 2014] Making Base Maps with Open Data
 
공간정보아카데미 - Day1 오픈소스개발 일반
공간정보아카데미 - Day1 오픈소스개발 일반공간정보아카데미 - Day1 오픈소스개발 일반
공간정보아카데미 - Day1 오픈소스개발 일반
 
전자해도세미나
전자해도세미나전자해도세미나
전자해도세미나
 
GeoServer 기초
GeoServer 기초GeoServer 기초
GeoServer 기초
 
PyQGIS 개발자 쿡북(PyQGIS Developer Cookbook) 한국어 판
PyQGIS 개발자 쿡북(PyQGIS Developer Cookbook) 한국어 판 PyQGIS 개발자 쿡북(PyQGIS Developer Cookbook) 한국어 판
PyQGIS 개발자 쿡북(PyQGIS Developer Cookbook) 한국어 판
 
전자해도 표준과 뷰어 (최규성)
전자해도 표준과 뷰어 (최규성)전자해도 표준과 뷰어 (최규성)
전자해도 표준과 뷰어 (최규성)
 
단위테스트자동화지원도구 임성현 최종
단위테스트자동화지원도구 임성현 최종단위테스트자동화지원도구 임성현 최종
단위테스트자동화지원도구 임성현 최종
 

Similaire à Kopss Open API 단위테스트 이슈사항

MySQL Spatial Extensions - Boston MySQL Meetup April 2005
MySQL Spatial Extensions - Boston MySQL Meetup April 2005MySQL Spatial Extensions - Boston MySQL Meetup April 2005
MySQL Spatial Extensions - Boston MySQL Meetup April 2005
Andrew Collins
 
Integrating elevation datasets cairns june 2012
Integrating elevation datasets   cairns june 2012Integrating elevation datasets   cairns june 2012
Integrating elevation datasets cairns june 2012
Fungis Queensland
 
FME Lightning Talk: Raster
FME Lightning Talk: RasterFME Lightning Talk: Raster
FME Lightning Talk: Raster
Safe Software
 
Realini go gps_foss4g2011_small2
Realini go gps_foss4g2011_small2Realini go gps_foss4g2011_small2
Realini go gps_foss4g2011_small2
masarunarazaki
 
Kernel Architecture
Kernel ArchitectureKernel Architecture
Kernel Architecture
Thakursahib
 
Архитектура ОС Tizen
Архитектура ОС TizenАрхитектура ОС Tizen
Архитектура ОС Tizen
Artur Baranok
 
SSTC-2012 BenKBovée 2933a_Backup Slides 26-Apr 1130-1300 Track1
SSTC-2012 BenKBovée 2933a_Backup Slides 26-Apr 1130-1300 Track1SSTC-2012 BenKBovée 2933a_Backup Slides 26-Apr 1130-1300 Track1
SSTC-2012 BenKBovée 2933a_Backup Slides 26-Apr 1130-1300 Track1
Benton "Ben" Bovée
 

Similaire à Kopss Open API 단위테스트 이슈사항 (20)

GeoSolutions contributions to the CUSTOM Project
GeoSolutions contributions to the CUSTOM ProjectGeoSolutions contributions to the CUSTOM Project
GeoSolutions contributions to the CUSTOM Project
 
GSIF utilities
GSIF utilitiesGSIF utilities
GSIF utilities
 
SQLBits X SQL Server 2012 Spatial
SQLBits X SQL Server 2012 SpatialSQLBits X SQL Server 2012 Spatial
SQLBits X SQL Server 2012 Spatial
 
Introduction To GIS
Introduction To GISIntroduction To GIS
Introduction To GIS
 
GeoServer presentation @ Italian GFOSS day 2008
GeoServer presentation @ Italian GFOSS day 2008GeoServer presentation @ Italian GFOSS day 2008
GeoServer presentation @ Italian GFOSS day 2008
 
MySQL Spatial Extensions - Boston MySQL Meetup April 2005
MySQL Spatial Extensions - Boston MySQL Meetup April 2005MySQL Spatial Extensions - Boston MySQL Meetup April 2005
MySQL Spatial Extensions - Boston MySQL Meetup April 2005
 
Integrating elevation datasets cairns june 2012
Integrating elevation datasets   cairns june 2012Integrating elevation datasets   cairns june 2012
Integrating elevation datasets cairns june 2012
 
FME Workspace Template Collection for Reading Fundamental Geographic Data in ...
FME Workspace Template Collection for Reading Fundamental Geographic Data in ...FME Workspace Template Collection for Reading Fundamental Geographic Data in ...
FME Workspace Template Collection for Reading Fundamental Geographic Data in ...
 
FME Lightning Talk: Raster
FME Lightning Talk: RasterFME Lightning Talk: Raster
FME Lightning Talk: Raster
 
Gamma software introduction
Gamma software introductionGamma software introduction
Gamma software introduction
 
GeoIQ Stack - Where 2012
GeoIQ Stack - Where 2012GeoIQ Stack - Where 2012
GeoIQ Stack - Where 2012
 
FME 2012 World Tour - Lightning Talk on Rasters
FME 2012 World Tour - Lightning Talk on RastersFME 2012 World Tour - Lightning Talk on Rasters
FME 2012 World Tour - Lightning Talk on Rasters
 
Realini go gps_foss4g2011_small2
Realini go gps_foss4g2011_small2Realini go gps_foss4g2011_small2
Realini go gps_foss4g2011_small2
 
The Construction of the Internet Geological Data System Using WWW+Java+DB Tec...
The Construction of the Internet Geological Data System Using WWW+Java+DB Tec...The Construction of the Internet Geological Data System Using WWW+Java+DB Tec...
The Construction of the Internet Geological Data System Using WWW+Java+DB Tec...
 
Kernel Architecture
Kernel ArchitectureKernel Architecture
Kernel Architecture
 
Geographic Information System for Egyptian Railway System(GIS)
Geographic Information System for Egyptian Railway System(GIS)Geographic Information System for Egyptian Railway System(GIS)
Geographic Information System for Egyptian Railway System(GIS)
 
Архитектура ОС Tizen
Архитектура ОС TizenАрхитектура ОС Tizen
Архитектура ОС Tizen
 
10 using the web gis
10 using the web gis10 using the web gis
10 using the web gis
 
SSTC-2012 BenKBovée 2933a_Backup Slides 26-Apr 1130-1300 Track1
SSTC-2012 BenKBovée 2933a_Backup Slides 26-Apr 1130-1300 Track1SSTC-2012 BenKBovée 2933a_Backup Slides 26-Apr 1130-1300 Track1
SSTC-2012 BenKBovée 2933a_Backup Slides 26-Apr 1130-1300 Track1
 
Postgres Vision 2018: PostGIS and Spatial Extensions
Postgres Vision 2018: PostGIS and Spatial ExtensionsPostgres Vision 2018: PostGIS and Spatial Extensions
Postgres Vision 2018: PostGIS and Spatial Extensions
 

Plus de MinPa Lee

Plus de MinPa Lee (11)

오픈소스 GIS의 이해 - OSgeo Projects 중심
오픈소스 GIS의 이해 - OSgeo Projects 중심오픈소스 GIS의 이해 - OSgeo Projects 중심
오픈소스 GIS의 이해 - OSgeo Projects 중심
 
[EEENAR] OpenGXT 소개와 활용
[EEENAR] OpenGXT 소개와 활용 [EEENAR] OpenGXT 소개와 활용
[EEENAR] OpenGXT 소개와 활용
 
PyQGIS와 PyQt를 이용한 QGIS 기능 확장
PyQGIS와 PyQt를 이용한 QGIS 기능 확장PyQGIS와 PyQt를 이용한 QGIS 기능 확장
PyQGIS와 PyQt를 이용한 QGIS 기능 확장
 
[QGIS] 수치지도를 이용한 DEM 생성과 지형분석
[QGIS] 수치지도를 이용한 DEM 생성과 지형분석[QGIS] 수치지도를 이용한 DEM 생성과 지형분석
[QGIS] 수치지도를 이용한 DEM 생성과 지형분석
 
[FOSS4G Korea 2021]Workshop-QGIS-TIPS-20211028
[FOSS4G Korea 2021]Workshop-QGIS-TIPS-20211028[FOSS4G Korea 2021]Workshop-QGIS-TIPS-20211028
[FOSS4G Korea 2021]Workshop-QGIS-TIPS-20211028
 
State of OpenGXT: 오픈소스 공간분석엔진
State of OpenGXT: 오픈소스 공간분석엔진State of OpenGXT: 오픈소스 공간분석엔진
State of OpenGXT: 오픈소스 공간분석엔진
 
[FOSS4G Korea 2019] 오픈소스를 활용한 역학조사 분석도구 개발
[FOSS4G Korea 2019] 오픈소스를 활용한 역학조사 분석도구 개발[FOSS4G Korea 2019] 오픈소스를 활용한 역학조사 분석도구 개발
[FOSS4G Korea 2019] 오픈소스를 활용한 역학조사 분석도구 개발
 
Transifex - 오픈소스 GIS 한글화 플랫폼
Transifex - 오픈소스 GIS 한글화 플랫폼Transifex - 오픈소스 GIS 한글화 플랫폼
Transifex - 오픈소스 GIS 한글화 플랫폼
 
[FOSS4G] uDig Desktop GIS
[FOSS4G] uDig Desktop GIS[FOSS4G] uDig Desktop GIS
[FOSS4G] uDig Desktop GIS
 
[FOSS4G Korea 2017] uDig GIS 효율적으로 활용하기
[FOSS4G Korea 2017] uDig GIS 효율적으로 활용하기[FOSS4G Korea 2017] uDig GIS 효율적으로 활용하기
[FOSS4G Korea 2017] uDig GIS 효율적으로 활용하기
 
공간정보아카데미 - 오픈소스GIS 분석가과정 - QGIS 공간분석일반
공간정보아카데미 - 오픈소스GIS 분석가과정 - QGIS 공간분석일반공간정보아카데미 - 오픈소스GIS 분석가과정 - QGIS 공간분석일반
공간정보아카데미 - 오픈소스GIS 분석가과정 - QGIS 공간분석일반
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 

Dernier (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 

Kopss Open API 단위테스트 이슈사항

  • 1. 2012년 8월 6일 KOPSS 응용프로그램 개발팀
  • 3. History  2009년 KOPSS 4차 사업부터 KOPSS에 다양한 GIS엔진이 진입할 수 있는 기반을 마련하기 위해 KOPSS Open API 설계 시작  - 1차(2009~2010년) : GIS 기본기능 및 단순한 기능들을 중심으로 KOPSS의 공통기능과 도시재정비계획지원모형에 대한 설계  - 2차(2010~2011년) : 1차 설계내용 이외의 모든 기능들(고급분석기 능 포함)에 대한 설계  - 3차(2011 ~ 2012년): 1, 2차 설계 보완, GIS 엔진 벤더사 피드백 반영 등  현재 약 120개(ST_* 33개, 분석 90여개)의 process들로 구성 국토공간계획지원체계(KOPSS) Open API 3
  • 4. 용어정의  WMS, WFS, WCS, WPS  Web Map Service, Web Feature Service, Web Coverage Service, Web Processing Service  Literal Type  Boolean, short, integer, long, float, double, string…  Complex Type  User defined type, raw data, xml, gml…  GML  Vector layer, feature collection, feature layer…  GridCoverage  Raster, Grid  Filter  Filter Encoding  SLD  Styled Layer Descriptor  SRS  Spatial Reference System 국토공간계획지원체계(KOPSS) Open API 4
  • 5. KOPSS 적용 OGC 표준 범위 Service Version Operator Service Format & version GetCapabilities Filter Encoding 1.1(필수) COMMON GetMap SLD 1.0(필수) / SLD 1.1 WMS 1.3.0 GetFeatureInfo GML 3.1.1(필수) GetLegendGraphic(SLD) WFS GML 2.1.2 GetCapabilities GML 3.2.1 GetFeature WFS 1.1.0 GeoTiff(필수) WCS DescribeFeatureType Jpeg2000 Transaction PNG(필수), WMS GetCapabilities GIF, JPG, BMP… WCS 1.1.1 DescribeCoverage GetCoverage Geometry GeoJSON & GetCapabilities KML 2.1, 2.2 Features WPS 1.0.0 DescribeProcess WKT 확장 Execute GeoRSS 2.0 국토공간계획지원체계(KOPSS) Open API 5
  • 6. KOPSS API 구성 Geometry 연산, 벡터, 래스터, 통계, KOPSS Model 분석 프로세스로 구성 Conversion, Density, Custom Extension / Model Distance, Interpolation, Analysis Surface Analysis 등 KOPSS Model Analysis (KM) Grid Coverage Statistical Basic & Spatial Statistics 등 Analysis Analysis (CA) (SA) WPS GeoProcessing, Conversion Calculation, Projection 등 Relationship, Topological Proximity, Measurement Operator Vector Geometry Analysis Operator (VA) (ST) 6
  • 7. KOPSS API 구성 Type Category Process Identifier Spatial Relationship Equals, Disjoint, Intersects, Touches, Crosses, Within, Contains, Overlaps Geometry Edit Operators Rotate, Transform, SetSRID Geometry Spatial Operators Intersection, Union, Difference, Sym Difference, Buffer, Convex Hull, Centroid, Simplify Service (ST) Proximity & Euclidean Distance, Manhattan Distance, Hausdorff Distance, Nearest Point, Area, Length, LFI Measurement Operators Geometry Output GML , WKB, WKT, GeoJSON, GeoRSS, KML, SVG Clip, Dissolve, Intersect, Merge, Union, Buffer, PointStatistics, PointDistance, Fishnet, GeoProcessing ThiessenPolygon, UnionGeometry, MultipleRingBuffer Vector Conversion FeaturesToPoint, ShapefileToGML, FeaturesToShapefile, CadDatasetToGML, GetMap Service (VA) Projection Project Calculation CalculateXYCoordinate, CalculateArea, CalculateLength, CalculateField Density Density(Point, Kernel) Conversion FeaturesToCoverage, GeometryToCoverage, CoverageToFeatures, Resample, GetMap Distance Euclidean Distance Grid Reclass Reclass, ReclassStatistics Coverage Extraction Extraction, SetMask Service (CA) Zonal ZonalStatistics Overlay Math(+,-,*,%), ConditionEvaluation, Merge Surface Slope, Aspect, Hillshade, Cutfill Custom Fuzzy (2012. 07 기준) 국토공간계획지원체계(KOPSS) Open API 7
  • 8. KOPSS API 구성 Type Category Process Identifier Statistics(Count, Sum, Mean, Minimum, Maximum, Standard Deviation), Histogram(Value-Frequenc Statistics Statistics y pairs), Classify(Equal Interval, Quantile, Natural Breaks 등), AHP, StatisticsEx, Pearson, Regression Service (SA) Spatial Statistics Moran’s I(Global, Local), G Statistics(Global, Local), Spatial LQ, SpatialCrossAnalysis 행정구역별 필지현황 생성, 행정구역별 건축물현황 생성, 접근성분석, 필지경계 생성 공통 KOPSS Density, 접근성분석 형상지수(LFI) 인구추정 - 단순증가선형모형(등차급수법), 등비급수형지수모형(등비급수법), 순간복리형지수모형(지수 KOPSS 터잡이 함수법), 로지스틱모형 Model Service 거주밀도 소요면적 산정, 주택호수 소요면적 산정, 상업용지 소요면적 산정, 공업용지 소요면적 (KM) 산정 정지량분석 기초현황보기, 수요분석, 수요변화 시뮬레이션, 실제공급량계산, 공급변화 시뮬레이션, 공급적정 시설이 성평가, 입지배분 후보지 탐색, 후보지 접근성분석 지역이 국토지표로부터 다차원 DB 생성 재생이 토지(필지)조서작성, 건축물조서작성, 도로점유율, 주택접도율, 노후불량 건축물조회 기본레이어 생성, 지형도생성, 도로중심선 및 실폭도로, 도로교통주제도, 용도지역지구생성, 건축 C/S 관리도구 물대장 생성, 지적/토지특성 생성, 지적/건축물대장 생성, 인구정보 생성 (2012. 07 기준) 국토공간계획지원체계(KOPSS) Open API 8
  • 9. KOPSS API 제약사항  WMS(1.3.0), WFS(1.1.0), WCS(1.1.1), WPS(1.0.0)는 OGC 규격을 따름  Filter는 Function을 제외한 다음을 지원  Comparison: =, <>, <, >, >=, <=, like, null, between,  Spatial: Equals, Disjoint, Touches, Within, Overlaps, Crosses, Intersects, Contains, BBOX, Dwit hin, Beyond  Logical: And, Or, Not  Arithmetic: Add(+), Sub(-), Mul(*), Div(/)  GridCoverage(Raster)는 NoData 처리가 가능해야 함  특정 알고리즘에 대해서는 KOPSS API 문서에 포함된 알고리즘을 구현  KOPSS Density, LFI 등  SRS가 포함된 Geometry가 Input 파라미터로 입력되는 경우 Output Geometry 역시 SRS 정보가 포함되어야 함  <gml:Polygon srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#5174">  KML 및 GeoRSS 변환의 경우 WGS84 경위도로 변환 국토공간계획지원체계(KOPSS) Open API 9
  • 10. KOPSS Architecture: Concept  분석기능이 필요 없는 배경지도 및 주제도는 WMS를 이용  분석기능이 필요 없는 레이어의 조회는 WFS를 이용  상호운영성에 중점  DEM/Slope/Aspect 등 대용량의 래스터는 WCS를 이용하여 WPS 등 클라이 언트에서는 Resample, Subset, Reproject 하여 WPS의 파라미터로 넘김  WPS는 WFS, WCS 및 External resource를 source 데이터로 이용하여 분석 후 요청 format으로 리턴  External resource  WPS의 결과  Zip-shapefile, cad 등 reference url  국가공간정보체계 자원 활용하는 경우  지자체의 상황에 따라 Altibase DBMS 를 지원(Data provider) 국토공간계획지원체계(KOPSS) Open API 10
  • 11. KOPSS Architecture: Service KOPSS 관리도구 KOPSS Web Client API 단위테스트 Mart 관리 통합테스트 HTTP 2D Web KOPSS 연계 시스템 토지이용계획 도시기반시설계획 지역계획 도시재정비계획 UPIS, … HTTP OGC OWS 기반 GIS Server WMS WFS WPS WCS 외부기관 KOPSS DB Sync Sync KLIS, 국토지표통계, 교통, 환경… (Altibase ?) NSDI DB 국토공간계획지원체계(KOPSS) Open API 11
  • 13. Service Version Operator Web Coverage Service GetCapabilities WCS 1.1.1 DescribeCoverage GetCoverage  Why WCS?  대용량 래스터에 대한 Resample, Subset, Reproject 지원  대상레이어: DEM, Slope, Aspect, Hillshade 및 래스터 형태의 주제도  Ex) 대구 DEM 5*5 = 7459, 9066  Request <?xml version="1.0" encoding="utf-8"?> <GetCoverage version="1.1.1" service="WCS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wcs/1.1.1" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xsi:schemaLocation="http://www.opengis.net/wcs/1.1.1 http://schemas.opengis.net/wcs/1.1.1/wcsAll.xsd"> <ows:Identifier>kopss:dem</ows:Identifier> <DomainSubset> <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::2096"> <ows:LowerCorner>141265.143 234558.859</ows:LowerCorner> <ows:UpperCorner>178560.143 279888.859</ows:UpperCorner> </ows:BoundingBox> </DomainSubset> <Output store="true" format="image/geotiff"> <GridCRS> <GridBaseCRS>urn:ogc:def:crs:EPSG::2096</GridBaseCRS> <GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType> <GridOffsets>5.0 -5.0</GridOffsets> <GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS> </GridCRS> </Output> </GetCoverage> 국토공간계획지원체계(KOPSS) Open API 13
  • 14. Service Version Operator Web Coverage Service GetCapabilities WCS 1.1.1 DescribeCoverage GetCoverage  서버의 특정 위치에 저장되며, 클라이언트는 위치만 알고 처리  Response  <Output store="true“…….> <?xml version="1.0" encoding="utf-8"?> <wcs:Coverages xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ogc="http://www.opengis.net/ogc" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://localhost:8090/geoserver/schemas/wcs/1.1.1/wcsCoverages.xsd"> <wcs:Coverage> <ows:Title>dem</ows:Title> <ows:Abstract>Generated from GeoTIFF</ows:Abstract> <ows:Identifier>dem</ows:Identifier> <ows:Reference xlink:href="http://localhost:8090/server/temp/wcs/dem_9507595085222.tif" /> </wcs:Coverage> </wcs:Coverages> 국토공간계획지원체계(KOPSS) Open API 14
  • 15. Service Version Operator Web Coverage Service GetCapabilities WCS 1.1.1 DescribeCoverage GetCoverage  Response  <Output store=“false“…….> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_6_1071286.1341808158497" ------=_Part_6_1071286.1341808158497 Content-Type: text/xml Content-Transfer-Encoding: 7bit Content-ID: <urn:ogc:wcs:1.1:coverages> <?xml version="1.0" encoding="UTF-8"?><wcs:Coverages xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ogc="http://www.opengis.net/ogc" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://localhost:8090/geoserver/schemas/wcs/1.1.1/wcsCoverages.xsd"><wcs:Coverage><ows:Title>dem</ ows:Title><ows:Abstract>Generated from GeoTIFF</ows:Abstract><ows:Identifier>dem</ows:Identifier><ows:Reference xlink:href="cid:theCoverage"/></wcs:Coverage></wcs:Coverages> ------=_Part_6_1071286.1341808158497 Content-Type: image/tiff;subtype="geotiff" Content-Transfer-Encoding: base64 Content-ID: <theCoverage> TU0AKgAAAAgAEgEAAAMAAAABAJAAAAEBAAMAAAABAIcAAAECAAMAAAABACAAAAEDAAMAAAABAAUA ....................... 3z31333537393/4B4D4F4H4J4L4N4PseICA= ------=_Part_6_1071286.1341808158497-- 국토공간계획지원체계(KOPSS) Open API 15
  • 17. WPS Parameter Type  LiteralData, BoundingBoxData, ComplexData 1. Literal Native: byte, short, int, long, float, double, String…. 2. BoundingBox Extent GridCoverage Binary Zip-binary 3. Complex Feature GML XML Custom XML
  • 18. Mime type 상호운영성 및 버전관리를 위해 반드시 필요하며, Data source는 모든 WPS process의 결과를 포함 Category Data source Format Mime type GML2.1 text/xml; subtype=gml/2.1.2 GML3.1 text/xml; subtype=gml/3.1.1(필수) GML3.2 text/xml; subtype=gml/3.2.1 Custom Geometry GeoJSON application/json Features & KML2.1 text/xml; subtype=kml/2.1 (vnd.google-earth.kml+xml) WFS Feature KML2.2 text/xml; subtype=kml/2.2 Shapefile Collection GeoRSS2.0 Simple text/xml; subtype=rss_simple/2.0 (rss+xml) Cad Dataset GeoRSS2.0 GML text/xml; subtype=rss_gml/2.0 Zip-shapefile application/zip Wkt application/wkt(geometry) Wkb application/wkb(geometry) Grid WCS GeoTiff image/tiff(필수) 또는 image/geotiff Coverage text/xml; subtype=sld/1.0.0(필수) SLD User XML text/xml; subtype=sld/1.1.0 Filter User XML text/xml; subtype=filter/1.1(필수) XML User XML text/xml(필수) Literal User - - 국토공간계획지원체계(KOPSS) Open API 18
  • 19. Mime type - example <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" ……………………………………..> <ows:Identifier>kopss:CA_FeaturesToCoverage</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://wps_server/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1"> <wfs:Query typeName="kopss:kot_b_uq111" srsName="EPSG:2096"> <ogc:Filter> <ogc:PropertyIsEqualTo> <ogc:PropertyName>sgg_cd</ogc:PropertyName> <ogc:Literal>27110</ogc:Literal> </ogc:PropertyIsEqualTo> 확장 </ogc:Filter> <wps:ResponseForm> </wfs:Query> <wps:RawDataOutput mimeType=“application/json"> </wfs:GetFeature> <ows:Identifier>result</ows:Identifier> </wps:Body> </wps:Reference> </wps:RawDataOutput> </wps:Input> </wps:ResponseForm> <wps:Input> <ows:Identifier>fieldName</ows:Identifier> <wps:ResponseForm> <wps:Data> <wps:LiteralData>ucode</wps:LiteralData> <wps:RawDataOutput mimeType="text/xml; subtype=kml/2.2"> </wps:Data> <ows:Identifier>result</ows:Identifier> </wps:Input> </wps:RawDataOutput> ………………………….. </wps:DataInputs> </wps:ResponseForm> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse="false"> <wps:ResponseForm> <wps:Output mimeType="image/tiff" asReference="true"> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.2.1"> <ows:Identifier>result</ows:Identifier> </wps:Output> <ows:Identifier>result</ows:Identifier> </wps:ResponseDocument> </wps:RawDataOutput> </wps:ResponseForm> </wps:ResponseForm> </wps:Execute> 국토공간계획지원체계(KOPSS) Open API 19
  • 20. WPS Request: Process Identifier  Process Identifier 규칙: namespace:process identifier <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>kopss:ST_Centroid</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputGeometry</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1"> <gml:LineString srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:posList>-290.0 60.0 -240.0 150.0 -100.0 130.0 -100.0 100.0 20.0 130.0 100.0 90.0 180.0 60.0 260.0 -70.0</gml:posList> </gml:LineString> </wps:ComplexData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> 국토공간계획지원체계(KOPSS) Open API 20
  • 21. WPS Request: Parameter  Parameter: Reference POST  Ex) wfs, wcs, gml, filter, sld … complex type <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" .. xmlns:wfs="http://www.opengis.net/wfs" > <ows:Identifier>kopss:VA_Buffer</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://server/wfs" method="POST"> <wps:Body> <wfs:GetFeature service="WFS" version="1.1.0" outputFormat="text/xml; subtype=gml/3.1.1"> <wfs:Query typeName="kopss:kob_tl_subway" srsName="EPSG:2096" /> </wfs:GetFeature> </wps:Body> </wps:Reference> </wps:Input> <wps:Input> <ows:Identifier>distance</ows:Identifier> <wps:Data> <wps:LiteralData>100</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> 국토공간계획지원체계(KOPSS) Open API 21
  • 22. WPS Request: Parameter  Parameter: Reference POST CDATA  Ex) wfs, wcs, gml, filter, sld, custom xml … complex type <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" ...> <ows:Identifier>kopss:CA_Slope</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputCoverage</ows:Identifier> <wps:Reference mimeType="image/tiff" xlink:href="http://server/wcs" method="POST"> <wps:Body><![CDATA[<?xml version="1.0" encoding="UTF-8"?> <GetCoverage version="1.1.1" service="WCS" xmlns="http://www.opengis.net/wcs/1.1.1" ...> <ows:Identifier>kopss:raster_dem</ows:Identifier> <DomainSubset> <ows:BoundingBox crs="urn:ogc:def:crs:EPSG::2096"> <ows:LowerCorner>249126.90643187007 366434.5230430386</ows:LowerCorner> <ows:UpperCorner>260621.90643187007 377144.5230430386</ows:UpperCorner> </ows:BoundingBox> </DomainSubset> <Output store="true" format="image/geotiff"> <GridCRS> <GridBaseCRS>urn:ogc:def:crs:EPSG::2096</GridBaseCRS> <GridType>urn:ogc:def:method:WCS:1.1:2dSimpleGrid</GridType> <GridOffsets>5.0 -5.0</GridOffsets> <GridCS>urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS</GridCS> </GridCRS> </Output> </GetCoverage>]]></wps:Body> </wps:Reference> </wps:Input> 국토공간계획지원체계(KOPSS) Open API 22
  • 23. WPS Request: Parameter  Parameter: Reference GET  Ex)wps process result(asReference=true), external resource(dxf…).. <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.opengis.net/wps/1.0.0" xmlns:wfs="http://www.opengis.net/wfs" xmlns:wps="http://www.opengis.net/wps/1.0.0" xmlns:ows="http://www.opengis.net/ows/1.1" xmlns:gml="http://www.opengis.net/gml" xmlns:ogc="http://www.opengis.net/ogc" xmlns:wcs="http://www.opengis.net/wcs/1.1.1" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:schemaLocation="http://www.opengis.net/wps/1.0.0 http://schemas.opengis.net/wps/1.0.0/wpsAll.xsd"> <ows:Identifier>kopss:VA_FeaturesToPoint</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputFeatures</ows:Identifier> <wps:Reference mimeType="text/xml; subtype=gml/3.1.1" xlink:href="http://server/temp/api_data/areaFeatures.xml" method="GET" /> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> 국토공간계획지원체계(KOPSS) Open API 23
  • 24. WPS Response: ResponseForm RawDataOutput GML, GridCovearge… rawdata storeExecute Status & ID Response ResponseDocument Document + RawData asReference Document + Result URL
  • 25. WPS Response: RawDataOutput  Literal, BoundingBox, Complex(Custom XML 등) 등 요청 후 클라 이언트에서 재사용하지 않는 경우 <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" …………………… </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> <?xml version="1.0" encoding="utf-8"?> <SA_Classify> <TypeName>pfla_emd_pop</TypeName> <PropertyName>pop</PropertyName> <ClassBreaks BreakCount="5" Method="NaturalBreaks"> <Value>5.0</Value> <Value>5137.000000</Value> <Value>13053.000000</Value> <Value>28370.000000</Value> <Value>62554.000000</Value> <Value>121279.0</Value> </ClassBreaks> </SA_Classify> 국토공간계획지원체계(KOPSS) Open API 25
  • 26. WPS Response: ResponseDocument  asReference=true  한번 요청 후 클라이언트에서 재사용하는 경우  Tiff와 같이 클라이언트에서 처리하기 어려운 포맷인 경우 서버에서 처리  대용량의 데이터인 경우 <wps:Execute version="1.0.0" service="WPS" ............ </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse="false"> <wps:Output mimeType="image/tiff" asReference="true"> <ows:Identifier>result</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> <wps:ExecuteResponse service="WPS" version="1.0.0" ……….> ……… <wps:ProcessOutputs> <wps:Output> <ows:Identifier>result</ows:Identifier> <wps:Reference href="http://server/temp/gridcoverage/result_230_2123fds.tif" mimeType="image/tiff" /> </wps:Output> </wps:ProcessOutputs> </wps:ExecuteResponse> 국토공간계획지원체계(KOPSS) Open API 26
  • 27. WPS Response: ResponseDocument  storeExecuteResponse=true <wps:Execute version="1.0.0" service="WPS" ............ </wps:DataInputs> <wps:ResponseForm> <wps:ResponseDocument storeExecuteResponse=“true"> <wps:Output mimeType="image/tiff" asReference="true"> <ows:Identifier>result</ows:Identifier> </wps:Output> </wps:ResponseDocument> </wps:ResponseForm> </wps:Execute> <?xml version="1.0" encoding="utf-8"?> <wps:ExecuteResponse xml:lang="en" service="WPS" serviceInstance="http://localhost:8090/geoserver/ows?" statusLocation="http://localhost:8090/geoserver/ows?service=WPS&amp;version=1.0.0&amp;request=GetExecutionS tatus&amp;executionId=142e4b6c-44e1-4aba-b8a2-6da8f0793198" version="1.0.0" ……..> <wps:Process wps:processVersion="1.0.0"> <ows:Identifier>kopss:CA_Resample</ows:Identifier> ……….. </wps:Process> <wps:Status creationTime="2012-07-08T05:41:45.198Z"> <wps:ProcessAccepted>Process accepted.</wps:ProcessAccepted> </wps:Status> </wps:ExecuteResponse> http://server/ows?service=WPS&version=1.0.0&request=GetExecutionResult&executionId=142e4b6c-44e1-4aba-b8a2- 6da8f0793198&outputId=result.tiff&mimetype=image%2Ftiff 국토공간계획지원체계(KOPSS) Open API 27
  • 29. ST_* Process  Geometry operator  relationship, operator, proximity & distance, edit, conversion 등  Data source = GML  Issue  Precision(이후 VA_* 계열 process 전체 영향)  Buffer - option  Simplify – Douglas-Peucker algorithm  Rotate – radian angle 국토공간계획지원체계(KOPSS) Open API 29
  • 30. ST_* Process: Precision  Single vs Double  Database 저장구조  Geometry 연산  Geometry 연산을 사용하는 모든 분석에 영향  거리, 면적 측정 등  Operator(Function) 등  API 결과 검증은 어떻게 할 것인가?  인정하고 지자체가 도입시 판단? 국토공간계획지원체계(KOPSS) Open API 30
  • 31. ST_* Process: Function  ST_Union, ST_Intersection, ST_Difference, ST_SymDifference  Same Dimension  Point : Point  Point  LineString : LineString  LineString or MultiLineStrng  Polygon : Polygon  Polygon or MultiPolygon  Different Dimension  Point : LineString or Polygon  Point  MultiPoint : LineString or Polygon  Point or MultiPoint  LineString : Polygon  LineString or MultiLineStrng 국토공간계획지원체계(KOPSS) Open API 31
  • 32. ST_* Process: Buffer  ST_Buffer(inputGeometry Geometry, distance Double, endCapStyle String, joinStyle String, quadrantSegments Integer)) : Geometry  endCapStyle: Round(1, default), Flat(2), Square(3)  joinStyle: Round(1, default), Mitre(2), Bevel(3)  Quadrant Segments: 8(left, default) vs 32(right) 국토공간계획지원체계(KOPSS) Open API 32
  • 33. ST_* Process: Buffer  End cap style : Round(default), Flat, Square 국토공간계획지원체계(KOPSS) Open API 33
  • 34. ST_* Process: Rotate  rotZRadians = PI / 180.0 * angle(degree)  Ex) rotate 75° = PI / 180.0 * 75 = 1.3089969389957472 국토공간계획지원체계(KOPSS) Open API 34
  • 35. ST_* Process: Simplify  Douglas-Peucker algorithm(default)  Ex)  Gray: source geometry  Red: tolerance 1  Blue: tolerance 5 LINESTRING (261956.05099999998 166101.414, 261956.09600000002 166103.87699999998, 261956.18200000003 166105.69799999997, 261956.60900000005 166106.811, 261957.34199999995 166108.251, 261957.72600000002 166108.772, 261957.74199999997 166111.33399999997, 261957.44900000002 166121.988, 261957.42099999997 166122.805, 261957.27500000002 166123.25799999997, 261956.816 166123.30800000002, 261954.527 166123.32900000003, 261951.22999999998 166123.342, 261949.59699999995 166122.10700000002, 261948.58900000004 166120.76299999998, 261947.22699999996 166118.05699999997, 261946.99399999995 166116.71999999997, 261947.22999999998 166112.919, 261947.05500000005 166111.322, 261946.59600000002 166110.34000000003, 261945.59100000001 166109.37099999998, 261944.39099999995 166108.23599999998, 261943.83200000005 166107.126, 261943.66299999994 166105.751, 261943.91000000003 166103.701, 261944.777 166100.41100000002, 261944.936 166098.336, 261944.68500000006 166096.54100000003, 261944.071 166095.206, 261943.38600000006 166094.48100000003, 261942.65099999995 166094.22999999998, 261940.05299999996 166094.18300000002, 261933.45900000003 국토공간계획지원체계(KOPSS) Open API 35
  • 36. ST_* Process: NearestPoint  returns the nearest point on a geometry to the input geometry. target source Nearest Point 국토공간계획지원체계(KOPSS) Open API 36
  • 37. ST_* Process: SetSRID  Sets the SRID on a geometry to a particular SRID <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" ……..> <ows:Identifier>kopss:ST_SetSRID</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputGeometry</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1"> <gml:Point> <gml:pos>129.6042549474073 36.80640958328785</gml:pos> </gml:Point> </wps:ComplexData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>srID</ows:Identifier> <wps:Data> <wps:LiteralData>EPSG:4326</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> ….. <?xml version="1.0" encoding="UTF-8"?> <gml:Point srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#4326" ...> <gml:pos>129.6042549474073 36.80640958328785</gml:pos> </gml:Point> 국토공간계획지원체계(KOPSS) Open API 37
  • 38. ST_* Process: Transform  Geometry에 좌표체계 정보가 포함된 경우 <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" …..> <ows:Identifier>kopss:ST_Transform</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputGeometry</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1"> <gml:Point srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#2096"> <gml:pos>250951.08217087443 371270.4452788795</gml:pos> </gml:Point> </wps:ComplexData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>targetCRS</ows:Identifier> <wps:Data> <wps:LiteralData>EPSG:4326</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> ….. <?xml version="1.0" encoding="UTF-8"?> <gml:Point srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#4326" ...> <gml:pos>129.56890769890933 36.84149679781663</gml:pos> </gml:Point> 국토공간계획지원체계(KOPSS) Open API 38
  • 39. ST_* Process: Transform  Geometry에 좌표체계 정보가 없는 경우 <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" ...> <ows:Identifier>kopss:ST_Transform</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputGeometry</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1"> <gml:Point> <gml:pos>250951.08217087443 371270.4452788795</gml:pos> </gml:Point> </wps:ComplexData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>sourceCRS</ows:Identifier> <wps:Data> <wps:LiteralData>EPSG:2096</wps:LiteralData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>targetCRS</ows:Identifier> <wps:Data> <wps:LiteralData>EPSG:4326</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> ….. 국토공간계획지원체계(KOPSS) Open API 39
  • 40. ST_* Process: KML  KML로 변환시 WGS84 경위도로 좌표변환 후 인코딩 <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" …..> <ows:Identifier>kopss:ST_AsKML</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>inputGeometry</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=gml/3.1.1"> <gml:Point srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#2097"> <gml:pos>257601.70330083393 372312.5754942566</gml:pos> </gml:Point> </wps:ComplexData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=vnd.google-earth.kml+xml"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> <?xml version="1.0" encoding="UTF-8"?> <kml:Point xmlns:kml="http://earth.google.com/kml/2.1"> <kml:coordinates>127.64373390338656,36.85046838175518</kml:coordinates> </kml:Point> 국토공간계획지원체계(KOPSS) Open API 40
  • 42. VA_* Process  Vector(FeatureCollection) analysis  Overlay, proximity, extraction, generalization, conversion, projection, calculation  Data source = GML(WFS 포함)/XML  Issue  overlay(intersect, union, difference…) precision  Cad(dxf) to feature collection  Accessibility – Network(Dijkstra's algorithm)  Fishnet 국토공간계획지원체계(KOPSS) Open API 42
  • 43. VA_* Process: Cad(dxf) Conversion  Cad Dataset의 포맷은 DXF 버전 12 이상을 사용한다.  Filter Encoding을 이용하여 제약조건을 설정할 수 있으며 변환 가능한 Feature 유형은 Point, LineString, Polygon, Text(Point)의 4가지 옵션을 설정할 수 있다.  모든 Feature는 layer(String) 필드는 반드시 포함해야 한다.  Feature 유형이 라인 및 포인트의 경우 height(Double) 필드를, Text일 경우 textlabel(String) 필드를 포함해야 한다.  DXF 파일은 좌표체계정보를 가질 수 없으므로 forcedCRS(예 EPSG:4326) 파라미터를 추가하여 좌표체계를 정의할 수 있도 록 한다. 국토공간계획지원체계(KOPSS) Open API 43
  • 44. WPS Request: Cad(dxf) Conversion <?xml version="1.0" encoding="utf-8"?> <wps:Execute version="1.0.0" service="WPS" ...> <ows:Identifier>kopss:VA_CadDatasetToGML</ows:Identifier> <wps:DataInputs> <wps:Input> <ows:Identifier>cadDatasetURL</ows:Identifier> <wps:Data> <wps:LiteralData>http://server/temp/cad/cadDataset.dxf</wps:LiteralData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>forcedCRS</ows:Identifier> <wps:Data> <wps:LiteralData>EPSG:2096</wps:LiteralData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>featureType</ows:Identifier> <wps:Data> <wps:LiteralData>1</wps:LiteralData> </wps:Data> </wps:Input> </wps:DataInputs> <wps:ResponseForm> <wps:RawDataOutput mimeType="text/xml; subtype=gml/3.1.1"> <ows:Identifier>result</ows:Identifier> </wps:RawDataOutput> </wps:ResponseForm> </wps:Execute> 국토공간계획지원체계(KOPSS) Open API 44
  • 45. VA_* Process: Cad(dxf) Conversion  KOPSS에서는 주로 폴리곤(사업지구 경계 등) 및 텍스트포인트(지구명 등)를 추출 하여 폴리곤 내 텍스트포인트의 속성을 계산하여 활용  ArcGIS와 비교 국토공간계획지원체계(KOPSS) Open API 45
  • 46. VA_* Process: Fishnet  boundary 입력시 boundaryInside 파라미터를 설정한다. boundary가 LineString일 경우 boundaryInside는 False만 사용한다.  column 및 row 수, width 및 height 파라미터가 모두 입력되 는 경우 column 및 row가 방식이 우선한다.  Fishnet 생성은 ArcGIS 또는 그리드 생성 방식에 맞춰 좌하 단(LL)에서 우상단(UR) 방향으로 계산한다.  셀의 width 및 height가 주어졌을 경우 extent 크기를 늘려 분석영역을 완전히 포함해야 한다.  리턴되는 feaure collection의 스키마는 UID(Interger, 일련 번호)를 포함한다. 국토공간계획지원체계(KOPSS) Open API 46
  • 47. VA_* Process: Fishnet 좌하단(LL)에서 우상단(UR) 방향으로 계산 셀의 width 및 height가 주어졌을 경우 extent 크기를 늘려 분석영역을 완전히 포함 21 22 23 24 25 16 17 18 19 20 11 12 13 14 15 6 7 8 9 10 1 2 3 4 5 boundaryInside: true or false 국토공간계획지원체계(KOPSS) Open API 47
  • 48. VA_* Process: ThiessenPolygon  중복포인트 피쳐일 경우 하나만 취함  clipArea가 주어졌을 경우 Clip 후 반환 국토공간계획지원체계(KOPSS) Open API 48
  • 49. VA_* Process: Overlay  Overlay(intersect, union, difference<erase>, identity, symmetrical difference) precision  Intersect = && (logical AND)  Union = || (logical OR)  Identity = a + (a AND b)  Symmetrical Difference= (a OR b) - (a AND b)  Erase(Difference) = a NOT b  Update = (a NOT b) + b  General Process  ArcGIS: cracking features  assembling features  overlay processing  Other Tools: overlay processing : 각 레이어별로 Feature의 Geometry가 중첩되는 경우 ArcGIS와 결과 달라짐  Cluster tolerance  API 검증에서 ArcGIS는 0.0으로 설정하면 면적(10) 이상인 피쳐의 개수가 동일할 경우  Overlay 연산 결과 피쳐의 Geomery가 Null 또는 Empty인 경우 결과에서 제외  두 레이어의 Overlay 연산에서 두번째 레이어의 필드가 첫번째 필드와 이름이 같을 경우 _1, _n 규칙으로 이름 변경 국토공간계획지원체계(KOPSS) Open API 49
  • 50. VA_* Process: Intersect  Intersect  서로 다른 차원의 레이어인 경우 차수가 낮은 차원의 레이어가 기준 Input layer Overlay layer 국토공간계획지원체계(KOPSS) Open API 50
  • 51. VA_* Process: Union  Union  Polygon layer간의 연산만 수행 Input layer Overlay layer 국토공간계획지원체계(KOPSS) Open API 51
  • 52. VA_* Process: Union & Intersect  x,y resolution  The precision with which coordinates within a feature class are recorded  The default x,y resolution for feature classes is 0.0001 meters or its equivalent in the units of the dataset's coordinate system.  x,y tolerance  A cluster tolerance used to cluster features with coincident geometry; used in topology, feature overlay, and related operations  The x,y tolerance is used to set the minimum distance between coordinates in clustering operations, such as topology validation, buffer generation, and polygon overlay, as well as in some editing operations.  The default x,y tolerance is set to 0.001 meters or its equivalent in the units of the dataset's real-world coordinate system (in other words, 0.001 meters on the ground)  The default value for the x,y tolerance is 10 times the default x,y resolution, and this is recommended for most cases.  ArcGIS 사례 : Cluster tolerance = 0  GDB를 사용하는 경우  Tolerance = 0이라도 gdb의 default x,y tolerance를 따름  API 단위테스트 샘플데이터셋 Union : 42개의 피쳐  Shapefile을 사용하는 경우  면적  Null shape  API 단위테스트 샘플데이터셋 Union : 55개의 피쳐 국토공간계획지원체계(KOPSS) Open API 52
  • 53. VA_* Process: Clip  Case 1  Input layer의 각 Feature별 clip layer의 Feature가 한 개 intersect 되는 경우  Input layer의 속성 유지 Input layer Clip layer 국토공간계획지원체계(KOPSS) Open API 53
  • 54. VA_* Process: Clip  Case 2  Input layer의 각 Feature별 clip layer의 Feature가 여러 개 intersect 되는 경우  Input layer의 속성 유지 Input layer Clip layer 국토공간계획지원체계(KOPSS) Open API 54
  • 55. VA_* Process: Buffer  Quadrant Segments: 24(default), End cap style : Round(default) 국토공간계획지원체계(KOPSS) Open API 55
  • 56. VA_* Process: Dissolve & PointStatistics  Sum.Jiga, Mean.Jiga  SUM_Jiga, AVG_Jiga 입력 파라미터 리턴 필드 First : String 필드, Dissolve 대상 Feature의 첫 번째 값 FST_필드명 Last : String 필드, Dissolve 대상 Feature의 마지막 값 LST_필드명 Sum : Numeric 필드, Dissolve 대상 Feature의 합 SUM_필드명 Mean : Numeric 필드, Dissolve 대상 Feature의 평균값 AVG_필드명 Min : Numeric 필드, Dissolve 대상 Feature의 최소값 MIN_필드명 Max : Numeric 필드, Dissolve 대상 Feature의 최대값 MAX_필드명 Std : Numeric 필드, Dissolve 대상 Feature의 표준편차 STD_필드명 Var : Numeric 필드, Dissolve 대상 Feature의 분산 VAR_필드명 Range : Numeric 필드, Dissolve 대상 Feature의 범위 RNG_필드명 Count : Dissolve 대상 Feature의 수 CNT_필드명 국토공간계획지원체계(KOPSS) Open API 56
  • 57. VA_* Process: Accessibility Network  Dijkstra's algorithm(default), A-Star(A*), Shooting-Star(Shooting*)   길이 및 차선에 대한 weight 설정이 가능해야 함 국토공간계획지원체계(KOPSS) Open API 57
  • 59. CA_* Process  Raster analysis  Conversion, density, distance, classification, extraction, zonal, overlay, s urface, math, custom…  Data source = GML(WFS 포함)/GeoTIFF(WCS 포함)  Issue  Common – cell size, extent, search radius  Zonal statistics - 통계  Surface – slope, aspect, hillshade 등 algorithm  Conversion – point, line, polygon  Density – kernel 함수 (Quadratic<Arcgis>, Binary, Cosine, Distance, Epanechnikov, Gaussian, In verse_Distance, Quartic, Triangular, Triweight, Tricube)  Resample – origin point 국토공간계획지원체계(KOPSS) Open API 59
  • 60. CA_* Process: Common  Cell Size  셀 크기가 주어지지 않은 래스터 분석의 경우 셀 크기는 입력데이 터 Extent의 width 및 height 중 작은 값을 250으로 나눈 값을 사용  Ex) CellSize = Math.min(Extent.getWidth(), Extent.getHeight()) / 250.0d  Extent  Extent가 주어지는 경우  Default = 입력 데이터의 extent  Density 등 분석에서 Extent가 주어지지 않는 경우  …  Search Radius(Band width)  Density 등 기본 탐색반경  Ex) searchRadius = Math.min(extent.getWidth(), extent.getHeight()) / 30.0d; 국토공간계획지원체계(KOPSS) Open API 60
  • 61. CA_* Process: FeaturesToCoverage  Point(MultiPoint)  ArcGIS  Cell assignment  Most_Frequent(Default), Sum, Mean, Standard_Deviation, Maximum, Minimum, Range, Count 국토공간계획지원체계(KOPSS) Open API 61
  • 62. CA_* Process: FeaturesToCoverage  LineString(MultiLineString)  Algorithm  Bresenham's line algorithm ?  Scan-line algorithm ?  ArcGIS  Cell assignment  MAXIMUM_LENGTH(default)  GDAL  Bresenham's line algorithm 국토공간계획지원체계(KOPSS) Open API 62
  • 63. CA_* Process: FeaturesToCoverage  Polygon(MultiPolygon)  Algorithm  Polygon Filling Algorithm ?  Scan Line Fill Algorithm ?  ArcGIS & GDAL  Cell assignment  CELL_CENTER(default) 국토공간계획지원체계(KOPSS) Open API 63
  • 64. CA_* Process: Surface  Algorithm : Slope, Aspect, Hillshade 분석에 영향 ① Neighborhood Method. Burrough, P. A. and Mcdonell, R.A. Algorithm (1998). Included in ArcGIS. ② 2nd Degree Polynomial Adjustment. Bauer, Rohdenburg and Bork Algorithm (1985) ③ 2nd Degree Polynomial Adjustment. Heerdegen and Beran Algorithm (1982). ④ 2nd Degree Polynomial Adjustment. Zevenbergen and Thorne Algorithm (1987). ⑤ 3rd Degree Polynomial Adjustment. Haralick Algorithm (1983) ⑥ Maximum Slope. Travis Algorithm (1975) ⑦ Maximum Slope by Triangles. Tarboton Algorithm (1997) ⑧ Least Squares Fit Plane. Costa-Cabral and Burgess Algorithm (1996) ⑨ Maximum Downhill Slope. Hickey, Van Remortel and Maichle Algorithm (2004) 출처: http://www.unesco.org.uy/phi/aqualac/fileadmin/phi/aqualac/GarciaRodriguez_et_al_p78-82.pdf 국토공간계획지원체계(KOPSS) Open API 64
  • 65. CA_* Process: Surface  Slope algorithm: Neighborhood Method slope_degrees = ATAN (rise_run) * 57.29578 (180/pi) rise_run = √ ([dz/dx]2 + [dz/dy]2] [dz/dx] = ((c + 2f + i) - (a + 2d + g) / (8 * x_cellsize) [dz/dy] = ((g + 2h + i) - (a + 2b + c)) / (8 * y_cellsize)  Edge 셀 처리 • 위 (3 x 3 window) 셀에서 e(중심셀)의 값이 NoData이면 NoData값을 리턴 • e 셀을 제외한 나머지 셀의 값이 NoData인 경우 e 셀 값으로 대체하여 계산 http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/How_Slope_works/009z000000vz000000/ 국토공간계획지원체계(KOPSS) Open API 65
  • 66. CA_* Process: Density  Kernel Functions  Quadratic<ArcGIS>  Binary<Simple Density>  Cosine  Distance  Epanechnikov  Gaussian  Inverse_Distance  Quartic  Triangular  Triweight  Tricube http://en.wikipedia.org/wiki/Kernel_(statistics) 국토공간계획지원체계(KOPSS) Open API 66
  • 67. CA_* Process: Density  ArcGIS kernel function is based on the quadratic kernel function described in Silverman (1986, p. 76, equation 4.5). Silverman, B.W. Density Estimation for Statistics and Data Analysis. New York: Chapman and Hall, 1986. 출처: http://www.bchydro.com/ 국토공간계획지원체계(KOPSS) Open API 67
  • 68. CA_* Process: Density Quadratic (ArcGIS) 국토공간계획지원체계(KOPSS) Open API 68
  • 69. CA_* Process: Density Quadratic (Custom) 국토공간계획지원체계(KOPSS) Open API 69
  • 70. CA_* Process: Density Quartic 국토공간계획지원체계(KOPSS) Open API 70
  • 71. CA_* Process: Density Epanechnikov 국토공간계획지원체계(KOPSS) Open API 71
  • 72. CA_* Process: Density Tricube 국토공간계획지원체계(KOPSS) Open API 72
  • 73. CA_* Process: Density Triangular 국토공간계획지원체계(KOPSS) Open API 73
  • 74. CA_* Process: Density Triweight 국토공간계획지원체계(KOPSS) Open API 74
  • 75. CA_* Process: Density Cosine 국토공간계획지원체계(KOPSS) Open API 75
  • 76. CA_* Process: Density Gaussian 국토공간계획지원체계(KOPSS) Open API 76
  • 77. CA_* Process: Density Inverse Distance 국토공간계획지원체계(KOPSS) Open API 77
  • 78. CA_* Process: Density Distance 국토공간계획지원체계(KOPSS) Open API 78
  • 79. CA_* Process: Density Binary=Point Density 국토공간계획지원체계(KOPSS) Open API 79
  • 80. CA_* Process: Density  Vector vs RasterToPoint A 국토공간계획지원체계(KOPSS) Open API 80
  • 81. CA_* Process: Density  Vector vs RasterToPoint G 국토공간계획지원체계(KOPSS) Open API 81
  • 82. CA_* Process: Density A 국토공간계획지원체계(KOPSS) Open API 82
  • 83. CA_* Process: Density B 국토공간계획지원체계(KOPSS) Open API 83
  • 84. CA_* Process: Euclidean distance  폴리곤 데이터소스의 경우 Rasterizing 알고리즘에 따라 셀 크 기가 클 경우 오차 발생 A G Cellsize: 100 국토공간계획지원체계(KOPSS) Open API 84
  • 85. CA_* Process: Euclidean distance  폴리곤 데이터소스의 경우 Rasterizing 알고리즘에 따라 셀 크 기가 클 경우 오차 발생 A G Cellsize: 30 국토공간계획지원체계(KOPSS) Open API 85
  • 86. CA_* Process: Euclidean distance  Maximum distance: 2000 m 국토공간계획지원체계(KOPSS) Open API 86
  • 87. CA_* Process: Zonal statistics  FeaturesToGridCoverage 와 관련 COUNT AREA MIN MAX RANGE MEAN STD SUM 286673 7166825 49 490 441 177.32552 101.90411 50834436 286661 7166525 49 490 441 177.38812 101.94474 50850256 286674 7166850 49 490 441 177.32485 101.90420 50834425 국토공간계획지원체계(KOPSS) Open API 87
  • 88. CA_* Process: CoverageToFeatures  ArcGIS 9.3  RasterToPolyline  Weeding uses the Douglas – Peucker algorithm for line generalization with a tolerance of sqrt(0.5) * cell size.  RasterToPolygon  The weeding parameter uses an algorithm specifically designed for raster-to-vector conversion. It is not the Douglas – Peucker algorithm.  ArcGIS 10.0/10.1  정보 없음 http://webhelp.esri.com/arcgisdesktop/9.3/index.cfm?TopicName=RasterDataToLineFeatureData 국토공간계획지원체계(KOPSS) Open API 88
  • 89. CA_* Process: CoverageToFeatures A B 국토공간계획지원체계(KOPSS) Open API 89
  • 90. CA_* Process: Resample  ArcGIS  The lower left corner of the output raster dataset will be the same map space coordinate location as the lower left corner of the input raster dataset.  The numbers of rows and columns in the output raster are determined as follows:  columns = (xmax - xmin) / cell size  rows = (ymax - ymin) / cell size http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Resample/00170000009t000000/ 국토공간계획지원체계(KOPSS) Open API 90
  • 91. CA_* Process: Resample 1 * 1 미터 래스터를 3 * 3 미터 래스터로 Nearest neighbor 방법으로 리샘플링 Extent 및 Snap 설정: default Extent 및 Snap 미설정 http://www.onspatial.com/2010/02/spatial-analysis%EB%B6%84%EC%84%9D%ED%99%98%EA%B2%BD%EC%9D%98- %EC%A0%95%EC%9D%98%EA%B0%80-%EC%A4%91%EC%9A%94%ED%95%98%EB%8B%A4.html 국토공간계획지원체계(KOPSS) Open API 91
  • 92. CA_* Process: Extraction  Filter Encoding 표준을 이용하여 ArcGIS의 Spatial Analyst Extension 중 다음 툴을 포함  Extract by Attributes  Extracts the cells of a raster based on a logical query.  Extract by Circle  Extracts the cells of a raster based on a circle.  Extract by Points  Extracts the cells of a raster based on a set of coordinate points.  Extract by Polygon  Extracts the cells of a raster based on a polygon.  Extract by Rectangle  Extracts the cells of a raster based on a rectangle.  공간필터를 사용하는 경우 래스터의 범위는 Geometry의 범위 http://resources.arcgis.com/en/help/main/10.1/#/An_overview_of_the_Extraction_tools/009z00000028000000/ 국토공간계획지원체계(KOPSS) Open API 92
  • 93. CA_* Process: Extraction  속성필터: Extract by Attributes  Ex) Value >= 25 <wps:Input> <ows:Identifier>filter</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=filter/1.1"> <ogc:Filter> <ogc:PropertyIsGreaterThan> <ogc:PropertyName>Value</ogc:PropertyName> <ogc:Literal>25</ogc:Literal> </ogc:PropertyIsGreaterThan> </ogc:Filter> </wps:ComplexData> </wps:Data> </wps:Input> 국토공간계획지원체계(KOPSS) Open API 93
  • 94. CA_* Process: Extraction  공간필터: Extract by Polygon  Ex) ST_Interects(the_geom, ST_GeomFromText('POLYGON((100 200, ……., 100 200)), 2096)) <wps:Input> <ows:Identifier>filter</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=filter/1.1"> <ogc:Filter> <ogc:Intersects> <ogc:PropertyName>the_geom</ogc:PropertyName> <gml:Polygon srsDimension="2" srsName="http://www.opengis.net/gml/srs/epsg.xml#2096"> <gml:exterior> <gml:LinearRing> <gml:posList>254709.22090040386 376440.6152000468 ........... 254709.22090040386 376440.6152000468 </gml:posList> </gml:LinearRing> </gml:exterior> </gml:Polygon> </ogc:Intersects> </ogc:Filter> </wps:ComplexData> </wps:Data> </wps:Input> 국토공간계획지원체계(KOPSS) Open API 94
  • 95. CA_* Process: ConditionalEvaluation  Ex) NoData를 100, 나머지는 200으로 변환하는 경우 = Con(IsNull([raster1]), 100, 200) <wps:Input> <ows:Identifier>inputFilter</ows:Identifier> <wps:Data> <wps:ComplexData mimeType="text/xml; subtype=filter/1.1"> <ogc:Filter> <ogc:PropertyIsEqualTo matchCase="true"> <ogc:PropertyName>Value</ogc:PropertyName> <ogc:Literal>NoData</ogc:Literal> </ogc:PropertyIsEqualTo> </ogc:Filter> </wps:ComplexData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>trueValue</ows:Identifier> <wps:Data> <wps:LiteralData>100</wps:LiteralData> </wps:Data> </wps:Input> <wps:Input> <ows:Identifier>falseValue</ows:Identifier> <wps:Data> <wps:LiteralData>200</wps:LiteralData> </wps:Data> </wps:Input> 국토공간계획지원체계(KOPSS) Open API 95
  • 97. SA_* Process  Statistics(general & spatial) analysis  Basic, advance, spatial statistics  Data source = XML/GML(WFS 포함)/ GeoTIFF(WCS 포함)  Issue  Classify  Equal interval, Quantile, Natural breaks, Standard deviation  Moran’s I, G-statistics  Ture centroid, Maximum Nearest Neighbor Distance  SpatialLQ  Centroid & polygon 국토공간계획지원체계(KOPSS) Open API 97
  • 98. SA_* Process: Classify  Classify  Equal Interval  Min, Max  Quantile  sorting  Natural Breaks  sorting  Standard Deviation  Mean, StdDev. 국토공간계획지원체계(KOPSS) Open API 98
  • 99. SA_* Process: Equal interval  Equal interval  Equal interval divides the range of attribute values into equal-sized subranges. ex)percentages and temperature  interval = (max – min) / number of classes http://resources.arcgis.com/en/help/main/10.1/#/Classifying_numerical_fields_for_graduated_symbology/00s50000001r000000/ 국토공간계획지원체계(KOPSS) Open API 99
  • 100. SA_* Process: Quantile  Quantile  Each class contains an equal number of features.  quanta = number of samples / number of classes  같은 값이 있거나 개수가 소수자리일 경우 오차 발생 가능 http://resources.arcgis.com/en/help/main/10.1/#/Classifying_numerical_fields_for_graduated_symbology/00s50000001r000000/ 국토공간계획지원체계(KOPSS) Open API 100
  • 101. SA_* Process: Quantile A Q 국토공간계획지원체계(KOPSS) Open API 101
  • 102. SA_* Process: Quantile A G 국토공간계획지원체계(KOPSS) Open API 102
  • 103. SA_* Process: Natural Breaks  Natural Breaks(Jenks optimization method)  Class breaks are identified that best group similar values and that maximize the differences between classes.  http://support.esri.com/en/knowledgebase/techarticles/detail/11961 http://resources.arcgis.com/en/help/main/10.1/#/Classifying_numerical_fields_for_graduated_symbology/00s50000001r000000/ 국토공간계획지원체계(KOPSS) Open API 103
  • 104. SA_* Process: Natural Breaks A Q 국토공간계획지원체계(KOPSS) Open API 104
  • 105. SA_* Process: Natural Breaks A G 국토공간계획지원체계(KOPSS) Open API 105
  • 106. SA_* Process: Standard Deviation  Standard Deviation  Class breaks are created with equal value ranges that are a proportion of the standard deviation—usually at intervals of 1, ½, ⅓, or ¼ standard deviations using mean values and the standard deviations from the mean.  소프트웨어마다 분류기준 및 계급 수의 변화 오차 국토공간계획지원체계(KOPSS) Open API 106
  • 107. SA_* Process: Standard Deviation A: Float G: Double 국토공간계획지원체계(KOPSS) Open API 107
  • 108. SA_* Process: Standard Deviation A: Float G: Double 국토공간계획지원체계(KOPSS) Open API 108
  • 109. SA_* Process: Moran’s I Global  Moran(1950)의 I 통계량은 공간자료들의 자기상관성을 측정, 전역적 통계량은 분석지역 내에서 유사한 값들의 전반적인 공간군집경향을 요약 국토공간계획지원체계(KOPSS) Open API 109
  • 110. SA_* Process: Moran’s I Local  국지적 통계량은 특정지역을 중심으로 주변에 유사한 값들의 공간적 군집도를 나타낸다. Anselin Local Moran's I statistic.  True centroid 국토공간계획지원체계(KOPSS) Open API 110
  • 111. SA_* Process: G-Statistics Global  G 통계량은 큰 값들의 공간 군집도를 나타내며, 값이 클수록 공간군 집도가 큰 것으로 해석한다(Getis and Ord, 1992)  True centroid 국토공간계획지원체계(KOPSS) Open API 111
  • 112. SA_* Process: G-Statistics Local  국지적 G 통계량  True centroid 국토공간계획지원체계(KOPSS) Open API 112
  • 113. SA_* Process: SpatialLQ  공간분화지수는 두 공간현상의 분리도를 측정할 때 분석단위들 의 공간적 배열의 특성이 반영되도록 구조화(Wong, 2005) 국토공간계획지원체계(KOPSS) Open API 113
  • 114. SA_* Process: SpatialCrossAnalysis  두 지표의 값들을 x, y 평면좌표에 점으로 나타내어 두 지표간 관계를 보는 것으로 각 지표들 값을 ‘낮음’과 ‘높음’으로 양분 국토공간계획지원체계(KOPSS) Open API 114
  • 116. KM_* Process  KOPSS model  KOPSS Data와 강결합되어 있거나, WFS 서비스로 처리가 불가능한 대용량의 데이터  Data source = XML/GML(WFS 포함)/ GeoTIFF(WCS 포함) /Direct connection  Issue  Location-Allocation 국토공간계획지원체계(KOPSS) Open API 116
  • 117. KM_* Process: Location-Allocation  시설의 공급적정성 평가에 의해 해당시설이 부족하다고 판단된 지역을 대상으로 신규 시설 의 최적의 입지를 입지배분방법에 따라 탐색  Location-Allocation Algorithm  PMedian: 노드별 총통행거리합 최소화  MaxiMin: 노드별 최대통행거리 최소화  MiniMax: 노드별 최소통행거리 최대화 국토공간계획지원체계(KOPSS) Open API 117
  • 118. 참고: GIS Program  KOPSS C/S Program – ArcGIS Engine  ArcGIS 10.0  MapInfo Professional 11.0  Quantum GIS (1.7.0)  GDAL library  Open source GIS Tool & libraries 국토공간계획지원체계(KOPSS) Open API 118
  • 119. 참고: API 단위테스트 프로그램  의견수렴 후 API 설계서/샘플 데이터셋과 함께 공지 국토공간계획지원체계(KOPSS) Open API 119