乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
楼主: RubberDinero

[编程交流] 学习Lisp“折线宽度”

[复制链接]

10

主题

46

帖子

36

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 17:46:24 | 显示全部楼层
 
真 的!!!现在这是正确的方法!!!
另一方面,我不断地重写代码,因为我不断地遇到错误。结果是全局未设置,我不断收到错误。
 
当我运行了你的,它也没有工作,我知道有什么是错误的。我从未想过要检查全局宽度是否已设置。
 
如果未设置全局,可能有一个变量来选择起始宽度或结束宽度。
回复

使用道具 举报

10

主题

46

帖子

36

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 17:51:21 | 显示全部楼层
 
我从你的代码中学到了比我正在读的书更多的东西。
我现在明白了,我不需要为assoc 43设置q pw,当我需要那个数字时,我可以简单地调用assoc 43。
 
我在编码方面仍然是一个穴居人,但我正在努力让这场大火熊熊燃烧。这应该是我的座右铭。英雄联盟
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-5 17:54:19 | 显示全部楼层
 
事实上-DXF组70通常是位编码的,因此如果使用其他属性集锁定,则可能不等于4(例如,使用位于锁定层上的对象测试代码,该锁定层在新视口中冻结)。
 
 
听你这么说太好了!
回复

使用道具 举报

10

主题

46

帖子

36

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 17:58:13 | 显示全部楼层
 
其中,以下代码为
  1. (cdr (assoc 43 enx))

是否可以将该变量设为一个变量并添加一个(如果参数表示如果常数宽度为null并且(cdr(assoc 40))等于(cdr(assoc 41))则宽度将设置为起始宽度。
如果不同,请要求用户输入选择开始或结束
i、 e.(initget“开始-结束”
其中开始是(cdr(assoc 40)),结束是(cdr(assoc 41))
 
我认为这将结束所有错误的Lisp程序。
回复

使用道具 举报

66

主题

1552

帖子

1514

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
325
发表于 2022-7-5 18:01:48 | 显示全部楼层
这正是我的想法,我不知道如何将你的答案构造为我之前帖子中的一个问题,但你已经回答了。(英语不是我的第一语言)。
感谢您的详细介绍!
回复

使用道具 举报

95

主题

477

帖子

383

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
475
发表于 2022-7-5 18:03:25 | 显示全部楼层
提示:请查看dxf组码40和41,以找到起始和结束宽度。只需要放入一个条件语句,其中如果dxf组码43为空,则根据您的偏好移动到40或41。
回复

使用道具 举报

10

主题

46

帖子

36

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 18:05:44 | 显示全部楼层
  1. (defun c:px2 ( / cmd ent enx ped pw1 )
  2.    (setvar 'errno 0)
  3.    (while (/= 52 (getvar 'errno))
  4.        (setvar 'errno 0)
  5.        (setq ent (car (entsel "\nSelect polyline <exit>: ")))
  6.        (cond
  7.            (   (= 7 (getvar 'errno))
  8.                (prompt "\nMissed, try again.")
  9.            )
  10.            (   (null ent)
  11.                (prompt "\nExit.")
  12.            )
  13.            (   (/= "LWPOLYLINE" (cdr (assoc 0 (setq enx (entget ent)))))
  14.                (prompt "\nSelected object is not an LWPolyline.")
  15.            )
  16.            (   (= 4 (logand 4 (cdr (assoc 70 (tblsearch "layer" (cdr (assoc 8 enx)))))))
  17.                (prompt "\nSelected polyline is on a locked layer.")
  18.            )
  19.            (   (setq cmd (getvar 'cmdecho)
  20.                      ped (getvar 'peditaccept)
  21.                )
  22.                (setvar 'cmdecho 0)
  23.                (setvar 'peditaccept 1)
  24. [size="2"]        [b][color="red"]        (if (= (cdr (assoc 43 enx)) nil)
  25.                 (if (= (cdr (assoc 41 enx)) (cdr (assoc 40 enx)))
  26.                         (setq pw1 (cdr (assoc 40 enx)))
  27.                         (initget "Start End (cdr (assoc 40 enx)) (cdr (assoc 41 enx)))
  28.                         (setq pw1 (getkword "\nEnter an Option (Start/End): "))
  29.                 )
  30.                 (setq pw1 (cdr (assoc 43 enx)))
  31.         )
  32.                (command
  33.                    "_.explode" ent
  34.                    "_.pedit" "_m" "_p" "" "_w" pw1 ""
  35.                )[/color][/b][/size]
  36.                (setvar 'peditaccept ped)
  37.                (setvar 'cmdecho cmd)
  38.            )
  39.        )
  40.    )
  41.    (princ)
  42. )

 
我尝试了我的穴居人编码,但不可能在“IF”语句中包含“IF”语句吗?还是我把“(=”语句写错了?
回复

使用道具 举报

10

主题

46

帖子

36

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 18:10:12 | 显示全部楼层
  1. 11

 
忘了写最后一句话!!!大声笑!
但现在当我做getkword时,它不接受开始或结束,它表示无效。
回复

使用道具 举报

10

主题

46

帖子

36

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-5 18:12:28 | 显示全部楼层
 
我知道看到initget是可以接受的关键字。现在我需要设置if语句。
回复

使用道具 举报

66

主题

1552

帖子

1514

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
325
发表于 2022-7-5 18:17:28 | 显示全部楼层
RubberDinero,检查一下:
http://www.lee-mac.com/promptwithdefault.html
然后检查以下内容(尤其是最后一个示例代码-针对您的案例):
http://www.afralisp.net/autolisp/tutorials/conditionals.php
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-8-23 10:10 , Processed in 2.881184 second(s), 71 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表