最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c#求點到直線的投影點坐標

 更新時間:2013年12月09日 11:24:57   作者:  
這篇文章主要介紹了c#求直線外一點到該直線的投影點,大家參考使用吧

點在指定直線的投影點,即過點作一垂直于指定直線的直線,與指定直線的交點即為所求。這個問題其實回歸到兩條垂直直線的交點問題,回到最原始的初中幾何知識,復習下
如圖示

首先我們明確下已知條件,指定直線上任一點A,直線斜率k,點C,求點B

說到斜率,就有不存在的情況,如圖(2),顯然這種情況B的橫坐標=A的橫坐標,B的縱坐標=C的縱坐標
本文重點討論第一種情況,其實也很簡單,聯(lián)立兩條直線求解即可

直線AB方程式即y-yA=k*(x-xA)
∵兩條垂直直線的斜率乘積 = -1
∴由AB線斜率為k可知BC線斜率為-1/k,可知直線BC方程式為
y-yC=-1/k*(x-xC)
聯(lián)立方程組解得
xB = (k * xA+ xC / k + yC - yA) / (1 / k + k)
由xB代入BC方程即可得yB

復制代碼 代碼如下:

        /// <summary>
        /// 求直線外一點到該直線的投影點
        /// </summary>
        /// <param name="pLine">線上任一點</param>
        /// <param name="k">直線斜率</param>
        /// <param name="pOut">線外指定點</param>
        /// <param name="pProject">投影點</param>
        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);
            }
        }

相關文章

  • C# byte轉為有符號整數(shù)實例

    C# byte轉為有符號整數(shù)實例

    這篇文章主要介紹了C# byte轉為有符號整數(shù)實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • C#鍵值對容器的介紹

    C#鍵值對容器的介紹

    C#鍵值對容器的介紹,需要的朋友可以參考一下
    2013-05-05
  • WPF自動隱藏的消息框的實例代碼

    WPF自動隱藏的消息框的實例代碼

    本文給大家介紹WPF自動隱藏的消息框實例代碼,當鼠標放上去將一直顯示,移開動畫繼續(xù),提供normal和error兩種邊框。非常不錯,具有參考借鑒價值,感興趣的朋友一起看下吧
    2016-07-07
  • WinForm實現(xiàn)讀取Resource中文件的方法

    WinForm實現(xiàn)讀取Resource中文件的方法

    這篇文章主要介紹了WinForm實現(xiàn)讀取Resource中文件的方法,很實用的一個功能,需要的朋友可以參考下
    2014-08-08
  • 關于finalize機制和引用、引用隊列的用法詳解

    關于finalize機制和引用、引用隊列的用法詳解

    下面小編就為大家?guī)硪黄P于finalize機制和引用、引用隊列的用法詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • C#中參數(shù)個數(shù)可變的方法實例分析

    C#中參數(shù)個數(shù)可變的方法實例分析

    這篇文章主要介紹了C#中參數(shù)個數(shù)可變的方法,以一個簡單實例分析了C#中參數(shù)個數(shù)可變的方法,主要是使用params關鍵字來實現(xiàn)的,是C#編程中比較實用的技巧,需要的朋友可以參考下
    2014-11-11
  • C#中Dictionary類使用實例

    C#中Dictionary類使用實例

    這篇文章主要介紹了C#中Dictionary類使用實例,本文直接給出一個使用實例,包含一些Dictionary的基本用法,需要的朋友可以參考下
    2015-06-06
  • C# 多線程更新界面的錯誤的解決方法

    C# 多線程更新界面的錯誤的解決方法

    這篇文章主要介紹了C# 多線程更新界面的錯誤方法,由于一個線程的程序,如果調用一個功能是阻塞的,那么就會影響到界面的更新,導致使用人員操作不便。所以往往會引入雙線程的工作的方式,主線程負責更新界面和調度,而次線程負責做一些阻塞的工作,便有了下面春雨里方法
    2021-10-10
  • C#程序調用C++動態(tài)庫(dll文件)遇到的坑及解決

    C#程序調用C++動態(tài)庫(dll文件)遇到的坑及解決

    這篇文章主要介紹了C#程序調用C++動態(tài)庫(dll文件)遇到的坑及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 采用C#實現(xiàn)軟件自動更新的方法

    采用C#實現(xiàn)軟件自動更新的方法

    這篇文章主要介紹了采用C#實現(xiàn)軟件自動更新的方法,非常實用的功能,需要的朋友可以參考下
    2014-08-08

最新評論

志丹县| 花垣县| 顺义区| 林甸县| 海城市| 萨嘎县| 海门市| 福贡县| 嘉定区| 来凤县| 沾益县| 柳河县| 湘阴县| 石阡县| 江川县| 固镇县| 北票市| 南昌市| 广东省| 孝感市| 道孚县| 东阿县| 秭归县| 明水县| 图们市| 东山县| 隆化县| 广平县| 宁南县| 万安县| 长丰县| 武功县| 陆川县| 双辽市| 九龙坡区| 伊吾县| 望谟县| 政和县| 特克斯县| 台山市| 邳州市|