üç boyutlu çizim
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
üç boyutlu çizim
Ben delphide küreyi fonksiyonu kendim yazarak nasıl çizebilirim
Hiç birşey imkansız degildir
Bu tamemen matematiksel bir olay. Onun için bu forumda pek yanıtını bulabileceğini sanmıyorum. Ama sana yol göstereyim. Bildiğin gibi daha teknoloji 3 boyutlu görüntüyü gerçek üç boyutlu halde gösterecek kadar gelişmedi. İki boyutlu görüntü perspektif ve renk olaylarından yararlanılarak 3 boyutlu gibi gözükmesi sağlanır. Bu etkiyi vermek sanırım bu için en zor yanı. Ama bunu senin için yapacak şeyler var. OpenGL ve DirectX. Verdiğin üç boyulu kordinatları iki boyutta üç boyuttaymış gibi gösterirler. Delphi ve Opengl hakkında birsürü makale var internette. Onları incelemekle başlayabilirsin. Ayrıca openGl gözünü korkutmasın. Ben bir aralar uğraşmıştım.
Fonksiyon için de senini analitik geometri bilgine bağlı bir olay. Belki artan bir döngü oluşturup artan değeri fonskiyondan yerine yazarak çizim yaptırabilirsin.
Şimdi aklıma geldi. Ben delphide bir türkün yaptığı OPengl de bir küpün hareketlerini kaydedip yenedin oynatan bir program hatırlıyorum. http://www.Delphiturk.com da vardı galiba.
Başarılar....
Fonksiyon için de senini analitik geometri bilgine bağlı bir olay. Belki artan bir döngü oluşturup artan değeri fonskiyondan yerine yazarak çizim yaptırabilirsin.
Şimdi aklıma geldi. Ben delphide bir türkün yaptığı OPengl de bir küpün hareketlerini kaydedip yenedin oynatan bir program hatırlıyorum. http://www.Delphiturk.com da vardı galiba.
Başarılar....
Selamlar,
Daha önceleri bu tarz çalışmaları yaptığım için size birkaç öneride bulunayım. Eğer oturup tek bir matematiksel fonksiyonda, XYZ düzlemlerindeki 8 noktadan geçen ve her noktanın bir diğerine açısının 90 derece olduğu bir fonksiyon yazıp küp çizmek ise işiniz bir hayli zor
Bunun çeşitli teknikleri var ve bu zorlukların üstesinden gelebilmek için özellikle 3d nesnelerin çizimlerinin yapılabilmesine yönelik OpenGL'dir directx gibi yazılım araçları geliştirildi. Bunar hem makinadaki 3d grafik kartlarının özelliklerini kullanıyorlar hem de yazılım yönünden desteklenmesini sağlıyorlar.
HardCode olarak oturup bir küp çizeyim filan derseniz şu yöntemi izleyebilirsiniz.
3d'nin 2d'deki izdüşüm mantığı ile wire frame şeklinde 8 adet noktanın XYZ düzlemlerindeki koordinatlarını array bir değişkene atayıp bunları canvas üzerine çizdirin.
Canvas üzerine Çizim için (ve hesaplamalarının otomatik olarak yapılmasını sağlamak için, ki bu 3d'nin 2d'ye izdüşümü hesaplamaları konusunda çok çeşitli yöntemler var) doğrudan Delphi'deki TCanvas3D'nin helpindeki Calculate3DPosition, HorizLine3D, HorizLine3D gibi methodlarını inceleyin orada birkaç küçük örnek bişiler var (olayı anlayabilmeniz açısından)
Kolay Gelsin.
Daha önceleri bu tarz çalışmaları yaptığım için size birkaç öneride bulunayım. Eğer oturup tek bir matematiksel fonksiyonda, XYZ düzlemlerindeki 8 noktadan geçen ve her noktanın bir diğerine açısının 90 derece olduğu bir fonksiyon yazıp küp çizmek ise işiniz bir hayli zor

Bunun çeşitli teknikleri var ve bu zorlukların üstesinden gelebilmek için özellikle 3d nesnelerin çizimlerinin yapılabilmesine yönelik OpenGL'dir directx gibi yazılım araçları geliştirildi. Bunar hem makinadaki 3d grafik kartlarının özelliklerini kullanıyorlar hem de yazılım yönünden desteklenmesini sağlıyorlar.
HardCode olarak oturup bir küp çizeyim filan derseniz şu yöntemi izleyebilirsiniz.
3d'nin 2d'deki izdüşüm mantığı ile wire frame şeklinde 8 adet noktanın XYZ düzlemlerindeki koordinatlarını array bir değişkene atayıp bunları canvas üzerine çizdirin.
Canvas üzerine Çizim için (ve hesaplamalarının otomatik olarak yapılmasını sağlamak için, ki bu 3d'nin 2d'ye izdüşümü hesaplamaları konusunda çok çeşitli yöntemler var) doğrudan Delphi'deki TCanvas3D'nin helpindeki Calculate3DPosition, HorizLine3D, HorizLine3D gibi methodlarını inceleyin orada birkaç küçük örnek bişiler var (olayı anlayabilmeniz açısından)
Kolay Gelsin.
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/