乐筑天下

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

[编程交流] 帮助参考:使用程序

[复制链接]

218

主题

699

帖子

483

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1090
发表于 2022-7-6 06:42:02 | 显示全部楼层 |阅读模式
你好
 
autocad developer帮助参考中的所有VBA和Activex示例都在VBA中。我不知道vba,所以我如何使用它们?
例如,此代码:
  1. Sub Ch4_AddLightWeightPolyline()
  2. Dim plineObj As AcadLWPolyline
  3. Dim points(0 To 5) As Double
  4. ' Define the 2D polyline points
  5. points(0) = 2: points(1) = 4
  6. points(2) = 4: points(3) = 2
  7. points(4) = 6: points(5) = 4
  8. ' Create a light weight Polyline object in model space Set plineObj = ThisDrawing.ModelSpace. _ AddLightWeightPolyline(points) ThisDrawing.Application.ZoomAllEnd
  9. Sub

 
参考文献中关于如何创建选择集的更令人困惑的例子:
 
  1. Sub Ch4_CreateSelectionSet()
  2. Dim selectionSet1 As AcadSelectionSet
  3. Set selectionSet1 = ThisDrawing.SelectionSets. _
  4. Add("NewSelectionSet")
  5. End Sub

 
在autolisp中你会怎么说?
谢谢
谢伊
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 06:52:12 | 显示全部楼层
转换第一个示例:
然而,实际上,您可以将指向应用程序对象的指针分配给局部变量,以避免重复计算vlax get acad对象,也可以使用vlax invoke来避免创建safearray&variant。
 
第二个示例也可以转换为Visual LISP,但是,当要创建的选择集已存在于选择集集合中时,它缺少错误捕捉来解释,并且在完成时也不会从集合中删除创建的选择集。
回复

使用道具 举报

218

主题

699

帖子

483

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1090
发表于 2022-7-6 06:57:10 | 显示全部楼层
你好
 
我把它并排比较,
VBA的“Dim plineObj As AcadLWPolyline”在lisp中时已获取指针
数组也是如此
这样说安全吗?
 
谢谢
谢伊
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 07:01:37 | 显示全部楼层
 
在AutoLISP中,该语句的等效方法是简单地将addlightweightpolyline方法返回的LWPolyline VLA对象分配给局部变量plineObj,例如:
一个显著的区别是,您不需要在AutoLISP中声明变量数据类型,因为变量在程序中的整个使用过程中可能会被分配不同数据类型的值,这是AutoLISP作为“动态类型”编程语言的结果。
回复

使用道具 举报

218

主题

699

帖子

483

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1090
发表于 2022-7-6 07:04:21 | 显示全部楼层
我觉得使用帮助信息是不合适的,我误用了它。以我目前的技能,我应该能够自己编写函数,但我总是需要帮助才能完成任务
 
例如,我想写的基本功能,创建一个新的绘图,每次我按m。现在请我,而不是写代码给我请告诉我的方式。从帮助中获取此信息。
 
 
 
 
去哪里看,为什么?从哪里开始?诸如此类
 
 
谢谢
谢伊
回复

使用道具 举报

2

主题

389

帖子

387

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 07:12:20 | 显示全部楼层
http://exchange.autodesk.com/autocad/enu/online-help/ACD/2012/ENU/pages/WS1a9193826455f5ff561db57a12bd50eabde-7fdb.htm
 
你可以从那个页面访问很多内容。此外,使用谷歌查找其他资源。
 
但我想知道有谁会想在我需要移动命令时使用我宝贵的M键打开一个新图形!此外,我不想仅仅因为碰了一把钥匙就意外地打开一幅新画。当我找到阻止F1键打开帮助的方法时,我很感激。
回复

使用道具 举报

218

主题

699

帖子

483

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1090
发表于 2022-7-6 07:20:12 | 显示全部楼层
我希望有一天我会想办法帮你
 
这就是我不需要使用它的例子。这是一件很容易解释和理解的基本事情
回复

使用道具 举报

218

主题

699

帖子

483

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1090
发表于 2022-7-6 07:23:23 | 显示全部楼层
你好
 
为什么在某些例子中我看到了
 
  1. (vla-addlightweightpolyline (vla-get-modelspace (vla-get-activedocument (vlax-get-acad-object)))
  2.          (vlax-make-variant

 
有些人不是
 
 
谢谢
谢伊
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

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

铜币
211
发表于 2022-7-6 07:28:06 | 显示全部楼层
你是说像这个
 
  1. 6
回复

使用道具 举报

218

主题

699

帖子

483

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1090
发表于 2022-7-6 07:32:30 | 显示全部楼层
耶。。。但有时不是
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-8-15 22:31 , Processed in 1.128292 second(s), 72 queries .

© 2020-2025 乐筑天下

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