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.