乐筑天下

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

[编程交流] 字段参数错误

[复制链接]

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 23:43:58 | 显示全部楼层 |阅读模式
大家好!
 
我最近编写了一个例程,通过对话框从用户那里获取信息,并填充titlemark块。完成这项工作后,我想添加一些额外的功能,让用户选择与标题标记相关联的视口,并使用字段填充标题标记中的比例,而不是在输入中输入用户类型。我附上了我想要的结果。
 
这是我正在使用的代码,我想我的问题区域是红色的。
 
  1. (defun C:TLMK ( / TLMK_LEN PT1)
  2. (setvar "CMDECHO" 0)
  3. (setq tempunits (getvar "insunits"))
  4. ;======================================================================================================================================== LOADS DIALOG BOX
  5. (defun TLMK(/ DCL_ID)
  6. (setq DCL_ID (load_dialog "n:/tuterj/AutoLISP/Working/TL-MK_Scale_add.DCL"))
  7. (if (not (new_dialog "TLMK" DCL_ID)) (exit))
  8. (setq mark_n nil)
  9. (setq title_n nil)
  10. (action_tile "cancel" "(done_dialog) (exit)")
  11. (action_tile "mark_n" "(setq mark_n $value)")
  12. (action_tile "title_n" "(setq title_n $value)")
  13. (start_dialog)
  14. (unload_dialog DCL_ID)
  15. (princ)
  16. ) ;defun TLMK
  17. (TLMK)
  18. ;======================================================================================================================================== End of Dialog BOx
  19. [color=red](vl-load-com)[/color]
  20. [color=red](setq vpent (car (nentsel "\nselect viewport")))   ;user selects viewport and viewport id is stored under vpent[/color]
  21. [color=red](vlax-ename->vla-object vpent)    ;vpent is transformed from an entity to a VLA object[/color]
  22. [color=red](setq scale_fld (strcat "%<\AcObjProp.16.2 Object(%<\_ObjId "(vl-princ-to-string(vla-get-Objectid vpent))">%).CustomScale \f"%sn">%"))  ;assigns field expression to variable.[/color]
  23. (setq PT1 (getpoint "\nselect insertion point: "))
  24. (setvar "ATTDIA" 0)
  25. (setq title_u (strcase title_n))   ;declaring additional variable to change case for title_n
  26. (setvar "insunits" 0)  ;setting insertion units to unitless for proper scale of inserted block
  27. (command "insert" "N:/Tuterj/AutoLISP/Working/TitleMark-field.dwg" PT1 "" "" title_u scale_fld mark_n)  ;inserting the contents of TitleMark drawing and inserting user input from dialog box.
  28. (setvar "ATTDIA" 1)
  29. (setvar "CMDECHO" 1)
  30. (setvar "insunits" tempunits)
  31. ) ;defun C:TLMK  

 
我还附上了我在尝试运行例程时遇到的错误。我将感谢任何人愿意提供的任何帮助。谢谢大家的时间和阅读。
004401jx1sgr76g7ly76pp.jpg
004407hu51ozd5uynncdoo.png
回复

使用道具 举报

1

主题

116

帖子

115

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-5 23:51:05 | 显示全部楼层
问题在于没有存储将ename转换为VLA对象引用的返回值。因此,当您将变量“vpent”作为参数提供给vla get Objectid时,它仍然引用一个ename,而不是一个出错的对象。
 
最简单的修复方法是重用“vpent”来存储对象引用,然后再将其提供给vla get Objectid。
  1. (setq vpent (vlax-ename->vla-object vpent))
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 00:01:19 | 显示全部楼层
http://forums.augi.com/showthread.php?154081-错误的参数类型问题
回复

使用道具 举报

1

主题

116

帖子

115

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 00:02:18 | 显示全部楼层
啊。我想知道为什么从最初的帖子开始已经过了几天,却没有人回复。这就解释了。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 00:13:32 | 显示全部楼层
.......
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 00:18:38 | 显示全部楼层
 
谢谢你的回复!正如你看到的那样,塔瓦特在奥吉论坛上给了我一些建议。再次感谢您抽出时间回复。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 00:24:40 | 显示全部楼层
 
你好
 
如果您仍在搜索能够选择表示视口的对角多段线,我会说,据我所知,您无法获得该实体的比例,因为它被视为多段线而不是视口,除非其他人批准相反的情况。
 
要仅选择视口,可以执行以下操作。
 
  1. (setq ss (ssget '((0 . "VIEWPORT"))))
回复

使用道具 举报

1

主题

3

帖子

2

银币

初来乍到

Rank: 1

铜币
5
发表于 2022-7-6 00:30:32 | 显示全部楼层
 
Tharwat,谢谢你的回复。沼泽论坛的另一个人给了我一个功能,允许你选择多边形视口,它可以工作。李·梅斯(Lee Mace)还建议您在之前的帖子中添加什么内容,但我不确定它在代码中应该放在哪里。ss变量稍后在程序中的何处引用?
回复

使用道具 举报

106

主题

1万

帖子

101

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1299
发表于 2022-7-6 00:34:14 | 显示全部楼层
比例是vport的属性吗?如果是,那么您不能使用vla get比例吗?将检查
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

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

铜币
358
发表于 2022-7-6 00:38:55 | 显示全部楼层
它只是一个变量名,您可以更改它以满足您的需要,我刚刚给了您一个示例。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-10 21:12 , Processed in 0.506740 second(s), 75 queries .

© 2020-2025 乐筑天下

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