乐筑天下

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

[求助]如何在块中改变属性的插入点?

[复制链接]
cag

87

主题

265

帖子

10

银币

中流砥柱

Rank: 25

铜币
613
发表于 2004-3-8 09:02:00 | 显示全部楼层 |阅读模式
(defun co (/ pt doc pl att pt2 p block blocks blockref line)
         (setq pt (getpoint "Enter the insert position:"))
         (setq doc (vla-get-activedocument (vlax-get-acad-object)))
         (setq blocks (vla-get-blocks doc))
         (setq block (vla-add blocks (vlax-3d-point pt) "*U"))
         (setq pt2 (polar pt 0 15))
         (setq line (vla-addline block (vlax-3d-point pt) (vlax-3d-point pt2)))
         (setq        att (vla-Addattribute
                                                 block
                                                 3.5
                                                 0
                                                 "HELLO"
                                                 (vlax-3d-point '(0 0 0))
                                                 "hello1"
                                                 "hello2"
                                 )
         )
         (setq        blockref (vla-insertblock
                                 (vla-get-ModelSpace doc)
                                 (vlax-3d-point pt)
                                 (vla-get-name block)
                                 1
                                 1
                                 1
                                 0
                 )
         )
         (vla-put-endpoint line (vlax-3d-point '(0 0 0)))
         (vla-put-InsertionPoint att (vlax-3d-point '(0 0 0)))
         (vla-update line)
         (vla-update att)
         (vla-update blockref)
         (princ)
)
;;;这里能改变线的端点,却不能改变属性的插入点,为何?
回复

使用道具 举报

16

主题

909

帖子

8

银币

中流砥柱

Rank: 25

铜币
973
发表于 2004-3-8 12:49:00 | 显示全部楼层
(defun co (/ pt doc pl att pt2 p block blocks blockref line origin)
         (setq pt (getpoint "Enter the insert position:"))
         (setq doc (vla-get-activedocument (vlax-get-acad-object)))
         (setq blocks (vla-get-blocks doc))
         (setq block (vla-add blocks (vlax-3d-point pt) "*U"))
         (setq pt2 (polar pt 0 15))
         (setq line (vla-addline block (vlax-3d-point pt) (vlax-3d-point pt2)))
         (setq att (vla-Addattribute
                                                 block
                                                 3.5
                                                 0
                                                 "HELLO"
                                                 (vlax-3d-point '(0 0 0))
                                                 "hello1"
                                                 "hello2"
                                 )
         )
         (setq blockref (vla-insertblock
                                 (vla-get-ModelSpace doc)
                                 (vlax-3d-point pt)
                                 (vla-get-name block)
                                 1
                                 1
                                 1
                                 0
                 )
         )
         (vla-put-endpoint line (vlax-3d-point '(0 0 0)))
         (setq origin (vla-get-origin block))
         (VLA-PUT-ORIGIN BLOCK (VLAX-3D-POINT '(0 0 0)))
         (VLA-MOVE BLOCKREF origin (VLAX-3D-POINT '(0 0 0)))
         (vla-update line)
         (vla-update att)
         (vla-update blockref)
         (princ)
)
回复

使用道具 举报

cag

87

主题

265

帖子

10

银币

中流砥柱

Rank: 25

铜币
613
发表于 2004-3-8 16:05:00 | 显示全部楼层
非常感激,但如果不把块参考的插入点移动,只更新属性的插入点,就如那条线一样,只更新它的端点,该怎么办?
回复

使用道具 举报

cag

87

主题

265

帖子

10

银币

中流砥柱

Rank: 25

铜币
613
发表于 2004-3-12 17:33:00 | 显示全部楼层
搞定,感谢!
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-8-15 12:56 , Processed in 0.416363 second(s), 61 queries .

© 2020-2025 乐筑天下

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