c#垂直投影法_c#求点到直线的投影点坐标
点在指定直线的投影点,即过点作一垂直于指定直线的直线,与指定直线的交点即为所求。这个问题其实回归到两条垂直直线的交点问题,回到最原始的初中几何知识,复习下
如图示
首先我们明确下已知条件,指定直线上任一点A,直线斜率k,点C,求点B
说到斜率,就有不存在的情况,如图(2),显然这种情况B的横坐标=A的横坐标,B的纵坐标=C的纵坐标
本文重点讨论第一种情况,其实也很简单,联立两条直线求解即可
直线AB方程式即y-yA=k*(x-xA)
∵两条垂直直线的斜率乘积 = -1
∴由AB线斜率为k可知BC线斜率为-1/k,可知直线BC方程式为
y-yC=-1/k*(x-xC)
联立方程组解得
xB = (k * xA+ xC / k + yC - yA) / (1 / k + k)
由xB代入BC方程即可得yB
复制代码 代码如下:
///
/// 求直线外一点到该直线的投影点
///
/// 线上任一点
/// 直线斜率
/// 线外指定点
/// 投影点
protected void GetProjectivePoint(PointF pLine, double k, PointF pOut, ref PointF pProject)
{
if (k == 0) //垂线斜率不存在情况
{
pProject.X = pOut.X;
pProject.Y = pLine.Y;
}
else
{
pProject.X = (float)((k * pLine.X + pOut.X / k + pOut.Y - pLine.Y) / (1 / k + k));
pProject.Y = (float)(-1 / k * (pProject.X - pOut.X) + pOut.Y);
}
}
时间: 2013-12-07
c#垂直投影法_c#求点到直线的投影点坐标相关推荐
- c#垂直投影法_C#教程之c#求点到直线的投影点坐标
点在指定直线的投影点,即过点作一垂直于指定直线的直线,与指定直线的交点即为所求.这个问题其实回归到两条垂直直线的交点问题,回到最原始的初中几何知识,复习下 如图示 首先我们明确下已知条件,指定直线上任 ...
- 利用matlab求点到直线距离和垂足坐标(开源,易使用修改)
利用matlab求点C到向量AB的垂直距离以及垂足E点坐标 A.B两点构成向量AB:C为任一点.求C点到向量AB的垂直距离与C点到AB的垂足坐标. 结果说明:C2ABJvLi--C点到向量AB的垂直距 ...
- 牛客小白月赛2-B小马过河(求点到直线的垂足)
题目链接 求点到直线的垂足分为 空间 .平面 原理: 空间: #include<iostream> #include<cmath> using namespace std; c ...
- java点到直线的投影点到经纬度_12分高考答题必刷题型,“空间向量分析点到线的距离问题”...
12分高考答题必刷题型,"空间向量分析点到线的距离问题" 立体几何大题 立体几何在各地高考中,基本都占据20分以上的比例,在解答方法上,小题技巧相对比较丰富,但大题解答上有明显的规 ...
- 点到直线的投影公式_12分高考答题必刷题型,“空间向量分析点到线的距离问题”...
12分高考答题必刷题型,"空间向量分析点到线的距离问题" 立体几何大题 立体几何在各地高考中,基本都占据20分以上的比例,在解答方法上,小题技巧相对比较丰富,但大题解答上有明显的规 ...
- 点到直线的投影公式_2021高考复习资料:高中数学必备公式与知识点汇总
向学霸进军整理出2021高考复习资料之高中数学必备公式与知识点,希望给2021高考生和家长带来帮助. 1 函数的单调性 2 函数的奇偶性 3 函数在某处的导数的几何意义 4 几种常见函数的导数 5 导 ...
- Python实现三维点到直线的投影
首先要知道原理 ,今天机器学习作业要将三维的点投影到三维直线上,以下记录方法 方法借鉴:3D空间点到直线的距离 - 知乎 (zhihu.com)第一种方法 x1.x2存的是数据集,d.t是直线的参数 ...
- 投影法快速求二叉树的三种遍历
二叉树的遍历,如果是手工画图,还可以使用投影法快速得到遍历序列. 以下图二叉树为例,讲解投影法快速得到遍历序列的过程. (1) 中序遍历 中序遍历就像在无风的情况下,太阳直射,将所有 ...
- python输入两点坐标求距离_大一Python课的习题,输入两点,建立起直线方程y=kx+b。输入第3点,求点到直线的距离。这怎...
展开全部 # -*- coding:utf-8 -*- import math point_a=raw_input('please input point A coordinates: For Exa ...
最新文章
- linux内核kconfig objs,linux内核中Kconfig和Makefile 详解
- 每天一个linux命令(56):netstat命令
- Installation of Apache HTTPD
- 如何判断mysql死锁_MySQL 死锁问题分析
- mybatis 配置文件中,collection 和 association 的对应关系
- Sql Server系列:日期和时间函数
- (转)JAVA实现Windows拨号、IP切换
- boost boost::asio::read read_some receive 区别
- java button 点击事件_android_button按钮onclick点击事件的几种写法
- 移动终端基带芯片的基本架构介绍(三):移动终端基带芯片详细架构
- C语言程序设计预备作业
- 斗兽棋在线游戏HTML5小游戏,js --斗兽棋游戏
- 母牛生小牛问题-字节跳动笔试题
- 局域网内打印机打印只能打印一页或是几页的解决办法
- laravel-admin引用wangEditor编辑器 使用二:上传视频/音频(2)
- linux下matlab2014卸载
- 三元:将对20万名贫困家庭儿童进行健康扶贫
- 无线网桥连接服务器,无线网桥
- c语言编程汽车售票系统,C语言汽车售票系统实践报告.doc
- solaris10-查看硬件信息
热门文章
- 交换机学习之划VLAN
- 关于11月28日CSDN遭受网络攻击的情况说明
- 警告:面临潜在的安全风险_HTML5网站展示:48个潜在的Flash演示
- 几种常用网络请求汇总
- js 时间戳与时间格式的转化, xx天xx小时xx分倒计时,距离当前时间多久
- wav to image concat 版
- RandomAccessFile、FileChannel和MappedByteBuffer
- 深度学习目标检测数据VisDrone2019(to yolo / voc / coco)---MMDetection数据篇
- 函数的返回值——数组返回
- 月薪80k阿里架构师:给迷茫的JAVA一些中肯建议(附学习路线图)