AnalysisLimitationAltitude

고도제한 분석 클래스.
Altitude analysis class.

new Ditap.AnalysisLimitationAltitude(analysisOptions)

Name Type Description
analysisOptions Object 분석 옵션.
Analysis options.
Name Type Default Description
viewer DitapViewer 사용할 Ditap Viewer 인스턴스.
The DitapViewer instance to use.
positions Array.<Cartesian3> optional 분석할 좌표 배열.
The coordinate array to analyze.
altitude number 0 고도제한 분석 고도 값.
The altitude value for altitude analysis.
latitude string 피처에 입력된 위도 속성명(필수).(필수)
The latitude.
longitude string 피처에 입력된 경도 속성명(필수).
The longitude.
absoluteAltitude string 피처에 입력된 건물 절대고도 속성명(absoluteAltitude 또는 buildingHeight 중 하나 필수).
The absolute building height.
buildingHeight string 피처에 입력된 건물 높이 속성명(absoluteAltitude 또는 buildingHeight 중 하나 필수).
The building height.
Example:
// 샌드캐슬 예제 'DiTAP - Limitation Altitude' 참조

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

// 1. 지정된 영역 생성. (InteractionLimitationAltitude 통한 수정 불가.)
const positions = [
  new Ditap.Cartesian3.fromDegrees(126.977384, 37.566130),
  new Ditap.Cartesian3.fromDegrees(126.977288, 37.569107),
  new Ditap.Cartesian3.fromDegrees(126.982652, 37.568639),
  new Ditap.Cartesian3.fromDegrees(126.982534, 37.566156),
];

// osm 건물 추가
const osmBuildingsTileset = await Ditap.createOsmBuildingsAsync();
viewer.scene.primitives.add(osmBuildingsTileset);

// 건물 높이 계산 방법
// 1. 절대 고도가 있는 경우: 절대 고도
// 2. 건물 높이만 있는 경우: 건물 좌표의 터레인 높이 + 건물 높이

const analysisLimitationAltitude = new Ditap.AnalysisLimitationAltitude({
   viewer: viewer,
   latitude: "LATITUDE", // 피처에 입력된 위도 속성명 (필수)
   longitude: "LONGITUDE", // 피처에 입력된 경도 속성명 (필수)
   absoluteAltitude: "ABSOLUTEALTITUDE", // 피처에 입력된 건물 절대고도 속성명 (absoluteAltitude 또는 buildingHeight 중 하나 필수)
   buildingHeight: "ESTIMATEDHEIGHT", // 피처에 입력된 건물 높이 속성명 (absoluteAltitude 또는 buildingHeight 중 하나 필수)
   positions: positions,
   altitude: 100
});

Members

altitude : number

고도제한 분석 고도 값.
Altitude value for altitude analysis.

readonly area : number

면 면적.
Area of polygon.

buildingFeatures : Array

면 내부의 건물 피처들.
Buildings within the polygon.

readonly overBuildingCount : number

고도제한을 초과하는 건물 수.
Number of buildings exceeding the altitude limit.

overBuildingFeatures : Array

고도제한을 초과하는 건물 피처들.
Buildings exceeding the altitude limit.

readonly pointEntities : Array.<Entity>

면 생성으로 얻은 포인트 엔티티 배열.
Array of point entities obtained by polygon creation.

readonly polygonPrimitive : Primitive

면 생성으로 얻은 polygon primitive.
polygon primitive obtained by polygon creation.

readonly polylineEntity : Entity

면 생성으로 얻은 polyline Entity.
Polyline Entity obtained by polygon creation.

readonly positions : Array.<Cartesian3>

면 생성 할 Cartesian 배열.
Cartesian array for create PolygonEntity.

tileset : Primitive

고도 분석할 타일셋.
Tileset for altitude analysis.

readonly totalBuildingCount : number

총 건물 수.
Total number of buildings.

viewer : DitapViewer

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

Methods

async createEntity()

고도제한 분석 후 엔티티 생성.
Create entities after analyzing altitude limitation.

destroy()

인스턴스 파괴. 영구적으로 제거하는 경우 호출.
Destroys the instance. Should be called if permanently removing the instance from layout.