我想看一级黄色大片_久久亚洲国产精品一区二区_久久精品免视看国产明星_91久久青青青国产免费

您的位置:網站首頁 > CAD新聞

VB編程在AutoCAD繪圖空間創建實心面和圖案填充

時間:2012-01-19 10:07:57 來源:未知

利用AddSolid方法可以創建實心面,Solid為3或4條變組成的實心面,應用該方法需要4個三維頂點作為參數,當系統變量FILLMODE的值為0時,實心面不填充,為1時填充。語法getval=objcect.AddSolid(point1,point2,point3,point4)。getval新創建的實心面對象,object模型空間、圖紙空間或塊對象,point雙精度型定點坐標。

利用AddHatch方法可以創建圖案填充,語法格式如下。

getval=object.AddHatch(PatternType,PatternName,Associativity)

geval新創建的圖案填充對象,object模型空間、圖紙空間或塊對象,PatternType表示圖案填充類型的索引,它有三個可選值,acHatchPatternTypePreDefined用AutoCAD標注圖案文件Acad.Pat定義的圖案進行填充。acHatchPatternTypeDefined用當前線型定義的填充線填充,acHatchPatternTypeCustomDefined用用戶自定義的圖案文件進行填充。PatternName圖案填充名稱,Associativity表示圖案填充是否與邊界關聯,如果為true則填充關聯邊界,邊界改變則填充也改變,如果為false則填充不關聯邊界。

如下代碼給兩個同心圓組成的圓環進行填充,并將填充關聯邊界。

Private Sub Command1_Click()
    Dim hatchobj As AcadHatch
    Dim patternname As String
    Dim patterntype As Long
    Dim bassociativity As Boolean
    patterntype = 0
    patternname = "ANSI31"
    bassociativity = True
    Set hatchobj = acadapp.ActiveDocument.ModelSpace.AddHatch(patterntype, patternname, bassociativity)
    Dim outerloop(0 To 0) As AcadEntity
    Dim innerloop(0 To 0) As AcadEntity
    Dim center(0 To 2) As Double
    Dim radius As Double
    center(0) = 3: center(1) = 3: center(2) = 0
    radius = 20
    Set outerloop(0) = acadapp.ActiveDocument.ModelSpace.AddCircle(center, radius)
    Set innerloop(0) = acadapp.ActiveDocument.ModelSpace.AddCircle(center, radius / 2)
    hatchobj.AppendInnerLoop (outerloop)
    hatchobj.AppendInnerLoop (innerloop)
    hatchobj.Evaluate
    acadapp.ActiveDocument.Regen True
    ZoomExtents
End Sub


相關文章