<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Hopes

    Start Here..

     

    TwoLineIsIntersect

          private  bool TwoLineIsIntersect(float x0, float y0, float x1, float y1, float x2, float y2, float x3, float y3, ref float InterX,ref float InterY)
         {
              //兩條線段是否相交X0X1 AND X1X2
               float x, y;
               float Minx01 = Math.Min(x0, x1);
               float Miny01 = Math.Min(y0, y1);
               float Minx23 = Math.Min(x2, x3);
               float Miny23 = Math.Min(y2, y3);
               float Maxx01 = Math.Max(x0, x1);
               float Maxy01 = Math.Max(y0, y1);
               float Maxx23 = Math.Max(x2, x3);
               float Maxy23 = Math.Max(y2, y3);
               
               if(x1!=x0 && x2!=x3)
               {
                   float k1 = (y1-y0)/(x1-x0);
                   float k2 = (y3-y2)/(x3-x2);
                   float Den = (y1-y0)*(x3-x2) - (y3-y2)*(x1-x0);
                   if(k1==k2)
                   { //平行不相交
                      float d1 = abs(y0*(x1-x0)-x0*(y1-y0)-y2*(x3-x2)+x2*(y3-y2)); //距離公式d = abs(c1-c2) / sqrt(a*a+b*b)
                      if(d1==0)
                      {//直線重合
                         if((x2>Minx01 && x2<Maxy01 && y2>Miny01 && y2<Maxy01) || (x3>Minx01 && x3<Maxy01 && y3>Miny01 && y3<Maxy01)
                         || (x0>Minx23 && x0<Maxy23 && y0>Miny23 && y0<Maxy23) || (x1>Minx23 && x1<Maxy23 && y1>Miny23 && y1<Maxy23))
                         {  //實際碰撞問題線段重合認為相交了
                            return true;
                         }
                         else
                         {
                            return false;
                         }
                      }
                      else
                      {
                         return false;
                      }   
                   }
                   x = ((y2-y0)*(x1-x0)*(x3-x2)+(y1-y0)*(x3-x2)*x0-(y3-y2)*(x1-x0)*x2)/Den;
                   y = ((y1-y0)*(x-x0))/(x1-x0) + y0;
                   if(Minx01<=x && x<=Maxx01 && Miny01<=y && y<=Maxy01 && Minx23<=x && x<=Maxx23 && Miny23<=y && y<=Maxy23)
                   {
                      InterX = x;
                      InterY = y;
                      return true;
                   }
               }
               else if(x1==x0 && x2!=x3)
               {
                   x = x0;
                   y = ((y3-y2)*(x0-x2))/(x3-x2) + y2;
                   if(Minx01<=x && x<=Maxx01 && Miny01<=y && y<=Maxy01 && Minx23<=x && x<=Maxx23 && Miny23<=y && y<=Maxy23)
                   {
                      InterX = x;
                      InterY = y;
                      return true;
                   }
               }
               else if(x1!=x0 && x2==x3)
               {
                   x = x2;
                   y = ((y1-y0)*(x2-x0))/(x1-x0) + y0;
                   if(Minx01<=x && x<=Maxx01 && Miny01<=y && y<=Maxy01 && Minx23<=x && x<=Maxx23 && Miny23<=y && y<=Maxy23)
                   {
                      InterX = x;
                      InterY = y;
                      return true;
                   }       
               }
               return false;
            }

    posted on 2012-08-29 15:01 ** 閱讀(182) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    導航

    統計

    公告

    你好!

    常用鏈接

    留言簿(2)

    隨筆檔案

    文章分類

    文章檔案

    新聞檔案

    相冊

    收藏夾

    C#學習

    友情鏈接

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 性做久久久久久久免费看| 久久99毛片免费观看不卡| 久久这里只有精品国产免费10| 亚洲av日韩av天堂影片精品| 一级日本高清视频免费观看| 亚洲阿v天堂在线2017免费| 免费一级毛suv好看的国产网站| 又粗又大又猛又爽免费视频| 美女视频黄频a免费大全视频| 亚洲美女高清一区二区三区| 好猛好深好爽好硬免费视频| 最新亚洲成av人免费看| 成人爽a毛片免费| 亚洲欧洲免费视频| 2021久久精品免费观看| 亚洲日本一线产区和二线 | mm1313亚洲精品无码又大又粗| 日韩亚洲翔田千里在线| gogo全球高清大胆亚洲| 中文字幕看片在线a免费| 亚洲国产成人高清在线观看| 99在线观看视频免费| 456亚洲人成影院在线观| 国产极品粉嫩泬免费观看 | 久久精品国产亚洲av品善| 亚洲AⅤ无码一区二区三区在线 | 69影院毛片免费观看视频在线| 亚洲国产一区在线观看| 日韩中文字幕在线免费观看 | 亚洲综合一区二区| 成人午夜视频免费| 一区二区三区免费看| 亚洲综合自拍成人| 国产一级一片免费播放| a级片在线免费看| 亚洲综合一区无码精品| 亚洲天堂中文字幕在线| 亚洲人成在线免费观看| 天堂亚洲免费视频| 亚洲精品日韩中文字幕久久久| 免费无遮挡无码永久在线观看视频|