草庐IT

绘制图形

全部标签

java - JComponent 不绘制到 JPanel

我有一个扩展JComponent的自定义组件,它覆盖了paintComponent(Graphicsg)方法,但是当我尝试将它添加到我的JPanel时,它不起作用,没有绘制任何东西。这是我的代码:publicclassSimpleComponentextendsJComponent{intx,y,width,height;publicSimpleComponent(intx,inty,intwidth,intheight){this.x=x;this.y=y;}@OverridepublicvoidpaintComponent(Graphicsg){Graphics2Dg2=(Grap

java - 更新图形

我投降。现在尝试了几个星期以找出收到的阻塞串行数据被我的代码的图形部分更新。第一次用Java编程。拥有大约15年的编程经验micros,我习惯于解决自己的问题,但这超出了这种策略是有成效的。我的应用程序包含两个文件。一个文件源于RXTX项目并捕获以多个数据包发送的串行数据每秒两次。这就像一个魅力(花了一些时间),我可以看到捕获的数据是正确的稳定。另一个文件是图形文件,由大约80个菜单组成,最终用户可以在其中读,有时写值。导航是通过鼠标事件完成的到目前为止的按钮和滚动条。这部分也可以正常工作。可以读取、更改和保存值等。我卡住的部分是串行文件的更新值永远不会更新图形屏幕。已尝试遵循数百个示

java - 对 3D 图形渲染库的建议?

关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。关闭5年前。Improvethisquestion所以我不确定这个问题对stackoverflow有多友好,因为它没有快速明确的答案,但我们开始吧......我有一个为有向图生成数据的Java程序。现在我需要渲染这张图。数据需要以3D方式布局,我希望能够定义一条边位于哪个平面。(每条边只需要占据3D空间的1个平面)。我还需要能够在图表中导航。因为我知道这种东西很难,所以我要去购物。到目前为止,我已经调查过(排名不分先

java - 绘图/绘制 Wav 文件 java

我是java的新手...我想从wav文件中绘制频率/时间图或样本图像。开始我正在努力使用AudioInputStream从Wav文件中获取原始数据数组也引用自ReadingwavfileinJava.我还尝试了引用http://www.labbookpages.co.uk/audio/javaWavFiles.html的WavFile类但是在测试时,我无法找到正确的包来满足“WavFile”-“找不到符号”错误。提供的importjava.io.*;因为那个样本不满足这个...重申一下,我希望获得Wav文件的数组格式的原始数据。我会喜欢任何这样的小例子,因为我从例子中学习更容易!谢谢你

java - Libgdx SpriteBatch 是否绘制到 StencilBuffer?

我在OpenGLES1.0中使用libgdx,我想知道SpriteBatch是否可以写入/绘制到模板缓冲区。我一直在尝试写入它,但我根本没有得到任何结果,我没有使用模板缓冲区的经验,但我已经阅读了很多,所以如果我在接下来的任何事情中有错,请纠正我。基本上我想做的是用SpriteBatch将纹理绘制到模板缓冲区,这样当我绘制其他东西时(禁用模板缓冲区)它只会在模板缓冲区等于1的区域上绘制。这是我想要的结果:如果我在模板缓冲区中绘制星形纹理,然后在颜色缓冲区中绘制红色纹理,我希望红色纹理忽略模板缓冲区中星形所在的像素。到目前为止,这是我的代码:batch.begin();Gdx.gl10.

java - 如何在 Java 3d 场景上绘制 2d 叠加层?

我有一个用Java3d编写的场景,其中使用以下代码将用户的查看位置设置为某个坐标:ViewingPlatformvp=simpleUniverse.getViewingPlatform();TransformGroupsteerTG=vp.getViewPlatformTransform();Transform3Dt3d=newTransform3D();steerTG.getTransform(t3d);t3d.lookAt(newPoint3d(-5,10,25),newPoint3d(0,0,0),newVector3d(0,1,0));t3d.invert();steerTG.

java - 在 Java 中创建和绘制巨大的(缓冲的)图像

我正在开发一个绘制矩阵的应用程序-使用Java2D-它可以变得非常大,例如30000x30000像素。此时此刻,我已经对BufferedImage进行了一些试验,但创建如此巨大的BufferedImage会导致内存不足异常,即使在扩大堆时也是如此。现在我正在考虑将图像拆分为多个图像/区域,当我在某个区域完成后将其写入磁盘并创建一个新的区域/BufferedImage并继续绘制。我对其他人如何处理这件事的想法很感兴趣。我已经离开Java一段时间了,所以欢迎任何具体的例子。 最佳答案 我为一个新的/小型开源项目做出贡献,它可能非常适合您

java - 如何使用 libgdx 中的简单纹理绘制自定义形状?

我想在我的游戏中绘制自定义静态形状,就像愤怒的小鸟所做的那样:但问题是纹理是方形的。我们如何告诉“SpriteBatch”绘制带有某些顶点的形状?有人有什么想法吗? 最佳答案 根据docs:ASpriteBatchisusedtodraw2Drectanglesthatreferenceatexture(region)所以本质上,此方法不允许您指定矩形以外的任何其他几何体。但是,有一个drawmethod这允许您指定“矩形”的四个坐标并将其变成其他东西。您必须将几何体分解成适合此基元的更小的部分。看起来这种方法不适合几何变化。更好的

java - 在 Java 中绘制像素最快的方法是什么

我有一些代码可以在随机位置生成粒子,并以随机方向和速度移动。通过循环的每次迭代,我移动所有粒子,并在我的jpanel上调用重绘。对于1,000个粒子,我每秒获得大约20到30帧。我计划最终拥有100,000到1,000,000个粒子。在paint中,如果窗口大小发生变化,我只会创建一个新的bufferedimage。我将像素绘制到bufferedimage,然后调用drawImage来显示图像。每个粒子都是一个像素,我确定所有时间都花在了实际绘制像素上。因此,增加粒子数量将大大降低帧速率。我试过g.drawline(x,y,x+1,y)、img.setRGB(x,y,color),通过

java - 在Jfreechart中更改图形的X轴起始值

我正在计算图像红色分量的直方图并将其存储在redhisto[]中。数组的索引代表强度(0到255)该值表示具有该强度的像素数。然后使用JFreeChart绘制这些值。我的问题是:如何让X轴的值从0开始,现在是从负数开始。我们可以更改图中条形的颜色吗代码是:publicclassHistogramextendsApplicationFrame{publicHistogram(finalStringtitle)throwsIOException{super(title);IntervalXYDatasetdataset=createDataset();JFreeChartchart=cre