wangfan213 发表于 2010-12-30 16:01:04

求助 变体variant 如何 从中取值 为list


(defun C:xq();使圆相切
(vl-load-com)
(setq ec1 (car (entsel "\n选择基准圆:")));获取圆的图元名
(setq ec2 (car (entsel "\n选择移动圆:")));获取圆的图元名
(setq v_c1 (vlax-ename->vla-object ec1));将圆的图元名转换为VLA对象
(setq v_c2 (vlax-ename->vla-object ec2));将圆的图元名转换为VLA对象
(setq cntr1 (vlax-get-property v_c1 'center));cbtr1为variant体
(setq cntr2 (vlax-get-property v_c2 'center))

(setq cntr1 (list (car cntr1) (cadr cntr1) )
;如何取出variantcntr1 即圆1的 坐标值这里 我写错了   谁能知道一下吗 ?
cntr2 (list (car cntr2) (cadr cntr2) )
)

(setq dist (distance cntr1 cntr2))
(setq rad1 (vlax-get-property v_c1 'radius))
(setq rad2 (vlax-get-property v_c2 'radius))
(setq md (- dist rad1 rad2));第二个圆圆心移动的距离
(setq p0 (polar cntr2 (angle cntr2 cntr1) md))
(vla-put-center v_c2p0)

)

wangfan213 发表于 2010-12-30 17:49:25

给点力啊

Andyhon 发表于 2010-12-30 19:13:57

(vlax-safearray->list (vlax-variant-value cntr1))

wangfan213 发表于 2010-12-30 21:24:24

回复 Andyhon 的帖子

朋友万分感谢
页: [1]
查看完整版本: 求助 变体variant 如何 从中取值 为list