繁体   English   中英

如何使用java awt.Graphics2D绘制锥度轮廓

[英]How to draw a taper profile using java awt.Graphics2D

因此,我试图绘制一条曲线,该曲线具有如下锥度轮廓:y =

y-个人资料

由于我使用awt.Graphics2D ,所以我只能绘制形状

绘制曲线的一种方法是使用B´ezier曲线来绘制曲线。 有没有一种方法可以转换这个或我不熟悉的awt技巧?

绘制曲线的一种方法是逐点:

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class Curve extends JPanel {

    @Override
    public void paintComponent(Graphics g) {
        super.paintComponent(g);

        Graphics2D g2d = (Graphics2D) g;

        g2d.setColor(Color.RED);

        for (int x = 1; x <= 100; x++) {

            int y = getY(x);
            //2g does not support drawing a point so you draw a line 
            g2d.drawLine(x, y, x, y);
        }
    }

    /**
     *@param x
     *@return
     */
    private int getY(int x) {
        //change to the function you want 
        return  50+ (100/(1+ (3* x)));
    }

    public static void main(String[] args) {

        Curve points = new Curve();
        JFrame frame = new JFrame("Curve");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.add(points);
        frame.setSize(350, 300);
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);

    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM