TA的每日心情 | 开心 2021-3-12 23:18 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
----index.jsp
<%@ page contentType="text/HTML; charset=gb2312" language="java" import="xj.hwl.mycos" errorPage="" %>
<HTML xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office">
<HEAD>
<META http-equiv="Content-Type" content="text/html;charset=gb2312">
<TITLE>吾之画</TITLE>
<STYLE>
v:*{behavior:url(#default#VML);}
o:*{behavior:url(#default#VML);}
</STYLE> </HEAD>
<BODY bgcolor="#EEEEEE" style="scrollbar-base-color:purple;scrollbar-shadow-color:white;
scrollbar-highlight-color:white;scrollbar-arrow-color:white;">
<%
System.out.println("----------");
mycos mc=new mycos();
String pains=mc.pain(100,300,150,mc.myangdegs,mc.values,mc.myangdegs_name);
out.println(pains);
%>
</BODY>
</HTML>
------java package xj.hwl;
import java.lang.Math; public class mycos { /**
* @param args
*/
public static final String OVAL_FILLCOLOR = "#EEAAAA";
public static final String OVAL_FILLCOLOR_0_90 = "#FF0000";
public static final String OVAL_FILLCOLOR_90_180 = "#00FF00";
public static final String OVAL_FILLCOLOR_180_270 = "#0000FF";
public static final String OVAL_FILLCOLOR_270_360 = "#00FFFF";
public static final double[] myangdegs = { 0, 30, 60, 90, 105, 120, 135,
150, 165, 180, 198, 216, 234, 252, 270, 292.5, 315, 337.5, 360 };
public static final String[] myangdegs_name = { "正", "右", "右右", "右右右", "右右右", "右右右", "右右右右右",
"右右右右", "右右右", "正", "左左左左", "左左左左左左", "左左左左左", "左左左", "左左左", "左左左左左左左", "左左左左左左左", "左左", "左左" }; public static final int[] values = { 10, 5, 3, 10, 2, 4, 2, 2, 3,10, 1, 5, 3,
4, 10, 8, 10, 10, 10}; public static void main(String[] args) {
// TODO Auto-generated method stub
double angdeg = 240, r = 100, x, y, angrad = Math.toRadians(angdeg);
System.out.println(Math.sin(angrad));
x = Math.sin(angrad) * r;
y = Math.cos(Math.PI - angrad) * r;
System.out.println("(" + x + "," + y + ")");
} public String pain(int top,int left,int r,double[] angdegs,int[] value,String[] myangdeg_names){
String pains="";
int width=2*r,height=2*r,rxleft=left+r,rytop=top+r;
double x,y,angrad,zx,zy,vx,vy;
String xs,ys,polylines="";
pains="<?xml:namespace prefix=v />";
// 先画圆
pains=pains+"<v:oval style="z-index:1;left:"+left+"px;width:"+width+"px;position:absolute;top:"+top+"px;height:"
+height+"px" coordsize="21600,21600" fillcolor=""+OVAL_FILLCOLOR+""></v:oval>";
pains=pains+"
";
for(int i=0;i<angdegs.length;i++){
angrad=Math.toRadians(angdegs);
x=Math.sin(angrad)*r;
y=Math.cos(Math.PI-angrad)*r;
// 画线
xs=String.valueOf(x);
ys=String.valueOf(y);
pains=pains+"<v:line style="z-index:1003;left:"+rxleft+"px;position:absolute;top:"+rytop+"px" from="0,0" to=""+xs+","+ys+"" strokecolor="black" strokeweight="1pt"></v:line>";
pains=pains+"
"; //写字
zx=x+rxleft;
zy=y+rytop;
if (angdegs==0){
pains=pains+"<SPAN style="FONT-SIZE:12px;Z-INDEX:1002;LEFT:"+zx+"px;COLOR:#000000;FONT-FAMILY:宋体;POSITION:absolute;TOP:"+(zy-10)+"px">"+myangdeg_names+"</SPAN>";
}else if(angdegs>0&&angdegs<180){
pains=pains+"<SPAN style="FONT-SIZE:12px;Z-INDEX:1002;LEFT:"+zx+"px;COLOR:#000000;FONT-FAMILY:宋体;POSITION:absolute;TOP:"+zy+"px">"+myangdeg_names+"</SPAN>";
}else if (angdegs==180){
pains=pains+"<SPAN style="FONT-SIZE:12px;Z-INDEX:1002;LEFT:"+zx+"px;COLOR:#000000;FONT-FAMILY:宋体;POSITION:absolute;TOP:"+zy+"px">"+myangdeg_names+"</SPAN>";
}else if(angdegs>180&&angdegs<360){
pains=pains+"<SPAN style="FONT-SIZE:12px;Z-INDEX:1002;LEFT:"+(zx-myangdeg_names.length()*12)+"px;COLOR:#000000;FONT-FAMILY:宋体;POSITION:absolute;TOP:"+zy+"px">"+myangdeg_names+"</SPAN>";
}
pains=pains+"
";
// 画里面图形
vx=Math.sin(angrad)*value*r/10;
vy=Math.cos(Math.PI-angrad)*value*r/10;
if(angdegs==0){
polylines="<v:Polyline style="Z-INDEX:1001;LEFT:"+rxleft+"px;POSITION:absolute;TOP:"+rytop+"px" points="0,0,"+vx+","+vy;
}else if(angdegs==90){
polylines=polylines+","+vx+","+vy+",0,0" fillcolor=""+OVAL_FILLCOLOR_0_90+"" strokeweight="1pt"></v:Polyline>";
// System.out.println(polylines);
// 画一个先
pains=pains+polylines;
pains=pains+"
";
// 开始下一个
polylines="<v:Polyline style="Z-INDEX:1001;LEFT:"+rxleft+"px;POSITION:absolute;TOP:"+rytop+"px" points="0,0,"+vx+","+vy;
}else if(angdegs==180){
polylines=polylines+","+vx+","+vy+",0,0" fillcolor=""+OVAL_FILLCOLOR_90_180+"" strokeweight="1pt"></v:Polyline>";
// System.out.println(polylines);
// 画一个先
pains=pains+polylines;
pains=pains+"
";
// 开始下一个
polylines="<v:Polyline style="Z-INDEX:1001;LEFT:"+rxleft+"px;POSITION:absolute;TOP:"+rytop+"px" points="0,0,"+vx+","+vy;
}else if(angdegs==270){
polylines=polylines+","+vx+","+vy+",0,0" fillcolor=""+OVAL_FILLCOLOR_180_270+"" strokeweight="1pt"></v:Polyline>";
// System.out.println(polylines);
// 画一个先
pains=pains+polylines;
pains=pains+"
";
// 开始下一个
polylines="<v:Polyline style="Z-INDEX:1001;LEFT:"+rxleft+"px;POSITION:absolute;TOP:"+rytop+"px" points="0,0,"+vx+","+vy;
}else if(angdegs==360){
polylines=polylines+","+vx+","+vy+",0,0" fillcolor=""+OVAL_FILLCOLOR_270_360+"" strokeweight="1pt"></v:Polyline>";
// System.out.println(polylines);
// 画一个先
pains=pains+polylines;
}else{
polylines=polylines+","+vx+","+vy;
} } return pains;
} }
源码下载:http://file.javaxxz.com/2014/10/1/192520906.zip |
|