【如何在java中绘制鼠标光标周围的矩形?】教程文章相关的互联网学习教程文章

java – OpenCV Android – 如何围绕轮廓绘制圆/矩形?【代码】

我是openCV的新手,因此我遇到了一些问题. 一个问题是我如何获得轮廓的坐标以绘制例如围绕它的圆圈. 到目前为止,我的代码如下所示:List<MatOfPoint> contours = mDetector.getContours(); Imgproc.drawContours(mRgba, contours, -1, CONTOUR_COLOR, -1); <<code that I need>> Core.circle(mRgba, new Point(150.0,150.0), 100, CONTOUR_COLOR, 5);轮廓被“提取”并绘制在测试圆圈的表面上,但是如何从轮廓中获取坐标(边界)以在每个...

java – paint方法在第一个coord 0,0之外绘制外部jFrame【代码】

在这种情况下,第一个坐标应该是0,0而不是8,30.我做错了什么(我正在使用NetBeans)import java.awt.Color; import java.awt.Graphics; public class TEST extends javax.swing.JFrame {@Override public void paint(Graphics g){super.paint(g);g.setColor(Color.blue);g.drawRect(8, 30, 200, 200);repaint(); }}解决方法:将JPanel添加到框架并在其中绘制.框架的坐标包括装饰(标题栏,边框等).它看起来像这样:public class Test ext...

java – 绘制JPanel隐藏菜单【代码】

我有一个JPanel,在其上执行自定义绘画,可能需要15秒. 问题是当我在绘制JPanel的同时点击一个菜单时,绘画正在菜单上完成,并且选项不可见. (见图中扭曲的文字) 如果我在绘画完成后单击菜单,则没有不需要的行为,但是当我将鼠标指针移动到不同的菜单上时,同样的事情再次发生.例如,在完成绘画后,如果单击“应用程序”,则不会出现副作用,但是当我将鼠标指针移动到“帮助”时,会显示前面描述的行为.如何避免这种情况? 我在一个单独的线程...

在java中绘制网格【代码】

