277283904
发表于 2024-1-2 17:44:01
你有种再说一遍 发表于 2024-1-2 17:22
遍历偏移咯
怎么编,菜鸟一个{:1_1:}
你有种再说一遍
发表于 2024-1-2 17:49:23
277283904 发表于 2024-1-2 17:44
怎么编,菜鸟一个
B站一下李小科,然后学学,大概一个月之后你就会了
飞雪神光
发表于 2024-1-2 17:49:25
277283904 发表于 2024-1-2 17:41
就是下面的白线的偏移,不要标注,标注只是给大家看的
用上面网址里的改一下就是了(defun c:tt3 (/ dis1 dis2 en n pt)
(setvar "cmdecho" 0)
(setq
en (entsel "\n选择需要偏移的对象:")
dis1 (getreal "\n偏移距离1:")
dis2 (getreal "\n偏移距离2:")
pt (getpoint "\n指定偏移方向一点:")
)
(command "offset" dis1 en pt "")
(command "offset" (+ dis1 dis2) en pt "");此处可以和上面的对比
(princ)
)
277283904
发表于 2024-1-2 18:23:46
你有种再说一遍 发表于 2024-1-2 17:49
B站一下李小科,然后学学,大概一个月之后你就会了
感谢!有空去看看
277283904
发表于 2024-1-2 18:25:18
本帖最后由 277283904 于 2024-1-2 18:26 编辑
飞雪神光 发表于 2024-1-2 17:49
用上面网址里的改一下就是了
感谢,就是我要的效果,那要一次性偏移4个距离呢,怎么写
277283904
发表于 2024-1-2 18:32:38
你有种再说一遍 发表于 2024-1-2 17:49
B站一下李小科,然后学学,大概一个月之后你就会了
搜了没有呢
xyp1964
发表于 2024-1-2 18:48:44
(defun c:tt ()
(setq lst '(-15 -30 20 60 100)) ;批量偏移距离表
(while (setq s1 (car (entsel "\n选择需要偏移的对象: ")))
(setq ob (vlax-ename->vla-object s1))
(mapcar '(lambda (x) (vla-offset ob x)) lst)
)
(princ)
)
hhh454
发表于 2024-1-2 18:55:55
277283904 发表于 2024-1-2 17:17
他是固定距离,不是我想要的,谢谢!
里面是源码,数值自己改就行
(foreach n '(50 100 300 600)
你有种再说一遍
发表于 2024-1-2 19:01:28
277283904 发表于 2024-1-2 18:32
搜了没有呢
cad二次开发
飞雪神光
发表于 2024-1-2 19:45:42
277283904 发表于 2024-1-2 18:25
感谢,就是我要的效果,那要一次性偏移4个距离呢,怎么写
那就按那个foreach源码改 大于三个输入就可以用dcl了 或者用逗号分隔你这个需求像是贱人的有一个 批量偏移的功能