基於向量檔案渲染思考 mapnik

2021-08-21 14:36:07 字數 938 閱讀 9969

作為一名giser,現處於交通行業(交通行業與gis結合確實是一件很有意思的事情)。最近遇到乙個大資料量下的向量檔案在前台載入渲染直接崩潰問題,處於這個節點上,做了如下思考:

var mapnik = require("mapnik");

var fs = require("fs");

var img = new mapnik.image(2082,1617);

fs.readfile('ptal_gridcoefficient.txt','utf-8',function

(err,data)elseelse

if( tmp[1] >0 && tmp[1]<=2.5 )else

if( tmp[1] >2.5 && tmp[1]<=5 )else

if( tmp[1] >5 && tmp[1]<=10 )else

if( tmp[1] >10 && tmp[1]<=15 )else

if( tmp[1] >15 && tmp[1]<=20 )else

if( tmp[1] >20 && tmp[1]<=25 )else

if( tmp[1] >25 && tmp[1]<=40 )else

if( tmp[1] >40)

var x=parseint(tmp[0].substr(0,6))-115423,

y=1617-(parseint(tmp[0].substr(6,5))-39443);

img.setpixel(x==2082?2081:x,y==1617?1616:y,new mapnik.color(color[0],color[1],color[2],color[3]));

});img.encode('png', function

(err,buffer) );

});}

});

ps:關鍵點如下

基於向量的運動

有三個三角形小車,其中預設行為是紅車追綠車躲藍車,綠車追藍車躲紅車,藍車追紅車躲綠車。在追逐的過程中,如果遇到牆壁就換方向。其中紅車可以受滑鼠的影響,如果滑鼠在畫布中按下,紅車就會無視預設規則,向滑鼠位置移動。這個demo中所有的運動都是基於2d向量的,沒有直接進行x,y,三角函式等運算。另外,追逐...

基於物理的渲染 迪士尼的渲染模型

今天給大家介紹的是一篇關於基於物理渲染 physically based rendering 的技術 該篇 是在2012年siggraph圖形大會上,由迪士尼公司分享的關於pbr技術的報告。pbr是最近遊戲渲染領域中比較高階的渲染管線。相比於傳統基於lambert以及phong模型的渲染管線,pbr...

基於物理的渲染 HDR Tone Mapping

若用l x,y 表示畫素 x,y 的光亮度,則log平均值可表示為 其中,n 表示畫素個數,是乙個用於避免奇異值的常數。縮放後的光亮度 l x,y 可用如下公式表示 其中,是乙個縮放引數,被稱為key value,不同的 值對應了不同的縮放程度,如下圖所示 其中,上排中太陽被樹枝遮擋住,因此不包含高...