AnalysisClipping

절단면 분석 연산 및 영역 표시 클래스.
Clipping analysis operation and area display class.

new Ditap.AnalysisClipping()

Example:
const viewer = new Ditap.DitapViewer("ditapContainer");

const destination = Ditap.Cartesian3.fromDegrees(
  126.978275264,
  37.566642192,
  400
);

// 카메라 이동
viewer.scene.camera.flyTo({
  destination: destination,
});

const modelMatrix = Ditap.Transforms.eastNorthUpToFixedFrame(
  Ditap.Cartesian3.fromDegrees(126.9782349646649, 37.56671536989183, 100)
);
const model = await Ditap.Model.fromGltfAsync({
 id: "model_01",
 url: "../../SampleData/models/GroundVehicle/GroundVehicle.glb",
 modelMatrix: modelMatrix,
 scale: 3,
});
viewer.scene.primitives.add(model);

// 1. 절단면 분석 인스턴스 생성
const analysisClipping = new AnalysisClipping(viewer, model);

// 2. 절단면 생성
const planeX = analysisClipping.add(AnalysisClipping.PLANE_X_NORMAL);
// const planeY = analysisClipping.add(AnalysisClipping.PLANE_Y_NORMAL);
// const planeZ = analysisClipping.add(AnalysisClipping.PLANE_Z_NORMAL);

// 3. 절단면 제거
analysisClipping.remove(planeX);
// analysisClipping.remove(planeY);
// analysisClipping.remove(planeZ);

// 4. 절단면 거리 조절
analysisClipping.setDistance(planeX, 10);
// analysisClipping.setDistance(planeY, 10);
// analysisClipping.setDistance(planeZ, 10);

Members

static constant Ditap.AnalysisClipping.PLANE_X_NORMAL : Cartesian3

월드좌표 X 방향 노멀.
World coordinates X direction normal.

static constant Ditap.AnalysisClipping.PLANE_Y_NORMAL : Cartesian3

월드좌표 Y 방향 노멀.
World coordinates Y direction normal.

static constant Ditap.AnalysisClipping.PLANE_Z_NORMAL : Cartesian3

월드좌표 Z 방향 노멀.
World coordinates Z direction normal.

readonly id : string

절단면 분석 객체 ID.
AnalysisClipping instance id.

readonly planes : Array.<ClippingPlane>

적용중인 절단면.
Clipping plane being applied.

readonly selectObject : Model|Cesium3DTileset|ModelGraphics

절단면 분석 오브젝트.
Clipping plane analysis object.

viewer : DitapViewer

사용할 Ditap Viewer 인스턴스.
The DitapViewer instance to use.

Methods

add(normal, distance) → ClippingPlane

절단면 추가.
Add clipping plane
Name Type Default Description
normal String | Cartesian3 축 ["X", "Y", "Z"] 또는 법선벡터.
Axis ["X", "Y", "Z"] or normal vector.
distance number 0 거리.
Normal distance.
Returns:
생성된 절단면 객체.
Clipping plane object.

clear()

모든 절단면 제거.
Remove all created clipping planes

destroy()

인스턴스 제거.
Destroys the instance.

getPlaneByNormal(normal) → ClippingPlane|undefined

입력된 노멀에 해당하는 절단면 추출.
Extract clipping plane corresponding to input normal.
Name Type Description
normal Cartesian3
Returns:
clippingPlane

remove(plane) → boolean

절단면 제거.
Remove the entered clipping plane
Name Type Description
plane ClippingPlane 제거할 절단면.
The clipping plane to be removed
Returns:
절단면 제거 여부.
Whether to remove clipping plane.

setDistance(plane, distance) → plane

절단면 위치 조절.
Move in normal direction
Name Type Description
plane ClippingPlane 이동시킬 절단면.
The model to be moved.
distance number 이동 거리 (미터).
Movement amount (meters).
Returns:
위치 조절된 절단면.
Position adjusted cutting plane.

setNormal(plane, normal) → plane

절단면 노멀 재설정.
Reset clipping plane normal.
Name Type Description
plane ClippingPlane 재설정 절단면.
Reset clipping plane.
normal Cartesian3 재설정 노멀.
Reset Normal.
Returns:
plane 노멀 재설정된 절단면.
Normal reset clipping plane.