假设P1,P2点 定义一条直线L, 计算 P点 关于L的镜像点。
计算步骤:
一、计算直线L的斜率k, 和一般方程式 AX + BY +C =0 中的A,B,C值
A, B, C 关系如下(由网友jennyvenus 提供)
c = ( ( k * x1 ) - y1 ) / k;
b = ( -1.0 * c ) / ( y1 - k * x1 );
a = ( -1.0 * b * k );
二、 根据a,b,c的值 计算 P点在直线L的垂足
以下为计算垂足的代码
///
<summary>
/// 计算P点在P1,P2直线的垂足
/// </summary>
/// <param name="P1"></param>
/// <param name="P2"></param>
/// <param name="P"></param>
/// <returns></returns>
public static PointF CalcPedal(PointF P1, PointF P2, PointF P)
{
if (P1.X ==
/// 计算P点在P1,P2直线的垂足
/// </summary>
/// <param name="P1"></param>
/// <param name="P2"></param>
/// <param name="P"></param>
/// <returns></returns>
public static PointF CalcPedal(PointF P1, PointF P2, PointF P)
{
if (P1.X ==