Tag: 2d

将2D数组(String)存储到文件并检索它

我做了一个简单的程序,它有一个存储大量数据的2D String数组。 我搜索了很多地方,了解如何存储和检索2D数组。 我想在程序结束时将数据保存在我的数组中,并在程序启动时检索这些数据。 我试过: ObjectOutputStream toFile = new ObjectOutputStream(new FileWriter(“array.DATA”)); toFile.writeObject(array); ObjectOutputStream toFile = new ObjectOutputStream(new FileWriter(“array.DATA”)); toFile.writeObject(array); 这就产生了错误:不兼容的类型:FileWriter无法转换为OutputStream 我只知道基本的编程,所以试着对我很轻松并解释你所说的一切。 如果我老实说我甚至都不知道’ObjectOutputStream’是什么。 提前谢谢了

Java Swing自定义形状(2D图形)

我需要绘制自定义形状。 现在,当用户点击面板上的几个点时,我使用多边形创建一个形状。 public void mouseClicked(MouseEvent e) { polygon.addPoint(e.getX(), e.getY()); repaint(); } 但我不知道这是否是绘制自定义形状的最佳方式。 应该可以编辑绘制的形状 : 调整 改变它的填充颜色 改变笔画颜色 复制/粘贴它 移动多边形的单个点 … 我见过人们创建一个自己的类来实现Shape类并使用GeneralPath。 但我再也不知道这是不是一个好方法。 现在我可以使用多边形(或使用GeneralPath)创建自己的形状,但我不知道如何将所有编辑function附加到我自己的形状(编辑function,我的意思是从上面resize,移动等) 。 我希望有人可以告诉我一个方法来做到这一点,或者写一些代码来certificate这一点。 提前致谢!!

2D航路点寻路:WP的组合从curLocation到targetLocation

请花点时间了解我的情况。 如果不可理解,请在评论中告诉我。 我有一个Waypoints的ArrayList。 这些航点不是任何顺序。 航点具有以下属性: {int type, float z, float y, float x, float rotation} 这适用于三维世界,但由于我的寻路不应该关心高度(因此将世界视为二维世界),因此忽略y值。 轮换对于这个问题并不重要。 在该二维世界中,x表示x轴,z表示y轴。 如果x增加,则世界中的物体向东移动。 如果x减小,则世界中的物体向西移动。 如果z增加,则世界中的物体向北移动。 如果z减小,则世界中的物体向南移动。 因此,这些“新”航路点可以简化为: waypoint = {float x, float y} 。 现在,这些航点表示物体的X轴(x)和Y轴(z)位置。 此外,还有一个当前位置: curLocation = {float x, float y}和目标位置: tarLocation = {float x, float y} 。 这就是我想要的: 在以下严格条件下从curLocation到tarLocation所有航路点组合(也称为:路径或路径) : 每个航路点之间的距离不得大于(float) maxInbetweenDistance 。 这包括从curLocation到第一个航点的初始距离以及从最后一个航点到tarLocation的距离。 如果不可能有这样的航点组合,则应返回null。 当在距离通往目标航点的航点的maxInbetweenDistance内找到多个航路点时,应选择最近的航点(如果距离稍远一点的替代航路maxInbetweenDistance导致距离maxInbetweenDistance的新航路点也更好回)。 返回航路点组合(路径)的顺序应该是从最短路径(最小距离)到最长路线(最大距离) […]

以编程方式缩小JPEG文件大小

为任何无知道歉,但我以前从未使用Java中的jpeg图像(更不用说任何类型的图像)了。 假设我想从Web服务向客户端发送jpeg图像。 有什么方法可以通过某种方式操纵图像的颜色配置文件来减少jpeg文件的大小? 我已经能够通过使用称为imgscalr BufferedImages的简洁工具来缩小图像大小。 看到这里 。 我还想要一个颜色比高质量jpeg图像少的jpeg。 例如,我希望能够在我的jpeg中使用8位颜色而不是16位颜色。 如果我有来自Java的2D包的BufferedImage,我到底需要改变什么呢?

高效的基于2D瓷砖的照明系统

在Java中为基于磁贴的引擎进行照明的最有效方法是什么? 是否会在瓷砖后面放置黑色背景并更改瓷砖的alpha? 或者把黑色前景改成那个? 还是其他什么? 这是我想要的那种照明的一个例子:

Java基础2d游戏动画口吃

所以,我已经有一段时间在一个2d RPG上工作,我似乎无法解决这个问题。 由于未知原因,图形似乎每隔几秒就会“跳跃”或断断续续。 这变得非常烦人,因为我不知道是什么导致它。 这是我写的一个非常基本的程序,它只有一个红色方块,从屏幕的一侧移动到另一侧。 即使在这个非常基本的程序中,广场仍然会断断每一次更新,我真的无法理解我的生活。 public class Main extends JPanel { int x=0, y=0; public JFrame window = new JFrame(“Window”); public Main(){ window.setSize(1000, 500); window.setVisible(true); window.add(this); } public void paintComponent(Graphics g){ super.paintComponent(g); g.setColor(Color.red); g.fillRect(x, y, 500, 500); x+=3; if(x>900){ x=0; } } public void start(){ while(true){ repaint(); try { Thread.sleep(16); } catch (InterruptedException e) […]

如何创建一个可以存储多个对象的arraylist类?

我是一个自学者。 目前,我正在制作一个GUI项目,我需要一个matrice类型的数据库。 我想学习如何创建一个可以在arraylist中存储多个对象的类。 这是我的示例代码。 请注意,这只是我的尝试。 此代码尚未最终确定,并且无效。 谢谢你的热心帮助。 import java.util.ArrayList; import java.util.List; }}

使用PathIterator返回约束区域的所有线段?

在Java中,如何使用PathIterator迭代约束Area线段? Area仅由线条约束(但曲线支撑不会受到伤害)。 该方法应返回所有线段的集合。

基于图块的游戏的Java 2D游戏引擎

任何人都可以推荐一个好的Java游戏引擎来开发简单的基于平铺的游戏吗? 我正在寻找一种引擎,它允许我使用像Tiled www.mapeditor.org这样的东西来构建地图 光滑正是我正在寻找的,slick.cokeandcode.com但我无法让它在Vista-64上运行。 我能管理的最好的是:无法在AMD 64位平台上加载IA 32位.dll(这是在下载最新的LWJGL版本后)。 任何人都可以建议类似的东西将在64位Vista上运行吗?

LibGDX – 调用TiledMapRenderer.render()时应用程序崩溃

@Override public void render(float delta) { Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); camera.update(); sprite.setProjectionMatrix(camera.combined); mLevel.getTiledMapRenderer().getProjectionMatrix().set(camera.combined); Vector3 tmp = new Vector3(); tmp.set(0, 0, 0); camera.unproject(tmp); mLevel.getTiledMapRenderer().render(tmp.x, tmp.y, camera.viewportWidth, camera.viewportHeight); sprite.begin(); … sprite.end(); } 这是我在启动桌面版时得到的: Exception in thread “LWJGL Application” java.lang.IllegalArgumentException: Number of remaining buffer elements is 0, must be at least 1. Because at most 1 elements can be returned, a […]