因为参数是int 但是我要画的有比较高的精度要求 10000m差5m,坐标又是浮点型,如何处理~请教高手。。

解决方案 »

  1.   

    你自己的点数据用浮点,显示的时候才转为整形 (int)P.x
      

  2.   


    恩,如果是1:1的还好,这个是有比例尺缩放的啊~(1:10000或者1:5000)
    根据屏幕分辨率算出来长度。缩放再加计算完就出现误差了 我用的math.round 但是显然也是不行
      

  3.   

    Graphics2D支持float,double类型的,在awt.geom包中,定义了多中shape的子类型,比如说,line2D,Rectangle2D等,实例化一条直线时:Line2D.Double line = new Line2D.Double(0, 0, 1, 1);
    //Double(double x1, double y1, double x2, double y2) 然后,使用g2.draw(line ); //Graphics2D.draw(Shape shape)