
算法
ybhjx
留着自己学习,不做他用
展开
-
判断点在线的左边、右边
判断点在线的左边还是右边在构建三角网时是非常重要的以及两点p1(x1,y1),p2(x2,y2),判断点p(x,y)在线的左边还是右边。 1.bool LeftOfLine(const ZCoord2D& p, const ZCoord2& p1, const ZCoord2D& p2){ double tmpx = (p1.x - p2.x)转载 2016-03-18 12:24:50 · 7701 阅读 · 0 评论 -
判断一个点是否在多边形内C#
//判断点在线的一边 public int isLeft(Vector2 P0, Vector2 P1, Vector2 P2) { int abc = (int)((P1.X - P0.X) * (P2.Y - P0.Y) - (P2.X - P0.X) * (P1.Y - P0.Y)); return abc; }转载 2016-03-18 12:25:58 · 2841 阅读 · 1 评论 -
C#判断一个点是否在三角形内?
在Form窗体中,指定三个坐标点A(ax,ay),B(bx,by),C(cx,cy),怎么判断一个任意点P(px,py)在点A,B,C所组成的三角形区域内?该点与其他三个顶点构成的三个三角形,分别计算这三个三角形的面积之和,应小于等于给定三角形的面积.就是在内部的.当然有精度问题.转载 2016-03-18 12:28:50 · 2876 阅读 · 0 评论 -
C#判断三个点是否构成三角形和某个点是否在三角形内
昨天看到某个公司招聘出的一道题目,题目是这样的:判断任意三个点是否构成三角形,以及某个点是否位于指定的三角形内。 关于这个问题,我给出了自己的答案,首先解决第一个问题:/// /// IsTriangle 判断集合中的头三个点PointF是否可以构成一个三角形 /// public static bool转载 2016-03-18 12:29:55 · 4293 阅读 · 0 评论 -
负数的二进制
负数的二进制转换,其实,容易,容易理解。1. 10进制负数转二进制: 原码 => 反码 =>加一 => 补码2.二进制数,怎么求其十进制数呢(对负数):先减一=>取反方法/步骤 首先,来个-5, 实践出真知嘛。 把5转化为二进制字节形式。得到101,然后补零。 这个时候,原码就出来了。 然后,取反(0的变成1,1的...转载 2019-07-18 13:52:15 · 829 阅读 · 0 评论 -
修改二进制数中的其中一位,其它不变
用And,把对应的二进制位置为0,其它位全为1.比如&H00501234 ,要把第23位由1变成0:&H00501234and&HFFBFFFFF=&H00101234掩码&HFFBFFFFF可以这样得到:第23位的“二进制位权”是2^22, 那么:Not(2^22)=&HFFBFFFFFhttp...转载 2019-07-18 13:55:42 · 2163 阅读 · 0 评论