我正在努力寻找与libgdx直接相关的东西。
简而言之,这是一个“手指画”应用程序,我想绘制一个用户触摸屏幕的特定宽度的路径。
我之前使用普通的Android android.view.View
完成了此操作。我有android.graphics.Path
,其中存储了用户当前触摸的坐标。在视图的onDraw()
方法中,我绘制了android.graphics.Canvas
的路径。每当用户松开手指时,我都会绘制一条离线画布/ android.graphics.Bitmap
的路径,该画布也是用onDraw()
方法绘制的。简单明了。
如何使用libgdx完成?
我尝试使用com.badlogic.gdx.graphics.Pixmap
我可以在用户移动手指时画一条线。这很有效,除了我无法使用Gdx.gl.glLineWidth()
来控制线条的情况。我知道我可以绘制一个矩形而不是一条线来设置宽度,但是Pixmap似乎没有任何旋转方式,所以我不知道如何做到这一点。
我可以使用com.badlogic.gdx.graphics.glutils.ShapeRenderer
在com.badlogic.gdx.Screen.render()
中绘制线条(或矩形)。据我所知,然后我需要存储当前触摸的每个触摸点,然后在渲染上绘制所有线条。每当用户关闭手指时,我想我可以按原样存储屏幕com.badlogic.gdx.utils.ScreenUtils.getFrameBufferPixmap()
。希望有一种更简单的方法来实现我想要的目标。
答案 0 :(得分:1)
我最终在pixmap上绘制圆圈,其中的行应为:
我对这个解决方案不是很满意,但它有点工作。
答案 1 :(得分:0)
也许您可以手动计算线点坐标并使用三角形在像素图上绘制它们?比如使用2个三角形来形成(旋转)框?