1
我想使用IIIF中提供的圖像旋轉將歷史航片照片疊加到地圖上。我面臨的問題是,使用http://jsfiddle.net/jamesinealing/tr7obasm/這樣的代碼,我需要手動計算NW和SE點,這些點會在將圖像放置在地圖上之前根據旋轉進行更改。如何計算IIIF旋轉圖像的高度和寬度
我正在做的是計算新的旋轉圖像(邊界框,如果你喜歡)的像素尺寸,然後使用它們至少得到一些近似的緯度座標,然後我可以調整。該計算
我的測試代碼爲http://jsfiddle.net/jamesinealing/ehp65gy1/(基於https://stackoverflow.com/a/17453766)
var rotation=30;
var angle=rotation;
// var angle=((360-rotation) % 180);
var imgWidth=300;
var imgHeight=224;
w = Math.sin(angle * Math.PI/180) * imgHeight + Math.cos(angle * Math.PI/180) * imgWidth;
h = Math.sin(angle * Math.PI/180) * imgWidth + Math.cos(angle * Math.PI/180) * imgHeight;
的問題是,它只能達到90度角,而IIIF旋轉是任何值0-359。我明白,任何180或更高的值都會得到相同的結果,因此無論如何需要某種模數,但無法讓我的腦袋爲什麼它不能超過90度!
太好了,謝謝你的明確解釋。我敢肯定,有這樣做的閃光方式,但這是我的工作代碼 - http://jsfiddle.net/jamesinealing/ehp65gy1/5/ – jamesinealing
並在實時地圖覆蓋行動 - http://jsfiddle.net/jamesinealing/p0qft0hs – jamesinealing