乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 121|回复: 9

如何判断点在某个封闭的区域内部?

[复制链接]

3

主题

3

帖子

3

银币

初来乍到

Rank: 1

铜币
15
发表于 2003-11-25 08:45:00 | 显示全部楼层 |阅读模式
如何判断点在某个封闭的区域内部?请高手指教
回复

使用道具 举报

0

主题

2

帖子

1

银币

初来乍到

Rank: 1

铜币
2
发表于 2003-11-25 09:11:00 | 显示全部楼层
q
回复

使用道具 举报

0

主题

2

帖子

1

银币

初来乍到

Rank: 1

铜币
2
发表于 2003-11-25 09:18:00 | 显示全部楼层
想请教高手两个问题:
1用OBJECTARX如何实现在AUTOCAD主画面上实现树形控件
2如何使用OBJECTARX向导的CLASS WIZARD
谢谢
我的邮箱:wyxcs@163.com
请大家不吝赐教。
顺便问一下:
我为什么不能发贴子啊?
回复

使用道具 举报

2

主题

18

帖子

6

银币

初来乍到

Rank: 1

铜币
26
发表于 2003-11-25 15:37:00 | 显示全部楼层
⑴ 对于任意一点可以用射线法判断该点是否在闭合区域内,如图1所示:从该点引一条与多边形相交的水平线并计算与多边形的交点个数,如果交点个数为偶数或零,则该点在区域外,如点A;如果交点个数为奇数,则该点在区域内,如点B,点C。
回复

使用道具 举报

7

主题

13

帖子

1

银币

初来乍到

Rank: 1

铜币
41
发表于 2003-11-27 11:16:00 | 显示全部楼层
BOOL ifPointinPolyline(ads_point point, AcDbPolyline *pPl)
{
        AcDbPolyline * pPline=pPl;
        AcGePoint3d point3d;
        point3d[X]=point[X];
        point3d[Y]=point[Y];
        point3d[Z]=point[Z];
        
        AcDbRay *pRay = new AcDbRay();
        pRay->setBasePoint(point3d);
        pRay->setUnitDir(AcGeVector3d(1,0,0));
        AcGePoint3dArray pts;
        pts.setLogicalLength(0);
        
        //用过线段起点的射线与图框求交
        Acad::ErrorStatus es = pRay->intersectWith
(pPline,AcDb::kOnBothOperands,pts);
        if(es!=Acad::eOk){
                delete pRay;
                return 0;
        }
               
        Adesk::Boolean bSt = Adesk::kTrue,bEd = Adesk::kTrue;
        //如果交点数为ji数,说明点在图框内部
        if(pts.length()%2!=0){
                delete pRay;
                return 1;
        }
        
        delete pRay;
        return 0;
}
回复

使用道具 举报

21

主题

216

帖子

9

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
305
发表于 2003-11-29 14:29:00 | 显示全部楼层
好像还有一种情况:
顶点在线上,这时候也有一个交点吧?
回复

使用道具 举报

2

主题

35

帖子

4

银币

初来乍到

Rank: 1

铜币
43
发表于 2003-11-30 10:09:00 | 显示全部楼层
"某个封闭的区域",这个区域是已知的还是未知的?这两种的算法是不相同的!
回复

使用道具 举报

7

主题

13

帖子

1

银币

初来乍到

Rank: 1

铜币
41
发表于 2003-12-1 08:59:00 | 显示全部楼层
仅是抛砖引玉,还望各位大虾不吝丰富小函数,使之圆满
回复

使用道具 举报

11

主题

36

帖子

2

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
80
发表于 2003-12-11 14:31:00 | 显示全部楼层
我的代码又贴这了?!
不过有个问题我一直没处理,就是交点正好在区域的一个定点时。用的时候注意啦!!
回复

使用道具 举报

8

主题

56

帖子

6

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
88
发表于 2003-12-11 19:38:00 | 显示全部楼层
以上代码没有考虑到凹多边形,自相交的多边形更难判断.
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-4 15:01 , Processed in 0.175615 second(s), 72 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表