1. 개요
지리정보시스템을 다른 자료처리시스템과 비교하였을 때 가장 두드러지는 특징은 공간분석을 위한 능력이 있다는 것이다. 공간분석능력은 공간자료 및 비공간자료를 사용하여 공간 데이터베이스로부터 다양한 질의에 대한 해답을 찾거나 문제를 해결하는 기능을 의미한다. 공간데이터 분석의 주된 목적은 다양한 자료 소스나 여러 가지 분야의 자료를 변환 및 결합을 수행하여 유용한 정보를 생성함으로써 공간에 대한 이해를 촉진하고 의사결정자의 요구사항이나 목적을 충족시키기 위한 것이다.
지리정보시스템의 응용은 현실 중에서 원하는 응용 목적에 대한 논의의 영역만을 대상으로 한다. 지리정보시스템에서 다루는 전형적인 문제는 계획에 대한 것이나 예측에 대한 것이 대부분일 것이다. 제기된 문제를 해결하는 데에는 매우 다양한 파라미터를 필요로 한다. 이러한 파라미터는 대부분의 경우 서로 연계되어 있으며 응용 모델에서 상호작용이 보다 명확하게 드러나게 된다. 응용 모델은 응용에 대한 논의의 영역에 어떻게 변화하는가, 특히 파라미터의 관점에서 어떠한 반응을 보이는지 등을 다양한 관점에서 가능한한 충실하게 묘사를 수행한다. 응용 모델은 응용에 대한 논의의 영역을 모사하기 위한 것이라 할 수 있다.
2. 지리정보시스템의 분석 기능 분류
우선 측정, 검색 및 분류 기능이 있다. 이 기능은 데이터를 변경시키지 않고 자료의 성질을 알아내는 기능으로서 대부분 자료분석 초기단계에 주로 사용된다. 측정(measurement) 기능은 대상물간의 거리나 둘레, 면적, 3차원 대상물의 경우 부피를 계산하는 등의 기능을 의미한다. 대상의 빈도와 같은 계산기능도 이에 포함된다. 공간검색(spatial query) 기능을 사용자가 지정한 논리적 대상에 맞는 대상을 찾아내는 기능이다. 분류(classification) 기능은 하나의 레이어에 있는 대상의 주제 및 특성 값을 재설정하는 기능이다. 이 분류에 속하는 기능은 하나의 레이어만을 대상으로 하며 속성값을 사용하는 경우가 많다.
중첩 기능(overlay function)은 지리정보시스템 응용에서 가장 핵심적이라 할 수 있는 기능이다. 여러 개의 데이터 레이어를 결합하여 새로운 레이어에 새로운 객체를 생성함으로써 새로운 정보를 생산한다. 중첩 기능을 벡터 레이어보데 래스터 레이어에서 간단하게 계산이 가능하나, 일반적으로 양 쪽을 모두 사용한다. 중첩은 같은 위치에 존재하는 대상을 결합하는 원리로 이루어진다.
많은 지리정보시스템에서 중첩 기능을 대수학적인 언어, 데이터 레이어를 파라미터로 표현하는 방식으로 지원하고 있다. 여러 레이어를 사칙연산과 관계 연산자, 조건연산자와 같은 많은 기능을 사용하여 결합할 수 있다.
인접 기능(neighborhood function)은 하나의 대상 주변에 있는 지역에 대한 특성을 평가하기 위한 기능이다. 대상물에 대한 영향권(buffer zone)을 알아내거나 인근으로 확산될 수 있는 물의 흐름, 화산폭발, 오염물질 등의 확산효과를 알아내는 것이 이에 해당한다.
연결 기능(connectivity function)은 대상물간의 연결관계를 평가한다. 여러 객체가 연결되어 망을 형성하는 대상을 처리하는 응용에서 매우 유용한 기능이다. 도로망, 해안지역의 배수지역, 통신회사의 통신선 등이 이러한 망의 예이다.
3. 벡터 자료의 측정, 공간검색 및 분류 기능
벡터자료의 기본요소는 점, 선, 면이다. 이와 관련된 기하학적 측정 대상은 위치, 길이, 거리와 면적 등이 있다. 이 중에서 위치, 길이, 면적 등은 독립된 한 대상물에 대한 기하학적 특성이고 거리는 두 개의 대상물에 대한 특성이다.
벡터 자료의 위치(location) 특성은 항상 지리정보시스템 내부에 저장되어 있다. 점의 경우에는 하나의 좌표, 선이나 면의 경우에는 좌표 리스트로 저장된다. 때로 면의 경우에는 중심점의 좌표가 필요한 경우도 있다. 지리정보시스템에 따라서는 중심점의 좌표를 저장하기도 하고 실시간으로 계산하기도 한다. 길이(length)는 선 또는 면의 경계에 관한 기하학적 특성이다. 길이는 여러 개의 선분의 길이를 모두 더함으로써 쉽게 계산이 가능하지만 선의 속성으로 저장되는 경우가 많다. 면적(area)은 면 대상물의 특성이다. 이 역시 실시간 계산이 가능하지만 별도의 속성값으로 저장하는 경우가 많다. 이렇게 하면 면적이 필요한 다른 기능의 속도를 향상시킬 수 있다. 이와 같은 측정 기능은 별도의 계산이 필요하지 않으며 저장된 정보를 읽어오는 방식으로 구분한다.
두 대상간의 거리(distance) 계산도 중요한 기능이라 할 수 있다. 두 대상이 모두 점일경우 직각좌표계에서의 계산은 피타고라스의 정리를 이용하여 쉽게 계산이 가능하다. 어느 하나의 대상 또는 두 개의 대상이 모두 점이 아니라면 거리라는 개념에 대한 정확한 정의가 필요하다. 간단하게 정의하면 두 대상간의 거리는 첫번째 대상과 두번째 대상의 최단거리를 계산하는 것으로 요약 가능하다. 두 대상이 교차하거나 만나거나 포함될 경우에는 거리는 0으로 정의된다. 거리라는 개념에 대해서는 임의의 두 대상물에 대하여 모든 가능한 거리를 저장하는 것은 불가능하다. 따라서 시스템은 어떠한 거리 계산 요청이 들어오면 실시간으로 계산을 수행하게 된다.
지리정보시스템에서 사용되는 다른 기하학적 측정 기능 중에 하나는 최소범위사각형이다. 이 기능은 선과 면에 대해 모두 적용이 되며 해당 대상을 둘러싸는 최소한의 사각형을 구하는 것이다. 이때 사각형의 변은 모두 공간좌표계의 축에 평행하다. 최소범위사각형은 지리정보시스템을 지원하기 위한 매우 중요한 기능이다. 예를 들어 두 폴리곤의 범위사각형이 서로 겹치지 않는다면 그 폴리곤은 중첩되지 않는다는 사실을 확인할 수 있다.
4. 래스터 자료의 측정, 공간검색 및 분류 기능
래스터 자료의 경우 셀이 규칙적으로 배치되어 있어 상대적으로 측정이 간단하다. 셀의 면적은 고정된 상수이고 셀의 해상도에 따라 결정된다. x축과 y축의 해상도가 다른 경우도 있을수 있으나 대부분은 동일하다. 그러나 래스터 자료는 각 대상의 좌표가 별도로 저장되는 것이 아니라 기준점(anchor point)의 위치와 해상도만을 저장하기 때문에 모든 측정기능을 직접 실시간으로 계산해야 한다. 기준점의 위치는 시스템에 따라 좌측 하단이나 좌측 상단으로 지정된다.
각각의 셀의 위치는 래스터의 기준점, 해상도 그리고 셀의 상대적 위치로부터 계산할 수 있다. 어느 한 셀의 위치는 그 셀의 좌하단일수도 있고 중앙일 수도 있다. 이는 사용하는 소프트웨어에 따라 좌우되고, 특히 해상도가 낮을 경우에는 더욱 주의해야 할 필요가 있다.
선택된 래스터의 면적은 셀의 숫자에 셀 하나의 면적을 곱하는 방법으로 구할 수 있다. 두 래스터 셀간의 거리는 래스터의 해상도를 참고하여 표준 거리 공식을 적용하여 구할 수 있다. 래스터가 선을 포함할 때 선의 길이는 인접한 셀간의 거리의 합으로 계산한다. 그러나 이 계산은 오차를 포함하고 있을 가능성이 높다는 사실을 인지해야 한다.