2012-03-09 130 views
0

我想知道如果任何人知道一個JavaScript公式,其計算將在基於其屏幕尺寸任意給定時間出現在用戶屏幕上的瓷磚的最大數量...屏幕尺寸的最大等距磚?

例如: 如果說屏幕尺寸爲1200像素×600像素,拼貼爲64像素×32像素。

在鳥瞰這很容易計算,但等距還挺使它更加混亂都有點讓我明白如何實現我的代碼這樣的計算。

沒有任何一個有任何見解如何計算呢?

+0

什麼是平面的細節?例如。距屏幕的距離和角度? – 2012-04-05 14:09:09

回答

0

假設你指望只適合完全(沒有得到切斷)瓷磚:

var verticalCount = Math.floor(windowHeight/tileHeight); 
    var horizontalCount = Math.floor(windowWidth/tileWidth); 
    var totalCount = verticalCount * horizontalCount; 

如果你想也算適合部分瓷磚(獲得通過窗口切斷),只是改變Math.floor兩個實例上面Math.ceil

+0

這隻適用於鳥瞰視圖,在等軸測圖中,最終會在所有4個角落留出空白空間。數學是不同的,因爲瓷磚基本上是在一個角度。我已經嘗試過你的方法:P – Sir 2012-03-09 01:26:38

+0

如果這個答案還不夠,我建議你不要接受它。 – 2012-04-05 14:08:17

0

如果你想以填補等距地磚,而不是一個板,並且不計算半瓦,可以被顯示在屏幕上,則公式將

var cols = Math.floor(windowWidth/tileWidth) 
var rows = Math.floor(windowHeight/tileHeight) 
var totalCount = (rows * cols) + ((rows-1)*cols) 

這會給你的數量完整的等距瓷磚,可以適應該空間。