point etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
point etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

17 Temmuz 2023 Pazartesi

AutoCAD ile VBA Makro #8. Yıldız

AutoCAD VBA makro kodlarıyla yıldız çizen kodlar videolarda açıklandı.

Yıldız 1


Yıldız 2-1


Yıldız 2-2


Yıldız 3


Yıldız 4


Yıldız 5


Yıldız 6,7,8,9



4 Temmuz 2020 Cumartesi

QuickBasic - 15: Grafik işlemleri-3

Yayınlama: 4 Temmuz 2020

PRESET

Kullanımı:
PRESET [STEP] (x , y) [, renk]
PRESET komutu PSET komutu gibi grafik ekranda koordinatları(x,y) belirtilen konuma belirtilen renk ile nokta koyar.
PSET komutundan farkı renk belirtilmezse zemin rengi ile nokta koyar (koordinata zemin rengiyle nokta koyduğu için silme işlemi uygulanmış olur)
STEP olursa bir önceki nokta referans alınarak göreceli koordinat sistemi kullanılır.

Örnek 1:

DEFINT A-Z
SCREEN 7
COLOR , 4
A = 10
FOR x = 0 TO 50
    FOR y = 0 TO 20
        ' PSET (x + A, y + A), 14
        PRESET (x + A, y + A), 14 'Nokta koy
    NEXT
NEXT
SLEEP
FOR x = 0 TO 50
    FOR y = 0 TO 20 STEP 3
        PRESET (x + A, y + A) ' Sil
    NEXT
NEXT
Örnek 2:

5 Nisan 2020 Pazar

AutoCAD ile VBA Makro Kullanımı #6-2


Sub PolarPoint_1()
    ' .GetPoint([nokta] , [mesaj])
    ' Tıklanan Noktanın koordinat değerleri alınır. X,Y,Z
    
    ' .PolarPoint(Nokta , Açı , Uzunluk)
    ' Belirlenen noktanın verilen açı ve mesafedeki konumunu verir
    
    ' .AddText(Yazı , EklemeNoktası , YazıYüksekliği)
    ' Yazı yazdırır
    
    ' Açı(Rad) = Açı(Derece) * pi / 180
    ' Derece --> Radyan dönüşümü
    
    ' .AddLine(BaşlamaNoktası , BitişNoktası)
    ' Belirlenen 2 nokta arasına çizgi çizer
    
    ' Regen acActiveViewport
    ' Çizimi yeniden oluşturur
    pi = 4 * Atn(1) '3.14...
    a = 60 'açı - derece
    a = a * pi / 180 'açı - radyan
    With ThisDrawing.Utility
        n1 = .GetPoint(, "Nokta:")
        pp = .PolarPoint(n1, a, 50)
        ModelSpace.AddLine n1, pp
    End With
End Sub
Sub PolarPoint_1()
    With ThisDrawing.Utility
        pi = 4 * Atn(1)
        n1 = .GetPoint(, "Nokta:")
        For n = 0 To 359 Step 20
            a = n * pi / 180 'açı - radyan
            r = .PolarPoint(n1, a, 50)
            Set y = ModelSpace.AddText(n & "°", r, 3)
            y.color = acGreen
            Set c = ModelSpace.AddLine(n1, r)
        Next
    End With
End Sub
Sub PolarPoint_1()
    With ThisDrawing.Utility
        pi = 4 * Atn(1)
        n1 = .GetPoint(, "Nokta:")
        For n = 0 To 359
            a = n * pi / 180 'açı - radyan
            r = .PolarPoint(n1, a, 50)
            'Set y = ModelSpace.AddText(n & "°", r, 3)
            'y.color = acGreen
            Set c = ModelSpace.AddLine(n1, r)
            c.color = n * 0.7
        Next
    End With
End Sub
Sub YayCiz()
    ' .GetPoint([nokta] , [mesaj])
    ' Tıklanan Noktanın koordinat değerleri alınır. X,Y,Z
    
    ' .GetDistance([nokta] , [mesaj])
    ' Tıklanan iki noktanın mesafesi alınır. Değer girilebilir.
    
    ' .AngleFromXAxis(BaşlamaNoktası , BitişNoktası)
    ' Belirlenen 2 noktanın X ekseindeki açısı
    
    ' .AddArc(MerkezNokta , Yarıçap , Başl.Açısı , BitişAçısı)
    ' Yay çizer
    Dim yay As AcadArc
    With Utility
        m = .GetPoint(, "Merkez nokta: ")
        r = .GetDistance(m, "Yarıçap:")
        p1 = .GetPoint(m, "Başlangıç noktası")
        p2 = .GetPoint(m, "Bitiş noktası")
        a1 = .AngleFromXAxis(m, p1) 'radyan
        a2 = .AngleFromXAxis(m, p2) 'radyan
    End With
    Set yay = ModelSpace.AddArc(m, r, a1, a2)
End Sub