Netcad ile Obje Özelliklerini Keşfedin: Hızlı ve Kapsamlı Sorgulama Aracı 🚀
Explore Object Properties with Netcad: Fast and Comprehensive Query Tool 🚀
Bu makro, Netcad yazılımında seçilen objelerin (çizgi, metin, nokta) tabaka adlarının yanı sıra detaylı özelliklerini sorgulamak için geliştirilmiştir. Çizgi objeleri için alan bilgileri, tapu alanı, ölçek, tecviz hesaplamaları ve alan farklarını hesaplar. Metin objeleri için metin içeriği, boy ve genişlik bilgilerini sunar. Nokta objeleri için ise X, Y, Z koordinatları ve nokta kodunu gösterir. Harita mühendisleri, CAD kullanıcıları ve Netcad ile çalışan profesyoneller için projelerde verimliliği artıran güçlü bir araçtır. 🛠️
This macro is developed to query the layer names and detailed properties of selected objects (line, text, point) in Netcad software. For line objects, it calculates area information, tapu area, scale, tecviz calculations, and area differences. For text objects, it provides text content, height, and width information. For point objects, it displays X, Y, Z coordinates and point codes. It’s a powerful tool that boosts productivity for surveyors, CAD users, and professionals working with Netcad. 🛠️
Nasıl Çalışır (How Does It Work)
Makro, Netcad ortamında şu şekilde çalışır:
- Kullanıcı, çizgi, metin veya nokta türünde bir obje seçer.
- Seçilen objenin türüne göre şu bilgiler hesaplanır ve bir mesaj kutusunda gösterilir:
- Çizgi (Polyline): Tabaka adı, hesaplanan alan, tapu alanı, ölçek, tecviz değerleri (TM-YY ve TM-YV) ve alan farkı.
- Metin (Text): Tabaka adı, metin içeriği, boy ve genişlik bilgileri.
- Nokta (Point): Tabaka adı, X, Y, Z koordinatları ve nokta kodu.
- Kullanıcı dostu bir mesaj kutusu ile bilgiler sunulur.
- Kullanıcı, başka objeler seçerek sorgulamaya devam edebilir.
- Makro, Netcad’in VBScript dilinde yazılmıştır ve objelerin özelliklerini Netcad API’si üzerinden hızlıca çeker. Kullanımı kolay olup, haritacılık ve mühendislik projelerinde zaman tasarrufu sağlar. 📏
The macro operates in the Netcad environment as follows:
The user selects an object of type line, text, or point.
Based on the object type, the following information is calculated and displayed in a message box:
Line (Polyline): Layer name, calculated area, tapu area, scale, tecviz values (TM-YY and TM-YV), and area difference.
Text: Layer name, text content, height, and width information.
Point: Layer name, X, Y, Z coordinates, and point code.
The information is presented in a user-friendly message box.
The user can continue querying by selecting other objects.
Written in Netcad’s VBScript language, the macro quickly retrieves object properties via Netcad’s API. It is user-friendly and saves time in mapping and engineering projects. 📏
Etiket ( Labels )
Netcad, Makro, Tabaka Sorgulama, Obje Bilgisi, CAD, Harita Mühendisliği, VBScript, Otomasyon, Çizgi Analizi, Metin Sorgulama, Nokta Koordinatları, Alan Hesaplama, Tecviz Hesaplama, Ölçek Bilgisi, Netcad Makro, Tabaka Yönetimi, Obje Özellikleri, Haritacılık, Veri Sorgulama, Mühendislik Yazılımı
Netcad, Macro, Layer Query, Object Information, CAD, Surveying, VBScript, Automation, Line Analysis, Text Query, Point Coordinates, Area Calculation, Tecviz Calculation, Scale Information, Netcad Macro, Layer Management, Object Properties, Mapping, Data Query, Engineering Software
📝 Netcad NVB Code
' Amaç: Objenin Tabakasının Adını Verir.
SUB Main
DIM o,ss ,uz
With netcad
set ss = .NewSelectStatus ' Anlık Seçim objesi yarat
while .SelectObjectInstant ("Tabakası Sorgulanacak Obje Seçiniz",1,array(otext,opline,opoint),ss) ' obje seç
set o = ss.objects(0) ' Seçim objesinin ilk objesini al.
if o.tag=opline then
dim tecviz1,tecviz2,tapu,olcek
tapu= o.tarea
olcek= .getparam(94)
tecviz1=0.0004*olcek*sqr(tapu)+0.0003*tapu
tecviz2=0.013*sqr(tapu*olcek)+0.0003*tapu
dim g1,g2,g3,g4,g5,gx,gx2 ,gx3
g1= round(o.tarea-o.area)
gx= "[FARK]= " & g1 & " " & "[OLCEK]= " & .getparam(94)
gx2= "[TM-YY]= " & tecviz1
gx3= "[TM-YV]= " & tecviz2
msgbox o.pname & chr(13) & "Tabaka= " & nclayermanager.layer(o.tabaka).name & chr(13) & "H.Alan= " & round(o.area,2) & chr(13) & "T.Alan= " & round(o.tarea,2) & chr(13) & gx & chr(13) & gx2 & chr(13) & gx3 ,32,"Alan Objesi Bilgisi"
end if
if o.tag=otext then
msgbox o.s & chr(13) & "Tabaka= " & nclayermanager.layer(o.tabaka).name & chr(13) & "Boyu= " & o.sc & chr(13) & "Genişliği= " & o.wsc ,32,"Yazı Objesi Bilgisi"
end if
if o.tag=opoint then
msgbox o.pname & chr(13) & "Tabaka= " & nclayermanager.layer(o.tabaka).name & chr(13) & "Y= " & o.p1.y & chr(13) & "X= " & o.p1.x & chr(13) & "Z= " & o.p1.z & chr(13) & "KOD= " & o.pcode,32,"NOKTA Objesi Bilgisi"
end if
'uz = o.length (0) ' Uzunluk hesaplama (yorum satırı, kullanılmıyor)
'msgbox formatnumber (uz,2)
.drawobject o,-1
wend
End With
END SUB
VBnetcad-obje-bilgisi-sorgula