new U3dUserGeometry(opt)
사용자 정의 다각형 도형을 생성합니다.
높이·색상·외곽선 등을 옵션으로 지정하며, 정점은 생성 옵션의 vertices에 넣거나 만든 뒤 setVertex·setPositions로 넣습니다.
외곽선은 옵션을 넣지 않으면 켜진 상태로 만들어집니다.
| Name | Type | Default | Description |
|---|---|---|---|
opt |
U3dUserGeometry~U3dUserGeometryCO | {} |
optional
생성 옵션 (정점·높이·색상·외곽선·곡선 등) |
Members
-
heightnumber
-
바닥 다각형을 세워 올린 높이입니다. (미터)
0 이하면 세우지 않고 평면으로 만듭니다. 화면에 그릴 때는 좌표가 지정된 위도의 보정 배율이 곱해집니다. 값을 바꾼 뒤setParam을 호출하면 지오메트리가 다시 만들어집니다. -
usecurveboolean
-
정점 사이를 잘게 나눌지 여부입니다.
켜면 이웃한 두 정점 사이를 5조각으로 쪼개 정점 수를 늘립니다. -
uselineboolean
-
외곽선(테두리 선)을 표시하는지 여부입니다.
켜면 면과 면이 만나는 모서리를 선으로 덧그리며, 선 색은lineColor로 정하고 기본은 검정입니다. 생성 옵션과setParam에서는outline(예전 이름useline·useLine·edge) 이름을 사용하고,getParam은outline으로 반환합니다.
Methods
-
getParam()U3dUserGeometry~U3dUserGeometryParam
-
도형의 현재 속성을 반환합니다. (
setParam과 짝을 이룹니다)
반환된 객체를 그대로setParam에 넘기면 같은 형태를 재현할 수 있습니다.Returns:
Type Description U3dUserGeometry~U3dUserGeometryParam 높이·외곽선·분할 여부와 색상·투명도 같은 도형 공통 속성이 함께 담긴 객체. 호출할 때마다 새 객체를 만들어 돌려줍니다 -
setOffset(offset)boolean
-
도형(과 외곽선)의 위치를 지정한 좌표로 이동시킵니다.
offset에 정의된 축(x/y/z)만 적용되며, 외곽선 자식 객체도 함께 옮깁니다.Name Type Description offsetVector3Like 옮길 위치의 월드 좌표 (EPSG:3857). 값이 있는 축만 적용하므로 일부 축만 담아 넘길 수 있습니다
Returns:
Type Description boolean 위치를 옮겼으면 true,offset을 넘기지 않았으면false -
setParam(param)
-
도형의 속성(색상·투명도·높이·외곽선·곡선 보간)을 갱신합니다.
전달한 값만 반영되고 나머지는 기존 값이 유지되며, 호출할 때마다 지오메트리와 외곽선이 다시 만들어집니다.Name Type Description paramU3dUserGeometry~U3dUserGeometryCO optional 변경할 속성 객체.
color·opacity·height·outline·usecurve와 도형 공통 속성을 읽습니다.vertices·coordinates·name처럼 좌표와 식별에 관한 값은 이 함수로 바뀌지 않습니다 -
updateVertex()
-
현재 정점(vertices)으로 도형 지오메트리를 다시 만듭니다.
정점을 바꾸면 자동으로 호출되며, 높이가 0 이하면 평면으로, 0보다 크면 세운 기둥으로 다시 만듭니다. 정점이 하나도 없으면 지오메트리를 빈 상태로 비우고, 하나뿐이면 지금 지오메트리를 그대로 둡니다.지오메트리를 새로 만들면서 도형 위치를 형상의 중심으로 옮기고 z를 0.1만큼 올려, 바닥면이 지면과 겹쳐 깜빡이는 것을 줄입니다. 외곽선도 이때 지웠다가
useline이 켜져 있으면 다시 만듭니다.
Type Definitions
-
U3dUserGeometryCOobject
-
~extends U3dGeometry~U3dGeometryCO
U3dUserGeometry 생성자 옵션Properties:
Name Type Argument Default Description colorColorRepresentation <optional>
0xff0000 도형 표면 색상. 16진수 숫자(
0xff0000), CSS 색 문자열('#ff0000') 또는THREE.Color를 넣습니다heightnumber <optional>
100 바닥 다각형을 세워 올릴 높이 (미터). 0 이하면 세우지 않고 평면으로 만듭니다. 화면에 그릴 때는 좌표가 지정된 위도의 보정 배율이 곱해집니다
opacitynumber <optional>
0.7 불투명도 (0~1). 1보다 작으면 투명 처리가 켜집니다
usecurveboolean <optional>
false 정점 사이를 잘게 나눌지 여부. 각 변을 5조각으로 쪼개 정점 수를 늘립니다
namestring <optional>
도형 이름. 레이어에서 도형을 찾을 때 쓰는 식별자이며, 넣지 않으면 무작위 문자열이 자동으로 만들어집니다
wireframeboolean <optional>
면을 채우지 않고 삼각형 모서리만 선으로 그릴지 여부
showLabelboolean <optional>
true 도형에 붙은 라벨을 화면에 표시할지 여부
verticesArray.<WorldPositionVector3> <optional>
바닥 다각형을 이루는 정점 배열 (월드 좌표, EPSG:3857). 두 개 이상이어야 도형이 만들어집니다
coordinatesArray.<GeoPositionVector3> <optional>
바닥 다각형을 이루는 위경도 좌표 배열 (EPSG:4326). 도형이 속한 레이어가 월드 좌표로 바꿔 넣습니다
propertiesKeyValue <optional>
도형과 함께 보관할 사용자 정의 속성. 화면 표현에는 쓰이지 않으며 클릭한 도형의 부가 정보를 담을 때 사용합니다
-
U3dUserGeometryParamobject
-
getParam함수가 반환하는 사용자 정의 도형 속성 객체입니다.
이 객체를 다른 사용자 도형의setParam에 그대로 넘기면 같은 형태로 맞출 수 있습니다.Properties:
Name Type Description heightnumber 바닥 다각형을 세워 올린 높이 (미터). 0 이하면 평면입니다
outlineboolean 외곽선(테두리 선)을 표시하는지 여부
usecurveboolean 정점 사이를 잘게 나누는지 여부