明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 916|回复: 3

[已解答] nentselp函数在模型与布局中返回结果不同————请高手指教

[复制链接]
发表于 2016-6-18 18:22 | 显示全部楼层 |阅读模式
我的一个程序
在插入一个图块以后
redraw将图块消隐
nentselp插入点
获取图块插入点处的图元
一直在模型空间中使用
没有任何问题

最近需要在布局中绘图
发现程序运行结果不对
然后在模型空间中也出现错误
几经调试
最终发现问题出在nentselp上

本人操作环境
xp+2004

下面是模拟程序
(defun c:tt()
(setq a (entsel "\n 请选择一个图块 :"))
(setq po (cadr a))
(setq bb (car a))
(redraw bb 2)
(not (not  (nentselp po)))
)

【操作步骤1】
新建图纸加载以上程序并插入一个图块
在模型空间中运行程序
返回结果nil

【操作步骤2】
布局中新建一个视口
进入视口运行程序
返回结果T

【操作步骤3】
接下来再返回模型空间运行程序
返回结果T

【操作步骤4】
新建图纸加载以上程序并插入一个图块
布局中新建一个视口
返回模型空间运行程序
返回结果T

从以上4次运行结果看
第1次的nentselp未拾取到图元
这是正确的
因为图块已经消隐了
而后3次的nentselp都拾取到了消隐状态下的图块
它们都有一个共同的特点——操作发生在建立视口以后

请高手解答:
以上情况是什么原因造成的?
或者只是CAD版本的原因?
如何解决?
"觉得好,就打赏"
还没有人打赏,支持一下
 楼主| 发表于 2016-6-18 19:26 | 显示全部楼层
知道了是什么问题就好处理了
原来是消隐
现在改为临时entdel
需要时再entdel回来
程序上的修改倒是很简单

只是对这个问题出现的原因很好奇
发表于 2016-6-18 20:28 | 显示全部楼层
换后面新版测试一下看看
 楼主| 发表于 2016-6-18 20:50 | 显示全部楼层
程序在08测试没问题
看来就是版本的问题?
不管怎样
entdel 比 redraw 更保险
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-30 16:21 , Processed in 0.185183 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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