注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

还东国的博客

行之苟有恒,久久自芬芳

 
 
 

日志

 
 

(转)判断一个点是否在一个三角形面内.  

2011-11-04 14:19:53|  分类: 算法及数据结构 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
判断一个点是否在一个三角形面内.
分类: 3D游戏开发2007-04-23 14:29 462人阅读 评论(2) 收藏 举报

诸如此类的问题,我必须,我一个解决方案,就算不去编码,也应该有一个思路.

首先,如果该点不在该三角形所在的最小矩形内,那么也不是三角形内.
然后,再去判断是否在三角形内.
// :法一:角度法.临时想的,可能不行.
 if(该点Q 与三角形任两个顶点的形成的交角 其中最大那个==较小的两个之和.那么在外面或在边上)
 {
     在边上,或在外部
}
else 
{
    在内部. 
}
// :法2 三线法:
三线法见下图:
http://image.bbs.tom.com/pic/2/231/231379.jpg
过(x3,y3)和(x4,y4)作(x1,y1)-(x2,y2)的平行线,判断这两条平行线是否在(x1,y1)-(x2,y2)的同一侧,然后过(x1,y1)和(x4,y4)作( x2,y2)-(x3,y3)的平行线,判断...
三次都通过了自然在三角形内部. 
见:http://www.programfan.com/club/showtxt.asp?id=139048

  评论这张
 
阅读(901)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017