Name | Type | Description |
---|---|---|
viewer |
DitapViewer | 사용할 Ditap Viewer 인스턴스. The DitapViewer instance to use. |
Example:
// 샌드캐슬 예제 'DiTAP - Split' 참조
const viewer = new Ditap.DitapViewer("ditapContainer", {
baseLayerPicker: true,
});
// InteractionSplit 생성
const interactionSplit = new Ditap.InteractionSplit(viewer);
// interactionSplit handler 실행 버튼
Sandcastle.addToolbarButton("Split On", async () => {
// interactionSplit handler 실행
interactionSplit.on(viewer);
// AnalysisSplit 인스턴스 생성
const analysisSplit = interactionSplit.analysisSplit;
// 뷰어에 추가할 데이터 생성
// 1. 정사영상
// 정사영상 인스턴스 생성
const imagery = new Ditap.NationwideOrthoImageryProvider();
// 2. 모델
// 모델 좌표
const modelPosition = new Ditap.Cartesian3.fromDegrees(
126.9782349646649,
37.56671536989183,
100
);
// 모델 행렬 생성
const modelMatrix = Ditap.Transforms.eastNorthUpToFixedFrame(
modelPosition
);
// 모델 인스턴스 생성
const model = await Ditap.Model.fromGltfAsync({
id: "model_01",
url: "../../SampleData/models/GroundVehicle/GroundVehicle.glb",
modelMatrix: modelMatrix,
minimumPixelSize: 128,
});
// 분할된 뷰어에 생성된 인스턴스 추가
// 우측 분할 뷰어에 정사영상 추가
const rightImagery = analysisSplit.addImagery(
Ditap.SplitDirection.RIGHT,
imagery
);
// 좌측 분할 뷰어에 모델 추가
const leftModel = analysisSplit.addModel(
Ditap.SplitDirection.LEFT,
model
);
// 모델 위치로 카메라 이동
viewer.camera.flyTo({
destination: Ditap.Cartesian3.fromDegrees(
126.9782349646649,
37.5645,
150
),
duration: 2,
orientation: {
heading: Ditap.Math.toRadians(0),
pitch: Ditap.Math.toRadians(-10),
roll: 0,
},
});
});
// interactionSplit handler 종료 버튼
Sandcastle.addToolbarButton("Split Off", () => {
// interactionSplit handler 종료
// interactionSplit.off() - 모든 분할 뷰어에 생성된 객체가 제거됩니다.
// interactionSplit.off(Ditap.SplitDirection.LEFT) - 좌측 분할 뷰어에 생성된 객체가 유지됩니다.
// interactionSplit.off(Ditap.SplitDirection.RIGHT) - 우측 분할 뷰어에 생성된 객체가 유지됩니다.
// interactionSplit.off(Ditap.SplitDirection.BOTH) - 좌측, 우측 모든 분할 뷰어에 생성된 객체가 유지됩니다.
interactionSplit.off();
});
Members
readonly analysisSplit : AnalysisSplit
분할을 위한 분석 기능 클래스.
Analysis feature class for object deletion.
핸들러 비/활성화.
Check handler enable/disable status.
viewer : DitapViewer
사용할 Ditap Viewer 인스턴스.
The DitapViewer instance to use.
Methods
터치 기능 활성화.
Enable touch functionality.
객체의 리소스 파괴.
Destroy resources held by this object.
Destroy resources held by this object.
분할 핸들러 종료.
End split handler.
Name | Type | Description |
---|---|---|
splitDirection |
SplitDirection |
파라미터가 없을 경우, 분할 뷰어에 생성된 모든 객체가 제거됩니다.
SplitDirection 파라미터를 전달하면 해당 방향의 분할 뷰어 위치에 생성된 객체가 유지됩니다.
When no parameter is provided, all objects created within the split viewer will be removed. Passing the SplitDirection parameter will maintain the objects created at the position of the split viewer in the specified direction. |
분할 핸들러 실행.
Execute split handler.
InteracionSplit on/off 기능.
Function on and off.