乐筑天下

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

[编程交流] 设置文件?

[复制链接]

6

主题

49

帖子

42

银币

初来乍到

Rank: 1

铜币
32
发表于 2022-7-5 18:03:50 | 显示全部楼层 |阅读模式
我有许多lisp例程,其中一些可以从用户可以更改的一些设置中受益。
 
如果我有一个在预定点画圆的基本程序。我可以让用户定义该点,直到用户更改它吗?可能像从包含点的lisp创建的文件中读取点和大小,以及其他例程的其他信息。
回复

使用道具 举报

95

主题

477

帖子

383

银币

后起之秀

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

铜币
475
发表于 2022-7-5 18:11:16 | 显示全部楼层
是的,这很简单。您可以使用getpoint函数完成示例。如果您想存储该点供以后使用(即使用该点,直到用户想要更改它),您可以通过以下方式实现:1)使用setenv函数
2) 将值写入例程读取的txt或csv文件。
回复

使用道具 举报

6

主题

49

帖子

42

银币

初来乍到

Rank: 1

铜币
32
发表于 2022-7-5 18:20:47 | 显示全部楼层
因此,如果我用“标准设置”创建DCL,我可以将其保存到txt中,并让我的其他Lisp使用这些值(如果可用)。我应该使用什么方法/lidp函数?
 
或者,如果我使用setenv方法,值什么时候会丢失或重置?
回复

使用道具 举报

95

主题

477

帖子

383

银币

后起之秀

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

铜币
475
发表于 2022-7-5 18:22:41 | 显示全部楼层
您想使用一个DCL设置命令来更改多个例程?这将涉及一个csv或txt文件,每个例程都必须从其中的各行读取。我不推荐这种方法,因为我认为你要做的事情似乎过于复杂。为什么不编辑例程本身,使其在代码中都有一个设置部分?不需要处理dcl,而且它会使例程看起来更像标准命令。
回复

使用道具 举报

6

主题

49

帖子

42

银币

初来乍到

Rank: 1

铜币
32
发表于 2022-7-5 18:33:19 | 显示全部楼层
我可以编辑例程以具有设置选项,但如何保存设置以在其他图形中使用?用户可能都想要不同的默认值。。
回复

使用道具 举报

95

主题

477

帖子

383

银币

后起之秀

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

铜币
475
发表于 2022-7-5 18:34:02 | 显示全部楼层
Setenv被写入注册表,然后它就不能“丢失”。它只为该个人用户而被记住。它可以通过让用户通过设置选项卡(提示使用initget)重置变量来重置。您也可以使用vl PROPAGE(传播到所有打开的图形),只需将变量设置为全局变量(我的首选选项是99%的时间,中断最少,但它仅为单个图形设置),也可以使用vl registry write。写入注册表时要小心,并谨慎使用。看看这个链接:http://www.cadtutor.net/forum/archive/index.php/t-34829.html
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 18:41:29 | 显示全部楼层
“保存工作区”听起来像是一个更简单的答案,根据你想要的弹出和功能区菜单、快照、单元等设置。我们所有的用户8都按照他们想要的方式配置了东西。
回复

使用道具 举报

6

主题

49

帖子

42

银币

初来乍到

Rank: 1

铜币
32
发表于 2022-7-5 18:45:56 | 显示全部楼层
我会调查的,谢谢。
 
Broncos我只使用initget强制用户选择,所以我不确定用它重置变量是什么意思。。。。
回复

使用道具 举报

95

主题

477

帖子

383

银币

后起之秀

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

铜币
475
发表于 2022-7-5 18:52:33 | 显示全部楼层
例如,可以使用initget使设置选项卡与代码关联
  1. (initget "Settings")
  2. (setq sel (entsel "\nSelect the hatch you want to edit [settings]: "))
然后可以使用条件语句,这样,如果用户点击“S”,它会为他们打开要更改的设置,就像AutoCAD命令的工作方式一样。
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-5 19:00:57 | 显示全部楼层
如果你想保存在一个特定的dwg中,你有两种使用“USERIx USERRx USERSx”的方法,你可以保存最多5个,User1-5整数,实数和字符串,这样一个中心点使用(setvar“USERS1”“0,0”),你也可以在一个更复杂但可以存储更多变量的dwg中拥有自己的扩展数据。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-13 01:11 , Processed in 0.443226 second(s), 72 queries .

© 2020-2025 乐筑天下

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