请教有关2个相交多边形合并为一个多边形问题,各位给点思路!谢谢!

wangm972 2004-07-29 01:52:32
已知2个多边形的所有顶点的坐标(保存在数组之中),求合并后多边形的坐标?
哪位高手给点算法思路,有代码更好!谢谢!
...全文
427 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
梧桐168 2004-07-30
  • 打赏
  • 举报
回复
第一步,第二步顺序互换

梧桐168 2004-07-30
  • 打赏
  • 举报
回复
v11_______v12
\ \ \ \ v16 \ A v13
| v21 ____\i1_____v22
| | | |
| | | B |
| | | |
| |v24___|i2_______|v23
| |
| |
v15|____________|v14


如图,漫游顺序:
v11-v12-v13-i1-(转入)-v22-v23-i2--(转入)-v14- v15-v11
梧桐168 2004-07-30
  • 打赏
  • 举报
回复
采用交点转入法
1。求出交点。并记录与交点相邻的两个多边形上的的点,建立一个转入表。
2。将两个多边形的顶点按顺时针排列。(如果是裁剪那就是一个逆时针,一个顺时针)
3。从一多边形上的点(设为起始点)开始漫游记录下经过得点,碰到交点,根据转入表自动转入另外一个多边形。
4。直至回到起始点,连接漫游记录下经过得点,既生成新的多边形。
核桃2000 2004-07-30
  • 打赏
  • 举报
回复
我觉得DeautyFan(痴情浪子) 的方法更简单直接一些
110_110_110 2004-07-29
  • 打赏
  • 举报
回复
我帮你试一下:
1将A图坐标点构成循环链表的节点。
2依次B图中检查中的横竖坐标,如果是在A图中,删除掉。
3如未完转2,否则结束
syy64 2004-07-29
  • 打赏
  • 举报
回复
GIS中的拓扑和OverLay原理。
wangm972 2004-07-29
  • 打赏
  • 举报
回复
交点怎么求?要是循环判断1条线段与其他的线段是否相交,那也太麻烦了吧
无敌魔仙 2004-07-29
  • 打赏
  • 举报
回复
建立两个 region (CreatePolygonRgn),然后合并之CombineRgn
狂放之歌 2004-07-29
  • 打赏
  • 举报
回复
找出交点坐标啊~

直线方程求解
wangm972 2004-07-29
  • 打赏
  • 举报
回复
如图
__________
\ \ \ \ \ A | ____|__________
| | | |
| | | B |
| | | |
| |___|_________|
| |
| |
|_________|

多边形A、B,合并后变为一个多边形C
__________
\ \ \ \ \ | |__________
| |
| C |
| |
| _________|
| |
| |
|_________|

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