Alan Objelerinin Adını GIS Sınıf Adıyla Değiştirme Makrosu (Change Area Object Names to GIS Class Names Macro)

netcad-alan-adini-gis-sinifindan-al

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

Netcad ile Alan Objelerinin Adını GIS Sınıf Adına Göre Otomatik Güncelleyin! 🚀

Automatically Update Area Object Names Based on GIS Class Names in Netcad! 🚀


Bu makro, Netcad kullanıcılarının seçtikleri alan (poligon) objelerinin adlarını, ilgili GIS sınıf adlarıyla otomatik olarak değiştirmesini sağlar. 🛠️ Özellikle büyük ölçekli GIS projelerinde, alan objelerinin adlarını manuel olarak güncellemek zaman alıcı ve hata yapmaya açık bir süreçtir. Bu makro, seçilen alan objelerini tarar, her birinin GIS sınıf adını (cls) kontrol eder ve eğer sınıf adı boş değilse, objenin adını (pname) bu sınıf adıyla değiştirir. Değişiklikler anında kaydedilir ve ekran yenilenir. Bu, veri yönetimini hızlandırır, hataları azaltır ve iş akışınızı daha verimli hale getirir. 🔄

This macro enables Netcad users to automatically rename selected area (polygon) objects based on their GIS class names. 🛠️ In large-scale GIS projects, manually updating area object names is time-consuming and error-prone. The macro scans selected area objects, checks their GIS class names (cls), and if the class name is non-empty, updates the object’s name (pname) to match. Changes are saved instantly, and the screen is refreshed. This streamlines data management, reduces errors, and boosts workflow efficiency. 🔄


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

Makro, Netcad ortamında şu adımları izler:

İşlem tamamlandığında, ekran yenilenir ve değişiklikler görselleştirilir. 🖥️
Bu makro, GIS tabanlı projelerde veri tutarlılığını artırmak ve manuel düzenleme süreçlerini kolaylaştırmak için ideal bir araçtır.

Kullanıcıdan alan (poligon) objelerini seçmesi istenir. 📍

Seçilen her alan objesi için bir döngü başlatılır. 🔄

Her objenin GIS sınıf adı (cls) kontrol edilir. Eğer sınıf adı boş değilse, objenin adı (pname) bu sınıf adıyla güncellenir. ✅

Değiştirilen obje, Netcad veritabanına geri kaydedilir. 💾

The macro operates in the Netcad environment with these steps: Prompts the user to select area (polygon) objects. 📍 Initiates a loop for each selected area object. 🔄 Checks the GIS class name (cls) of each object. If the class name is non-empty, the object’s name (pname) is updated to match. ✅ The modified object is saved back to the Netcad database. 💾 Upon completion, the screen is refreshed to display the changes. 🖥️ This macro is an ideal tool for enhancing data consistency and simplifying manual editing in GIS-based projects.


Etiket ( Labels )

Netcad makro, alan objesi, GIS sınıf adı, otomatik ad güncelleme, veri düzenleme, poligon objesi, Netcad otomasyon, GIS projeleri, veri tutarlılığı, makro kodlama, alan yönetimi

Netcad macro, area object, GIS class name, automatic name update, data editing, polygon object, Netcad automation, GIS projects, data consistency, macro coding, area management


📝 Netcad NVB Code

17.05.2025 tarihli güncelleme ile obje sınıfı yoksa güncelleme engellendi.

VB
' Şaban GÜL, sabangul67@gmail.com, sabangul.com
Sub Main
With Netcad
   Dim secimkumesi,obje,i,z
   set secimkumesi = .newselectionset
   set obje=.newobject
   ' Kullanıcıdan alan objelerini seçmesini ister
   if secimkumesi.select("Seçilen Alan Objelerinin Adı GIS Sınıfı Adı ile Değişecektir.",array(opolygon)) then
   ' Seçilen her alan objesi için döngü
   for i=0 to secimkumesi.NE-1
      z=secimkumesi.getselectedobject(i,obje)
      ' GIS sınıf adı boş değilse ad değiştir
      if obje.cls <> "" then
         obje.pname=obje.cls
         ' Değişikliği kaydet
         .putobject z,obje
      end if
   Next
   ' Ekranı yenile
   secimkumesi.redrawandrewind
   End if
End With
End Sub
VB

netcad-alan-adini-gis-sinifindan-al

17.05.2025 tarihli güncelleme ile güncelleme gelmiştir.

Sub Main

  With Netcad

   Dim secimkumesi,obje,i,z

  set secimkumesi = .newselectionset

  set obje=.newobject

  if secimkumesi.select(\"Seçilen Alanların Adı GIS Sınıfı Adı ile Değişecektir.\",array(opline)) then

  for i=0 to secimkumesi.NE-1

      z=secimkumesi.getselectedobject(i,obje)

      obje.pname=obje.cls
   .putobject z,obje

  Next

    secimkumesi.redrawandrewind

  End if

  End With

End Sub

Yazar

sabangul67@gmail.com

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

Tüm yazıları