ReMark 发表于 2022-7-6 07:00:58

安装beadboard时,木匠是否尝试使两个端板的宽度相同?

ADSK2007 发表于 2022-7-6 07:05:34

假设我在一栋办公楼的所有房间上都使用beadboard,我有所有房间465'-11 3/8的周长“我知道我的棋盘宽度是3.658。现在我知道我可以用一个简单的数学计算出所需的间距,但你不认为一个简单的Lisp程序会节省一些时间并立即给我答案吗?毕竟Lisp程序会让你的生活变得轻松吗?如果我处理的是英尺和64英寸间距呢?我仍然认为Lisp程序会计时-如果我错了,请纠正我。
 
无论如何,谢谢你们的回答,你们总是很有帮助,我很感激你们的回答

ADSK2007 发表于 2022-7-6 07:08:02

评论
 
是的,这就是Lisp程序的全部意义,因此没有末端切割。我们希望所有的电路板尺寸相同,只是间距有所变化。
 
谢谢

ReMark 发表于 2022-7-6 07:11:15

真正地你调整板条之间的间距以避免切割板材?当你在房间里走来走去,遇到门洞和其他类似的障碍物时,你会这样做吗?客户没有意识到间隔可能不同?我从来不知道。在我的维多利亚式房子里,所有的木板板条之间的间距都是完全一样的。甚至看起来,做这件事的人从一个角落开始,用一个全板条,然后在房间里顺时针旋转。当他走到一个角落时,一块木板必须被切下来,剩下的一块就掉到了与第一块木板垂直的下一面墙上。

ADSK2007 发表于 2022-7-6 07:14:20

哦,我明白你的意思了-不,我不是说每堵墙都有不同的间距,所有房间的间距都是相等的-这就是为什么我提到“总长度”,我指的是所有房间的总长度-
我希望画一条连续的闭合线,从一个房间到另一个房间,再回到我开始的地方
 
现在,程序可以问我总长度或选择一个有起点的对象,然后问我板的长度和我可能需要的数量——这样我选择闭合的线作为我的总长度,然后我给出板的长度和最后的数量——如果你看第一篇文章,我确实提到,如果该例程能够在对象上实际放置节点以指示两者之间的间距,那就太好了——我记得Lee有一个例程,可以选择一条pline并将其分成相等的段。他有一个很好的功能,可以在pline上插入点。当我看到lisp时,我想如果例程可以有两个不同的间距,这样一旦给定了总长度和数量,一个维度就可以统治另一个维度。
 
当做

pBe 发表于 2022-7-6 07:15:40

演示代码
 
(defun c:demo ()
(setvar 'osmode 512);-- nearest osnap
(setq wall1 (getpoint "\nPick start point"));<-- point at wall
(setvar 'osmode 128);-- perpendicular osnap
(setq wall2 (getpoint wall1 "\nPick next point"));<-- point at opposite wall
(setq dist (distance wall1 wall2))
(setq qnty (fix (/ dist 6)));<-- board width
(setq gap (/ (- dist (* qnty 6)) (1- qnty)));<-- gap width
(setvar 'osmode 0)
(command "_line" wall1 (polar wall1 0 6) "")
(command "_-array" (entlast) "" "_Rectangular" "1" qnty (+ gap 6))
   (princ)
)
 
现在,如果我能学习李·麦克的技巧,让这些代码都用颜色格式化,等等。。。哎呀,我现在看到其他人已经在我前面回复了。它只是告诉你,总有人比你更聪明。

ADSK2007 发表于 2022-7-6 07:18:22

 
伙计,你是从现场的角度来看的。这是一条不成文的规则,细节设计人员在进行细节设计时总是倾向于自然,让在场的人处理诸如窗户、不方正、不垂直、超高、地板不平等问题。。。这是做一个细节设计师的奢侈。你可以抱怨那些在场上的家伙,他们听不见你说话。。。
 
我为结构构件的o.c.间距编写了很多这样的代码。在我的工作中,oc空间是变量,珠板将是固定尺寸。。。通常是通道或工字钢法兰的宽度。布局不同,但原则相同。我被要求做的是将所有的东西均匀地隔开,让最后的两个空格任意排列,但要彼此一致。看到这种材料如何与金属光栅或任何可以应用矩阵的东西一起工作,这很酷。

Bill Tillman 发表于 2022-7-6 07:24:01

 
快速脏代码。。
 
(defun c:演示(/os p1 p2 gap dist ang quantity board board Size)(setq os(getvar osmode))(setvar osmode 512)(setq gap nil p1(getpoint“\nPick start point”))(setvar osmode 128)(setq p2(getpoint p1“\nPick next point”))(setq dist(dist p1 p2)ang(ang p1 p2))(while(and(null gap)(setq board Size(getdist“\n输入电路板尺寸:”)(setq数量(getint“\n输入电路板数量:”))(如果(

Bill Tillman 发表于 2022-7-6 07:26:24

pBe 发表于 2022-7-6 07:29:38

 
Quick and dirty code..
 

(defun c:demo(/ os p1 p2 gap dist ang quantity board boardsize)   (setq os (getvar 'osmode))   (setvar 'osmode 512)   (setq gap nil         p1(getpoint "\nPick start point"))   (setvar 'osmode 128)   (setq p2 (getpoint p1 "\nPick next point"))   (setq dist (distance p1 p2)         ang(Angle p1 p2))   (while (and (null gap)               (setq boardsize (getdist "\nEnter Board size: "))               (setq quantity                            (getint "\nEnter Number of boards: ")))         (if (
页: 1 [2]
查看完整版本: Lisp创建beadboard pat