WebGL Örnekleri 2 / CanvasMol


Bugünkü içeriğimiz kimya konusunda bir WebGL örneği. CanvasMol isimli bu uygulama ile molekül yapılarını her açıdan görerek inceleyebileceğiniz 3 boyutlu görsellere çeviriyor.

Uygulama aslında Java platformu üzerinde daha önce hazırlanmış ve kimyacılar arasında çok bilinen JMol altyapısını webgl’ye çeviriyor. Böylece WebGL’nin mantığı gereği, Java dahil ayrıca bir eklenti kurmaya gerek kalmaksızın her bilgisayarda gösterilebilir hale geliyor.

Sitesinde bazı tanınmış moleküller için hazır örnekler bulunuyor. Diğerleri için uygun yerlere uygun formülleri girdiğinizde üretiliyorlar.

.

.

Sayfadaki tüm çerçeveler sürüklenerek başka yere taşınabiliyor ve ‘X’ tuşu ile kapatılabiliyor. Her yeni molekül görüntülemesi -eskisi kapanmadan- yeni bir çerçeve açılarak gösteriliyor. Sayıları arttıkça uygulama da çok yavaşlıyor.

Soldaki örnek molekülleri tıklayarak yapılarını üç boyutlu olarak değişik açılarda ve değişik bağlantı yapılarıyla inceleyebilirsiniz. Orada bulunmayanlar için şuradaki pencereye o molekülün PDB, SDF veya MOL kodlamasını yazıp ‘Import molecule’ düğmesine bastığınızda yeni bir çerçevede o da görüntülenmeye başlıyor.

.

.

Kimya konusundan hiç anlamadığımız için örnek bir kod bulabilmekte biz doğal olarak zorlandık. Sonunda “Benzen” molekülünün MOL cinsinden formülünü bulduk.

benzene
ACD/Labs0812062058

6 6 0 0 0 0 0 0 0 0 1 V2000
1.9050 -0.7932 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
1.9050 -2.1232 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
0.7531 -0.1282 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
0.7531 -2.7882 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
-0.3987 -0.7932 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
-0.3987 -2.1232 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
2 1 1 0 0 0 0
3 1 2 0 0 0 0
4 2 2 0 0 0 0
5 3 1 0 0 0 0
6 4 1 0 0 0 0
6 5 2 0 0 0 0
M END
$$$$

 

Yukarıdaki satırları olduğu gibi kopyalayıp çerçeveye yapıştırdığımızda aşağıdaki yapıyı elde etmeyi başardık.

.

.

Görüntüyü değişik açılarda dönerken buluyorsunuz. Aynı zamanda fare imleciyle de her yönde manuel olarak (elle) çevirebildiğimizi belirtelim. Farenin çarkını döndürerek uzaklaştırma / yakınlaştırma (zoom) yapabiliyoruz.

Bu pencerenin altındaki komutlarla görüntüde farklılaştırmalar yaratılabiliyor. Bir çoğunun anlamlarını çözebilmek için doğrusu çok çaba sarf ettik. (Biz konudan anlamayanlar için net bir açıklamalı rehberi yok. Kimyacılar ise zaten bir bakışta anlıyor olmalılar) Buradaki komutların bazılarının çalışabilmesi için bir diğerinin aktif olması gerekebiliyor.

.

X ekseninde (yatay : takla) dönüş
Y ekseninde (dikey : topaç) dönüş
Z (saat) yönünde dönüş
Atm Atom (Göster / gizle)
Bnd (Bond) İki atom arası bağ (Göster / gizle)
BW B-Width (Genişlik)
BG B-Gradient (Geçişli renklendirme ile göster)
ACol A-Color (geçişsiz –sade- renklendirme ile göster)
AFit ???
ASph ??? (Atomların küre -sphere- yapıda gösterimiyle ilgili bir alternatif olmalı)
ALtr Bir veya iki kez basmaya bağlı olarak, atomların kimyasal sembolleri ile gösterimi
Stats İstatistikler (Başlığın sağında görünür) Kaç atom, kaç bağlantı olduğu ve görüntünün saniyede kaç kare akmakta olduğu (FPS –frame per second- değeri)
PNG O anki görüntünün PNG formatında resminin alınması (Gelen resmi sağ tıkladıktan sonra “farklı kaydet” komutunu kullanarak bilgisayarınıza alıyorsunuz)

Sağ alttaki ‘Show molecule rotation buttons…’ açıklamalı yeşil düğme ile “dokunmatik ekranlar” için görüntüyü çevirme düğmelerinin görünüp kaybolmasını sağlayabiliyorsunuz.

.

Soldaki sütunlarda basit molekülleri gösteriliyor. Yapımcısı bir sohbetinde daha karmaşık proteinler için, uygulamanın üzerinde çalışacağı internet tarayıcının limitlerini zorlayabildiğinden söz ediyor. Aynı yazıdan sağdaki “Periyodik Tablonun” sadece elementler için bir renk skalası olarak orada bulunduğunu anlıyoruz.

Tabi WebGL’nin henüz çok yeni olduğunu, bu tür uygulamaların kısa sürelerde daha pek çok yol alacaklarını hatırlatalım. Bu gibi molekül yapıların görselleştirilmesi çalışmalarında -Java eklentisi gerektiriyor olsa bile (ki, hiç sorun değil)- ücretsiz JMol’ün ilk adres olmaya devam edeceğini belirtelim.

.

.

.

.

.

Hemen bir parantez açalım ve “Periyodik Tablo” ile ilgiliyseniz, yazıyı hazırlarken karşılaştığımız şu iki siteyi mutlaka ziyaret etmenizi önerelim.

İnteraktif periyodik tablo
Video periyodik tablo

.

Doğrusu bu kaynakları gördükçe insan düşünmeden edemiyor. Bir çok ülkenin lise çağındaki gençleri bunlarla iç içe büyüyor, bunlar üzerinden eğitim alabiliyor, hatta kolayca kendi kendilerini geliştirebiliyorken, “dil engeli” nedeniyle bizlerin -bırakın gençleri- eğitmenler olarak çok uzağında kalıyor olmamızda bir terslik var. Bana kalırsa Milli Eğitim Bakanlığı‘nın bu tür yaygın, ücretsiz, açık kaynak kodlu daha nice değerli yazılımları yapacağı anlaşmalar ve kuracağı bir çeviri bölümü ile Türkçe’ye kazandırması gerekiyor.

.

Sağlıcakla…

.

Wall Street Institute

Yorum, Katkı ve Sorularınız