flowerrobot 发表于 2022-7-6 17:04:19

插入动态块并设置v

我已经搜索过了,只能找到vba代码,我对这些愚蠢的简单代码一无所知,但无论如何
 
我正在尝试插入动态块
包括参数
 

(defun c:ip()
(setq oldlayer (getvar "-.layer"))   
(setvar "cmdecho" 0)
(setq sc (getvar "dimscale"))
(SETQ LA (GETVAR "OSMODE"))
(COMMAND "LAYER" "S" "DIM" "")
(command "osmode" 5)
(setq pt1(getpoint "\nSELECT FIRST POINT : "))
(setq pt2(getpoint "\nSELECT SECOND POINT : "))
(SETQ XA ((CAR PT1)-(CAR PT2))) ; not sure if these are correct
(SETQ YA (CAR PT1)-(CAR PT2))
(SETQ LG (SQROOT(XA)^2+(YA)^2))
(SETQ AG (SIN^-1 (XA/YA)))
(COMMAND "INSERT" "ITA" PT1 SC SC 0)

I WANT TO PLACE IMPUT IN THIS BIT HERE
LENGTH = LG
ANGLE = AG
(COMMAND "LAYER" "S" OLDLAYER "")
(command "osmode" la)
(Setvar cmdecho 1)
(princ)
)

Lee Mac 发表于 2022-7-6 17:28:07

这会让你开始-我没有时间想太多
 

(defun c:ip (/ oldlayer oldcmd sc oldsnap pt1 pt2 lg ag)
   (setq oldlayer (getvar "clayer"))   
   (setq oldcmd (getvar "cmdecho"))
   (if (/= (setq sc1 (getvar "dimscale")) 0.0)
   (setq sc sc1)
   (setq sc 1.0)) ; end if
   (setq oldosnap (getvar "osmode"))
   (if (not (tblsearch "layer" "DIM"))
       (command "-layer" "m" "DIM" "")
       (setvar "clayer" "DIM")
   ) ; end if
   (command "osmode" 5)
   (if   
       (and
            (setq pt1 (getpoint "\nSELECT FIRST POINT : "))
            (setq pt2 (getpoint "\nSELECT SECOND POINT : "))
       ) ; end and
       (progn
            (setq lg (distance pt1 pt2))
            (setq ag (angle pt1 pt2))
            (command "insert" "ITA" pt1 sc sc 0)

; I WANT TO PLACE IMPUT IN THIS BIT HERE
; LENGTH = LG
; ANGLE = AG

      ) ; end progn
   ) ; end if
    (setvar "clayer" oldlayer)
    (setvar "osmode" oldsnap)
    (setvar "cmdecho" oldcmd)
    (princ)
)

flowerrobot 发表于 2022-7-6 17:42:02

干杯,一定要说你对自己很满意,不是吗,有些东西我很欠缺。
 
很容易知道距离和角度,
 
只需要能够将这些信息放入动态块属性中

ASMI 发表于 2022-7-6 18:03:07

>花卉机器人
 
您似乎提出了一个关于动态块参数的问题http://www.cadtutor.net/forum/showthread.php?t=29624

flowerrobot 发表于 2022-7-6 18:10:24

对不起,我不相信你已经回复了我,
我不想抬高他的线,
它还提供了一个更容易的搜索从一些一个元素
干杯
页: [1]
查看完整版本: 插入动态块并设置v