üç boyutlu çizim

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
sonsuz052
Üye
Mesajlar: 23
Kayıt: 07 Ağu 2003 12:29
Konum: ankara
İletişim:

üç boyutlu çizim

Mesaj gönderen sonsuz052 »

Ben delphide küreyi fonksiyonu kendim yazarak nasıl çizebilirim
Hiç birşey imkansız degildir
ademcicek
Üye
Mesajlar: 409
Kayıt: 03 Eki 2003 01:50
Konum: Ankara

Mesaj gönderen ademcicek »

canvas yöntemine bir bak.bütün delphi kitaplarında var.
orada şekilleri nasıl çizeceğin var.
sonsuz052
Üye
Mesajlar: 23
Kayıt: 07 Ağu 2003 12:29
Konum: ankara
İletişim:

Mesaj gönderen sonsuz052 »

herhalde ben sorunumu anlatamadım ben 3 boyut küpü nasıl bir fonksiyon ile çize bilirim eger yardımcı olursan sevinirim :)
Hiç birşey imkansız degildir
Kullanıcı avatarı
undefined
Moderator
Mesajlar: 565
Kayıt: 06 Eki 2003 12:01
Konum: Bursa
İletişim:

Mesaj gönderen undefined »

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....
Kullanıcı avatarı
Kuri_YJ
Moderator
Mesajlar: 2248
Kayıt: 06 Ağu 2003 12:07
Konum: İstanbul
İletişim:

Mesaj gönderen Kuri_YJ »

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.
Kuri Yalnız Jedi
Harbi Özgürlük İçin Pisi http://www.pisilinux.org/
Cevapla