乐筑天下

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

在 VBA 中计算 LISP 表达式(脚本?)

[复制链接]

3

主题

19

帖子

10

银币

初来乍到

Rank: 1

铜币
22
发表于 2008-9-12 15:25:05 | 显示全部楼层 |阅读模式
(vlax-curv-getClosestPointTo curv-obj givenPnt[扩展])
任何人都知道如何在Vba中使用该Lisp函数。或者VBA有等效的方法吗??

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

3

主题

19

帖子

10

银币

初来乍到

Rank: 1

铜币
22
发表于 2008-9-12 15:30:27 | 显示全部楼层
对,太棒了。据我所知,类库是危险的,但我想它们有很多Vlax和curve函数,对公众开放。到目前为止我是对的吗?我如何使用它们?(对不起!)它们是类模块吗<我得去抽支烟,然后我会好好看看。谢谢你的链接。
回复

使用道具 举报

3

主题

19

帖子

10

银币

初来乍到

Rank: 1

铜币
22
发表于 2008-9-12 15:44:48 | 显示全部楼层
我不太清楚如何使用这个代码,但我会试一试。但我可以看到代码,功能和所有的。
回复

使用道具 举报

3

主题

19

帖子

10

银币

初来乍到

Rank: 1

铜币
22
发表于 2008-9-12 16:00:06 | 显示全部楼层
这是标题的一部分。…
VLAX。cls允许开发人员从<br>的Visual Basic或VBA<br>中计算AutoLISP表达式。<br>注:<br>‘此类模块的所有代码都可通过以下网址公开获得:<br>>news://discussion.autodesk.com/autodesk.autocad.customization.vba.我不要求这些帖子中的代码的版权或作者身份,只要求该代码的编译。此外,还有一个大大的“谢谢!”向Cyrille Fauvel演示VisualLISP ActiveX模块的使用
'
'依赖项:
'使用此类模块需要以下应用程序:
1.VisualLISP
请注意末尾的粗体斜体位。问题:Autocad是否安装了此VisualLISP应用程序。我已经编写了一些代码,并在This Drawing模块中实例化了VLAX类的一个变量…<br>将VlaxClass作为VLAX<br>将Dim ClosestPt作为Variant<br>并将Dim Idunno作为Variant‘我不知道它将是什么<br><br>VlaxClasss=New VLAX'(vlax曲线GetClosestPoint到曲线obj Givennt[extend])
VlaxClass。SetLispSymbol“Curveobj”,acadSet2.Item(0)
VlaxClass。SetLispSymbol“Givennt”,在VlaxClass中。EvalLispExpression“(setq ClosestPt(vlax curve getClosestPointTo curve obj givenPnt)”
设置closestft=VlaxClass。GetLispSymbol(“ClosestPt”)“还不确定我将得到什么<br>设置为Idunno=VlaxClass。GetLispList(“ClosestPt”)也不确定
我单步遍历代码,在“VlaxClass=New VLAX”处切换到类模块初始化过程,但在以下情况下失败…
私有VL作为对象
私有VLF作为对象
私有子类_Initialize()
设置VL=ThisDrawing.Application.GetInterfaceObject(“VL.Application.1”)
设置VLF=VL.ActiveDocument。功能<br>结束子<br>在哪里可以找到此应用程序?我尝试打开VLisp API,但没有帮助。它还在那里坏了
回复

使用道具 举报

3

主题

19

帖子

10

银币

初来乍到

Rank: 1

铜币
22
发表于 2008-9-12 17:22:29 | 显示全部楼层
实际上,我刚刚搜索了Autocad 2008目录,发现了一个名为vl.arx的ARX应用程序。 任何想法它有什么程序ID对于这个版本的Autocad?
回复

使用道具 举报

3

主题

19

帖子

10

银币

初来乍到

Rank: 1

铜币
22
发表于 2008-9-12 17:38:30 | 显示全部楼层
设法打开Vl应用程序
在继续执行代码时,我得到了这个错误…运行时错误94对象变量或未设置块变量
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2008-9-12 18:51:58 | 显示全部楼层
当你搜索vlax时,这里有相当多的东西可用,我在下面使用它来获得正确的vl号,如果AcadVer = 2000,那么
设置VL =这个图。应用程序. GetInterfaceObject("VL。Application.1")
否则
设置VL = ThisDrawing。应用程序. GetInterfaceObject("VL。Application.16")
如果
设置VLF = VL,则结束。ActiveDocument.Functions结束Sub
回复

使用道具 举报

71

主题

928

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1230
发表于 2008-9-13 14:18:25 | 显示全部楼层
你应该把弗兰克·奥肯多的名字写在代码里。尽管Frank否认了他对该代码的贡献,但他通过他的acadx.com(我认为该网站并未关闭)网站将它汇编并广泛提供给大众。如果我没记错的话,早期版本可能也是托尼·坦齐罗的作品。我会谷歌搜索,找到与你发布的代码直接相关的代码,并相应地注明其归属。
回复

使用道具 举报

3

主题

19

帖子

10

银币

初来乍到

Rank: 1

铜币
22
发表于 2008-9-13 15:23:57 | 显示全部楼层
Sparky,
除了Bryco提到的和MP建议的以外,下面是一些函数的示例。请注意,在模块中使用CURVE.CLS时,您不需要执行所有的环跳操作代码0]
高温
回复

使用道具 举报

71

主题

928

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1230
发表于 2008-9-13 19:17:03 | 显示全部楼层
这是格雷特!我是一名经验丰富的VLisp作家,但已决定学习VBA。我的抱负是从那里跳到VB.Net。是的,我知道……这是一项长期战略。我已经编写了一些简单的脚本,但阅读对象模型时没有注意到Curve/Vlax方法。你的回答都很亲切,我很感激。
我还没有意识到94错误代码是什么…但也许我需要使用curve类…需要找时间坐下来解决它。如果我有一种无法理解的失落感,如果我能回到你们身边,我将不胜感激。
我将在这里搜索vlax…我想知道你是否可以从VL应用程序(变体、多边形等)中获取AciveX对象。
也许…你们是“迈斯特”(德语中的大师!)
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-4 00:44 , Processed in 1.539899 second(s), 72 queries .

© 2020-2025 乐筑天下

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