new UEdgeLine(geometry, params)
입력 지오메트리의 외곽선을 그리는 엣지 라인을 생성합니다.
지오메트리를 주면 엣지를 추출해 라인 지오메트리를 만들고, 파라미터(색상·두께·점선 등)로 재질을 설정합니다.
| Name | Type | Description |
|---|---|---|
geometry |
BufferGeometry |
optional
외곽선을 뽑을 입력 지오메트리. 넣지 않으면 빈 라인 지오메트리로 만들어지므로, 나중에 |
params |
UEdgeLine~UEdgeLineParams |
optional
라인 재질 파라미터 (색상·두께·점선·해상도) |
Methods
-
createEdgeGeometry(geometry)BufferGeometry
-
입력 지오메트리에서 중복 없는 엣지(선분) 지오메트리를 추출합니다.
UPlaneBufferGeometry는 격자 구조를 이용해 빠르게 처리하고, 그 외 지오메트리는 삼각형 인덱스에서 엣지를 뽑습니다.Name Type Description geometryBufferGeometry 외곽선을 뽑을 입력 지오메트리
Returns:
Type Description BufferGeometry 선분 두 개씩 짝지어진 정점을 담은 지오메트리. 격자가 아닌 지오메트리는 임계각 0으로 모든 면 경계를 뽑습니다 -
createGeometry(geometry)LineGeometry
-
입력 지오메트리에서 외곽선을 뽑아 라인 지오메트리까지 한 번에 만듭니다.
createEdgeGeometry와createLineGeometry를 차례로 호출하는 것과 같습니다.Name Type Description geometryBufferGeometry 외곽선을 뽑을 입력 지오메트리
Returns:
Type Description LineGeometry 굵은 라인으로 그릴 수 있는 라인 지오메트리 -
createLineGeometry(edgesGeometry)LineGeometry
-
엣지(선분) 지오메트리를
Line2용 라인 지오메트리로 변환합니다.
각 엣지의 시작·끝 점을 선분 좌표로 펼쳐, 굵은 라인 렌더링에 사용할 수 있게 만듭니다.Name Type Description edgesGeometryBufferGeometry createEdgeGeometry가 돌려준 선분 지오메트리Returns:
Type Description LineGeometry 굵은 라인으로 그릴 수 있게 선분 좌표를 펼쳐 담은 지오메트리. 정점이 없으면 빈 지오메트리 -
createMaterial(params)ShaderMaterial
-
엣지 라인에 사용할 셰이더 재질을 생성합니다.
색상은 셰이더의diffuse유니폼에 넣고, 나머지 항목은 셰이더가 같은 이름의 유니폼을 선언하고 있을 때만 반영합니다. 넣지 않은 값은 셰이더의 기본 설정을 그대로 씁니다.Name Type Description paramsUEdgeLine~UEdgeLineParams optional 재질 파라미터 (색상·두께·점선·해상도)
Returns:
Type Description ShaderMaterial 엣지 라인용 셰이더 재질. 호출할 때마다 새 재질을 만들어 돌려줍니다
Type Definitions
-
UEdgeLineParamsobject
-
UEdgeLine생성자와createMaterial에 넘기는 재질 파라미터입니다.
color를 뺀 나머지 항목은 셰이더가 같은 이름의 유니폼을 선언하고 있을 때만 반영됩니다.Properties:
Name Type Argument Description colornumber | string <optional>
라인 색상. 16진수 숫자(
0x000000) 또는 CSS 색 문자열('#000000')을 넣습니다linewidthnumber <optional>
라인 두께. 넣지 않으면 셰이더의 기본 두께를 씁니다
dashedboolean <optional>
점선으로 그릴지 여부. 셰이더에 점선 설정이 켜져 있을 때만 반영됩니다
resolutionVector2 <optional>
화면 크기 (픽셀). 두께를 화면 기준으로 계산할 때 사용합니다
-
UPlaneGeometryExtobject
-
UPlaneBufferGeometry가 추가로 들고 있는 격자 정보입니다.
이 정보가 있으면 삼각형을 훑지 않고 격자 좌표만으로 엣지를 뽑습니다.Properties:
Name Type Argument Description classtypestring <optional>
지오메트리 종류 식별자.
'UPlaneBufferGeometry'일 때 격자 방식으로 처리합니다isSkirtfunction <optional>
가장자리에 스커트(skirt)를 만들었는지 알려주는 함수
getSkirtIndexfunction <optional>
가장자리에서 스커트가 차지하는 정점 줄 수를 알려주는 함수. 스커트를 쓰지 않으면 0입니다