Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java OpenCV,Android:在位图上绘制线条_Java_Android_Opencv_Bitmap - Fatal编程技术网

Java OpenCV,Android:在位图上绘制线条

Java OpenCV,Android:在位图上绘制线条,java,android,opencv,bitmap,Java,Android,Opencv,Bitmap,我目前有一个应用程序,onClick将在电池和蓝色纸条周围绘制一个绿色边框。我还想让按钮onClick从电池到纸条画一条线(如下面第二张图片所示)。目前,我能够获得矩形的所有x和y值,因此知道我需要从5341261到7881261绘制一条线,并用x差标记该线,如图所示 对于绘制线条和文本,可以使用如下代码: Point firstPoint = new Point(100, 200); Point secondPoint = new Point(100, 400); Point middleP

我目前有一个应用程序,
onClick
将在电池和蓝色纸条周围绘制一个绿色边框。我还想让按钮
onClick
从电池到纸条画一条线(如下面第二张图片所示)。目前,我能够获得矩形的所有x和y值,因此知道我需要从
5341261
7881261
绘制一条线,并用x差标记该线,如图所示


对于绘制线条和文本,可以使用如下代码:

Point firstPoint = new Point(100, 200);
Point secondPoint = new Point(100, 400);
Point middlePoint = new Point(firstPoint.x,
        firstPoint.y + 0.5 * (secondPoint.y -  firstPoint.y));

Scalar lineColor = new Scalar(255, 0, 0, 255);
int lineWidth = 3;

Scalar textColor = new Scalar(255, 0, 0, 255);

Imgproc.line(sourceMat, firstPoint, secondPoint, lineColor, lineWidth);
Imgproc.putText(sourceMat, " Text" , middlePoint,
        Core.FONT_HERSHEY_PLAIN, 1.5 , textColor);
其中
sourceMat
-
Mat
带有图像

为了确定线的“高度”(约厘米),应使用电池矩形的“高度”:

lineHeightCm = 4.46 / heightOfBatteryRectangleInPixels * lineHeightInPixels;
式中4.46 AAA电池的“高度”,单位为厘米