2012-06-06 51 views
0

這裏是破敗的...我有一個圓圈,我有一些div想要在它周圍「彎曲」。就像一張圓桌,周圍有各種數量的椅子。PHP - 在圓的圓周上設置div點

我已經跑了一些東西,我的大腦在這個小時沒有打,真的很喜歡把它敲出來,所以我可以睡覺。任何人?

   <? 
        $r=45; //px  
        for($x=0; $x<$gu; $x++){ 
         $deg = 360/$gu*$x; 
         $rad = deg2rad($deg); 
         $xx = (cos($rad) * $r); 
         $yy = (sin($rad) * $r); 
         ?> 
          <b style="left:<?=round($r+$xx)?>px; top:<?=round($r+$yy)?>px"></b> 
         <? 
        } 
       ?> 
+0

你需要設置類似360/n的東西,並根據計算放置它。 – swapnesh

+0

你可以分享你的代碼到目前爲止? – Ben

+0

很想分享代碼,但我已經改變了很多次,以至於沒有用lol –

回答

3
  • 罪(角)×半徑將獲得該項目的,你Y座標,和cos(角度)×半徑將讓你既相對於中心的X座標的項目,的圈子。

  • 您可以通過將360 °除以<div> s得到角度。

  • 您可以將度數轉換爲弧度乘以π/180。

+0

我明白了,但現在每個div的部分如何。 x1 = cos($ deg)* $ rad; x2 = cos($ deg)* $ rad? =我會在哪裏輸入div#2,div#3?我可能錯過了一些非常愚蠢的事情,只是沒有點擊而已。 –

+0

@MichaelMikhjian:你會想要一個循環。有一個爲每一個... – Ryan

+0

對於單獨的一組座標($ X = 0; $ X <$合谷; $ X ++){ \t \t \t \t \t \t \t $度=(360/$ GU); \t \t \t \t \t \t \t $ xx = cos($ deg)* $ rad; \t \t \t \t \t \t \t $ yy = sin($ deg)* $ rad; } // gu =表示總divs,但是vars不是基於$ x的變量,我缺少那部分 –