游戏开发中的数学和物理算法(2):定义线
2013-11-16 10:05
197 查看
游戏开发中的数学和物理算法(2):定义线
直线公式:Ax + By =
C (A和B不能同时为0)
讨论:
A和B不为0:为斜线(不垂直于x轴和y轴);
A为0,B不为0:直线为垂直于y轴的直线,且于y轴交与点(0,C/B);
A不为0,B为0:直线为垂直于x轴的直线,且于x轴交与点(C/A,0);
例1:
例2:
斜率:
定义斜率:
float GetSlope(Point2D p1,Point2D p2)
{
float slope;
if(p1.x-p2.x!=0)
{
slope=(p1.y-p2.y)/(p1.x-p2.x);
return slope;
}
}
已知:直线A:y1=k1*x1+b1 直线B:y2=k2*x2+b2
两直线相互垂直的条件是:斜率乘积为-1,即k1*k2=-1。
两直线平行的条件是:斜率相等,即k1=k2;当k1=k2且b1=b2直线重合。
两直线相交的条件是:斜率不相等,即k1!=k2;两直线垂直是直线相交的一种特殊情况。
相关文章推荐
- 游戏开发中的数学和物理算法(1):定义点
- 游戏开发中的数学和物理算法(1):定义点
- 游戏开发中的数学和物理算法(1):定义点
- 游戏开发中的数学和物理算法(2):定义线
- 游戏开发中的数学和物理算法(2):定义线
- 游戏开发中的数学和物理算法(1):定义点
- 游戏开发中的数学和物理算法(3):点之间的距离
- 游戏开发中的数学和物理算法(7):角度 vs 弧度
- 游戏开发中的数学和物理算法(17):平移
- 游戏开发中的数学和物理算法(2)
- 游戏开发中的数学和物理算法(12):矢量的加减法
- 游戏开发中的数学和物理算法(18):缩放
- 游戏开发中的数学和物理算法(3):点之间的距离
- 游戏开发中的数学和物理算法(3):点之间的距离
- 游戏开发中的数学和物理算法(13):点积和叉积
- 游戏开发中的数学和物理算法(7):角度 vs 弧度
- 游戏开发中的数学和物理算法(4):抛物线
- 游戏开发中的数学和物理算法(14):矩阵的相等和转置
- 游戏开发中的数学和物理算法(8):三角函数
- 游戏开发中的数学和物理算法(8):三角函数