PilotGaea 3D O'view
    正在準備搜尋索引...

    類別 ModelLayer

    模型圖層

    層級 (查看層級一覽)

    索引

    方法

    • 設定是否將圖素隱藏,與Show不同,仍可以被點選。

      參數

      • invisibleDraw: boolean

        是否隱藏圖素。

      回傳 boolean

      是否成功。

    • 取得指定圖素的所有屬性值。

      參數

      • param: { id: number; doCmd?: boolean; callback: (attrs: null | object) => void }

        參數。

        • id: number

          指定圖素的ID。

        • 可選doCmd?: boolean

          true會直接發doCmd查詢屬性;false會先檢查身上有沒有帶屬性,沒有則發doCmd查詢屬性。預設true

        • callback: (attrs: null | object) => void

          取得屬性後的回呼。

      回傳 void

    • 以SQL條件查詢圖層中的圖素。

      參數

      • sql: string

        SQL查詢條件。

      • callback: (ret: null | DoCmdEntity[]) => void

        查詢的回呼。

      回傳 void

    • 查詢被指定幾何包圍的圖素,並以SQL篩選。

      參數

      • epsg: number

        幾何的EPSG。

      • geo: GeoBoundary

        指定幾何。

      • sql: string

        SQL篩選條件。

      • callback: (ret: null | DoCmdEntity[]) => void

        查詢的回呼。

      回傳 void

    • 查詢在指定幾何範圍以內的圖素,並以SQL篩選。

      參數

      • epsg: number

        幾何的EPSG。

      • geo: GeoPolygon

        指定幾何。

      • distance: number

        指定距離,單位公尺。

      • sql: string

        SQL篩選條件。

      • callback: (ret: null | DoCmdEntity[]) => void

        查詢的回呼。

      回傳 void

    • 查詢在指定幾何相交的圖素,並以SQL篩選。

      參數

      • epsg: number

        幾何的EPSG。

      • geo: GeoPolygon

        指定幾何。

      • sql: string

        SQL篩選條件。

      • callback: (ret: null | DoCmdEntity[]) => void

        查詢的回呼。

      回傳 void

    • 取得指定圖素的所有屬性欄位名稱和屬性值。

      參數

      • param: {
            id: number;
            doCmd?: boolean;
            callback: (attrs: null | DoCmd3DColAndAttrs) => void;
        }

        參數。

        • id: number

          指定建物的ID。

        • 可選doCmd?: boolean

          true會直接發doCmd查詢屬性;false會先檢查身上有沒有帶屬性,沒有則發doCmd查詢屬性。

        • callback: (attrs: null | DoCmd3DColAndAttrs) => void

          取得屬性後的回呼。

      回傳 void

    • 設置剔除模式。

      參數

      回傳 void

    • 以圖素屬性來設置各圖素的顏色,要注意提供的colorFunction性能。

      參數

      • entityField: string[]

        依據的屬性欄位。

      • colorFunction: window.ov.ModelLayer.ColorFunction

        依據屬性輸出顏色的函數,傳入圖素ID、屬性、設定用的顏色。

      回傳 boolean

      是否設置成功。

      modelLayer.setEntityColorFunction(["Type"], function(id, attrs, color) {
      if (attrs[0] === "樓梯") {
      color[0] = 255;
      color[1] = 0;
      color[2] = 0;
      } else {
      color[0] = 0;
      color[1] = 0;
      color[2] = 0;
      }
      });
    • 清除setEntityColorFunction設定的顏色函數。

      回傳 boolean

      是否清除成功。

    • 以圖素屬性來設置各圖素的隱藏模式,要注意提供的hideFunction性能。

      參數

      • entityFields: string[]

        依據的屬性欄位。

      • hideFunction: window.ov.ModelLayer.HideFunction

        根據屬性輸出隱藏的函數,傳入圖素屬性。

      回傳 boolean

      是否設置成功。

      modelLayer.setEntityHideFunction(["Type"], attrs => {
      if (attrs[0] === "樓梯") {
      return ov.HIDE.DISABLE_DRAW_SELECT;
      } else {
      return ov.HIDE.NONE;
      }
      });
    • 開關Alpha測試,判斷若圖點的透明度達到一定程度便直接不輸出該點。

      參數

      • enable: boolean

        是否使用Alpha Test。

      回傳 void

    • 若有使用Alpha測試,則可設定Alpha參考值的值與比較方法。

      參數

      • compareFunction: ALPHA_TEST_FUNC

        比較的方法。

      • reference: number

        參考值,0.0 ~ 1.0。

      回傳 void

    • 設定要疊加在ModelLayer上的Overlay圖層名稱,需先自行加Overlay。

      參數

      • layerName: null | string | string[]

        疊加的Overlay圖層名稱。

      回傳 boolean

      是否設定成功。

    • 指定模型的作畫模式。

      參數

      回傳 void

    • 讀取碰撞功能。

      參數

      • callback: (success: boolean, collision: Collision) => void

        讀取完成的回呼方法。

      回傳 boolean

      是否成功呼叫。

    • 設定是否繪製建物邊緣線。

      參數

      • enable: boolean

        是否繪製建物邊緣線。

      回傳 void

    • 設定邊緣線顏色。

      參數

      回傳 void

    • 設定虛線間隔。

      參數

      • dashScale: number

        虛線間隔(公尺),大於0才有虛線,否則為實線。

      回傳 void

    • 設定邊緣線ZScale。

      參數

      • scale: number

        ZScale的值。

      回傳 void

    • 在圖層上加入要裁切的區域。

      參數

      回傳 boolean

      是否加入成功。

    • 移除先前在圖層上的裁切區域。

      參數

      • 可選index: number

        索引,不填則全刪。

      回傳 boolean

      是否刪除成功。

    • 取得所有在圖層上的裁切區域。

      回傳 null | { polygon: GeoPolygon[]; mode: CLIP_MODE[] }

      裁切多邊形資訊。

    • 設定此圖層圖素被點擊時的回呼。

      參數

      • callback: (id: number, pos: GeoPoint) => void

        圖素被點擊時的回呼,若輸入非function將被忽略,輸入null則清除設定。

      回傳 void

    • 設定圖層的圖素是否顯示outline。

      參數

      • isDraw: boolean

        是否顯示。

      回傳 void

    • 設定選取圖層圖素的Outline線寬。

      參數

      • width: number

        線寬。

      回傳 void

    • 設定圖層的圖素是否能Hover。

      參數

      • allow: boolean

        是否能Hover。

      回傳 void

    • 設定圖層的圖素是否能被選取。

      參數

      • allow: boolean

        是否能被點選。

      回傳 void

    • 設定圖素選取狀態。

      未選取則變成選取狀態。

      選取則變成未選取狀態。

      -1清除所有選取狀態。

      參數

      • entityID: number

        圖素ID。

      回傳 void

    • 取得圖層標頭物件。

      參數

      • callback: (header: null | object) => void

        請求標頭物件的回呼,不給則同步回傳(不保證回傳速度)。

      回傳 void

    • 設定是否使用光線。

      參數

      • useLight: boolean

        是否使用光線。

      回傳 void

    • 設定顏色曝光度。

      參數

      • exposure: number

        曝光度。

      回傳 void

    • 設定顏色伽碼值。

      參數

      • gamma: number

        伽碼值。

      回傳 void

    • 設置圖層不透明度。

      參數

      • opacity: number

        圖層不透明度 (0~1)。

      回傳 void

    • 取得當前圖層不透明度。

      回傳 number

      圖層不透明度 (0~1)。

    • 設定圖層的公尺平移量(目前僅支援PhotogrammetryModel、PointCloud、Model、ModelSet、Pipeline)。

      參數

      • x: number

        向東西方向偏移,單位為公尺。

      • y: number

        向南北方向偏移,單位為公尺。

      • z: number

        向垂直於地表方向偏移,單位為公尺。

      回傳 boolean

      變換是否成功,某些圖層不支持此操作時返回false。

    • 設定圖層的旋轉量(目前僅支援PhotogrammetryModel、PointCloud、Model、ModelSet、Pipeline)。

      參數

      • degree: number

        旋轉角度。

      回傳 boolean

      變換是否成功,某些圖層不支持此操作時返回 false

    • 設定圖層的縮放量(目前僅支援PhotogrammetryModel、PointCloud、Model、ModelSet、Pipeline)。

      參數

      • scale: number

        縮放比例。

      回傳 boolean

      變換是否成功,某些圖層不支持此操作時返回false。

    • 設定圖層解析度條件的 Scale 比例。

      參數

      • resolutionScale: number

        解析度條件的Scale比例(初始值 1,越大越容易分裂,模型越細緻)。

      回傳 void

      是否設定成功。

    • 設定圖層的 ZScale。

      ZScale越小圖層越不會被遮擋。

      參數

      • zScale: number

        值。

      回傳 boolean

      是否設定成功。

    • 設定圖層是否開啟淡出功能。

      參數

      • useFade: boolean

        淡出開關。

      回傳 void

    • 設定圖層開始淡出與完全消失的距離。

      參數

      • near: number

        開始淡出的距離。

      • far: number

        完全消失的距離。

      回傳 boolean

      設定是否成功,當 near > far 時,會失敗。

    • 透明度是否使用 OIT 演算法,正確性較高但效能會降低。

      參數

      • enable: boolean

        啟用 OIT 透明。

      回傳 void

    • 飛到圖層的位置。

      參數

      • 可選callback: () => void

        移動完成後執行的回呼。

      回傳 void

    • 設定圖層隱藏模式。

      參數

      • mode: HIDE

        隱藏模式。

      回傳 void

    • 設置圖層深度測試的方式。

      參數

      • depthFunc: DEPTH_FUNC

        深度測試的方式。

      回傳 void

    • 設定圖層是否暫停分裂。

      參數

      • freezeAdjust: boolean

        是否暫停分裂。

      回傳 void

    • 設定圖層是否暫停收斂。

      參數

      • freezeCollapse: boolean

        是否暫停收斂。

      回傳 void

    • 此設定影響圖資與地形的作畫順序

      參數

      • isUnderground: boolean

        是否在地底

      回傳 void

    訪問器屬性

    • get enableShadow(): boolean

      是否顯示陰影,若 TerrainView 關閉陰影則不會顯示

      回傳 boolean

    • get name(): string

      取得圖層名稱 。

      回傳 string

    • get show(): boolean

      取得是否顯示圖層。

      回傳 boolean

    • set show(value: boolean): void

      設定是否顯示圖層。

      參數

      • value: boolean

      回傳 void

    • get boundary(): GeoBoundary

      取得圖層邊界。

      回傳 GeoBoundary

    • get debugBoundingVolume(): boolean

      取得是否顯示除錯包圍體。

      回傳 boolean

    • set debugBoundingVolume(value: boolean): void

      設定是否顯示除錯包圍體。

      參數

      • value: boolean

      回傳 void

    • get debugNodeId(): boolean

      取得是否顯示除錯節點Id。

      回傳 boolean

    • set debugNodeId(value: boolean): void

      設定是否顯示除錯節點Id。

      參數

      • value: boolean

      回傳 void