WorldWind學習 5 相機物件

2022-01-21 23:50:40 字數 2513 閱讀 6739

首先檢視worldwindow的事件:onmouseup、onmousemove、handlekeydown,這幾個方法中多次呼叫this.drawargs.worldcamera的各種屬性實現了場景的控制,包括球的旋轉、場景的放大縮小,上下移動。

1. 接下來檢視camerabase類rotationyawpitchroll虛函式:

1

public

virtual

void

rotationyawpitchroll(angle yaw, angle pitch, angle roll)

2

rotationyawpitchroll

worldcamera類的rotationyawpitchroll方法:

1

public

override

void

rotationyawpitchroll(angle yaw, angle pitch, angle roll)

2

rotationyawpitchroll

momentumcamera類的rotationyawpitchroll方法:

1

public

override

void

rotationyawpitchroll(angle yaw, angle pitch, angle roll)29

10this._targetorientation = quaternion4d.eulertoquaternion( yaw.radians, pitch.radians, roll.radians ) *_targetorientation;

11 point3d v =quaternion4d.quaterniontoeuler(_targetorientation);

12if(!double

.isnan(v.y))

1319

20base

.rotationyawpitchroll(yaw,pitch,roll);

21 }

rotationyawpitchroll

2. camerabase類的pan方法:

1

///2

///pan the camera using delta values

3///

平移相機,採用經緯度偏移量

4///

5///

latitude offset

6///

longitude offset

7public

virtual

void

pan(angle lat, angle lon)830

31if(!double

.isnan(p.y))

3236 }

panmomentumcamera類的pan方法:

1

public

override

void

pan(angle lat, angle lon)28

9if(angle.isnan(lat)) lat = this

._targetlatitude;

10if(angle.isnan(lon)) lon = this

._targetlongitude;

11 lat +=_targetlatitude;

12 lon +=_targetlongitude;

1314

if(math.abs(lat.radians)>math.pi/2-1e-3)15

1819

this._targetorientation =quaternion4d.eulertoquaternion(

20lon.radians,

21lat.radians,

22_targetheading.radians);

2324 point3d v = quaternion4d.quaterniontoeuler(this

._targetorientation);

25if(!double

.isnan(v.y))

2638

}39 }

pan錯誤 1 無法註冊程式集「f:\world_wind_1.4.0_source\htmleditor\bin\debug\htmleditor.dll」- 拒絕訪問。請確保您正在以管理員身份執行應用程式。對登錄檔項「hkey_classes_root\onlyconnect.htmldialog」的訪問被拒絕。 htmleditor

解決方法:htmleditor專案的屬性,取消「生成(build )」選項卡的為com互操作註冊

WorldWind學習 5 相機物件

首先檢視worldwindow的事件 onmouseup onmousemove handlekeydown,這幾個方法中多次呼叫this.drawargs.worldcamera的各種屬性實現了場景的控制,包括球的旋轉 場景的放大縮小,上下移動。1.接下來檢視camerabase類rotation...

5 相機 透視 視口和投影

每乙個場景在渲染時都需要乙個視點,使用者正是從視點的位置去觀察場景。3d圖形系統通常使用相機 camera 來定義使用者與場景的相對位置和朝向,和我們真實世界中的相機一樣,3d世界中的相機也具有類似於視野尺寸等屬性。視野尺寸決定了透視關係 例如,遠處的景物看起來會小一些 相機的各個屬性組合在一起將最...

相機矯正 小公尺9相機使用技巧

小公尺9作為小公尺首款後置三攝的手機,搭載4800萬超廣角ai三攝,採用索尼imx586 4800萬感測器,硬體規格十分強悍。這麼好的硬體配置,要是不掌握一些拍攝技巧就浪費了,下面給大家介紹小公尺9相機使用技巧 小公尺9相機使用技巧 1 智慧型超廣角 可能有些使用者對於超廣角相機缺乏了解,不知道什麼...