乐筑天下

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

图形实体选择

[复制链接]
wql

31

主题

47

帖子

9

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
171
发表于 2003-3-31 14:40:00 | 显示全部楼层 |阅读模式
请教用visual Lisp如何确定选择图形实体的部位(如多段线的哪一段)。谢谢!
回复

使用道具 举报

22

主题

248

帖子

10

银币

后起之秀

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

铜币
336
发表于 2003-3-31 15:13:00 | 显示全部楼层
(NEntSel [提示字串])
指定一个对象,返回图元名和其它信息:
简单对象: 与 (EntSel) 相同
复杂对象: 与 (EntSel) 相似,图元名是所指片段的名
多重对象: 返回一个表,第一项是所指片段的图元名;
                    第二项是所指点位;
                    第三项是3x4转换矩阵;
                    第四项是图元名表
回复

使用道具 举报

chg

26

主题

187

帖子

9

银币

后起之秀

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

铜币
291
发表于 2003-3-31 19:41:00 | 显示全部楼层

(nentsel)函数对你选择了多段线的哪一段是没有能力得知的。但它对块的子图元有作用,如陈老师所说。
关于你选择了多段线的哪一段,你看看本论坛的帖子。
http://www.mjtd.com/a2/list.asp?id=275
回复

使用道具 举报

26

主题

345

帖子

11

银币

后起之秀

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

铜币
448
发表于 2003-3-31 20:18:00 | 显示全部楼层
命令: (setq ls (nentsel))
选择对象: ( (2347.42 -75.0656 0.0))
命令: (setq en (car ls))
命令: !ls ( (2347.42 -75.0656 0.0))
命令: (setq ed (entget en)) ((-1 . ) (0 . "LWPOLYLINE") (330
. ) (5 . "113B6") (100 . "AcDbEntity") (67 . 0) (410 .
"Model") (8 . "1") (100 . "AcDbPolyline") (90 . 5) (70 . 1) (43 . 0.0) (38 .
0.0) (39 . 0.0) (10 2286.74 -107.685) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10
2310.22 -66.4528) (40 . 0.0) (41 . 0.0) (42 . 0.0) (10 2379.41 -82.3114) (40 .
0.0) (41 . 0.0) (42 . 0.0) (10 2373.7 -124.178) (40 . 0.0) (41 . 0.0) (42 .
0.0) (10 2318.48 -126.715) (40 . 0.0) (41 . 0.0) (42 . 0.0) (210 0.0 0.0 1.0))
回复

使用道具 举报

29

主题

1152

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1268
发表于 2003-4-9 12:28:00 | 显示全部楼层
;;SEGMENT FROM STARTPT
;;USAGESEGMENT (ENTSEL))
(defun SEGMENT (ENT / PNT VOBJ PARAM)
  (setq VOBJ (vlax-ename->vla-object (car ENT)))
  (setq PNT (vlax-curve-getclosestpointto VOBJ (trans (cadr ENT) 1 0)))
  (setq PARAM (1+ (fix (vlax-curve-getparamatpoint VOBJ PNT))))
)
回复

使用道具 举报

22

主题

248

帖子

10

银币

后起之秀

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

铜币
336
发表于 2003-4-9 15:45:00 | 显示全部楼层
这个LWPolyLine实在是个“有趣”的对象类型。我们看到,LWPolyLine对象是从AutoCAD R14起新增加的,最主要特点是数据长度小了:
                1000条 Line _51,956 bytes
                1000直线片段的 Polyline _42,087 bytes
                1000直线片段的 LWPolyline _13,957 bytes
同时,LWPolyLine的编辑处理速度也明显快于PolyLine。这些明确的技术指针,说明的数据结构确实有其独特之处。默认状态下,生成的多段线都是LWPolyLine,由系统变量PlineType控制多段线命令的结果类型和兼容性。但是,对于程序设计来说,LWPolyLine对象实在令人哭笑不得,笔者认为,这个LWPolyLine数据结构和相关处理功能,是AutoCAD最近版本中最为失败的新设计。目前已经碰到的问题如下所述。
摘自《Vieual LISP程序设计——技巧与范例》
回复

使用道具 举报

29

主题

1152

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1268
发表于 2003-4-11 08:13:00 | 显示全部楼层
[此贴子已经被作者于2003-4-11 8:13:31编辑过]
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-2 13:04 , Processed in 0.851072 second(s), 66 queries .

© 2020-2025 乐筑天下

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