Seçilen Objeleri En Alta Gönderme (Send Selected Objects to Bottom)

netcad-en-alta-gonder

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

Seçilen Objeleri En Alta Gönderme Makrosu

Send Selected Objects to Bottom Macro


Bu makro, NetCAD ortamında seçilen objeleri çizim sırasına göre en alta taşımak için tasarlanmıştır. Kullanıcı, belirli objeleri seçer ve bu objeler, diğer tüm objelerin altına yerleştirilir. Çizimlerde katman sıralamasını düzenlemek, objeleri arka plana göndermek veya görsel hiyerarşiyi optimize etmek için mükemmel bir araçtır. Makro, objelerin orijinal özelliklerini korurken yalnızca çizim sırasını değiştirir. Hızlı, güvenilir ve kullanıcı dostu bir çözüm sunar. 🛠️

This macro is designed to move selected objects to the bottom of the drawing order in the NetCAD environment. The user selects specific objects, and these are placed below all other objects. It’s an ideal tool for organizing layer order, sending objects to the background, or optimizing visual hierarchy. The macro preserves the original properties of objects while only altering their drawing order. It provides a fast, reliable, and user-friendly solution. 🛠️


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

  • Obje Seçimi: Kullanıcı, NetCAD arayüzünde en alta gönderilecek objeleri seçer.
  • Seçim Seti Oluşturma: Makro, seçilen objeleri bir seçim setine kaydeder ve objelerin sayısını belirler.
  • Obje İşaretleme: Seçilen objeler geçici olarak işaretlenir (stag = 1) ve mevcut konumlarında yeniden çizilir.
  • Sıralama Değişikliği: Seçilmemiş objeler kopyalanarak yeni objeler oluşturulur ve sırayla yeniden çizilir. Seçilen objeler en alta taşınır.
  • Temizlik: İşlem sonrası geçici değişkenler ve seçim seti temizlenir, sistem kaynakları serbest bırakılır. Geri
  • Alma Desteği: Makro, işlemin geri alınabilmesi için undo komutlarını destekler.
  • Object Selection: The user selects objects to be sent to the bottom in the NetCAD interface.
  • Selection Set Creation: The macro records selected objects in a selection set and counts them.
  • Object Marking: Selected objects are temporarily marked (stag = 1) and redrawn in their current positions.
  • Order Modification: Unselected objects are copied to create new objects and redrawn in sequence. Selected objects are moved to the bottom.
  • Cleanup: After the process, temporary variables and the selection set are cleared, freeing system resources.
  • Undo Support: The macro supports undo commands to allow reverting the operation.
  • This process aligns with NetCAD’s drawing logic and efficiently reorganizes object order. 🔄


Etiket ( Labels )

netCAD, makro, obje sıralama, çizim düzeni, seçilen objeleri alta gönderme, VBScript, katman yönetimi, çizim optimizasyonu, obje yönetimi, NetCAD makro, çizim sıralama, görsel hiyerarşi

NetCAD, macro, object sorting, drawing order, send objects to bottom, VBScript, layer management, drawing optimization, object management, NetCAD macro, drawing sorting, visual hierarchy


📝 Netcad NVB Code

VB
Sub Main
Dim i, ss, eskiobje,sos, objeindex, yeniobje
Dim objeadet, obje
  with Netcad

    set ss = .NewSelectionSet   ' Anlik Secim objesi yarat
    set eskiobje = .newobject
    'set yeniobje = .newobject
'------- Obje seçme ve seçilen objelerin tabaka isimlerini kaydetme --------
  if ss.Select ("En alta gönderilecek objeleri seçiniz.",array()) then' obje sec
    sos = ss.ne 'Seçilen Obje Sayısı
    objeadet = .numobject

 .undo(1)
    for i = 0 to ss.ne-1
        objeindex = ss.getselectedobject (i,eskiobje)
        eskiobje.stag = 1
        .drawobject eskiobje,-1
        .putobject objeindex,eskiobje
     next

    for i = 0 to objeadet-1
        set obje = .getobject(i)
        if obje.tag<>0 then 'Obje Silinmiş Değil ise...
     if obje.stag <> 1 then
         set yeniobje = obje.getcopy 'Seçilmemiş Obje aynen Yeniobje olarak kopyalandı.
        .drawobject yeniobje,obje.renk 'Yeni obje ekrana çizildi.
        .addobject yeniobje            'Yeni Obje NetCAD'e eklendi
        .delobject i,obje   'Orjinal obje silindi.
     else
        obje.stag = 0
        .putobject i,obje
     end if
     end if
       next
    .undo(2)
    end if

  set obje = nothing
  set objeadet  = nothing
  set yeniobje  = nothing
  set objeindex = nothing
  set sos = nothing
  set eskiobje  = nothing
  set ss = nothing
  set i = nothing

  end with
End Sub
VB

netcad-en-alta-gonder

Yazar

sabangul67@gmail.com

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

Tüm yazıları