求教高手
ggyyping
ggyyping Lv.2
2005年10月16日 16:47:16
只看楼主

一开始放在离原点较远,剖出来说漏剖了,移到原点后就只能剖出一两个高程。说:参数类型错误:numberp:nil

一开始放在离原点较远,剖出来说漏剖了,移到原点后就只能剖出一两个高程。说:参数类型错误:numberp:nil

1129452427599.JPG

免费打赏
ggyyping
2005年10月16日 16:48:30
2楼
附图
回复
gzzdm
2005年10月17日 08:04:04
3楼
用p_bg命令设置中心线高程,不允许将图用ctrl+c拷贝到另一张图,原因是设置成组的高程点解散了。如果在本图进行了移动拷贝操作一定要用upipe命令更新数据。你的图就存在这个问题,我将扩展数据删除了就可以剖切了。见附件。

下面是删除扩展数据命令,可以将他拷贝带c:\zdm2004\acad.lsp文件中,用(load "acad.lsp")然后在命令行执行delx命令就可以了。

;;;删除扩展实体
(defun c:delx (/ st appname ssn fs n appnameb appname1 exdata m exname en)
(SETQ APPNAME "")
(setq appname (strcase (getstring "\n给定应用程序名<不给定,全部删除>:")))
(if (= appname "") (setq appname "*"))
(setq n 0 m 0)
(princ "\n选择物体:")
(setq ss (ssget))
(while (and ss (< n (sslength ss)))
(setq fs 0)
(setq ssn (ssname ss n))
(setq en (vlax-ename->vla-object ssn))
(if (= appname "*")
(progn
(if (setq exdata (assoc ’-3 (entget ssn (list appname))));;;扩展数据表
(progn
(setq appnameb (list "0"))
(setq exdata (cdr exdata))
(while exdata
(setq appnameb (cons (car (car exdata)) appnameb))
(setq exdata (cdr exdata))
)
(setq appnameb (cdr (reverse appnameb)))
(while appnameb
(setq appname1 (car appnameb))
(del_x ssn appname1)
(setq appnameb (cdr appnameb))
)
(setq m (+ m 1))
)

)
(if (setq exdata (vlax-ldata-list en))
(while exdata
(setq exname (car (car exdata)))
(vlax-ldata-delete en exname)
(setq exdata (cdr exdata))
(setq m (+ m 1))
)
)
)
(progn
(del_x ssn appname)
(setq m (+ m 1))
)
)

(setq n (+ n 1))
)
(if (> m 0)
(alert (strcat "成功删除了" (rtos m 2 0) "个扩展数据!"))
(alert "未找到扩展实体!")
)
(princ)
)
回复
ggyyping
2005年10月17日 12:44:52
4楼
谢谢张工的帮助。受教了
回复

相关推荐

APP内打开