|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果你学习的是市场营销,是销售,也许参加大课堂的学习会更合适,因为你的工作能力中有个基础就是搭建自己的人脉,
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
/**
*<p>Title:正方体框图</p>
*<p>Description:绘制一个边框的正方体,猎取鼠标事务依据鼠标的地位扭转方体。</p>
*<p>Copyright:Copyright(c)2003</p>
*<p>Filename:Gr3d1m.java</p>
*@version1.0
*/
publicclassGr3d1mextendsJFrame
implementsMouseListener,MouseMotionListener{
intdoX,doY;
intangX=30,angY=30;
Cubedata=newCube();
Color[]Col={Color.gray,Color.cyan,Color.green,
Color.red,Color.white,Color.orange,
Color.magenta,Color.pink};
/**
*<br>办法申明:主办法
*<br>输出参数:
*<br>前往范例:
*/
publicstaticvoidmain(String[]args){
Gr3d1mG3=newGr3d1m();
}
/**
*<br>办法申明:机关器
*<br>输出参数:
*<br>前往范例:
*/
public Gr3d1m(){
setTitle("3DcubeFrame");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
addMouseListener(this);
addMouseMotionListener(this);
setBackground(newColor(128,128,255));
setSize(350,350);
show();
}
/**
*<br>办法申明:鼠标按下事务,猎取鼠标地位
*<br>输出参数:
*<br>前往范例:
*/
publicvoidmousePressed(MouseEvente){
doX=e.getX();
doY=e.getY();
}
/**
*<br>办法申明:鼠标托拽事务,改动鼠标地位,重画屏幕
*<br>输出参数:
*<br>前往范例:
*/
publicvoidmouseDragged(MouseEvente) {
angX=angX+e.getY()-doY;
angY=angY+e.getX()-doX;
doX=e.getX();doY=e.getY();
repaint();
}
/*以下是完成MouseListener和MouseMotionListener必需重载的办法*/
publicvoidmouseReleased(MouseEvente){}
publicvoidmouseClicked(MouseEvente) {}
publicvoidmouseEntered(MouseEvente) {}
publicvoidmouseExited(MouseEvente) {}
publicvoidmouseMoved(MouseEvente) {}
/**
*<br>办法申明:绘制图形
*<br>输出参数:
*<br>前往范例:
*/
publicvoidpaint(Graphicsg){
delDeaw(g);
for(inti=0;i<data.x.length;i++){
drawPG(g,data.x[i],data.y[i],data.z[i],
150,150,Col[i]);
}
g.setColor(Color.yellow);
g.drawString("X="+angX%360+"Y="+angY%360,
10,getSize().height-30);
}
/**
*<br>办法申明:擦拭屏幕,利用背景致掩盖本来的图形
*<br>输出参数:
*<br>前往范例:
*/
publicvoiddelDeaw(Graphicsg){
Insetsinsets=getInsets();
intL0=insets.left,T0=insets.top;
g.setColor(newColor(128,128,255));
g.fillRect(L0,T0,L0+350,T0+350);
}
/**
*<br>办法申明:绘制方体
*<br>输出参数:
*<br>前往范例:
*/
publicvoiddrawPG(Graphicsg,double[]x,double[]y,
double[]z,intxp,intyp,Colorco){
doublex1,y1,z0;
intlen=x.length;
int[]xx=newint[len];
int[]yy=newint[len];
finaldoubleRAD=Math.PI/180.0;
doublea=angX*RAD;
doubleb=angY*RAD;
doublesinA=Math.sin(a),sinB=Math.sin(b);
doublecosA=Math.cos(a),cosB=Math.cos(b);
for(inti=0;i<len;i++){
x1=x[i]*cosB+z[i]*sinB;
z0=-x[i]*sinB+z[i]*cosB;
y1=y[i]*cosA- z0*sinA;
xx[i]=xp+(int)Math.rint(x1);
yy[i]=yp-(int)Math.rint(y1);
}
g.setColor(co);
g.drawPolygon(xx,yy,len);//绘制多边形
}
}
前些天,在CSDN上看到了一个消息,说是net网页编程网页编程AJAX成功在Linux上运行,这一点对我触动很大,而且引发了我许多感叹,所以想写出来分享一下。 |
|