当前位置:  技术问答>java相关

用java.awt.Graphics画线,能否设定线的宽幅?

    来源: 互联网  发布时间:2014-12-23

    本文导语:  用java.awt.Graphics画线,能否设定线的宽幅 | 是这样吗! public void drawThickLine(   Graphics g, int x1, int y1, int x2, int y2, int thickness, Color c) {   // The thick line is in fact a filled polygon   g....

用java.awt.Graphics画线,能否设定线的宽幅

|
是这样吗!
public void drawThickLine(
  Graphics g, int x1, int y1, int x2, int y2, int thickness, Color c) {
  // The thick line is in fact a filled polygon
  g.setColor(c);
  int dX = x2 - x1;
  int dY = y2 - y1;
  // line length
  double lineLength = Math.sqrt(dX * dX + dY * dY);

  double scale = (double)(thickness) / (2 * lineLength);

  // The x and y increments from an endpoint needed to create a rectangle...
  double ddx = -scale * (double)dY;
  double ddy = scale * (double)dX;
  ddx += (ddx > 0) ? 0.5 : -0.5; 
  ddy += (ddy > 0) ? 0.5 : -0.5;   
  int dx = (int)ddx;
  int dy = (int)ddy;

  // Now we can compute the corner points...
  int xPoints[] = new int[4];
  int yPoints[] = new int[4];

  xPoints[0] = x1 + dx; yPoints[0] = y1 + dy;
  xPoints[1] = x1 - dx; yPoints[1] = y1 - dy;
  xPoints[2] = x2 - dx; yPoints[2] = y2 - dy;
  xPoints[3] = x2 + dx; yPoints[3] = y2 + dy;

  g.fillPolygon(xPoints, yPoints, 4);
  }

|
在你的画线程序中加
paint(Graphics g)
{
   Graphics2D g2D = (Graphics2D) g;
   g2D.setStroke(new BasicStroke(width));//width 是你要的线的宽度。
}

|
还有,你的jdk是什么版本的?

|
没有办法,需要使用jdk2的java.awt.Graphcs2d

    
 
 

您可能感兴趣的文章:

  • java命名空间java.awt类graphics的类成员方法: graphics定义及介绍
  • 哪里有Java 2D Graphics方面的介绍?
  • java命名空间java.awt类graphics2d的类成员方法: graphics2d定义及介绍
  • Java能够设置Graphics2D的DrawString的字体的粗细吗?不是指字体大小!
  • java命名空间java.awt类graphics的类成员方法: dispose定义及介绍
  • 如何在java应用程序下使用绘图类(Graphics)以及图形类(Image)?
  • java命名空间java.awt类graphics2d的类成员方法: getdeviceconfiguration定义及介绍
  • 请教高手:我编的Applet插件只显示一个灰影,在JAVA控制台显示:awt.graphics2d.class没找到 请问应如何解决??
  • java命名空间java.awt类graphics2d的类成员方法: getpaint定义及介绍
  • java命名空间java.awt类graphics的类成员方法: tostring定义及介绍
  • java命名空间java.awt类graphics2d的类成员方法: getstroke定义及介绍
  • java命名空间java.awt类graphics2d的类成员方法: getcomposite定义及介绍
  • java命名空间java.awt类graphics2d的类成员方法: gettransform定义及介绍
  • java命名空间java.awt类graphics2d的类成员方法: setbackground定义及介绍
  • java命名空间java.awt类graphics2d的类成员方法: setpaint定义及介绍
  • java命名空间java.awt类graphics的类成员方法: setpaintmode定义及介绍
  • java命名空间java.awt类graphics的类成员方法: getfont定义及介绍
  • java命名空间java.awt类graphics2d的类成员方法: getbackground定义及介绍
  • java命名空间java.awt类graphics的类成员方法: getcolor定义及介绍
  • java命名空间java.awt类graphics的类成员方法: finalize定义及介绍
  • java命名空间java.awt类graphics2d的类成员方法: setstroke定义及介绍
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • RedHat as 3 安装 Java 1.5 时, 设定环境后可以不重启机器吗?
  • JAVA 画线时如何设定线的种类?
  • 下载了个Tomcat 5.0.27,solaris 9系统,但是环境Java_home的环境变量不知道怎么设定
  • 很弱智的问题:配置中,tomcat种怎么设定java会调用到那些类?
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 谁有电子版的《Java编程思想第二版(Thinking in java second)》和《Java2编程详解(special edition java2)》?得到给分
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 本人想学java,请问java程序员的待遇如何,和java主要有几个比较强的方向
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: stringflavor定义及介绍
  • 我对JAVA一窍不通,可惜别人却给我一个Java的project,要我做一个安装程序,请问哪里有JAVA INSTALLER下载,而且我要不要安装java的sdk才能完成此项任务?
  • java命名空间java.security类keystore的类成员方法: getdefaulttype定义及介绍
  • 新年第一天,让我们讨论一下未来一年JAVA的发展趋势! 个人认为,JAVA将主要朝ERP和JAVA手机方面发展!
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getclasspath定义及介绍
  • 我想学Java,但不知道Java的实用的开发工具有那些,Java主要用在哪些方面,EJB到底是什么东西??
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: javaserializedobjectmimetype定义及介绍
  • redhat7.3下,java程序打印中文直接用java命令执行正常,用crontab执行java命令为乱码
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: javafilelistflavor定义及介绍
  • 各位学java的朋友,学java的未来是什么,你们学java都用来开发什么项目啊!来者给分!!
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getvmname定义及介绍
  • 请问java程序中的import为什么有的用java.….*,而有的又用java.….…,有什么区别吗?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3