设为首页收藏本站

中国膜结构网

 找回密码
 立即注册
膜结构车棚
膜结构车棚膜结构资质国产膜材 膜结构网中国膜结构协会
查看: 18|回复: 0

//判断点是否在闭合区域内

[复制链接]
  • TA的每日心情
    开心
    2021-3-7 10:01
  • 签到天数: 1440 天

    连续签到: 19 天

    [LV.10]以坛为家III

    发表于 2021-2-19 00:19 | 显示全部楼层 |阅读模式
    http://www.mjgw.org/ 专业从事膜结构设计、制作加工、施工安装的膜结构咨询服务,能够为客户提供专业的膜结构整体解决方案。做中国最好的膜结构综合服务平台。欢迎大家联系QQ:463017170.
    判断一个点,或者说某个物体是否在一个多边形内,或者说是否在某个区域内,在几何算法中还是比较常见的也比较实用的,如何判断呢,这在凸多边形里面应该比较容易,但是不规则多边形就需要比较特殊的方法了。无论是凹多边形,凸多边形,长歪了的各种多边形里面都适用。 本文使用射线法判断点是否在多边形内部。
    1. //判断点是否在闭合区域内
    2. bool IsPointInPolygon(Point p, vector points)
    3. {
    4. //vector points:表示闭合区域由这些点围成
    5.     double minX = points[ 0 ].x;
    6.     double maxX = points[ 0 ].x;
    7.     double minY = points[ 0 ].y;
    8.     double maxY = points[ 0 ].y;
    9.     for ( unsigned int i = 1 ; i < points.size() ; i++ )
    10.     {
    11.         Point q = points[ i ];
    12.         minX = min( q.x, minX );
    13.         maxX = max( q.x, maxX );
    14.         minY = min( q.y, minY );
    15.         maxY = max( q.y, maxY );
    16.     }

    17.     if ( p.x < minX || p.x > maxX || p.y < minY || p.y > maxY )
    18.     {
    19.         return false;
    20.     }

    21.     bool inside = false;
    22.     for ( unsigned int i = 0, j = points.size() - 1 ; i < points.size() ; j = i++ )
    23.     {
    24.         if ( ( points[ i ].y > p.y ) != ( points[ j ].y > p.y ) &&
    25.             p.x < ( points[ j ].x - points[ i ].x ) * ( p.y - points[ i ].y ) / ( points[ j ].y - points[ i ].y ) + points[ i ].x )
    26.         {
    27.             inside = !inside;
    28.         }
    29.     }

    30.     return inside;
    31. }
    复制代码

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    推荐膜材品牌上一条 /5 下一条

    进口膜材 国产膜材 pvdf膜材ptfe膜材ETFE膜材
    最好的膜结构公司 一级膜结构资质 膜结构一级资质
    膜结构设计-膜结构十大品牌-etfe设计-充气膜结构
    诺科膜结构
    遨都膜结构设计
    中国膜结构网
    中国空间膜结构协会

    QQ|申请友链|Archiver|手机版|中国膜结构论坛

    GMT+8, 2021-3-8 01:35 , Processed in 0.302961 second(s), 24 queries .

    Powered by 中国膜结构网->膜材采购->膜结构设计->膜结构安装->膜结构维修

    © 2014-2020 膜结构协会->进口膜材->国产膜材->PVDF膜材->PTFE膜材->ETFE膜材.

    快速回复 返回顶部 返回列表