乐筑天下

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

[编程交流] Autolisp代替视图逗号

[复制链接]

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 10:31:56 | 显示全部楼层 |阅读模式
你好
 
我想知道是否可以在Lisp中尽可能地更改图形的视图
view命令。
 
当做
回复

使用道具 举报

10

主题

8258

帖子

8335

银币

初来乍到

Rank: 1

铜币
31
发表于 2022-7-6 10:39:22 | 显示全部楼层
我相信这是可能的,但为什么要重新发明轮子呢?首先看一下《Cadalyst》杂志的CAD提示部分,看看是否有人已经开发了一个lisp例程来实现您想要的功能。从下面的链接开始。使用出现的搜索框并键入单词“View”。
 
http://cadtips.cadalyst.com/
回复

使用道具 举报

62

主题

466

帖子

404

银币

后起之秀

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

铜币
310
发表于 2022-7-6 10:43:15 | 显示全部楼层
类型-视图
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 10:45:19 | 显示全部楼层
谢谢,丹中尉。
 
这是一个Autocad命令,我正在寻找与UCS或trans function或。。。。。。任何有用的想法。
 
当做
 
塔瓦特
回复

使用道具 举报

62

主题

466

帖子

404

银币

后起之秀

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

铜币
310
发表于 2022-7-6 10:49:22 | 显示全部楼层
对不起,我以为你在命令提示符和窗口上寻找什么
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 10:56:03 | 显示全部楼层
请参阅开发人员帮助部分中的DXF参考,然后查看公共符号表组。
 
有UCS和VIEW的参考。关于DXF编码,有很多内容可以让您开始学习。
 
我总是使用开发者帮助部分,因为它在我需要时总是可用的。这是一个好的开始。
113200xmntmmqaptpbbzpp.jpg
113204xwh5uwmhw7d8we3w.jpg
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 10:59:00 | 显示全部楼层
当前UCS的视图可以如下所示:
 
 
  1. [b][color=BLACK]([/color][/b]setq ucsv [b][color=FUCHSIA]([/color][/b]trans '[b][color=NAVY]([/color][/b]0 0 1[b][color=NAVY])[/color][/b] 1 0[b][color=FUCHSIA])[/color][/b][b][color=BLACK])[/color][/b]
  2. [b][color=BLACK]([/color][/b]command [color=#2f4f4f]"_.VPOINT"[/color]  ucsv[b][color=BLACK])[/color][/b]

 
-大卫
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 11:02:05 | 显示全部楼层
谢谢Buzzard,这是一个非常大的基础。
 
谢谢David,你的例子正是我想要从各个方面理解的,特别是反函数。
 
因为有了这个函数,我们可以控制Lisp例程的方向,如果你能给出更多的例子,
这对我很有帮助。
 
顺致敬意,
 
塔瓦特
回复

使用道具 举报

26

主题

1495

帖子

20

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
118
发表于 2022-7-6 11:09:18 | 显示全部楼层
这很简单:
 
VPOINT仅获取WCS点
 
(trans’(0 0 1)1 0)
 
将法线拉伸方向0,0,1从当前UCS转换为WCS。它不能考虑UCS的Z轴旋转。可能也无法处理已移动的UCS原点-大卫
回复

使用道具 举报

10

主题

109

帖子

99

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
50
发表于 2022-7-6 11:10:39 | 显示全部楼层
大卫,
如果我用你的例子写一个可用的程序,它似乎需要反式表达式中的“T”才能工作。没有“T”,我会得到奇怪的结果。
我使用的是Intellicad,而不是Autocad,因此可能会有差异,但我以前没有看到trans使用的任何差异。
  1. (defun c:vtest (/)
  2. (setq ucsv (trans '(0 0 1) 1 0 T))
  3. (command "_.VPOINT"  ucsv)
  4. (princ)
  5. )
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-6 18:02 , Processed in 0.670540 second(s), 85 queries .

© 2020-2025 乐筑天下

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