有没有办法将2d图形渲染到flash。如果不是直接到Flash,有没有办法将2d图形渲染成Java中的某种视频格式?理想情况下,我不想对swing应用程序进行Action捕捉,我想使用Java库来渲染视频。图形可能包括一些简单的东西,一个在屏幕上移动的彩色矩形。做到这一点的关键技术是什么? 最佳答案 在回答similarearlierquestionXuggler被提到作为从图像序列编码视频的一种方式。我还没有在Java中看到任何东西可以将图形实际捕获为视频流。我刚刚找到了QuickTimeWriterWernerRandelsho
通常,当我创建一个类时,例如Customer,我会给它一些数据字段,即publicintIdNumber;和一些方法,即public字符串getName(){...}。但仅此而已。我无法超越并开始玩弄图形-我只能在类(class)允许的范围内操作和组织数据。我无法理解JFrame内部发生的事情。谁编写了JFrame类,他们是如何编写一个可以使框出现在屏幕上的类的?内部发生了什么导致这种情况发生?有什么办法可以模仿吗?同样的问题适用于所有基于图形的Java类。我真的很想知道它是如何工作的,因为每次我使用其中一个时都会困扰我。 最佳答案
我正在开发一个几何程序,我需要在其中绘制“无限”线。我的类(class)Line有一个方法publicvoiddraw(Graphics2Dg){//...calculatex1,y1,x2,y2here...g.draw(newLine2D.Double(x1,y1,x2,y2));}我的想法是选择足够大的坐标,使它们远离可见表面。但我不知道,这就是我的问题,我怎么知道可见表面角点的坐标?Graphic的方法getClip()听起来不错,但显然它只返回用户之前设置的自定义剪辑。显然,我需要的在文档中称为“设备剪辑”。在您建议使用较大的长度(例如10000)之前,我指的不是像素大小。我
提前感谢您的帮助描述:该程序绘制、显示和保存图像。它的工作原理如下:对象本身扩展了Frame。在构造函数中,该对象创建一个BufferedImage,并调用一个在该图像上绘制的方法。然后,它将图像显示到框架上。最后,它将图像保存到一个文件中(我不关心它使用什么格式)。主程序创建对象,剩下的由它来完成。问题:保存的文件总是有彩色背景!这特别奇怪,因为显示的图像很好。如果我将“jpg”格式与ImageIO.write()一起使用,则背景会偏红。如果我使用“png”格式,则背景为深灰色。我在这上面花了一段时间,但我仍然不知道到底发生了什么!importjava.awt.Frame;impor
我构建了一个Path2D表示由直线组成的未闭合形状:我希望能够检测到何时单击了鼠标并且鼠标指针靠近路径(在几个像素内)。使用contains方法不起作用,因为该算法将未闭合的形状视为隐式闭合(即通过在起点和终点之间画一条直线)。有人知道实现此目的的另一种机制吗? 最佳答案 创建一个BasicStroke(宽度控制您的像素距离公差)不要用它绘制,只使用它的createStrokedShape方法从您的形状创建第二个形状。第二个形状描述了如果您使用BasicStroke绘制第一个形状时将填充的形状的轮廓。使用第二个形状的contains
我写了一个粒子系统小程序;目前我正在创建并分别绘制每个粒子。(这里是代码)BufferedImagebackbuffer;Graphics2Dg2d;publicvoidinit(){backbuffer=newBufferedImage(WIDTH,HEIGHT,BufferedImage.TYPE_INT_RGB);g2d=backbuffer.createGraphics();setSize(WIDTH,HEIGHT);//createstheparticlesfor(inti=0;i它的性能还不错,我可以用20,000个粒子获得大约40FPS(尽管我有一台不错的笔记本电脑)。但
我正在尝试使用以下代码将2Dint数组转换为2DString数组:Arrays.stream(intArray).map(a->Arrays.stream(a).map(i->Integer.toString(i)).toArray()).toArray(String[][]::new);但是我在执行Integer.toString(i)时遇到编译时错误cannotconvertfromStringtoint。我认为这可能是因为我正在收集String数组中的int数组的流式传输结果,但map没有创建新的集合? 最佳答案 Arrays
我需要:1.)移动原点并旋转坐标平面,使x值从新原点向右移动,y值从新原点向上移动(在下面的代码中,它需要位于内部蓝色矩形的左下角)。这将使我能够在下面的代码中绘制x、y坐标对处的点。2.)在数据图的y轴上绘制tic标记的旋转标签。下面的代码设置了这个问题。它有效,除了两个问题:1.)以左上角为原点,y值向下绘制数据点2.)屏幕上没有绘制y轴上标记的标签任何人都可以告诉我如何修复下面的代码,以便它修复这两个问题并执行上面第一段描述的内容吗?代码在下面两个java文件中:数据图形用户界面importjava.awt.*;importjava.util.ArrayList;importja
我想在吃bean人游戏结束后显示GameOver图像。但是我调用了paintGameOverScreen(Graphicsg)然后我需要初始化g。还有其他方法吗?这是我的生活课importjava.awt.Color;importjava.awt.Graphics;importjava.awt.Image;importjava.awt.image.BufferedImage;importjavax.imageio.ImageIO;importjavax.swing.ImageIcon;publicclassLives{privateintlives;publicLives(){live
我在Java中使用Graphics2D来缩放和旋转我绘制的图片。我现在想知道当我点击图片中的某个点时原始坐标是什么。因此,鉴于旋转和缩放的坐标,我想计算原始坐标。有没有简单的方法可以做到这一点? 最佳答案 如果在绘制图像时保留一份AffineTransform的副本,则可以使用AffineTransform.inverseTransform(Point2DptSrc,Point2DptDst)将设备空间坐标转换回用户空间编辑:如果您在绘画时捕获了Graphics2D的当前转换,请注意Graphics2D被多个轻量级子项重复使用同一个