Koordinatları Belirli Bir Çubuğu Çizmek

Arkadaşlar merhaba ; sorum çok fazla bilgimin olmadığı bir kısımdan,
şöyle ki; yapmak istediğim şey kullanıcıdan iki uc noktasının koordinatlarını aldığım çubukları 3 boyutlu bir eksende çizebilmek. Ve bu çubukların başlangıç bitiş noktalarını seçerek belirli özellikler atamak istiyorum, bunun gibi bu çubuklara bir çok özellik ekleyebileceğim bir yapı oluşturmak istiyorum…

Böyle bir şey nasıl yapılır hangi kütüphaneleri kullanmam daha iyi olur nasıl bir yol izlemeliyim ?

Cevaplarınız için teşekkür ederim. :slight_smile:

matplotlib kütüphanesi ile yapabilirsiniz.

https://matplotlib.org/mpl_toolkits/mplot3d/tutorial.html

1 Beğeni

Cevabiniz icin tesekkur ederim. Fakat matplotlib ile daha cok matematiksel grafik isleri icin kullanilmiyor mu ?

Evet öyle.

O zaman sizinle bir liste paylaşayım, bir araştırın, daha sonra da sizin için en kullanışlı kütüphanenin hangisi olduğuna karar verin.

http://vermeulen.ca/python-graphics.html

1 Beğeni

OpenCv ile bu tarz bir uygulama yazabilir miyim ?
Dinamik yapilar olacak sekilde ,Fare ile secip hareket ettirebilecegim ?

Eger imkan sagliyorsa OpenCv ye odaklanayım.

Bilmiyorum ki, opencv'yi kullanmadım daha önce.

Herhangi bir grafik kutuphanesi bunu yapabilir. 3 boyutlu bir grafik kutuphanesi daha da kolay yapabilir.

Cubuklarin baslangic ve bitis noktalari zaten “evrende var olmak”, “yazbel forumlarinda konusulmak” gibi sonsuz sayida ozellige sahip. Secildiklerinde de “@aib tarafindan secilmis olmak” gibi ozelliklere sahip olacaklar. Yani bu dedigini yapabilmek icin hic kod yazmana gerek yok.

OpenCV zor. “Scene graph” ozelligi olan, daha kapsamli bir kutuphane iyi olabilir. vispy’de hazir kontroller var, denenebilir.

1 Beğeni

Cevabınız için teşekkür ederim öncelikle. Matplotlib ile cizebiliyorum fakat grafik uzerinde secim yapamadım.

OpenGl kutuphanesine baktım ,biraz daha 3 boyutlu nesneler için uygun gibi geldi bana.

Asıl merak ettiğim şey AutoCad gibi çizim programları bu tarz çizimleri nasıl yapıyor ? Yapmak istedigim AutoCad tarzı bir sey degil tabi ki de , eksen kullanımı açısından daha basit bir uygulama :slight_smile:

Anlamadim, kac boyutlu obje cizmek istiyorsun?

3 boyutlu cizim denklemlerini kafalarinda kurabilecek, gerekli kutuphaneleri kendileri yazabilecek insanlari calistirarak.

Yani nasil anlatayim? Cizgi cizmek geometri; ekrana piksel cizebilme yetisi disinda bir sey istemiyor. Bir takim seyleri kolaylastirmak icin bir takim kutuphaneler var. Mesela ekranda mouse ile secilen noktayi uc boyutlu uzayda isina cevirmek icin gluUnproject gibi fonksiyonlari iceren GLU kutuphanesi var. Ama “hmm, ekranin ustundeki bir nokta aslinda uc boyutlu uzayimda bir cizgiye denk geliyor” diye dusunecek seviyeye gelmemis birinin isine yaramayabilir.

Programlarin kullandigi tek, ortak bir kutuphane yok. OpenGL var, ama o cok dusuk seviye—“programlar OpenGL kullaniyor” demek “programlar ekran karti kullaniyor” demek gibi bir sey. Izdusum matrisinin ne oldugunu bilmeni bekliyor. (Modern versiyonlari icin soyluyorum; immediate mode’un oldugu OpenGL 1 ve 2 gayet baslangic seviyesine uygun.)

Bence Unity gibi, Unreal Engine gibi oyun motorlarina bak. Kod yazmadan cizebilirsin eksen.

yani şuan için çubuk diye tabir edilen yapıları çizmek istiyorum . İlerisi için merak ettiğimden sordum nasıl oluyor bu işler :slight_smile: :slight_smile:

Cevaplarınız için teşekkür ederim çok faydalı oldu :slight_smile:

Merhaba, ben de benzer sorular ile 3D rendering olayını araştırırken basit bir proje yazmıştım. Her ne kadar istediğiniz olay için uygun bir implementasyon olmasa da fikir verebileceğini düşündüğüm için paylaşmak istedim. Proje yorum satırı içermediğinden anlaması biraz güç olabilir, öğrenirken yazdığımdan yapısı çok üzerine düşünülmüş bir şey değil ne yazık ki.

Proje: https://yadi.sk/d/p_bsBJMlxhfbiw

ico

çok teşekkür ederim :slight_smile: hemen inceleyeceğim :slight_smile: