Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 292|回复: 0

[jsp学习]VML+JSP一例

[复制链接]
  • TA的每日心情
    开心
    2021-3-12 23:18
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2014-10-1 19:25:21 | 显示全部楼层 |阅读模式
    ----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
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-5-23 02:00 , Processed in 0.384807 second(s), 48 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表