用vba删除cad的点的问题

tommerxx 2009-06-27 06:53:49
用多线围合了一个面,在这个围合面内以及围合面以外均有点(point),如何将不在围合面内的点删除?请给个vba的代码,谢谢!
...全文
217 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
mhm0517 2009-06-28
  • 打赏
  • 举报
回复
关于多边形的,可以先分解成多个三角形.
其实个人感到分成四边形更合适.

第一先看每个点是否在二个相邻边的斜率之间.
再看是否在另二个边的斜率之间.

如果都在,即在四边形内,有一个不在.就不在四边形内.
mhm0517 2009-06-28
  • 打赏
  • 举报
回复
给你一个示例的算法理论.代码自己写啊.

1. 面是一个三角形 (三点坐标: (X1,Y1) = (3,1) (X2,Y2) = (5,3) (X1,Y1) = (6,2) )

根据X与Y坐标知道.点的X坐标<3或X坐标>6,删除. 点的Y坐标<1或Y坐标>3,删除.

2.连接第一点与第二点,计算直线的斜率. 连接第一点与第三点,计算直线的斜率.
连接第一点与编历点,计算直线的斜率.

3.如果第三个在上面计算的二个斜率之间,刚进行第三次计算.
连接第二点与第三点,计算直线斜率. 连接第三点与编历点.计算直线斜率.
比较再次计算的斜率.可以知道点是否在面里面了.
tommerxx 2009-06-27
  • 打赏
  • 举报
回复
2楼的朋友,关键问题是如何进行比较。
mhm0517 2009-06-27
  • 打赏
  • 举报
回复
1.先编历图形中的所有点.
2.根据每个点所在的位置X与Y坐标 与多线段外围的点进行比较.
舉杯邀明月 2009-06-27
  • 打赏
  • 举报
回复
不懂CAD,友情Up.........
目录 第一章 VBA入门 了解嵌入和全局VBA工程 用VBA管理器组织工程 处理宏 用VBA IDE编辑工程 更多的信息 回顾AutoCAD VBA 工程术语 回顾AutoCAD VBA 命令 第二章 理解ActiveX自动操作基础.. 理解AutoCAD对象模型 访问对象层次 通过集合对象操作 理解属性和方法 理解父对象 定位类型库 在数据库中返回第一个图元 在方法和属性中使用变体 使用其它程序语言 第三章 控制AutoCAD环境 打开、保存和关闭图形 设定AutoCAD参数 控制应用程序窗口 控制图形窗口 重置活动对象 设定和返回系统变量 精确制图 提示用户输入 访问AutoCAD命令行 工作于无打开文档状态 输入其它文件格式 输出到其它文件格式 第四章 创建和编辑AutoCAD图元 创建对象 确定容器对象 创建直线 创建曲线对象 创建对象 创建实体填充区域 创建面域 创建阴影 创建实体填充区域 创建面域 创建阴影 编辑对象 工作于命名的对象 选择对象 复制对象 移动对象 删除对象 比例缩放对象 转换对象 延伸和修剪对象 分解对象 编辑多段线 编辑样条曲线 编辑阴影 使用图层、颜色和线型 使用图层 使用颜色 使用线型 分配图层、颜色和线型给对象 添加文本到图形中 处理文字样式 使用单行文字 使用多行文字 使用Unicode字符、控制代码和特殊字符 替换字体 拼写检查 第五章 标注与公差 标注的概念 创建标注 编辑标注 利用标注样式 在模型空间和图纸空间中标注 创建引线及注解 创建形位公差 第六章 定义菜单和工具栏 理解MenuBar和MenuGroups集合 加载菜单组 改变菜单条 创建和编辑下拉菜单和快捷菜单 建立并编辑工具栏 建立宏 对菜单项和工具栏项增加状态栏帮... 在右键菜单中增加条目 第七章 使用事件 了解AutoCAD中的事件 编写事件处理器的方法 处理应用程序级事件 处理文档级事件 处理对象级事件 第八章 在三维空间下工作 指定三维坐标 定义用户坐标系统 坐标转换 建立三维对象 在三维中编辑 编辑三维实体 第九章 定义布局及打印 了解模型空间和图纸空间 了解布局 了解布局与块的关系 了解打印配置 决定布局设置 了解视口 切换至图纸空间布局 切换至模型空间布局 建立图纸空间视口 改变视口视图及内容 在图纸空间中缩放线型样式 在被打印视口中的消隐线 打印图纸 执行基本打印 在模型空间中打印 从图纸空间打印 第十章-高级绘图与组织技术 使用光栅图像 附着和缩放光栅图像 管理光栅图像 修改图像和图像边界 剪裁图像 使用块和属性 使用块 使用属性

2,462

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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