- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Java 新手,我只是想得到一些简单的东西,可能类似于 Zelle's graphics对于Python。
最佳答案
Java 类 Graphics和 Graphics2D应该包含 Zelle 图形所包含的大部分内容。
这里有一些 Java Swing 代码可以帮助您入门。只要按住鼠标左键,这个 Java 应用程序就会用鼠标进行绘制。当您释放鼠标左键时,屏幕会消失,您可以绘制其他内容。
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Point;
import java.awt.event.MouseEvent;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import javax.swing.event.MouseInputAdapter;
public class DrawingTest implements Runnable {
private JFrame frame;
private MyDrawPanel drawPanel;
private List<Point> points;
public DrawingTest() {
points = new ArrayList<Point>();
}
@Override
public void run() {
frame = new JFrame("Bouncing Vertices");
drawPanel = new MyDrawPanel(this);
MyListener alpha = new MyListener(this);
drawPanel.addMouseMotionListener(alpha);
drawPanel.addMouseListener(alpha);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(drawPanel);
frame.setSize(800, 600);
frame.setVisible(true);
}
public JPanel getDrawingPanel() {
return drawPanel;
}
public List<Point> getPoints() {
return points;
}
public void setPoint(int x, int y) {
points.add(new Point(x, y));
}
public void resetPoints() {
points.clear();
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new DrawingTest());
}
private class MyListener extends MouseInputAdapter {
private DrawingTest drawingTest;
public MyListener(DrawingTest drawingTest) {
this.drawingTest = drawingTest;
}
@Override
public void mouseDragged(MouseEvent event) {
drawingTest.setPoint(event.getX(), event.getY());
drawingTest.getDrawingPanel().repaint();
}
@Override
public void mouseReleased(MouseEvent event) {
drawingTest.resetPoints();
}
}
private class MyDrawPanel extends JPanel {
private static final long serialVersionUID = 1L;
private DrawingTest drawingTest;
public MyDrawPanel(DrawingTest drawingTest) {
this.drawingTest = drawingTest;
}
@Override
public void paintComponent(Graphics g) {
g.setColor(Color.WHITE);
g.fillRect(0, 0, this.getWidth(), this.getHeight());
g.setColor(Color.BLUE);
for (int i = 1; i < drawingTest.getPoints().size(); i++) {
Point p1 = drawingTest.getPoints().get(i - 1);
Point p2 = drawingTest.getPoints().get(i);
g.drawLine(p1.x, p1.y, p2.x, p2.y);
}
}
}
}
代码中的最后一个方法,paintComponent 方法,是您使用 Graphics 方法的地方。
关于Java Graphics - 像 Zelle 的 Python Graphics 一样简单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20183666/
渲染此 mandelbrot 集仅需 100 次迭代就需要一个多小时,而渲染 10,000 次迭代则需要 10 个小时。有没有办法让它更快: from graphics import * width
我正在模拟交通灯和汽车。当灯变绿时,汽车应该移动。 (我知道实际的红绿灯不会从绿色跳到红色,或从红色跳到黄色,但是......就这样吧)。该程序接受用户的输入,确定红绿灯应该循环多长时间;它首先保持红
我试图找出为什么我的一个函数中的 while 循环仍在运行,即使在我的图形中的点相等之后,也就是我将其设置为停止时。我做错了什么吗?我试图改变其他事情来让它工作但没有运气。这是一个游戏——当角色到达终
请注意:这与 eval() 的使用无关,它与使用和教授它的书籍的潜在质量(或缺乏质量)有关。所以在 Python 中已经有无数关于 eval() 的线程。 冒着招致 SO 愤怒和反对票的风险,我还是决
我想制作一个简单的程序来提高我对此类编程的了解。我发现了一个非常有用的库 pyeasyGA,并通过它我尝试使用graphics.py 制作一个简单的程序,该程序从随机生成的“pass”序列中创建一个收
我是 Java 新手,我只是想得到一些简单的东西,可能类似于 Zelle's graphics对于Python。 最佳答案 Java 类 Graphics和 Graphics2D应该包含 Zelle
该程序似乎有效,但是创建的线性回归线似乎并不是真正的最佳拟合线。 我认为问题在于方程的实现。我不确定我的解释是否正确,我也不确定我是否在做练习最后一段应该做的事情。 这是图形库:http://mcsp
由于我在尝试使用 J Zelle 教授的graphics.py 通过屏幕窗口输入信息时遇到一些问题,我正在阅读一些关于“http://anh.cs.luc.edu/python/hands-on/3.
我是一名优秀的程序员,十分优秀!