InteractionAnalysisExcavation

지형 굴착 및 분석을 위한 사용자 입력(마우스/키보드) 클래스.
User input (mouse/keyboard) class for terrain excavation and analysis.

new Ditap.InteractionAnalysisExcavation(analysisExcavation, options)

Name Type Description
analysisExcavation AnalysisExcavation 체적량 측정 연산 및 영역 표시 클래스.
Volumetric Measurement Calculation and Region Display Class.
options InteractionAnalysisExcavation.ConstructorOptions optional 초기화 옵션을 설명하는 객체.
An object describing initialization options.
Example:
const getUrlFromBase64 = (base64Data) => {
  const b64Data = base64Data;
  const byteCharacters = window.atob(b64Data);
  const byteNumbers = new Array(byteCharacters.length);
  for (let i = 0; i < byteCharacters.length; i++) {
    byteNumbers[i] = byteCharacters.charCodeAt(i);
  }
  const byteArray = new Uint8Array(byteNumbers);
  const blob = new Blob([byteArray], { type: "image/png" });

  return URL.createObjectURL(blob);
};

const viewer = new Ditap.DitapViewer("ditapContainer", {
  baseLayerPicker: true,
  // 지형(터레인 지정)
  terrainProviderViewModels: [
    new Ditap.ProviderViewModel({
      name: "Ditap Korea Terrain",
      iconUrl: getUrlFromBase64(
        Ditap.ConstantUrl.DITAP_TERRAIN_IMG_URL
      ),
      tooltip: "WGS84 standard ellipsoid, also known as EPSG:4326",
      category: "Ditap",
      creationFunction: function () {
        return Ditap.NationwideTerrainProvider.create();
      },
    }),
  ],
});

// AnalysisExcavation 생성
const analysisExcavation = new Ditap.AnalysisExcavation(viewer);

// InteractionAnalysisExcavation 생성
const interactionAnalysysExcavation = new Ditap.InteractionAnalysisExcavation(
  analysisExcavation,
  {
    startCallback: (instance) => {
      console.log("start", instance);
    },
    addCallback: (instance) => {
      console.log("add", instance);
    },
    endCallback: (instance) => {
      console.log("end", instance);
    },
    errorCallback: (error) => {
      console.log(error);
    },
    loading: false,
    popup: true
  }
);

// 실행
interactionAnalysysExcavation.on('polygon');

// 종료
// interactionAnalysysExcavation.off();

Members

addCallback : function

포인트 추가 콜백 함수.
Point add callback function.

analysisExcavation : AnalysisExcavation

굴착 및 분석 클래스.
AnalysisExcavation instance.

endCallback : function

분석 종료 콜백 함수.
Analysis end callback function.

errorCallback : function

분석 실행 오류 콜백 함수.
Analysis execution error callback function.

readonly isLoading : boolean

계산중 상태.
Status in calculation.

readonly isOn : boolean

핸들러 비/활성화 상태.
Handler enabled or disabled.

loading : boolean

로딩창 생성 여부.
Whether to create a loading.
팝업창 생성 여부.
Whether to create a pop-up window.

startCallback : function

인터렉션 실행 콜백 함수.
Interaction execution callback function.

Methods

destroy()

객체의 리소스 파괴.
Destroy resources held by this object.

destroyInstance()

생성중인 인스턴스 파괴.
Destroying the instance being created.

off()

굴착 및 분석 핸들러 종료.
Termination and analysis handler.

on(type)

굴착 및 분석 핸들러 실행.
Running excavation and analysis handlers.
Name Type Default Description
type 'circle' | 'polygon' 'circle' optional 영역 지정 타입.
Area designation type.

Type Definitions

Ditap.InteractionAnalysisExcavation.ConstructorOptions

InteractionAnalysisExcavation 생성자의 초기화 옵션.
Initialization options for the InteractionAnalysisExcavation constructor.
Properties:
Name Type Attributes Default Description
loading boolean <optional>
true 로딩창 생성 여부.
Whether to create a loading window.
popup boolean <optional>
true 팝업창 생성 여부.
Whether to create a pop-up window.
startCallback function <optional>
인터렉션 실행 콜백 함수.
Interaction execution callback function.
addCallback function <optional>
포인트 추가 콜백 함수.
Point add callback function.
endCallback function <optional>
분석 종료 콜백 함수.
Analysis end callback function.
errorCallback function <optional>
분석 실행 오류 콜백 함수.
Analysis execution error callback function.