如何使用 Android 中的 Surfaceview 在 Canvas 上将位图拖动到另一个位图上
How to Drag a bitmap over another Bitmap on Canvas with Surfaceview in Android
我不熟悉在 Android.
中使用 Canvas 和 SurfaceView
我正在尝试使用 Surfaceview 实现带有 canvas 的应用程序,我想在上面拖动位图view.I 我可以拖动任何 no.of 位图。
我在位图中有 2 种不同大小,如下图所示:
要求
大尺寸 (Bmp1) 位图 - 1
dimension/resolution位图(A,B,C,D,E.....)-n(个数不限)
3.I 必须拖动 A/B/C/... 到 Bmp1.And 当任何小 Bmp 到达 Bmp1 并且它在其相关端口的周围时(A/B/C/....) 应建立连接。
4.So,我必须将任何 BMP 拖到任何其他 BMP 上
问题 :
当我将一个小位图拖到大位图时,当它们接近时,小位图重叠在中心的大位图上,无法单独拖动小位图,直到移动大位图。
当两个小位图接近时,上面的位图重叠在下面的绘图位图上,无法分开。
如何避免这些问题?
正常碰撞检测...使用 for 循环遍历其他位图位置...在此循环中只需检查
if(Math.abs(draggedBMP.posX-otherBMP.posX)< draggedBMP.width/2+otherBMP.width/2&&Math.abs(draggedBMP.posY-otherBMP.posY)< draggedBMP.height/2+otherBMP.height/2) Log.e("fatal","overlapping...world will explode");
或类似的东西..."AABB"<- google 那
我不熟悉在 Android.
中使用 Canvas 和 SurfaceView我正在尝试使用 Surfaceview 实现带有 canvas 的应用程序,我想在上面拖动位图view.I 我可以拖动任何 no.of 位图。
我在位图中有 2 种不同大小,如下图所示:
要求
大尺寸 (Bmp1) 位图 - 1
dimension/resolution位图(A,B,C,D,E.....)-n(个数不限)
3.I 必须拖动 A/B/C/... 到 Bmp1.And 当任何小 Bmp 到达 Bmp1 并且它在其相关端口的周围时(A/B/C/....) 应建立连接。
4.So,我必须将任何 BMP 拖到任何其他 BMP 上
问题 :
当我将一个小位图拖到大位图时,当它们接近时,小位图重叠在中心的大位图上,无法单独拖动小位图,直到移动大位图。
当两个小位图接近时,上面的位图重叠在下面的绘图位图上,无法分开。
如何避免这些问题?
正常碰撞检测...使用 for 循环遍历其他位图位置...在此循环中只需检查
if(Math.abs(draggedBMP.posX-otherBMP.posX)< draggedBMP.width/2+otherBMP.width/2&&Math.abs(draggedBMP.posY-otherBMP.posY)< draggedBMP.height/2+otherBMP.height/2) Log.e("fatal","overlapping...world will explode");
或类似的东西..."AABB"<- google 那