Çoklu Doğru Paralel Çizim Aracı (Parallel Polyline Drawing Tool)

netcad-cokludogru-paralel

sabangul67@gmail.com
Mayıs 17, 20254 dk okuma2 görüntülenme

Çoklu Doğru Objelerine Hızlı ve Kolay Paralel Çizim Aracı 🚀

Fast and Easy Parallel Polyline Drawing Tool for CAD Projects


Bu makro, Netcad ortamında seçilen çoklu doğru (polyline) objelerinin paralelini hızlı ve kullanıcı dostu bir şekilde çizer. Kullanıcı, paralel çizimin mesafesini ve alan türünü (açık veya kapalı) belirtebilir. Makro, seçilen objelerin paralel kopyalarını oluşturur ve mevcut katman, çizgi tipi ve font ayarlarını korur. CAD projelerinde zaman kazandıran bu araç, özellikle alan planlaması ve harita çizimlerinde sıkça kullanılır. 🛠️

This macro efficiently draws parallel lines to selected polyline objects in the Netcad environment. Users can specify the distance for the parallel offset and choose whether the resulting shape is open or closed. It generates parallel copies of the selected objects while preserving the current layer, line type, and font settings. Ideal for CAD projects, this tool saves time in tasks like area planning and map drafting. 🛠️


Nasıl Çalışır (How Does It Work)

  • Kullanıcı Arayüzü: Makro çalıştırıldığında, bir diyalog kutusu açılır. Bu kutuda kullanıcı, paralel çizimin mesafesini (örneğin, 1 birim) ve alan türünü (açık veya kapalı) seçer.
  • Obje Seçimi: Kullanıcı, paralel çizim uygulanacak çoklu doğru objelerini seçer.
  • Paralel Çizim: Makro, seçilen her bir objenin paralel kopyasını belirtilen mesafede oluşturur.
  • Ayarların Korunması: Çizim, aktif katman, çizgi tipi ve font ayarlarıyla uyumlu şekilde yapılır.
  • Sonuç: Yeni oluşturulan paralel objeler çizim alanına eklenir ve kullanıcıya anında sunulur.
  • Bu süreç, toplu işlemler için optimize edilmiştir ve geri alma (undo) desteği sunar. ⚙️

User Interface: Upon running the macro, a dialog box appears where the user inputs the offset distance (e.g., 1 unit) and selects the area type (open or closed).
Object Selection: The user selects the polyline objects to which the parallel drawing will be applied.
Parallel Drawing: The macro generates parallel copies of each selected object at the specified distance.
Preserving Settings: The drawing is created in alignment with the current layer, line type, and font settings.
Output: Newly created parallel objects are added to the drawing area and displayed instantly.
The process is optimized for batch operations and includes undo support. ⚙️


Etiket ( Labels )

CAD, paralel çizim, makro, çoklu doğru, harita, planlama, otomasyon, çizim aracı, Netcad, mühendislik, topoğrafya, alan çizimi, hızlı çizim, VBScript, programlama, CAD otomasyonu, harita tasarımı, proje yönetimi, teknik çizim, coğrafi bilgi sistemleri

CAD, parallel drawing, macro, polyline, mapping, planning, automation, drawing tool, Netcad, engineering, topography, area drawing, fast drawing, VBScript, programming, CAD automation, map design, project management, technical drawing, geographic information systems


📝 Netcad NVB Code

VB

Sub Main
Dim ss,i,yeni,say,o,opl,pline,ypoli,bd,mesafe,aktiftab,aktifhat,aktiffont,tip
  with Netcad
     set yeni = .newpoly ' Yeni bir polyline objesi oluşturulur
     set opl=.newobject ' Yeni bir obje tanımlanır
     set pline= .newpoly ' Çizim için polyline objesi
     set bd = .newbdialog ("Çoklu Doğru ( Alan ) Paralel Atma") ' Kullanıcı arayüzü diyalog kutusu
        bd.getdistance "mesafe","Paralel Atılacak Mesafe =","1",3 ' Mesafe girişi
        bd.getradio "Tip","Alan Türü","Açık|Kapalı",1 ' Açık/Kapalı seçim
      bd.showmodal
        mesafe = bd.valuebyname ("mesafe")*-1 ' Mesafe negatif olarak alınır
        tip = bd.valuebyname ("Tip") ' Alan türü seçimi
     if mesafe = 0 then exit sub ' Mesafe 0 ise işlem durdurulur
     set ss = .newselectionset   ' Anlık seçim objesi oluşturuldu
    ss.select "Paralel Atılacak Alanları Seçiniz",array(opline) ' Obje seçme işlemi
.undo (3) ' Geri alma desteği
     for i=0 to ss.ne-1
     say=say+1
     o=ss.getselectedobject(i,opl)
     set pline = opl.getobjectaspline() ' Seçilen obje polyline olarak alınır
     set yeni = pline.getparalel (mesafe,1) ' Paralel çizim oluşturulur
       aktifhat = .getcurrentlinetype  ' Aktif hat tipi alınır
       aktiffont = .getparam (PNC_CURFONTREF) ' Aktif font alınır
       aktiftab = .getcurrentlayer ' Aktif katman alınır
     set ypoli = .MakePline(say,tip,0,aktiftab,aktifhat,0,yeni) ' Yeni polyline oluşturulur
       .drawobject ypoli,4 ' Obje çizilir
       .addobject ypoli ' Obje eklenir
     next
.undo (4) ' Geri alma desteği
    end with
    set ss = nothing ' Bellek temizliği
    set i = nothing
    set yeni = nothing
    set say = nothing
    set o = nothing
    set opl = nothing
    set pline = nothing
    set ypoli = nothing
    set mesafe = nothing
    set bd = nothing
End Sub
VB

netcad-cokludogru-paralel

Yazar

sabangul67@gmail.com

Bu yazarın yayınladığı diğer içerikleri inceleyebilirsiniz.

Tüm yazıları