|
Orhan Toker |
| DERS.9 DXF Kodları Seviye: İleri Kaynaklar: Autodesk, VisualLISP IDE Help file [20.Nisan.2006] |
|
Merhabalar, Bu dersimde AutoLISP ve ObjectARX uygulamalarında çok karşılaşacağınız DXF kodlarını açıklayacağım. Drawing Exchange Format deyiminin kısaltması olan DXF Autodesk'in oluşturduğu bir çizim değişim formatıdır ve diğer çizim firmaları tarafından da kullanılır. Ancak her çizim programının içindeki çizim elemanları aynı olmadığından zaman zaman DXF alışverişlerinde sorunlar yaşanabilir. |
|
| Nesneler ve Varlıklar (objects and entities) | |
| Autocad'de nesne ve varlık kavramları çok kolay ayırdedilebilirler. Nesneler çizim veritabanında yer alan ancak grafik olarak gözükmeyen LAYER tabloları veya sözlükler gibi şeylerdir. Varlıklar ise grafik olarak görünen ve aynı zamanda nesneler tarafından desteklenen şeylerdir. Örneğin LAYER değeri "TAL_DUVAR" olan bir CIRCLE varlığı. | |
| Grup Kodu değerleri tablosu | |
| Autocad her nesne ya da varlık için DXF grup kodu tablosunda belirli gruplar ayırmıştır. Bu grupları aşağıda açıklayacağım. Tabloyu daha detaylı incelemek istiyorsanız. Tablo.1 | |
| Yaygın kullanılan grup kodlarının açıklaması | |
| Vereceğim tabloda en yaygın kullanacağınız grup kodlarının açıklamalarını bulabilirsiniz. Tablo.2 | |
| Yaygın kullanılan bir kaç Autocad varlığının DXF grup kodları | |
| En yaygın kullanılan 4 varlığın DXF grup kodlarını Tablo.3 de bulabilirsiniz. Diğer Autocad varlıkları için VisualLISP yardım dosyasından DXF referansına bakabilirsiniz. | |
| Bir DXF dosyasının genel yapısı | |
Genel olarak bir DXF doysası aşağıdaki şekildedir.
Şimdi örnek bir DXF dosyası inceleyelim ve kendimize bir tane yaratıp import edelim. |
|
| Örnek bir DXF dosyası | |
İçinde sadece bir tane LINE varlığı olan bir çizim dosyası yaratın ve bunu DXFOUT komutu ile export edin. Benim örneğimde çizgi 10,10 noktasından 100,250 noktasına uzanıyor. Bunu dosyayı daha iyi takip edebilmek için yapıyorum. Şimdi DXFOUT yaptığınız dosyayı herhangi bir TEXT editörü ile açın ve ENTITIES başlığına gidin. Orada aşağıdaki kodu göreceksiniz.
Aynı kodun içine ENDSEC satırının hemen önüne aşağıdaki kodu ilave edin.
Kodu SAVE edip kapatın ve DXFIN ile dosyasnızı açın. Çizime bir çember eklendiğini göreceksiniz. Şimdi dosyanın başlık kısmını incelemenizi tavsiye ederim. Bu derste DXF kodlarının hep Autocad içindeki değerlerini inceledik. Sadece son başlıkta DXF dosyası içindeki konumlarını gördünüz. DXF kodları dosyas içinde nokta listesi olarak yer almazlar. Onun yerine 10 20 30 X,Y,Z değerleri alırlar. Çizginin kodlarına dikkat ederseniz başlangıç noktası 10 20 30 ve bitiş 11 21 31 dir. Bu dersle ilgili bir uygulamaya en kısa zamanda yer vermek istiyorum. Ancak CNC için gereken G-kodlarına dönüşüm gibi profesyonel uygulamalar için ilgili kaynakları bulup kendi kendinizi geliştirmeniz gerekiyor. |
|
| Autocad içindeki varlıkların DXF grup kodlarının çekilmesi | |
Autocad içindeki varlıkların DXF kodu entget fonksiyonu ile çekilir. entget fonksiyonunun kullanım şekli (entget nesneadi) şeklindedir. Seçtiğiniz varlığın DXF kodunu seçmek için kullanacağınız kod şöyledir:
Örneğin 150,150 den başlayıp 300,200 noktasına giden bir çizgi çizelim ve yukarıdaki kodu komut satırına yazalım. Çizdiğiniz çizgiyi seçince aşağıdaki kodu alırsınız:
Kodu incelersek noktalı çiftlerden oluşmuş bir liste olduğunu ilk bakışta anlarız. Daha önceki uygulamalarımızda da bu listeyi görmüştük.
|
|
| (c) Copyright 2006 Taliasoft, by Orhan Toker |