首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用java awt.Graphics2D绘制锥度轮廓

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

Stack Overflow用户
提问于 2016-08-13 06:19:14
回答 1查看 205关注 0票数 0

所以我试着画一条曲线,它有一个锥形轮廓,就像这样: y=

因为我使用的是awt.Graphics2D,所以我只能绘制shapes

绘制曲线的一种方法是使用B‘ezier曲线绘制曲线。有什么方法可以转换成我不熟悉的awt技巧吗?

EN

回答 1

Stack Overflow用户

发布于 2016-08-13 15:40:59

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

代码语言:javascript
运行
复制
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);

    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38927197

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档