资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

Java多边形代码,java绘制多边形

java用什么函数求多边形面积

没有这个函数,只能通过算法实现,一下是代码publicclassTest4{publicstaticvoidmain(Stringargs[]){Pointp1=newPoint(0,0);Pointp2=newPoint(10,0);Pointp3=newPoint(10,10);Pointp4=newPoint(0,10);Listlist=newArrayList();list.add(p1);list.add(p2);list.add(p3);list.add(p4);Test4t=newTest4();doublearea=t.getArea(list);System.out.println(area);}publicdoublegetArea(ListPointlist){//S=0.5*((x0*y1-x1*y0)+(x1*y2-x2*y1)+...+(xn*y0-x0*yn))doublearea=0.00;for(inti=0;ilist.size();i++){if(ilist.size()-1){Pointp1=list.get(i);Pointp2=list.get(i+1);area+=p1.getX()*p2.getY()-p2.getX()*p1.getY();}else{Pointpn=list.get(i);Pointp0=list.get(0);area+=pn.getX()*p0.getY()-p0.getX()*pn.getY();}}area=area/2.00;returnarea;}}

孝昌网站建设公司创新互联公司,孝昌网站设计制作,有大型网站制作公司丰富经验。已为孝昌上千余家提供企业网站建设服务。企业网站搭建\外贸营销网站建设要多少钱,请找那个售后服务好的孝昌做网站的公司定做!

已知正多边形边长及边数求面积java代码

//首先找到正n边行的中心点O,我们把中心O与各个顶点连接起来,

//那么正n边形分成n个全等的等腰三角形,我们只需要算成其中一个面积乘以n就是总面积

//假如这个正n边形有两个相邻的顶点A和B,连接OA,OB。得到等腰三角形OAB,其中OA=OB.

//可以看出来∠AOB=360/n ,AB边的高 h=(a/2)/tan(360/2n)。其中a是正多边形的边长

public double normalPolygonArea(int n,double a){ 

if(n3 || a0)

return 0;

double pi = 3.14159265354; //定义π

double h =(a/2)/Math.tan(pi/n); //计算等腰三角形的高

double triangle =a*h/2; //计算三角形的面积

return triangle*n; //返回正多边形面积

}

java 画多边形。。

自己查api,Graphics类有个花封闭曲线的方法,传进去一组x坐标,一组Y坐标

要么用AlphaComposite做颜色混合,选择src_over

SRC_OVER混合规则把源像素(新的像素)组合到目的像素(原有像素)上面,这样重叠的部分就只显示了源像素的颜色。如果你开始渲染一个蓝色矩形,然后把一个红色矩形和它部分重叠,则重叠的部分会被渲染为红色。换句话说最后被渲染成的颜色将在最上面显示出来。

java画多边形和三角形

我习惯把窗口写成一个单独的类,然后再main方法中创建实例

class mainFrame extends JFrame{

mainFrame(){

JButton sanjiaoxing=new JButton("多边形");

paintListener paintListener=new StartListener();

sanjiaoxing.addActionListener(paintActionListener);

}

class paintListener{

public void actionPerformed(ActionEvent s){

要执行的代码写在这里

}

}

}

具体类,组件,事件名字由你决定


当前题目:Java多边形代码,java绘制多边形
文章链接:http://cdkjz.cn/article/hespjp.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220