wsad1231 发表于 2009-2-11 19:19:00

怎么把图编译成块

我想吧画的圆编译成块 并且属性标注知道这圆的中心和半径
现在圆点的坐标我知道了怎么知道半径啊   
谁有关于块的这方面的知识介绍下 谢谢 网上好多的 都是大致带过没有具体的说

nhy12345678 发表于 2009-2-12 23:01:00


给你个完整的代码:
       功能为你选择一个圆,立即把这个圆创建为一个块,并把注释写入圆的圆心坐标和半径,然后显示该注释内容检验正确性,最后把该块插入到图纸中。
Sub ttttt()
Dim ss As AcadSelectionSet
Dim c(0 To 0) As AcadCircle
Dim ent As AcadEntity
Dim blockObj As AcadBlock
Dim cc As Variant
Dim r As Double
Set ss = ThisDrawing.SelectionSets.Add("ssss") '在屏幕上选择对象
ss.SelectOnScreen
For Each ent In ss
    If ent.ObjectName = "AcDbCircle" Then
       Set c(0) = ent
       cc = c(0).Center
       r = c(0).Radius
       GoTo aa
    End If
Next
MsgBox "你没有选择到任何圆形对象!"
ss.Delete
End
aa:
Set blockObj = ThisDrawing.Blocks.Add(cc, "圆形块")
ThisDrawing.CopyObjects c, blockObj
blockObj.Comments = "圆心:" & cc(0) & "," & cc(1) & "," & cc(2) & "," & "    半径:" & r
MsgBox blockObj.Comments '显示块注释
ThisDrawing.ModelSpace.InsertBlock cc, "圆形块", 1, 1, 1, 0 '插入建立的块
ss.Delete
End Sub

home 发表于 2009-2-13 22:33:00

楼上的程序是用哪个版本运行的?
blockObj.Comments ……
怎么我的块没有这个属性呢,运行不过去?
页: [1]
查看完整版本: 怎么把图编译成块