我在Android项目中使用Java中的BufferedImage。在该项目中,允许用户选择图像的一小部分。
例如:如果您有带建筑物的公园的图像。用户可以对草进行小选择,并且android程序需要保存该选择的坐标。
我想知道BufferedImage中是否有支持这一功能的功能:让用户选择图像的一小部分(使用触摸屏)并从图像中的这些位置获取坐标。如果没有,我还能做什么?
答案 0 :(得分:2)
您可以将点击的像素位置(x,y)(即光标位置)存储到 SQLite 数据库中,而不需要存储其周围的所有值。如果您想检查此像素周围的点击(具有公差值),以下代码将为您提供帮助:
int[] xyReceivedPixel = { 15, 20 };
int[] xyOriginalPixel = { 30, 15 };
int toleranceValue = 30;
boolean status = (xyReceivedPixel[0] < xyOriginalPixel[0] + toleranceValue
|| xyReceivedPixel[0] > xyOriginalPixel[0] - toleranceValue)
&& (xyReceivedPixel[1] < xyOriginalPixel[1] + toleranceValue
|| xyReceivedPixel[1] > xyOriginalPixel[1] - toleranceValue);
System.out.println(status);
此处,xyOriginalPixel
是存储在数据库中的原始像素点,xyReceivedPixel
是进行另一次点击时获得的像素点或要与之比较的像素点它。检查xyReceivedPixel
是否在xyOriginalPixel
附近,最大差异为toleranceValue
。