我正在尝试使用for循环创建一个笛卡尔网格.以下是我目前的代码的一部分;当我运行它时,它不会产生一系列线条,而是产生一个窗口,它看起来像是一个白色面板,它会大大减慢我的计算机速度.事实上,我必须启动任务管理器和结束任务,因为它甚至不会正常关闭.public void paintComponent(Graphics g) {int width = getWidth();int height = getHeight();super.paintComponent(g);int xstart=0;for(int i = 1; i <= 10; i = i++){xstart = i*...

java – 重新绘制JPanel会稍微移动图像【代码】

这是我的第一个问题所以如果我做错了什么请耐心等待. 我正在尝试创建某种地图编辑器.基本上我有一个二维瓷砖阵列,瓷砖有一个地形类型,JPanel为每个瓷砖绘制图像.现在,当我单击一个图块时,地形类型会发生变化,JPanel会重新绘制已更改的每个图块. 问题是当我点击一个磁贴时,JPanel上的图像会以某种方式移动一点.当我调整窗口大小以便重新绘制每个图块时,一切看起来都很好.但是当我改变一块瓷砖时,我无法重新绘制所有内容,这种方法非常...

Java在Swing上绘制圆圈和线条【代码】

我试图在一个更大的圆形表面内画一个随机中心的圆圈. (我实际上是想在房间里模拟一个人和他的视力!)我需要绘制一条随机线(称为line1),穿过它的中心,它将与表面相交. line1不一定通过圆形表面的中心.我还需要绘制两条线,形成60度,面向line1的一侧.任何人都可以帮助我吗? 我创建了一个我需要绘制的例子.import java.awt.Color; import java.awt.Frame; import java.awt.Graphics; import java.awt.Point; import java.util.Random;...

用Java绘制对角线【代码】

我有以下代码:private _x,_y,_w,_h; protected void paintComponent( Graphics g_ ) {g_.setStroke( new BasicStroke(2) );g_.drawLine(_x, _y, _x+_w, _y+_h);g_.drawLine(_x, _y+_h, _x+_w, _y); }在我的情况下,我正在画一个正方形的对角线,所以:_w == _ h. 我的问题是两条线没有相同的明显特征:第一条线看起来比第二条线厚.检查这里绘制的实际像素时,渲染的差异如下: 我真的不在乎哪一个应该被认为是“正确的”(虽然我想了解...

java – 在图像上绘制JPanel中的形状【代码】

我需要在JPanel的JLabel中显示的图像上绘制形状(圆形或自由线). 我的代码基于How to draw thin line with no gap while dragging the cursor?和Draw a circle using 2 mouse clicks的问题. 代码如下.问题是,当我开始绘制时,图像消失,只有在我停止后才会重新出现.如果我评论行super.paintComponent(g);但这并不会发生,但是当我绘制圆圈时,它会保留以前位置的路径.public static void main(String args[]) { try {URL url = new URL(...

java – 使用递归算法绘制分形【代码】

我在下面编写代码来绘制像照片一样的分形树.但我在第二次递归方法中遇到问题. (用于中间分支长度控制).我如何改进和纠正它? 我的代码:import java.awt.BasicStroke; import java.awt.Canvas; import java.awt.Color; import java.awt.Component; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.RenderingHints; import javax.swing.JFrame;public class FractalTree1 extends Canvas {// fields for dr...

线程内的实例化组件不会重新绘制到Java中的JFrame中【代码】

我有一个像这样的单一课程public class BlockSpawner implements Runnable{public static long timeToSpawn; private GtrisJFrame frame;public BlockSpawner(GtrisJFrame frame) {this.frame = frame;timeToSpawn = 2000; }public void run() {while(true){try{Thread.sleep(timeToSpawn);}catch(InterruptedException e){//Unhandled exception}//After awake, instanciate 2 blocks//get the position of the first oneint inde...

Java:使用多个线程在JPanel上同时绘制

我有一个JPanel,我希望有几个线程绘制“动画”. “动画”由一个带有ImageIcon的JLabel组成,它正从屏幕的一个区域移动到另一个区域. 现在,问题是 – 我希望通过提到的那些线程在屏幕上描绘几个这样的动画.问题是 – JPanel的“paint()”方法一次只能由一个线程触发 – 导致动画以串行方式执行,而不是以并行方式执行. 知道怎么在屏幕上同时有几个这样的动画?解决方法:不可能使用多个线程来做你想要的. Swing Toolkit是单线程的.正确...

java – OpenGL绘制了数千个2D圆圈【代码】

在我的应用程序中,我在3D场景上渲染了数千(~10k)2D圆圈.我有它工作,但是当有这么多圆圈时(圆圈很小,直径约16像素),性能非常慢.我绘制圆圈的代码如下:for ( int i = 0; i < numCircles; i++) {int attributeMask = GL.GL_DEPTH_BUFFER_BIT | GL.GL_TRANSFORM_BIT| GL.GL_VIEWPORT_BIT | GL.GL_CURRENT_BIT| GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT| GL.GL_ENABLE_BIT | GL.GL_LIGHTING_BIT;gl.glPushAttrib(attributeMas...

java – 使用glVertexAttribPointer和glDrawElements从压缩顶点缓冲区中绘制【代码】

我有一个打包的顶点缓冲区,包含位置坐标以及格式为{X,Y,Z,R,G,B,A}的顶点的颜色值. 当我通过取出a_Color属性并硬编码gl_FragColor的vec4值但是我无法将颜色vec4属性传递到片段着色器(矩形)时,我可以使用硬编码颜色正确显示矩形.将不会显示在该场景中). 使用glVertexAttribPointer(…)和glDrawElements(…)从OpenGL ES 2.0中的压缩顶点缓冲区绘制的正确方法是什么? 请参阅下面的代码:public class GameRenderer implements Render...

java – 绘制矩形,占绘图面板的百分之几【代码】

我想绘制矩形,只指定面板的高百分比,并且当我调整面板大小时,它应该调整自身大小.但我的问题是drawRect()只接受整数,所以当我尝试绘制矩形例如45%的面板高度时,如果面板高度小于100,它将转换为0. 我的代码很简单,所以你可以尝试一下.这是我的代码:public class Drawer extends JPanel {@Overridepublic void paintComponent(Graphics g) {super.paintComponent(g);g.fillRect(10,this.getHeight()-this.getHeight()/100*45, 100,...

绘制椭圆形的图形在java中不会增加【代码】

我正在使用Ovals和Graphics对象在java中编写一个简单的游戏.它被称为病毒,其工作原理如下:中间有一个椭圆形,外面有六个椭圆形.这些外部椭圆应该增加尺寸直到被点击,当它们消失并且玩家得到10分时.如果椭圆形接触中央椭圆形,则中心椭圆形的健康状况会下降.当它达到零时,游戏结束.我遇到的问题是外部椭圆的尺寸不会增加.为什么会这样? 这是我的代码:package virus;import java.awt.*; import java.util.Random; import javax.swin...