metraj etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
metraj etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

13 Eylül 2012 Perşembe

Autocad Dosyasındaki Üst Üste Gelmiş Nesneleri Silmek


Metraj yaparken üst üste gelmiş cisimleri farketmemek gerçekten sinir bozucu sonuçlar doğurabilir. Metrajın fazla olduğu durumlarda her metraj kalemini tek tek saymak çok fazla zaman alacağından autocad üzerinde filtreleme yaparak ekranda kalan tüm elemanları seçerek net metrajı bulabiliriz. Fakat bu seçimdeki rakam her zaman doğru metrajı vermeyebilir. Örnek vermek gerekirse aşağıdaki gibi bir kazık yerleşim planı olduğunu varsayalım.


Kısaca hesap yapmak gerekirse projede 4*7=28 adet kazık var. Bu hesap her zaman bu kadar kolay olmayacağı için fitrelenmiş kazıkları seçerek toplam metraja ulaşmaya çalışalım. Tüm elemanları seçelim ve sağ tıklayıp özelliklere girelim.


Ekrana gelen pencerenin en başına bakarsanız autocade göre toplam 56 adet circle elamanı seçili. Yani bizim hesabımızın 2 katı kadar kazık var. Demekki çizim sırasında bir şekilde aynı nesneler üst üste gelmiş ve bunu yeni farkettik. Bu gibi durumlarda hata yapmamak için ne yapmalıyız? Metraj için aldığımız dosyada hiç bir metraja başlamadan önce üstü üste gelmiş nesneleri silerek işe başlayabiliriz. Overkill komutu işimizi görecektir. Komutsatırında overkill yazıp entera basalım ve ardından ekrandaki tüm nesneleri seçelim. Karşımıza aşağıdaki gibi bir opsiyon penceresi çıkacak.



Burada color, layer, linetype vb seçenekler arasında istediğimizi seçelim. Üst üste gelmiş nesnelerin burada seçtiğimiz özellikleri birbirinden farklı ise silme işlemi gerçekleşmeyecek. Örneğin üst arka planda kalan kazık rengi, çizgi kalınlığı veya layeri öndeki kazıktakinden farklı. Bu durumda farklı olan özellikler bu listede işaretlenmeli. Emin olmadığınız durumlarda hepsini işaretlemekte fayda var. Şimdi ok butonuna tıklayalım ve komut satırında overkill komutunun ne yaptığının özetine bakalım.


28 duplicate(s) deleted / 0 overlapping object(s) or segment(s) deleted. Yani 28 adet üst üste gelen nesne silindi ve kısmen örtüşen nesne hiç silinmedi. (Eğer uzun bir çizgi üzerinde kısa bir çizgi olsaydı veya çember üzerinde çember dilimi olsaydı overkill işlem sonucunda "0 duplicate(s) deleted / 1 overlapping object(s) or segment(s) deleted" yazacaktı). Şimdi metrajı tekrar kontrol edelim.


Ekrana gelen pencerenin en başına tekrar bakarsanız overkill işleminin ardından toplam 28 adet circle elamanı seçili. Yani en başta hesap ettiğimiğimiz gibi toplam 28 adet kazık var.

18 Şubat 2012 Cumartesi

Tablo Çözümleme - 2.Yöntem: Array Formülleri

Dünkü yazımızda düşeyara formülünü kullanmıştık. Bugün ise array formülleri kullanacağız. Yine aynı formattaki tablomuzu kullanacağız. İlk olarak array formüllerinde kullanacağımız adları tanımlamakla işe başlayalım. Bunun için formüller sekmesindeki ad yönetcisi düğmesine tıklayalım.

Açılan pencerede yeniye tıklayalım ve 8.kattaki kesitleri arrayler halinde tanıtalım.

Ad olarak kat_8 yazalım ve başvuru yeri olarak B3:L3 aralığını seçelim. Böylece 1 satır * 8 kolonluk bir array tanımladık.

Aynı şekilde tüm katlara ait adları tanıtalım. Toplamda 8 adet (1 * 8) boyutunda array tanımlamış olduk. Değer kolonunda arraylerin aldığı değerleri görmeniz mümkün.

N kolonuna daha önceden hazırladığımız kolon numaralarını yazalım. O2:O12 aralığını seçelim entera basalım ve formül olarak =DEVRİK_DÖNÜŞÜM(kat_1) yazalım ve yazdıktan sonra ctrl, shift ve enter tuşlarına basalım. Dikkat ederseniz excel formülün başına ve sonuna parantez ekledi. Bu hareketi yapmamızdaki amaç excele bu formülün bir array formülü olduğunu göstermekti. Devrikdönüşüm formülünü kullanmamızdaki amaç ise 1 satır * 8 kolonluk arrayin formatını 8 satır * 1 kolon formatına çevirmek. Formülü yazarken kat_1 karakterlerini girdiğimizde excel ad yöneticisinden bizim için seçtiği arraylari listeledi.

