【问题标题】:How to graph a simple curve sketch using g.drawline and a loop?如何使用 g.drawline 和循环绘制简单的曲线草图?
【发布时间】:2013-03-07 16:46:47
【问题描述】:

我想知道如何使用g.drawLine 方法制作一个简单的图表并使用循环来更新坐标,我真的很陌生,不知道我需要做什么或从哪里开始,我确实有这个简单的程序,它使用 * 代替线来创建图形,但我需要做的是将图形从 * 更改为线。任何帮助将不胜感激

这是我所拥有的:

import java.awt.*;

public class program5 {

    public static void main(String[] args) {
        graph1();
    }

    public static void graph1() {
        DrawingPanel panel =new DrawingPanel(300,500);
        Graphics g = panel.getGraphics();

        double  t=10;

        for (int i=1; i<20; i++) {
            t= t*(.8); 
            double z = t * 50;
            int y= -(int)z + 430;
            int x = 10 * i;
            g.drawString("*",x,y);
        }
    }
}

【问题讨论】:

  • 这里有一个很好的答案可以帮助你:stackoverflow.com/questions/5801734/how-to-draw-lines-in-java
  • 到目前为止你尝试了什么?用您已经拥有的坐标以及之前的坐标调用g.drawLine() 怎么样?
  • Graphics g = panel.getGraphics(); 无论你在读什么,让你认为这是个好主意,放弃吧。
  • 我知道我可以通过仅绘制图形点来做到这一点,但我必须使用循环..所以我想知道如何告诉 java 我需要从坐标开始第一个点然后转到第二个点,然后告诉它用第二个点更新第一个点,然后移动到第三个点,等等......直到我到达最后一个
  • 是的,我知道这不是最好的方法,但我正在上课......我的导师真的没有达到标准,但这就是他想要的完成了。

标签: java awt java-2d


【解决方案1】:

为什么不使用 JavaFX 制作图表? Java FX documentation - Line Charts

【讨论】:

  • Java 讲师指导。我知道这是一种可怕的方法,而且我是新手……
  • 从第一个点跳转的原因很可能是因为您没有更新起点。 drawLine(x1, y1, x2, y2) x1,y1 是您的起点,x2 y2 是终点。每次循环时,您应该将 x1, y1 设置为前一个 x2, y2,然后将 x2, y2 设置为新点。(我无法直接评论这个问题,所以在这里添加它,抱歉)。
  • 我在理论上知道它应该如何在理论上完成,但就编写循环并告诉它做这些事情而言,这就是我到目前为止所迷失的地方。
  • 导入 java.awt.*;公共类图 { public static void main(String[] args) { DrawingPanel panel =new DrawingPanel(300,500);图形 g = panel.getGraphics();国际代表计数;整数开始;诠释旧Y;诠释旧X;诠释新X;代表数 = 20;开始Y = 10 * 50; for (int i = 1 ; i
  • oldY = startY * 4/5;旧X = 10 * i;新X = 10 * (i +1); startY = oldY * 4/5; g.drawLine(oldX,oldY,newX,startY); for (int e = 1; e
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-16
  • 2014-02-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多