posts - 189,comments - 115,trackbacks - 0

          JavaScript實(shí)現(xiàn)的3D球面標(biāo)簽云效果http://topic.csdn.net/u/20101021/10/33959060-2C51-4E15-ABA7-FC770A39E328.html





          效果預(yù)覽點(diǎn)這里:http://www.miaov.com/miaov_demo/3dLable/miaov_demo.html
          下載效果點(diǎn)這里:http://www.miaov.com/miaov_demo/3dLable/3dLable.rar


          使用說(shuō)明:

          一般需要修改的,應(yīng)該是3D球面的大小,也就是半徑,修改了大小,就可以隨意放進(jìn)自己頁(yè)面的任何地方。

          半徑大小修改:

          下載后,打開(kāi) miaov.js 文件,第一行:var radius = 120; 這就是半徑大小值了。

          文字的修改在 miaov_demo.html 文件中,可以任意添加關(guān)鍵詞的個(gè)數(shù);

          如果希望修改文字顏色、鼠標(biāo)經(jīng)過(guò)的樣式,可以打開(kāi) miaov_style.css 文件,修改相關(guān)的樣式即可。

          效果原理:

          制作這個(gè)效果需要重新回顧一下高中的數(shù)學(xué)知識(shí):

          球坐標(biāo)系
          例如:
          r∈[0,+∞),
          φ∈[0, 2π],
          θ∈[0, π] .
          r = 常數(shù),即以原點(diǎn)為心的球面;
          θ= 常數(shù),即以原點(diǎn)為頂點(diǎn)、z軸為軸的圓錐面;
          φ= 常數(shù),即過(guò)z軸的半平面。
          ……
          在這里,我們就不展開(kāi)講了,由數(shù)學(xué)老師來(lái)說(shuō)明更合適些^_^
          有興趣的朋友可以看看百度百科的球坐標(biāo)系原理:http://baike.baidu.com/view/1196991.htm

          關(guān)鍵代碼:
          for( var i=1; i<max+1; i++){
            if( distr )
            {
          phi = Math.acos(-1+(2*i-1)/max);
          theta = Math.sqrt(max*Math.PI)*phi;
            }
            else{
          phi = Math.random()*(Math.PI);
          theta = Math.random()*(2*Math.PI);
            }
            //???任
            mcList[i-1].cx = radius * Math.cos(theta)*Math.sin(phi);
           //這里有點(diǎn)疑問(wèn),mcList[i-1].cx=radius* Math.cos(phi)*Math.sin(theta);   
            mcList[i-1].cy = radius * Math.sin(theta)*Math.sin(phi);
            mcList[i-1].cz = radius * Math.cos(phi);
          //這里有點(diǎn)疑問(wèn),mcList[i-1].cz = radius * Math.cos(theta);

          aA[i-1].style.left=mcList[i-1].cx+oDiv.offsetWidth/2-mcList[i-1].offsetWidth/2+'px';
          aA[i-1].style.top=mcList[i-1].cy+oDiv.offsetHeight/2-mcList[i-1].offsetHeight/2+'px';
          }
          posted on 2010-10-27 09:06 MEYE 閱讀(923) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 苍南县| 苗栗县| 托里县| 新和县| 迁安市| 天津市| 天峻县| 安仁县| 山西省| 渝北区| 衡水市| 凤翔县| 晋城| 故城县| 宁海县| 利辛县| 邹平县| 赤峰市| 涿鹿县| 汉阴县| 阿克苏市| 子长县| 淳化县| 郯城县| 兰溪市| 宁安市| 河北省| 万山特区| 乌苏市| 宜良县| 湖州市| 商洛市| 东乌珠穆沁旗| 莒南县| 河西区| 静乐县| 舟山市| 桂平市| 门源| 绥中县| 庆元县|