導航中mapviewer介面的一些概念和實現

2021-06-18 00:45:58 字數 1794 閱讀 3779

導航中mapviewer介面的一些概念和實現

文章**:

mapviewer與在導航引擎中的位置?

mapviewer提供哪些功能?

mapviewer的實現?

mapviewer的特性?難點?

mapviewer與其他引擎介面的關係:

相關要素:當前位置positioning,當前規劃的道路routeguidance(當道路規劃啟用時),地圖資料(map)

功能: 為導航控制層或hmi提供資料,如mapdata,route,position等; 並且提供 互動的介面,如設定比例尺,旋轉,滾動,顯示/隱藏等功能

mapviewer可分為兩部分,一部分是map render,是具體資料的渲染,包括當前位置position,route,map,data;另一部分是map,view關鍵資訊的提取或設定,供render部分使用,可認為是map setting(這個不完全準備)層次。

mapviewer是導航引擎中乙個重要上層介面。這裡的mapviewer是導航引擎中提供給上層地圖控制端map control 和介面hmi的介面。

其功能的靈活性和支援力度基本上決定了使用者的體驗和開發的靈活性。並且,一般的導航引擎的mapviewer 都有3d模式,展示各種地圖資料,而經典的2d模式可以看做是3d一種特例。

這裡先試著分析下view setting一部分。

在map setting層次的介面有:

獲取所有可用的地圖的型別、handle資訊,視窗畫布資訊,獲取所有view的資訊

能開啟、關閉指定的地圖資料庫;

設定本地字符集,單位

transaction的概念,即同步執行多個方法,在乙個transaction中,如果執行成功,則commit,如果部分執行成功,則所有的方法都需要回滾,所有資料恢復到transaction開始之前的狀態。transaction一般都是非阻塞,不可中斷的方式進行。

------

設定**某地理座標的相機位置(圖形學中,顯示圖形的概念)

設定**某物體時的相機位置

scrolling:3d滾動效果,此時,不斷更新相機的位置,與速度(這裡是動畫的速度,不是行駛速度)、方向相關。關閉scrolling,即速度為0即可。

設定尺度:本質上就是設定相機位置到中心的距離。而與動畫的速度相關。

設定顯示風格:如map,hmi,guidance規劃,hud等,及白天、夜間模式。

顯示指定資料庫內的所有物件

隱藏指定資料庫內的所有物件

設定快取cache的大小(這個對效能非常重要)

由以上說明可以看出,導航引擎中的mapviewer的互動介面並不直接提供 地圖資料mapdata,position位置資訊,或道路的詳細資訊,而僅僅是提取地圖資料的一些關鍵資訊,並且能夠進行一些互動設定。

關於view的position,map data, route的具體資訊都由 控制端上層 負責提取,並渲染。

-----------------------

map render涉及到

地圖資料更新

地圖資料的提供是根據nds中tiles的概念,分層,分片進行的。

當前位置更新

規劃道路的實時更新

以及更新這些資料時,當前的輸入設定map setting.

(待續)

------------------------

效能測試:如

滾動:從城市的一邊到另外一邊

縮放:不同的比例尺

跳**到另外乙個城市 旋轉

PostMan介面導航

一 全域性預覽 從整體來說,postman的介面還是比較清爽的,沒有太多累贅的功能。想要將postman玩的很6,就必須知道postman介面上各個控制項的功能。二 側邊欄 側邊欄主要提供了查詢 管理請求和集合的功能。側邊欄有兩個主要的標籤欄 歷史標籤欄 集合標籤欄 你傳送的每乙個請求都會在歷史標籤...

c 中介面的作用

好像看了很多書中都沒有介紹c 介面的作用。經我實踐,好像是有兩方面的作用 1 約束作用,這個這麼理解,凡是繼承了這個介面的類都必需實現這個介面的所有函式,哪怕是空著,那麼,既然都繼承了這個介面,那方就必定有介面的函式,那麼呼叫介面裡的函式就放心大膽,這就是一種約定,必需且有什麼功能。2 統一呼叫,也...

Vue中介面的呼叫

1.main.js中 調介面相當於ajax import axios from axios 匯入axios vue.prototype.axios axios 修改原始資料 2.webpack.config.js檔案中 target中的對應路徑改為自己需要呼叫介面位址,到埠號之前3.login資料夾...