Bu videoda AutoCAD VBA makro kodları ile SLOT çizme açıklandı.
VBA ile slot çizimi 5 bölüm halinde yayınlandı. Bu video 5. bölümdür.
Bu bölümde SLOT çizen kodlar yazıldı ve açıklandı.
Videoda kullanılan AutoCAD VBA kodları:
Sub SLOT()
' Mesut Akcan
' 7/3/2021
' mesutakcan.blogspot.com
Dim ut As AcadUtility
Dim ms As AcadModelSpace
Dim cizgi As AcadLine
Dim vl(7) As Double
Dim pl As AcadLWPolyline
Set ut = ThisDrawing.Utility
Set ms = ThisDrawing.ModelSpace
pi = 4 * Atn(1) '3.14159265358979
aci90 = pi / 2 ' 1.5707963267949 'radyan
aci270 = pi * 1.5 '4.71238898038469 'radyan
With ut
' n1 noktasını al
n1 = .GetPoint(, "1. merkez nokta:")
' n2 noktasını al
n2 = .GetPoint(n1, "2. merkez nokta:")
' n1-n2 arasına geçici çizgi çiz
Set cizgi = ms.AddLine(n1, n2)
' cizgiyi vurgulu yap
cizgi.Highlight True
' r yarıçap değerini al
r = .GetDistance(n2, "Yarıçap:")
' a açısını hesapla
a = .AngleFromXAxis(n1, n2) 'radyan
' geçici çizgiyi sil
cizgi.Delete
' p1 noktasını hesapla
p1 = .PolarPoint(n1, a + aci90, r)
' p2 noktasını hesapla
p2 = .PolarPoint(n2, a + aci90, r)
' p3 noktasını hesapla
p3 = .PolarPoint(n2, a + aci270, r)
' p4 noktasını hesapla
p4 = .PolarPoint(n1, a + aci270, r)
' vertex listesini oluştur
vl(0) = p1(0): vl(1) = p1(1) 'vertex 1 X,Y
vl(2) = p2(0): vl(3) = p2(1) 'vertex 2 X,Y
vl(4) = p3(0): vl(5) = p3(1) 'vertex 3 X,Y
vl(6) = p4(0): vl(7) = p4(1) 'vertex 4 X,Y
' vertex listesi ile polyline çiz
Set pl = ms.AddLightWeightPolyline(vl)
' close özelliği ile kapalı şekil oluştur
pl.Closed = True
' karşılıklı kenar çizgilerini yay yap.
pl.SetBulge 1, -1
pl.SetBulge 3, -1
End With
End Sub
Hiç yorum yok:
Yorum Gönder