vla-get-area提取面积时出错,如何判别呀!多谢了
我想得到一个填充图案的面积,但是用下面的语句有时候会提示“ ; 错误: Automation 错误。 输入无效”(setq a(car (entsel)))
(vla-get-area (Vlax-Ename->Vla-Object a))
经过测试后发现,有的填充有面积的值,有的没有!
遇到有的程序就可以顺利执行下去,但是遇到没有的就中断了,
请问各位大师,如何判断可以知道哪个图元有面积值,那个没有!!
多谢各位大师了!!
确实有的填充有面积,有的没有。如果程序一定要用这个读取填充面积的话可以用vl-catch-all-apply ludaweb 发表于 2016-2-16 12:30 static/image/common/back.gif
确实有的填充有面积,有的没有。如果程序一定要用这个读取填充面积的话可以用vl-catch-all-apply
大师你好!我现在对lsp还是一知半解,很多都不明白,你给出的方法我研究了好几次,依旧是没有办法解决,下面是我理解是使用方法,没有返回任何值!是我哪里出了问题?
(setq a(car (entsel)))
(setq ab (Vlax-Ename->Vla-Object a))
(vl-catch-all-error-p(vl-catch-all-apply 'vla-get-area 'ab))
在这里应该返回个什么值得吧!可是没有任何值出现
请问你给出的函数如何使用,多谢了~~!!!!
你也可以用上面的方法实验一下,任何填充的图元都是没有反应!! 用vlax-property-available-p 陨落 发表于 2016-2-16 15:20 static/image/common/back.gif
用vlax-property-available-p
你好!请问这个函数的使用格式如何?手头的资料不多,没有找到具体的使用方法!
能给个说明,或者小例子最好了,多谢!多谢!
(defun c:t3( / obj )
(setq obj (vlax-ename->vla-object (car (entsel))))
(if (vlax-property-available-p obj "area")
(princ(vlax-get-property obj 'area) )
(princ "\n无面积属性")
))
研究了半天,仍然没有办法,判断出填充图案那些有面积那些没有面积,快疯了!!
哪位大师有办法,求教了!!多谢!!! (defun c:t3( / obj catch )
(setq obj (vlax-ename->vla-object (car (entsel))))
(setq catch (vl-catch-all-apply
'vlax-get-property
(list obj 'area)
)
)
(if (vl-catch-all-error-p catch)
(princ "\n无面积属性")
(princ(vlax-get-property obj 'area) )
)
(princ)
) ludaweb 发表于 2016-2-16 18:55 static/image/common/back.gif
感谢大师,学无止境呀,多谢,多谢!
这样我的小程序就可以跟完美了!把你的代码稍微改了就成了判断是否有填充面积值得小函数了!
;判断填充图元是否有面积属性
(defun mj_t( mj_t / obj catch )
(setq obj (vlax-ename->vla-object mj_t))
(setq catch (vl-catch-all-apply'vlax-get-property(list obj 'area) ) )
(if (vl-catch-all-error-p catch)
t
nil
)
)
;在这里再次感谢帮助的所有大师!!!祝你们新年快乐,身体健康,发大财 如何让问题贴变成已解决??还是让版主帮忙吧!!
页:
[1]