var vertex =newModule.JSVec3Array();vertex.push(newModule.JSVector3D(126.9288,37.526449,15.0));vertex.push(newModule.JSVector3D(126.927471,37.525806,15.0));vertex.push(newModule.JSVector3D(126.928596,37.5246,15.0));vertex.push(newModule.JSVector3D(126.929996,37.525416,15.0));var part =newModule.Collection();part.add(4);polygon.setPartCoordinates(vertex, part);
폴리곤은 기본적으로 폐곡선 형태로 이루어지며, 좌표의 방향에 따라 외부와 내부가 구분됩니다.
시계방향(CW)으로 좌표 구성 : 외부로 판별되며 폴리곤의 외곽을 구성합니다.
반시계방향(CCW)으로 좌표 구성 : 내부로 판별되며 폴리곤의 홀(Hole)을 구성합니다.
하나의 폐곡선은 하나의 파트로 지정하며, 위 코드의 폴리곤은 점 수가 4개인 한 파트 구성됩니다.
만약 파트 수가 두 개(두 개의 홀과 하나의 외곽)인 폴리곤인 경우는 아래와 같이 구성됩니다.
var vertex =newModule.JSVec3Array();var part =newModule.Collection();// Outside Circlevertex.push(128.674986,35.217478);vertex.push(128.676652,35.216556);vertex.push(128.67549,35.215182);vertex.push(128.673796,35.216007);part.add(4);// Inside Circle (Hole)vertex.push(128.67637,35.216512);vertex.push(128.675038,35.217213);vertex.push(128.675953,35.216049);part.add(3);// Inside Circle (Hole)vertex.push(128.674922,35.217041);vertex.push(128.674217,35.216088);vertex.push(128.675412,35.215423);vertex.push(128.675856,35.215953);part.add(4);
각 파트의 순서는 자유롭게 설정해 주어도 되나, 적어도 파트 중 하나는 폴리곤의 외곽을 형성할 수 있도록 시계 방향(CW)으로 구성되어 있어야 합니다.
step 3. 폴리곤 속성 지정 (선택)
폴리곤 좌표 외 폴리곤의 색상을 지정할 수 있습니다.
폴리곤은 기본 색상은 투명도가 0%인 흰색으로, 별도 색상을 지정하지 않는 경우 기본 색상이 설정됩니다.
폴리곤의 외곽 라인과 내부 채움 색상을 선택적으로 지정할 수 있습니다.
var polygonStyle =newModule.JSPolygonStyle();// 폴리곤 채움 색상polygonStyle.setFill(true);polygonStyle.setFillColor(newModule.JSColor(255,0,0));// 폴리곤 외곽 색상polygonStyle.setOutLine(true);polygonStyle.setOutLineWidth(2.0);polygonStyle.setOutLineColor(newModule.JSColor(0,0,255));polygon.setStyle(polygonStyle);
step 4. 레이어에 폴리곤 저장
레이어를 생성한 후 폴리곤 오브젝트를 추가합니다.
var layerList =newModule.JSLayerList(true);var layer =layerList.createLayer("POLYGON_LAYER",Module.ELT_POLYHEDRON);layer.addObject(polygon,0);