需要斜率lisp
我要找的是一个lisp,如果我使用别名(hc),它会提示我在图形上选择一个块,然后提示要使用的坡度(即-1/8英寸/英尺,+1/8英寸/英尺或我需要的任何坡度/英尺),然后提示要复制的次数,然后提示复制块之间的间距(英尺和英寸),最后提示复制块的方向。这将节省我手动移动所有这些块的时间。
提前感谢!!!
NH3人! 忘了提到这是用于3d图形的,所以节距或斜率在Z轴上。
再次感谢! 如果您发布已经编写的代码,那么帮助您会更容易。
狡猾的 嗯,我不想听起来很傻,但如果我写了它,我就不需要要求了。我对编写lisp代码一点也不熟悉。我所能做的就是描述我需要它做什么。 在NH3中,我们中的许多人都非常渴望进入AutoCAD,为任何一个打电话的人拼凑出一个工作脚本。。见鬼,这里的大多数人都是为了好玩才做LISP的,而且总是欢迎挑战。。但这是一个帮助论坛,不像许多人之前指出的那样,是一个Lisp程序的集市。请自己试一试,即使您可以阅读一些帮助文件并给我们一个概念。。你可能有一些想法。。即使是对可能产生合理解决方案的原始机制的概念性理解。。我们非常乐意填补您在知识和帮助方面的空白。 我给你一个起点
(defun c:hc (/ cBlk)
(if (and (setq cBlk (car (entsel "\nSelect Block: ")))
(eq "INSERT" (cdr (assoc 0 (entget cBlk)))))
(progn
Tbh,这是一个无聊的LISP编写-大量的用户提示,和繁琐的复制。。。
但是,当你说这是在3D中,块在3D空间中复制的方向是什么?
或者你是说只是指定要复制的x或y方向?
如果你想的话,这是一个开始。。。仅合并违约:
(defun c:hc (/ cBlk tmp1 tmp2 tmp3)
(or hc$slp:def (setq hc$slp:def 1))
(or hc$cop:def (setq hc$cop:def 1))
(or hc$spc:def (setq hc$spc:def 1))
(if (and (setq cBlk (car (entsel "\nSelect Block: ")))
(eq "INSERT" (cdr (assoc 0 (entget cBlk)))))
(progn
(initget 6)
(setq tmp1 (getreal (strcat "\nSpecify Slope <" (rtos hc$slp:def) ">1:")))
(or (not tmp1) (setq hc$slp:def tmp1))
(initget 6)
(setq tmp2 (getint (strcat "\nSpecify Number of Copies <" (itoa hc$cop:def) "> : ")))
(or (not tmp2) (setq hc$cop:def tmp2))
(initget 6)
(setq tmp3 (getreal (strcat "\nSpecify Spacing <" (rtos hc$spc:def) "> : ")))
(or (not tmp3) (setq hc$spc:def tmp3))
谢谢李,
是的,我需要复制的块将在x、y平面的方向上复制,并且高程更改将在z轴上。
我正试着和你的先发球员一起比赛,但由于某种原因,autocad现在一直在接近我。我要安装我的笔记本电脑,并尝试这种方式。
再次感谢。
我的首发还没有结束。。。甚至不会在当前状态下加载。。但我想我会给你们一些具体的开始,如果我有时间的话,我可以在此基础上再接再厉
页:
[1]
2