Class: RealTransferEngine

RealTransferEngine

new RealTransferEngine()

common/Geometry.js, line 8193

轉換螢幕與世界座標系統的引擎(當然,也可用於轉換不同的兩個直角座標系統,如螢幕座標與影像座標系統)

Members

readonlyCenter

取得Viewport的中心點

Properties:
Name Type Description
Center GeoPoint

Viewport的中心點

EnableRange

是否允許限制範圍

Properties:
Name Type Description
EnableRange Boolean

是否不可移動到整個Viewport的範圍(ViewportRange)之外

readonlyIsEmpty

是否是空的(還未設定的)

Properties:
Name Type Description
IsEmpty Boolean

是否是空的

Methods

EnableInteger(do_integer)

common/Geometry.js, line 8342

設定是否只能有整數的座標。

Name Type Description
do_integer Boolean

是否只能有整數的座標。

EnableStretch(do_stretch)

common/Geometry.js, line 8350

設定長與寬是否不需等比例(是否可變形)。

Name Type Description
do_stretch Boolean

設定長與寬是否不需等比例。

GetCenter(){GeoPoint}

common/Geometry.js, line 8599

取得目前Viewport的中心點。

Returns:
Type Description
GeoPoint 傳回Viewport的中心點。

GetUpdateArea(Viewport, Window){Boolean}

common/Geometry.js, line 8562

取得目前有資料的Viewport與Window的範圍,大部分狀況,與目前的Viewport與Window相同,但有些時候會不同,
想像一下,當Zoom Extend時,因為有資料的範圍的長寬比不一定和螢幕的長寬比相同,此時取得的Viewport與Window就和目前的Viewport與Window不同。

Name Type Description
Viewport GeoBoundary

此為out參數,所以要在執行前先配置,執行後,傳回目前顯示中,有資料的Viewport範圍。

Window GeoBoundary

此為out參數,所以要在執行前先配置,執行後,傳回目前顯示中,有資料的Window範圍。

Returns:
Type Description
Boolean 傳回在目前畫面中,是否有資料。

GetViewport(){GeoBoundary}

common/Geometry.js, line 8443

取得目前的Viewport範圍。

Returns:
Type Description
GeoBoundary 傳回目前的Viewport範圍。

GetViewportRange(){GeoBoundary}

common/Geometry.js, line 8403

取得Viewport的最大範圍。

Returns:
Type Description
GeoBoundary 傳回Viewport的最大範圍。

GetWindow(){GeoBoundary}

common/Geometry.js, line 8382

取得Window的範圍。

Returns:
Type Description
GeoBoundary 傳回Window的範圍。

Move(x, y){Boolean}

common/Geometry.js, line 8619

移動目前的Viewport。

Name Type Description
x Number

水平移動距離。

y Number

垂直移動距離。

Returns:
Type Description
Boolean 傳回是否成功。

RemoveAll()

common/Geometry.js, line 8651

清除所有的設定。

Restore()

common/Geometry.js, line 8672

回放儲存起來的資料。

Save()

common/Geometry.js, line 8663

將目前設定儲存起來。

Scale(scale){Boolean}

common/Geometry.js, line 8608

縮放目前的Viewport。

Name Type Description
scale Number

縮放的Scale。

Returns:
Type Description
Boolean 傳回是否成功。

SetCenter(p)

common/Geometry.js, line 8583

在Viewport的寬與高不變下,設定目前Viewport的中心點。

Name Type Description
p GeoPoint

新的Viewport中心點。

SetViewport(Boundary, Viewport)

common/Geometry.js, line 8416

同時設定Viewport的最大範圍與Viewport的範圍 或只設定Viewport的範圍。

Name Type Description
Boundary GeoBoundary

Viewport的最大範圍或Viewport的範圍(當Viewport=undefined)。

Viewport GeoBoundary | undefined

Viewport的範圍。

Example

var TransferEngine = new RealTransferEngine();
TransferEngine.SetViewport(Boundary,Viewport);//同時設定Boundary與目前Viewport
TransferEngine.SetViewport(Viewport);//只設定目前Viewport

SetViewportRange(Range)

common/Geometry.js, line 8390

設定Viewport的最大範圍。

Name Type Description
Range GeoBoundary

Viewport的最大範圍。

SetWindow(Window, KeepResolution)

common/Geometry.js, line 8362

設定Window的範圍。

Name Type Description
Window GeoBoundary

Window的範圍。

KeepResolution Boolean

保持解析度。

ViewportToWindow(Obj){undefined|Number}

common/Geometry.js, line 8539

將Viewport座標轉至Window座標,若為GeoPoint與GeoBoundary,則直接轉換傳入的參數,若是Number,則將轉換後的答案傳回。

Name Type Description
Obj GeoPoint | GeoBoundary | Number

欲轉換的座標。

Returns:
Type Description
undefined | Number 若參數為Number,則傳回轉換後的答案。

WindowToViewport(Obj){undefined|Number}

common/Geometry.js, line 8487

將Window座標轉至Viewport座標,若為GeoPoint與GeoBoundary,則直接轉換傳入的參數,若是Number,則將轉換後的答案傳回。

Name Type Description
Obj GeoPoint | GeoBoundary | Number

欲轉換的座標。

Returns:
Type Description
undefined | Number 若參數為Number,則傳回轉換後的答案。

ZoomAll()

common/Geometry.js, line 8644

縮小至看到全圖。

ZoomIn()

common/Geometry.js, line 8630

放大。

ZoomOut()

common/Geometry.js, line 8637

縮小。