• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      視景仿真系統(tǒng)中單通道與多通道圖形顯示設(shè)計(jì)與實(shí)現(xiàn)

      2013-04-16 15:48:18
      機(jī)械管理開發(fā) 2013年3期
      關(guān)鍵詞:反光鏡視景單通道

      張 侃

      (山西交通職業(yè)技術(shù)學(xué)院,山西 太原 030031)

      0 引 言

      視景系統(tǒng)仿真是將可視化仿真技術(shù)用于各種模擬器的視景系統(tǒng)中,以產(chǎn)生盡可能真實(shí)的場(chǎng)景效果,它綜合利用了計(jì)算機(jī)圖形學(xué)、信息論、計(jì)算機(jī)視覺(jué)、圖像處理、模式識(shí)別、軟件工程等科技[1]。隨著計(jì)算機(jī)技術(shù)和仿真技術(shù)的發(fā)展,結(jié)合虛擬現(xiàn)實(shí)的視景系統(tǒng)仿真在航空航天、軍事、交通等領(lǐng)域的廣泛應(yīng)用,將對(duì)汽車駕駛模擬圖形的設(shè)計(jì)與實(shí)現(xiàn)做了簡(jiǎn)單介紹。

      1 單通道圖形顯示設(shè)計(jì)與實(shí)現(xiàn)

      單通道是按以下步驟完成:先創(chuàng)建了一個(gè)幀緩存、一個(gè)通道、一個(gè)視點(diǎn)、一個(gè)場(chǎng)景、多個(gè)實(shí)體對(duì)象、一個(gè)光源、一個(gè)霧化模型;再將實(shí)體對(duì)象、光源、霧化模型等添加到場(chǎng)景中;后將視點(diǎn)和場(chǎng)景同時(shí)加入到通道中;最后把通道加入到幀緩存中。完成后的單通道程序如下:

      //定義單通道圖形的幀緩存、通道、視點(diǎn)和場(chǎng)景等資源

      GV_Fbf fbf;

      GV_Channel parent;

      GV_Camera eye_camera;

      GV_Scene scene;

      GV_Light sunlight;

      GV_Fog fog;

      //創(chuàng)建單通道圖形的幀緩存、通道、視點(diǎn)和場(chǎng)景等資源

      GV_fbf_create(&fbf);

      GV_chn_create(&parent);

      GV_cam_create(&eye_camera);

      GV_scn_create(&scene);

      GV_lsr_create(&sunlight);

      GV_fog_create(&fog);

      //設(shè)置單通道圖形的幀緩存、通道、視點(diǎn)和場(chǎng)景等資源的名字GV_fbf_set_name(fbf,“FBF”);

      GV_chn_set_name(parent,“汽車駕駛訓(xùn)練模擬器”);

      GV_cam_set_name(eye_camera,“CAMERA”);

      GV_scn_set_name(scene ,“SCENE”);

      GV_lsr_set_name(sunlight,“SUN”);

      GV_fog_set_fog(fog,“FOG”);

      //設(shè)置單通道圖形的視口大小和遠(yuǎn)近裁剪面

      static GV_Viewport parent_vp={-1.0,1.0,-1.0,1.0};

      static float far_clip=5000.0;

      static float near_clip=1.0;

      GV_chn_set_clip_near(parent,near_clip);

      GV_chn_set_clip_far(parent,far_clip);

      GV_chn_set_viewport(parent,&parent_vp);

      //把視點(diǎn)和場(chǎng)景放入通道中

      GV_chn_set_camera(parent,eye_camera);

      GV_chn_set_scene(paent,scene);

      //向幀緩存中添加通道

      GV_fbf_add_channel(fbf,parent);

      2 多通道圖形顯示技術(shù)的實(shí)現(xiàn)

      多通道圖形顯示中的各種資源間的層次關(guān)系(比單通道時(shí))要復(fù)雜一些。整個(gè)視景系統(tǒng)軟件采用幀緩存和一個(gè)駕駛員通道(driver)相連,駕駛員視點(diǎn)就設(shè)置在該通道中,并把整個(gè)視景系統(tǒng)的場(chǎng)景模型也放入這個(gè)通道,然后通過(guò)駕駛員通道與各個(gè)子通道進(jìn)行連接[2]。每一個(gè)通道的視點(diǎn)和場(chǎng)景都與駕駛員通道的相同。整個(gè)視景系統(tǒng)經(jīng)對(duì)幀緩存fbf樹型結(jié)構(gòu)的維護(hù)處理,完成整個(gè)系統(tǒng)的同步更新、訪問(wèn)控制、恢復(fù)系統(tǒng)功能等。

      整個(gè)視景系統(tǒng)軟件創(chuàng)建了一個(gè)幀緩存、一個(gè)駕駛員通道(駕駛員視野或者是擋風(fēng)玻璃外場(chǎng)景通道)、兩個(gè)子通道(后視鏡和反光鏡通道)、一個(gè)駕駛員通道視點(diǎn)、視景系統(tǒng)的場(chǎng)景模型,以及其中的對(duì)象實(shí)體、一個(gè)光照、一個(gè)霧化模型;先將各個(gè)對(duì)象實(shí)體、光照模型、霧化模型加入場(chǎng)景模型;后將視點(diǎn)和場(chǎng)景放入相應(yīng)的通道,并把各個(gè)子通道添加到駕駛員通道中,最后把駕駛員通道連接到幀緩存中。多通道圖形顯示的程序如下:

      //定義多通道圖形的幀緩存、通道、視點(diǎn)、場(chǎng)景資源

      GV_Fbf fbf;

      GV_Channel driver_chn,rearview_mirror_chn;

      GV_Channel viewfinder_chn;

      GV_Camera driver_cam;

      GV_Scene scene;

      GV_Obi scene_model,skydome;

      GV_Light sunlight;

      GV_Fog fog_model;

      //創(chuàng)建多通道圖形的幀緩存、駕駛員通道、后視鏡和反光鏡通道、//駕駛員視點(diǎn)和場(chǎng)景模型等資源

      GV_fbf_create(&fbf);

      GV_chn_create(&driver_chn);

      GV_chn_create(&rearview_mirror_chn);

      GV_chn_create(&viewfinder_chn);

      GV_cam_create(&driver_cam);

      GV_scn_create(&scene);

      GV_lsr_create(&sunlight);

      GV_fog_create(&fog_model);

      //設(shè)置多通道圖形的視口大小和遠(yuǎn)近裁剪面

      static GV_Viewport driver_vp={-1.0,1.0,-1.0,1.0};

      static GV_Viewport rearview_mirror_vp={-1.0,-0.5,0.5,1.0};

      static GV_Viewport viewfinder_vp={0.5,1.0,0.5,1.0};

      static float far_clip=5000.0;

      static float near_clip=1.0;

      GV_chn_set_viewport(driver_chn&driver_vp);

      GV_chn_set_viewport(rearview_mirror_chn

      &rearview_mirror_vp);

      GV_chn_set_viewport(viewfinder_chn&viewfinder_vp);

      GV_chn_set_clip_near(driver_chn,near_clip);

      GV_chn_set_clip_far(driver_chn,far_clip);

      /

      /把視點(diǎn)和場(chǎng)景放入各個(gè)通道中

      GV_chn_set_camer(driver_chn,driver_cam);

      GV_chn_set_camer(rearview_mirror_chn,rearview_mirror_cam);

      GV_chn_set_camer(viewfinder_chn,viewfinder_cam);

      GV_chn_set_scene(driver_chn,scene);

      GV_chn_set_scene(rearview_mirror_chn,scene);

      GV_chn_set_scene(viewfinder_chn,scene);

      //將后視鏡通道和反光鏡通道與駕駛員通道連接起來(lái)

      GV_chn_add_channel(driver_chn,rearview_mirror_chn);

      GV_chn_add_channel(driver_chn,viewfinder_chn);

      //設(shè)置后視鏡和反光鏡通道的狀態(tài)

      GV_chn_set_mirror_state(rearview_mirror_chn,G_ON);

      GV_chn_set_mirror_state(viewfinder_chn,G_ON);

      //把駕駛員通道放入幀緩存中

      GV_fbf_add_channel(fbf,driver_chn);

      3 結(jié)束語(yǔ)

      現(xiàn)在,隨著計(jì)算機(jī)技術(shù)的發(fā)展,硬件成本大幅下降,為汽車駕駛訓(xùn)練模擬器提供高性能價(jià)格比的硬件平臺(tái)條件逐漸成熟。對(duì)于汽車駕駛訓(xùn)練模擬器而言,當(dāng)前正處于一個(gè)技術(shù)轉(zhuǎn)折點(diǎn)。采用新的技術(shù)途徑,將汽車駕駛訓(xùn)練模擬器的性能提高一個(gè)檔次,并在價(jià)格方面能被用戶接受時(shí),必能促進(jìn)我國(guó)車輛培訓(xùn)水平的提高和交通狀況的改善。

      [1] 白燕斌,史惠康.OpenGL三維圖形庫(kù)編程指南[M].北京:機(jī)械工業(yè)出版社,1998.

      [2] 吳斌,畢麗蘊(yùn).OpenGL編程實(shí)例與技巧[M].北京:人民郵電出版社,1999.

      猜你喜歡
      反光鏡視景單通道
      反光鏡
      基于聯(lián)合聚類分析的單通道腹部心電信號(hào)的胎心率提取
      vega及其在戰(zhàn)場(chǎng)環(huán)境視景仿真系統(tǒng)中的應(yīng)用
      為鏡子站崗的人
      基于擴(kuò)頻碼周期性的單通道直擴(kuò)通信半盲分離抗干擾算法
      Get disconnected with the NoPhone
      全回轉(zhuǎn)拖輪運(yùn)動(dòng)建模與視景仿真
      采用6.25mm×6.25mm×1.8mm LGA封裝的雙通道2.5A、單通道5A超薄微型模塊穩(wěn)壓器
      基于Vortex與Vega Prime的車輛模擬器動(dòng)力學(xué)與視景仿真
      低位單通道MPCNL治療復(fù)雜腎結(jié)石28例
      平利县| 宝应县| 湄潭县| 郑州市| 贵港市| 长丰县| 买车| 沈阳市| 陇川县| 崇左市| 长宁区| 汉源县| 依安县| 康保县| 志丹县| 庆元县| 赞皇县| 鹤峰县| 郁南县| 宝丰县| 宜君县| 泊头市| 乐平市| 澄迈县| 蓝山县| 襄樊市| 大安市| 将乐县| 喀喇沁旗| 金堂县| 砚山县| 皮山县| 东阿县| 大厂| 绵竹市| 西吉县| 许昌县| 英吉沙县| 当阳市| 应用必备| 塘沽区|