明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2867|回复: 11

求凸包

  [复制链接]
发表于 2004-3-17 12:04:00 | 显示全部楼层 |阅读模式
在LISP如何一个求物体的凸包哦,
发表于 2004-3-17 20:34:00 | 显示全部楼层
什么是凸包?
 楼主| 发表于 2004-3-17 21:51:00 | 显示全部楼层
就是包围物体的最大凸集
 楼主| 发表于 2004-3-18 17:03:00 | 显示全部楼层
对不起,错了,应该是包围物体的最小凸集
发表于 2004-3-18 17:48:00 | 显示全部楼层
如果是一条直线,它的凸包是什么?(图示一下)
发表于 2004-3-18 18:20:00 | 显示全部楼层
manjiaju;你说的凸集是数学中的凸集么?如:[ 1 10]么?是包含首尾在内的所有元素么?
 楼主| 发表于 2004-3-19 13:16:00 | 显示全部楼层
直线段的凸集就是它本身,直观地说,如果在平面上有几个钉子,你用一根橡皮筋套在外面,绷紧后的多边形就是这个点集的凸包
发表于 2004-3-22 13:34:00 | 显示全部楼层
1:点归入选择集ss0,先取出最左点P1,最上点P2,最右点P3,最下点P4四个关键点,P1P2左上角归入集ss1,P2P3右上角归入集ss2,P3P4右下角归入集ss3,P3P4左下角归入集ss4,把p1,p2,p3,p4点围成的区域内的点移出选择集,


2:[在ss1取出最左点P11,把p1,p2,p11点围成的区域内的点移出选择集ss1],重复[****]步调直到ss1为nil,


3:[在ss2取出最上点P21,把p2,p3,p21点围成的区域内的点移出选择集ss2],重复[****]步调直到ss2为nil,


4:[在ss3取出最上点P31,把p3,p4,p31点围成的区域内的点移出选择集ss3],重复[****]步调直到ss3为nil,


4:[在ss4取出最上点P41,把p4,p1,p41点围成的区域内的点移出选择集ss4],重复[****]步调直到ss4为nil,


5:把P1-->历次P11--&gt2-->历次P21--&gt3-->历次P31--&gt4-->历次P41--&gt1围起来即成你要的凸包线。
发表于 2004-3-22 14:56:00 | 显示全部楼层
应为 : 1:点归入选择集ss0,先取出最左点P1,最上点P2,最右点P3,最下点P4四个关键点,P1P2左上角归入集ss1,
P2P3右上角归入集ss2,P3P4右下角归入集ss3,P3P4左下角归入集ss4,把p1,p2,p3,p4点围成的区域内的
点移出选择集,
2:[在ss1取出最左点P11,把p1,p2,p11点围成的区域内的点移出选择集ss1],重复[****]步调直到ss1为nil,
3:[在ss2取出最上点P21,把p2,p3,p21点围成的区域内的点移出选择集ss2],重复[****]步调直到ss2为nil,
4:[在ss3取出最右点P31,把p3,p4,p31点围成的区域内的点移出选择集ss3],重复[****]步调直到ss3为nil,
5:[在ss4取出最下点P41,把p4,p1,p41点围成的区域内的点移出选择集ss4],重复[****]步调直到ss4为nil,
6:把P1-->历次P11-->2-->历次P21-->3-->历次P31-->4-->历次P41-->1围起来即成你要的凸包线。
发表于 2004-3-22 18:14:00 | 显示全部楼层
我想楼主的意思是要求一般物体的凸包,并非单指点集
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-27 22:41 , Processed in 0.203016 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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