明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
楼主: userzhl

[求助]求助高手,图块的插入点的组码是多少?如何能快速在选择集中获取?

  [复制链接]
发表于 2008-12-21 15:31:00 | 显示全部楼层


(setq ssi (ssget '((0 . "INSERT"))))
(if ssi
  (if (> (sslength ssi) 1)
    (princ (strcat "\n 选择的有" (itoa (- (sslength ssi) 1)) "个多余,程序将任选其一对象\n"))
  )
)

(if (= (cdr (assoc 2 (setq edat (entget (setq e (ssname ssi 0)))))) "材料")
  (progn
    (setq INS (cdr (assoc 10 edat)));;INS 返回的是什么?
    (command "_.move" e "" "_non" INS "_non" PT1)
  )
)

出错信息是什么?

 楼主| 发表于 2008-12-21 15:36:00 | 显示全部楼层
返回的是INS的坐标点,但没有移动物体 e ,我是想把物体 e 移动到指定的点 PT1
发表于 2008-12-21 15:53:00 | 显示全部楼层

块改插入点的方法是在2006以上才可以(bedit命令存在)

在之前版本的CAD中比较麻烦

 楼主| 发表于 2008-12-21 16:03:00 | 显示全部楼层
我不是要改变块的插入点,而是要移动图块。
发表于 2008-12-21 16:10:00 | 显示全部楼层

方法1

(setvar "osmode" 0)

(command "move" (car(entsel)) "" (setq pt1(getpoint "原点"))(getpoint pt2 "移动到"))

方法2

(vlax-put-property (vlax-ename->vla-object (car (entsel))) 'InsertionPoint (vlax-3d-point '(10 10)))

那个10 10就是新的坐标点根据插入点对块图元进行移动

发表于 2008-12-21 16:15:00 | 显示全部楼层

方法3

(vlax-invoke-method (vlax-ename->vla-object (car (entsel))) 'Move (vlax-3d-point '(0 0)) (vlax-3d-point '(10 10)) )

0,0点移到10,10点(忽视捕捉)

 楼主| 发表于 2008-12-21 16:38:00 | 显示全部楼层
(setq ssi (ssget '((0 . "INSERT"))))
(if ssi
  (if (> (sslength ssi) 1)
    (princ (strcat "\n 选择的有" (itoa (- (sslength ssi) 1)) "个多余,程序将任选其一对象\n"))
  )
)

(if (= (cdr (assoc 2 (setq edat (entget (setq e (ssname ssi 0)))))) "材料")
  (progn
    (setq INS (cdr (assoc 10 edat)));;INS 返回的是什么?
    (command "_.move" e "" "_non" INS "_non" PT1)
  )
)

其中的INS如何转换成:(vlax-3d-point '(0 0))?

 楼主| 发表于 2008-12-21 17:06:00 | 显示全部楼层
(setq ssi (ssget '((0 . "INSERT"))))
(if ssi
  (if (> (sslength ssi) 1)
    (princ (strcat "\n 选择的有" (itoa (- (sslength ssi) 1)) "个多余,程序将任选其一对象\n"))
  )
)

(if (= (cdr (assoc 2 (setq edat (entget (setq e (ssname ssi 0)))))) "材料")
  (progn
    (setq INS (cdr (assoc 10 edat)))

    (command "move" (entget e) "" INS 0,0);这一句为何不行呢?
  )
)

发表于 2008-12-21 17:30:00 | 显示全部楼层
(command "move" (car(entsel)) "" "0,0" "10,10");键盘输入方式模拟
 楼主| 发表于 2008-12-21 20:27:00 | 显示全部楼层
(91.121 53.8256 0.0)如何转换成:"91.121,53.8256"呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-6-18 06:49 , Processed in 0.173180 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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