lisp 删除编组中图元_利用Autolisp语言实现重复实体的删除

利用

Autolisp

语言实现重复实体的删除

:

随着外业数据的采集和内业

Autocad

图形编辑的不断深入

,

这些日常

维护有可能在图形中产生重复数据实体。

本文阐述了如何用

Autolisp

语言编程删

除这些重复实体

,

以确保图元在地形图中的唯一性和合理性。

关键词

:Autolisp

语言

重复实体

Autocad

数字化测绘大部分都是使用

Autocad

软件

,

即使是大型商用测绘软件有些也

是以

Autocad

为基础平台

,

例如南方测绘公司的

CASS

软件。因此

,

学会使用

Autocad

是每个测绘工作者的必修课。而单单会使用

Autocad

还不能完全解决工

作中可能出现的问题。例如

,

由于重复插入图块或者原地复制实体造成图形中存

在大量重复的实体

,

依靠

Autocad

现有命令又不能完全删除干净。这时就要用到

Autolisp

语言了。

Autolisp

语言是开发

Autocad

的重要工具

,

Lisp

语言和

Autocad

有机结合的产物

,

Autocad

的程序开发过程中起到了巨大的作用。所以

,

学好

Autolisp

语言

,

从而在工作中设计一个好的处理程序

,

会使复杂的任务变得简单容

易、事半功倍。

1

程序设计思路

首先生成一个选择集

,

选择要处理的图形实体。其次对选择集的全部实体进

行重复比对

,

把过滤出的重复实体添加到另一个选择集。最后删除掉重复实体选

择集中的图元。

2

自定义函数

处理过程中用到两个重要自定义函数

,

第一是包含实体的最小外框函数

:

(defun xyp-get-MinMaxPoint (ename mode / pointmax pointmin

dx dy pt1 pt2 pt3 pt4 pt5

pt6 pt7 pt8 pt9 point

);

此函数为得到实体外围框九点坐标表

(vla-getboundingbox

(vlax-ename->vla-object ename)

„minpoint

„maxpoint

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值