Seçilen Nesne Hariç Tüm Tabakaları Kilitleme Makrosu (Lock All Layers Except Selected Object Macro)

netcad-secilen-obje-tabaka-haric-kilitle

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

🔒 Seçilen Nesneyi Serbest Bırakarak Tüm Tabakaları Kilitleyin: Pratik Makro Çözümü 🚀

🔒 Lock All Layers Except the Selected Object: Practical Macro Solution 🚀


Bu makro, NetCAD ortamında seçilen bir nesnenin bulunduğu tabaka hariç tüm tabakaları kilitlemek için tasarlanmıştır. Kullanıcı, bir nesneyi seçer ve makro, seçilen nesnenin tabakasını serbest bırakırken diğer tüm tabakaları kilitler. Bu, özellikle karmaşık projelerde yalnızca belirli bir nesneyle çalışmak isteyen kullanıcılar için büyük kolaylık sağlar. Hızlı ve etkili bir şekilde tabaka yönetimini otomatikleştirir, böylece zaman tasarrufu sağlar ve hata riskini azaltır. Ayrıca, seçilen nesneyi siyah renkte çizerek görsel bir vurgu yapar ve ekranı hızlıca yeniler.

This macro is designed to lock all layers except the one containing the selected object in the NetCAD environment. The user selects an object, and the macro keeps its layer unlocked while locking all others. This is particularly useful for users working on complex projects who want to focus on a specific object. It automates layer management quickly and efficiently, saving time and reducing errors. Additionally, it draws the selected object in black for visual emphasis and refreshes the screen quickly.


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

Makro, aşağıdaki adımları izleyerek çalışır:

  • Nesne Seçimi: Kullanıcıdan bir nesne seçmesi istenir. Seçilen nesnenin tabaka bilgisi alınır.
  • Tabaka Analizi: Tüm tabakalar taranır ve seçilen nesnenin bulunduğu tabaka hariç diğer tabakalar belirlenir.
  • Kilitlenme Süreci: Seçilen nesnenin tabakası hariç tüm tabakalar kilitlenir.
  • Görsel Vurgu: Seçilen nesne siyah renkte çizilir ve ekran hızlı bir şekilde yenilenir.
  • Filtreleme ve Temizlik: İşlem tamamlandıktan sonra filtreler sıfırlanır ve sistem başlangıç durumuna döner.
  • Bu makro, NetCAD kullanıcılarının tabaka yönetimini kolaylaştırarak projelerde daha verimli çalışmalarını sağlar.
  • How it works: The macro follows these steps:
  • Object Selection: Prompts the user to select an object and retrieves its layer information.*
  • Layer Analysis: Scans all layers and identifies those other than the selected object’s layer.*
  • Locking Process: Locks all layers except the one containing the selected object.*
  • Visual Emphasis: Draws the selected object in black and refreshes the screen quickly.*
  • Filtering and Cleanup: Resets filters and returns the system to its initial state.*
  • This macro simplifies layer management for NetCAD users, enabling more efficient project workflows.


Etiket ( Labels )

Etiketler

NetCAD, Makro, Tabaka Yönetimi, Otomasyon, CAD, Verimlilik, Nesne Seçimi, Tabaka Kilitleme, Hızlı Çizim, Proje Yönetimi, NetCAD Makro, Tabaka Otomasyonu, CAD Verimliliği, Nesne Vurgulama, Ekran Yenileme

Macro, Layer Management, Automation, CAD, Efficiency, Object Selection, Layer Locking, Fast Drawing, Project Management, NetCAD Macro, Layer Automation, CAD Efficiency, Object Highlighting, Screen Refresh


📝 Netcad NVB Code

VB
SUB Main
DIM ss,o,i,j,oo,p,sel
DIM kt() ,t()
With netcad
  ReDim kt(.NumLayers) ' Tabaka dizisini boyutlandır
  ReDim t(.NumLayers) ' Tabaka indekslerini tutmak için dizi
  set SEL = .NewSelectionSet ' Yeni seçim seti oluştur
  set o = .NewObject ' Yeni nesne oluştur
  if SEL.SELECT("Objeyi Seç",array()) then ' Kullanıcıdan nesne seçmesini iste
    for i = 0 to SEL.NE-1 ' Seçilen nesneleri döngüye al
      j = SEL.GetSelectedObject(i, o) ' Nesneyi al
      kt(i)= o.tabaka ' Nesnenin tabakasını kaydet
    next
    set ss = nothing ' ss değişkenini temizle
    set o = nothing ' o değişkenini temizle
  end if
  For i=0 to .NumLayers-1 ' Tüm tabakaları döngüye al
    t(i)=i ' Tabaka indekslerini ata
  Next
  For j=0 To SEl.NE-1 ' Seçilen nesnelerin tabakalarını kontrol et
    For i=0 to .NumLayers-1
      if kt(j)=i then t(i)=0 ' Seçilen nesnenin tabakasını 0 yap (kilitleme dışı)
    Next
  Next

  For i=0 to .NumLayers-1 ' Tabakaları kilitle
   With nclayermanager
        .layer(t(i)).LockActive=true ' Tabakayı kilitle
          end with
  Next

  .SetFilter .GetCurrentWindow, t, array() ' Filtreyi ayarla
    Do
    set oo = .GetNextObject ' Sonraki nesneyi al
      if oo is nothing then ' Nesne yoksa döngüden çık
        exit do
      else
        .drawobject oo, Black ' Nesneyi siyah renkte çiz
      end if
    Loop
  .FastRedraw ' Ekranı hızlıca yenile
  .ResetFilter ' Filtreyi sıfırla
End With
END SUB
VB

netcad-secilen-obje-tabaka-haric-kilitle

Yazar

sabangul67@gmail.com

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

Tüm yazıları