「java识别圆」识别圆的算法
今天给各位分享java识别圆的知识,其中也会对识别圆的算法进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、Java里怎么判断一个点在圆内
- 2、求java识别三角形,圆形,方形的具体算法和原理。
- 3、Java 简单编程 判断点在不在圆上
- 4、简单 JAVA编程题 判断两个圆是否相交 圆心1坐标X=1 Y=1 半径 1 圆心2 坐标为 X=2 Y=2 半径 2
Java里怎么判断一个点在圆内
用两点间距离公式可以判定某个点(Point)是否在圆内。
import java.awt.Point;
import java.util.*;
public class Main {
public static void main(String[] args) {
int r=10;// 圆的半径
Point aPoint = new Point(50,25);
Point bPoint = new Point(55, 30);
// 两点间距离公式
int result=(int)Math.sqrt((aPoint.x-bPoint.x)+(aPoint.y-bPoint.y));
if(result=r) System.out.print("在圆内");
else System.out.print("在圆外");
}
}
注:对精度有要求则可以改用double类型。
求java识别三角形,圆形,方形的具体算法和原理。
首先图片的背景和图形的颜色肯定是不一样的,图片是由像素组成的(这个概念很重要),,第一步区分背景和图形的颜色,保存背景的颜色,,第二步创建一个二维数组,这个二维数组对应于这个图片,你比如说,我这个图片是10*10大小的,然后我就把我这个数组保存是100*100的,即每隔0.1我取一下图片的像素值,判断这个像素值和背景是否一样,如果一样,那么数组的对应位置就存储0,否则存储1,,,第三步,通过Java代码控制鼠标遍历图片,一行一行的遍历,取像素值,与背景的像素对比,存入数组,遍历之后二维数组就只是存储的0和1(0代表背景,1代表图形),,第四步,把所有为1的二维数组元素对应的坐标取出来,写个方法判断一下,相当于数轴知道X和Y了,你判断一下图形的形状,应该不难。。。而且图形就三个,,不难实现,,楼主可以试试
Java 简单编程 判断点在不在圆上
判断点是不是在圆上,可以通过判断点到圆心的距离与圆的半径比较确定:
设圆半径为r,圆心坐标x1,y1;要判断的点的坐标为x2,y2,则:
private bool isInCircle(float r,float x1,float y1,float x2,float y2)
{
float distance=Math.sqrt((y2-y1)*(y2-y1)+(x2-x1)*(x2-x1));
if(distancer)
{return false;)
else
{return true;}
}
简单 JAVA编程题 判断两个圆是否相交 圆心1坐标X=1 Y=1 半径 1 圆心2 坐标为 X=2 Y=2 半径 2
public class Circle_J {
public static void main(String[] args){
System.out.println("请依次输入第一个圆的圆心坐标x和y以及半径,彼此以空格隔开");
Scanner read = new Scanner(System.in);
String string1 = String.valueOf(read.nextLine());
String[] data1 = string1.split(" ");
System.out.println("请依次输入第二个圆的圆心坐标x和y以及半径,彼此以空格隔开");
String string2 = String.valueOf(read.nextLine());
String[] data2 = string2.split(" ");
double xDistance = Math.abs(Integer.parseInt(data2[0])-Integer.parseInt(data1[0]));
double yDistance = Math.abs(Integer.parseInt(data2[1])-Integer.parseInt(data1[1]));
double rCount =Integer.parseInt(data2[2]) +Integer.parseInt(data1[2]);
if((Math.pow(xDistance,2)+Math.pow(xDistance,2))=(Math.pow(rCount,2)))
{
System.out.println(Math.pow(rCount,2));
System.out.println("相交");
}else{
System.out.println("不相交");
}
read.close();
}
}
java识别圆的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于识别圆的算法、java识别圆的信息别忘了在本站进行查找喔。
发布于:2022-12-16,除非注明,否则均为
原创文章,转载请注明出处。