JavaScript实现的3D球面标签云效果一般需要修改的,应该是3D球面的大小,也就是半径,修改了大小,就可以随意放进自己页面的任何地方。半径大小修改:下载后,,第一行:varradius=120;这就是半径大小值了。,可以任意添加关键词的个数;如果希望修改文字颜色、鼠标经过的样式,,修改相关的样式即可。效果原理:制作这个效果需要重新回顾一下高中的数学知识:球坐标系例如:r?[0,+?),φ?[0,2π],θ?[0,π].r=常数,即以原点为心的球面;θ=常数,即以原点为顶点、z轴为轴的圆锥面;φ=常数,即过z轴的半平面。……球坐标系球坐标是一种三维坐标。分别有原点、方位角、仰角、距离构成。设P(x,y,z)为空间内一点,则点P也可用这样三个有次序的数r,φ,θ来确定,其中r为原点O与点P间的距离,θ为有向线段与z轴正向所夹的角,φ为从正z轴来看自x轴按逆时针方向转到有向线段的角,这里M为点P在xOy面上的投影。这样的三个数r,φ,θ叫做点P的球面坐标,这里r,φ,θ的变化范围为r?[0,+?),φ?[0,2π],θ?[0,π].r=常数,即以原点为心的球面;θ=常数,即以原点为顶点、z轴为轴的圆锥面;φ=常数,即过z轴的半平面。其中x=rsinθcosφy=rsinθsinφz=rcosθ在球坐标系中,沿基矢方向的三个线段元为:dl(r)=dr,dl(θ)=rdθ,dl(φ)=rsinθdφ球坐标的面元面积是:dS=dl(θ)*dl(φ)=r^2*sinθdθdφ体积元的体积为:dV=dl(r)*dl(θ)*dl(φ)=r^2*sinθdrdθdφ球坐标系在地理学、,球坐标中的θ角称为被测点P(r,θ,φ)的方位角,90?,θ成为高低角源码:varradius=120;vardtr=;vard=300;varmcList=[];varactive=false;varlasta=1;varlastb=1;vardistr=true;vartspeed=10;varsize=250;varmouseX=0;varmouseY=0;varhowElliptical=1;varaA=null;varoDiv=null;=function(){vari=0;varoTag=null;oDiv=('div1');aA=('a');for(i=0;i<;i++){oTag={};=aA[i].offsetWidth;=aA[i].offsetHeight;(oTag);}sineCosine(0,0,0);positionAll();=function(){active=true;};=function(){active=false;};=function(ev){varoEvent=||ev;mouseX=-(+);mouseY=-(+);mouseX/=5;mouseY/=5;};setInterval(update,30);};functionupdate(){vara;varb;if(active){a=(-((-mouseY,-size),size)/radius)*tspeed;b=(((-mouseX,-size),size)/radius)*tspeed;}else{a=lasta*;b=lastb*;}lasta=a;lastb=b;if((a)<=&&(b)<=){return;}varc=0;sineCosine(a,b,c);for(varj=0;j<;j++){varrx1=mcList[j].cx;varry1=mcList[j].cy*ca+mcList[j].cz*(-sa);varrz1=mcList[j].cy*sa+mcList[j].cz*ca;varrx
JavaScript实现的3D球面标签云效果 来自淘豆网m.daumloan.com转载请标明出处.