乐筑天下

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

如何获取块中的所有数据?

[复制链接]

116

主题

996

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1466
发表于 2007-10-9 05:39:43 | 显示全部楼层
雷尼尔;我会把你交给VB的好手;我们中间的ers
但是如果你把区块贴在你的've使用
并发布一些您'我已经试过了
你在尝试一个完全编程的解决方案吗
每个区块的规则是什么
你知道如何在VBA中选择块插入吗
你知道如何从块表/集合中检索块定义吗
你知道如何遍历集合吗
你知道如何从块中检索X,X,Z比例吗
你知道怎么翻译矩阵吗
你知道如何做向量乘法和加法吗
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2007-10-9 20:23:45 | 显示全部楼层
kerry,谢谢你给我的问题和回答……这有助于我了解我们的问题……最后,关于你给我提出的第二个问题,比如;您知道如何从块表/集合中检索块定义吗&引用
如何从块表/集合中检索块定义??有什么想法吗
再次感谢;
回复

使用道具 举报

170

主题

1424

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
2119
发表于 2007-10-9 20:27:18 | 显示全部楼层

类似的东西怎么样
  1. Dim theBlock As AcadBlock
  2. Set theBlock = ThisDrawing.Blocks.Item("WhateverBlockNameYouWant")
回复

使用道具 举报

116

主题

996

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1466
发表于 2007-10-10 01:32:07 | 显示全部楼层
再加一点
  1. Private Sub FindTheBlock()
  2.     Dim oBref As AcadBlockReference
  3.     Dim B As AcadBlock
  4.     Dim Pt As Variant
  5.     Dim C As AcadCircle
  6.     Dim X As Double
  7.     Dim Ent As AcadEntity
  8.     'get the BlockReference
  9.     ThisDrawing.Utility.GetEntity oBref, Pt, "Pick a block reference:"
  10. 'Use the BlockReference's name to find the block definition
  11.     Set B = ThisDrawing.Blocks(oBref.Name)
  12. 'Cycle through the entities in the block
  13.     For Each Ent In B
  14.         If TypeOf Ent Is AcadCircle Then
  15. 'Store the circle in an object variable
  16.             Set C = Ent
  17.             Exit For
  18.         End If
  19.     Next Ent
  20.       
  21.     Dim L As AcadLine
  22.     ThisDrawing.Utility.GetEntity L, Pt, "Pick a line:"
  23.     L.Move oBref.InsertionPoint, B.Origin
  24.     Pt = L.EndPoint
  25.     'circle formula x^2+y^2=radius^2
  26.     X = Sqr(C.radius ^ 2 - Pt(1) ^ 2)
  27.     If Pt(0) < 0 Then X = -X
  28.     Debug.Print Pt(0), X
  29.     If Abs(Pt(0) - X) < 0.00000001 Then
  30.         MsgBox "The line ends on the circle."
  31.     End If
  32.     L.Move B.Origin, oBref.InsertionPoint
  33.    
  34. End Sub
现在,如果拾取的块引用的旋转为零,法线值为(0,0,1)
则圆&#039;s中心;块参考与块参考插入点的距离和方向相同,因为块圆中心与块#039;s原点
回复

使用道具 举报

116

主题

996

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1466
发表于 2007-10-10 02:25:08 | 显示全部楼层
谢谢Bryco和Kerry
这很有帮助。。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-7-5 21:52 , Processed in 0.622009 second(s), 61 queries .

© 2020-2025 乐筑天下

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