Rob-GB 发表于 2022-7-6 14:52:16

对捕捉模式进行了另一次更改。见第9条。

Lee Mac 发表于 2022-7-6 14:54:17

你们真快!
但是你给出了一些很棒的建议,谢谢。

The Buzzard 发表于 2022-7-6 14:59:12

 
Buzzard,就Snap而言,在我看来,除了在使用命令调用之前关闭它之外,我会让它保持原样,用户可以用它做他们想做的事情,打开它,更改设置等等。用户可能只希望打开“最近的”,或者他/她可能希望打开所有快照。
 
只有我的0.02美元。

Rob-GB 发表于 2022-7-6 15:02:07

 
我理解李。
只是给OP一点思考,就这样。
看看其他的可能性。

Lee Mac 发表于 2022-7-6 15:03:36

 
这是我早期代码之一的子函数,使用与您的代码类似的极坐标计算方法。我没有包括dcl文件或输入,以免与许多其他信息混淆您。
 
请注意Pline命令。此子函数使用项圈距离、阶梯宽度、梯级空间和阶梯长度绘制阶梯。计算所有点,并可能相互重叠,直到pline最终闭合回插入点。换句话说,就是把这个物体作为一个整体来创造。因为它是一个整体,所以可以像旋转块时操作块一样进行操作。在执行pline命令后,您还可以看到rotate命令,该命令将提示您输入旋转角度并在插入点旋转。这比使用松散的多段线要好得多。在例如窗扇的情况下,可以在插入后将窗扇作为一个整体旋转,就像块一样。
 
再多想想。
你可以用lisp做很多事情。
 
 

(mapcar 'setvar '("CMDECHO" "OSMODE") '(0 0))

The Buzzard 发表于 2022-7-6 15:05:37

这是完整的程序,只是为了告诉你你能走多远。请记住,这段代码不是很好,因为这是我试图汇编的第一段代码之一。作为演示的目的,它足以向您展示我试图向您解释的内容。
 
确保dcl和lsp在一起并且在acad搜索路径中。
要启动,请键入HLR。
HLR。拉链

The Buzzard 发表于 2022-7-6 15:10:15

谢谢那只秃鹰,我稍后会看的。我今天要往返380英里去接他们的姻亲,他们本周要来,所以我的游戏时间会被缩短。
 
问候Rob。

The Buzzard 发表于 2022-7-6 15:14:30

刚刚调整了代码,一直很忙,所以不得不早起(0300小时)并将其排序。
10
 
我对结果有点高兴。这只是所有玻璃条变体的组织工作。

Rob-GB 发表于 2022-7-6 15:16:51

Rob-GB 发表于 2022-7-6 15:18:08

Just adjusted code, been busy so had to get up early (0300hrs) and get it sorted.

(defun *error* (msg)(setvar "OSMODE" *osnap)   ;error check(setvar "CMDECHO" 1)(princ msg)(princ))(defun DTR (a) (* PI (/ a 180.0));degrees to radians)(defun C:SASH2 (/ IP P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 P14 P15 P16 P17 P18 P19 P20 P21 P22 P23HEIGHT WIDTH GRT GL1 GL2 RW1 BORA BRG SG HH HEAD STILE OLDSNAP OLDBLIP OLDLIGHT); lisp routine to draw basic casement sash v.2; by Rob-GB (setq OLDSNAP (getvar "OSMODE"))(setq OLDBLIP (getvar "BLIPMODE");store settings)(setq OLDLIGHT (getvar "HIGHLIGHT"))(setvar "CMDECHO" 0)(setvar "BLIPMODE" 0)(setq HEIGHT (getdist "\nEnter height of sash : "))(setq WIDTH (getdist "\nEnter Width of sash : "))(setq BORA (getdist "\nEnter Bottom Rail : ") ; size of rail in elevation view)(setq HEAD (getdist "\nEnter Top Rail : ") ; size of rail in elevation view)(setq STILE (getdist "\nEnter Stile : ") ; size of stile in elevation view)(setq GRT (getdist "\nEnter Glass Rebate : ") ; size of rebate in elevation view)(setq IP (getpoint "\nInsertion Point: ")) ; bottom left corner(setvar "OSMODE" 0);Basic dims required(setq GL1 (- HEIGHT (+(- HEAD GRT)(- BORA GRT))))(setq GL2 (- WIDTH (* 2 (- STILE GRT))))(setq RW1 (- WIDTH (* 2 STILE)))(setq BRG (- BORA GRT))(setq SG (- STILE GRT))(setq HH (- HEIGHT HEAD)); PLOT POINTS(setq P1 (POLAR IP (DTR 90.0) HEIGHT))   (setq P2 (POLAR P1 (DTR 0.0) SG))(setq P3 (POLAR P2 (DTR 0.0) GRT))(setq P4 (POLAR P3 (DTR 0.0) RW1))(setq P5 (POLAR P4 (DTR 0.0) GRT))(setq P6 (POLAR P5 (DTR 0.0) SG))(setq P7 (POLAR P6 (DTR 270.0) HEIGHT))(setq P8 (POLAR P7 (DTR 180.0) SG))(setq P9 (POLAR P8 (DTR 180.0) GRT))(setq P10 (POLAR P9 (DTR 180.0) RW1))(setq P11 (POLAR P10 (DTR 180.0) GRT))(setq P12 (POLAR P11 (DTR 90.0) BRG))(setq P13 (POLAR P12 (DTR 90.0) GL1))(setq P14 (POLAR P13 (DTR 0.0) GL2))(setq P15 (POLAR P14 (DTR 270.0) GL1))(setq P16 (POLAR P10 (DTR 90.0) BORA))(setq P17 (POLAR P10 (DTR 90.0) HH))(setq P18 (POLAR P17 (DTR 0.0) RW1))(setq P19 (POLAR P9 (DTR 90.0) BORA))(setq P20 (POLAR P16 (DTR 270.0) GRT))(setq P23 (POLAR P19 (DTR 270.0) GRT))(setq P21 (POLAR P17 (DTR 90.0) GRT))(setq P22 (POLAR P18 (DTR 90.0) GRT));points plotted(command "_.PLINE" IP P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 IP ""); outside drawn(command "_.PLINE" P2 P11 "")(command "_.PLINE" P5 P8 "")(command "_.PLINE" P13 P14 "")(command "_.PLINE" P12 P15 "")(command "_.PLINE" P16 P17 P18 P19 P16 "")(command "_.PLINE" P17 P21 "")(command "_.PLINE" P18 P22 "")(command "_.PLINE" P16 P20 "")(command "_.PLINE" P19 P23 "")(setvar "OSMODE" OLDSNAP)(setvar "BLIPMODE" OLDBLIP)(setvar "HIGHLIGHT" OLDLIGHT)(princ));defun
 
I am a bit happier with outcome. It's just the organising of all the Glazing bars variants do work on now.
页: 1 [2]
查看完整版本: 窗扇图纸代码