Formülümüzün doğru çalışıp çalışmadığını kontrol edelim, B10:L10 ve O2:O12 aralığındaki sayıların toplamını kontrol edelim. Her iki aralığın toplamı da 13550, yani formülasyonumuz doğru.

Aynı işlemleri diğer katlar için de yapalım. Bunun için O2:O12 aralığındaki hücreleri kopyalayalım ve O13:O23 aralığına yapıştıralım. Ardından bul ve değiştir (ctrl ve f) fonksiyonu yardımıyla formüller içerisindeki kat_1 değerini kat_2 ile değiştirelim. Bunun için aranan değeri olarak kat_1, yeni değer olarak kat_2 ve konum olarak formülleri seçelim ve tümünü değiştire tıklayalım.

Yeni tablomuz hazır.

17 Şubat 2012 Cuma

Tablo Çözümleme - 1.Yöntem: Düşeyara Formülü

Aşağıdaki tabloda projemizdeki tüm kolonlara ait kesit bilgisi mevcut. Bu yazımızda kolonlara sistematik bir numara vermeyi ve bu numarayı kullanarak tabloyu çözümlemeyi deneyelim. Peki bunu neden yapıyoruz? Elimizde dizayn departmanından gelen tahmini kolon kesitleri var ve kat yükseklikleri aynı değil. Yani basit bir tablo yaparak tahmini beton metrajını çıkartabiliriz. Eğer kat yüksekliğiniz değişmiyorsa zaten böyle bir çözümlemeye gerek yok, B3:L10 seçimindeki hücrelerin toplamını, yani toplam kesit alanını kat yüksekliği ve toplam kat sayısı ile çarparak aynı sonuca ulaşabilirsiniz. Ama en önemli amacımız excel pratiği yapmak, farklı bakış açıları geliştirmek. Bunun için yarın yayınlanacak 2.yöntemde ad tanımlama ve array formülleri ile aynı işi yapacağız.

Konumuza geri dönelim. Kullanacağımız numara sistemi çok basit. Örnek vermek gerekirse 108 numaralı kolon, 1.kata ait 8 numaralı kolon. Yani tablodan çekmemiz gereken değer I10 hücresindeki 1000 değeri.

Şimdi N kolonuna kolon numaralarını girelim. Bu numaraları makro ile yazdırmak mümkün, ileride makro çözümlere başladığımız zaman göreceğiz. Şimdilik elle 101-111,201-211,…,801-811 şeklinde kolon numaralarını girelim.

Tabloyu çözümlemek için kolonun hangi katta olduğunu ve kaçıncı kolon olduğunu bilmeliyiz. Kolonun hangi katta olduğunu bulmak için O kolonunda soldan formülünü kullanacağız. O2 hücresine =SOLDAN(N2;1) yazalım ve 811 numaralı kolona kadar formülü aşağıya doğru sürükleyelim.

Kolonun kaçıncı kolon olduğunu bulmak için ise tablonun sistematiğinden faydalanacağız. Kolon numaraları tablonun aşağısına doğru artarak ilerlediğinden, belirli bir satırdaki kolona kadar O kolonundaki belirli bu katın toplamda kaç kez yazıldığını bulabiliriz. Bunun için eğersay formülünü kullanacağız. P2 hücresine =EĞERSAY($O$2:O2;O2) yazalım ve 811 numaralı kolona kadar formülü aşağıya doğru sürükleyelim.

Şu an yapmamız gereken O ve P kolonlarındaki veriyi birleştirip tablodan kesit bilgisini çekmek. Düşeyara formülü bu noktada devreye giriyor. Fakat O kolonundaki soldan formülü sonucu metin olarak verdiği için öncelikle metni sayıya çevirmek için sayıyaçevir formülünü kullanmalıyız. Q2 hücresine =DÜŞEYARA(SAYIYAÇEVİR(O2);$A$3:$L$10;P2+1;0) yazalım. Bu formül kat ve kolon numarasını kesiştirecek. Formülü aşağı doğru sürüklediğimiz zaman referans aralığının değişmemesi için $ işaretleri kullanmalıyız. Son olarak 811 numaralı kolona kadar formülü aşağıya doğru sürükleyelim.

Doğru yapıp yapmadığımız kontrol etmek için tüm kesitlerin toplamını karşılaştıralım. B3:L10 seçimindeki hücrelerin toplamı ekranın sağ altında görebileceğiniz gibi 94875.

Q kolonundaki kesitlerin toplamı yine ekranın sağ altında görebileceğiniz gibi 94875. Yani formülasyonumuzda bir hata yok.