2 回答

TA貢獻1條經(jīng)驗 獲得超3個贊
首先lines-bus.json是一個二維數(shù)組,里面每一個一維數(shù)組存儲一輛公交車的軌跡,其中第一個和第二個元素為初始坐標(biāo)(經(jīng)緯度*10000),往后每兩個元素為一組表示經(jīng)緯度的偏移量(*10000)。
var?busLines?=?[].concat.apply([],?data.map(function?(busLine,?idx)?{}))是將data數(shù)組映射到一個新的數(shù)組里,即將lines-bus.json轉(zhuǎn)換為真實的經(jīng)緯度坐標(biāo)。
var?pt?=?[busLine[i],?busLine[i?+?1]];為起始點坐標(biāo)。
if?(i?>?0)?{
? ? ? ? ? ? ? ?pt?=?[prevPt[0]?+?pt[0], prevPt[1]?+?pt[1] ];
????????????}計算加上偏移量后的經(jīng)緯度*10000
prevPt?=?pt;將當(dāng)前坐標(biāo)賦值給上一個點坐標(biāo),繼續(xù)循環(huán);
points.push([pt[0]?/?1e4,?pt[1]?/?1e4]);坐標(biāo)小數(shù)點前移四位得到真實的經(jīng)緯度值,存儲到points數(shù)組里。
?return?{
????????????coords:?points,
????????????lineStyle:?{
????????????????normal:?{
????????????????????color:?echarts.color.modifyHSL('#5A94DF',?Math.round(hStep?*?idx))
????????????????}
????????????}
????????};為新數(shù)組的存儲格式,新的數(shù)組每一個元素是一個對象。
添加回答
舉報