C#判断点是否在直线上
来源:互联网 发布:java jdk 1.7 下载 编辑:程序博客网 时间:2024/06/06 13:24
http://www.cnblogs.com/object360/p/5788966.html
C#判断点是否在直线上
判断点在直线上,实际上就是判断点到直线上的垂直距离。点到直线垂直距离为0,则点在线上。当然也可以误差设置误差几个像素。
参考资料并进行修改:http://blog.sina.com.cn/s/blog_5d5c80840101bnhw.html
//判断点是否在直线上
public static bool GetPointIsInLine(PointF pf, PointF p1, PointF p2, double range)
{
//range 判断的的误差,不需要误差则赋值0
//点在线段首尾两端之外则return false
double cross = (p2.X - p1.X) * (pf.X - p1.X) + (p2.Y - p1.Y) * (pf.Y - p1.Y);
if (cross <= 0) return false;
double d2 = (p2.X - p1.X) * (p2.X - p1.X) + (p2.Y - p1.Y) * (p2.Y - p1.Y);
if (cross >= d2) return false;
double r = cross / d2;
double px = p1.X + (p2.X - p1.X) * r;
double py = p1.Y + (p2.Y - p1.Y) * r;
//判断距离是否小于误差
return Math.Sqrt((pf.X - px) * (pf.X - px) + (py - pf.Y) * (py - pf.Y)) <= range;
}
代码源码:http://download.csdn.net/detail/object360/9607980
- c#判断点是否在直线上
- C#判断点是否在直线上
- 判断点是否在直线上
- 判断点在直线上
- 判断点在直线上
- c#判断点是否在矩形上
- C#判断点在直线上的方法
- C#判断点在直线上的方法
- 判断平面上两线段是否相交,顺便解释判断点在直线的位置...
- 判断点是否在A(x1,y1),B(x2,y2)连线的直线上
- GIS中的基本算法之判断点是否在直线上
- 判断几个点是否在一条直线上(计算几何)
- 点是否在一条直线判断-共线判断
- 判断是否是凸多边形,判断点是否在多边形内,点到直线的距离
- java判断多个点是否在同一直线上
- 计算机图形学—判断点在直线上的方法
- 判断点在直线段上的方法
- hdu1756( 判断点是否在多边形上)
- 网站URL重写(Java UrlRewrite 的使用)
- 关于极光分享遇到的添加依赖后的编译出错问题
- C# get set 方法 System.StackOverflowException
- 回归
- JavaWeb
- C#判断点是否在直线上
- 存储过程
- 初学Spring Boot遇到的启动问题
- jquery中文档处理的学习
- cookie和session工作原理
- 顺序表应用8:最大子段和之动态规划法
- Linux多线程下的互斥锁
- 使用poi将word转为html
- React-Native Demo 工程 TransformError babel-preset-react-native