Ev Kişisel Finans JavaFX Programlama Örneği: 3D Box - mankenler

JavaFX Programlama Örneği: 3D Box - mankenler

İçindekiler:

Video: Java Ders-4 (3D Görüntü Oluşturma Örnek) 2025

Video: Java Ders-4 (3D Görüntü Oluşturma Örnek) 2025
Anonim

JavaFX, gerçekçi 3D modelleme için yerleşik bir desteği vardır. Aslında, JavaFX sahne grafiği doğasında üç boyutludur. Çoğu JavaFX programı yalnızca x ve y koordinatlarını belirterek yalnızca iki boyutta çalışır. Ancak, üçüncü boyuta geçmek için yapmanız gereken tek şey, sahnenizdeki grafiğin düğümlerini üç boyutlu alanda yerleştirmek için z-koordinatlarını belirtmektir.

JavaFX, 3D dünyalarda 3B nesnelerin oluşturulması ve görüntülenmesi için ayrılmış zengin bir set içerir. Küpler ve silindirler gibi üç boyutlu şekiller oluşturabilirsiniz. 3B nesnelerinize farklı açılardan ve farklı perspektiflerden bakmak için sanal kamerayı 3B alanı çevirebilirsiniz.

Ve sanal dünyaların nihai görünümünü dikkatli bir şekilde kontrol etmek için ışık kaynakları bile ekleyebilirsiniz. Kısacası, JavaFX şaşırtıcı 3D sahneler üretebilir.

Java dünyanıza bir 3D kutu ekleyin

Bu adımda, 3D dünyasına bir nesne ekleyin: Bu durumda, Box sınıfı ile temsil edilen bir kutu. İşte kod:

Kutu kutusu = yeni Kutu (100, 100, 100); Kutu. setMaterial (blueStuff); Kutu. setTranslateX (150); Kutu. setTranslateY (-100); Kutu. setTranslateZ (-100); kök. GetChildren (). (Kutu) ekleyin;

Box kurucusu, kutunun genişliğini, yüksekliğini ve derinliğini temsil eden üç bağımsız değişkeni kabul eder. Bu örnekte, üçü de 100 olarak ayarlanmıştır. Böylece, kutu her tarafı 100 ünite olacak şekilde küp şeklinde çizilecektir.

Kutuya silindirle aynı malzeme verilir; Sonra kutunun perspektif görünümünü elde edebilmeniz için üç eksene de çevrilir. Şekilde, işlendiğinde kutunun nasıl göründüğü gösterilmektedir. Gördüğünüz gibi, kutusunun sol ve alt yüzleri görülebilir, çünkü kameranın perspektif kazanabilmesi için kutunun üstünü ve sağını tercüme ettiniz.

3D kutuyu döndür

Bu adımda, daha ilginç bir perspektif görünümü oluşturmak için kutuyu döndürün. Bir 3B nesneyi döndürmenin iki yolu vardır. En basit şey, nesnenin setRotate yöntemini çağırmak ve bir dönme açısı sağlamaktır:

kutusu. setRotate (25);

Varsayılan olarak, bu nesneyi z ekseni üzerinde döndürecektir. Bunun görselleştirilmesi zorsa, nesneyi z-eksenine paralel olan uzun bir çubuk ile şişirmeyi hayal edin. Ardından, nesneyi şişta döndürün.

Nesneyi farklı bir eksen boyunca döndürmek istiyorsanız, önce setRotationAxis öğesini çağırın. Örneğin, nesneyi x ekseni üzerinde döndürmek için şu sırayı kullanın:

kutusu. setRotationAxis (Döndür, X_AXIS); Kutu. setRotate (25);

Şişeyi, x-eksenine paralel olarak şişeyle kutudan geçirdiğinizi ve ardından kutuyu 25 derece döndürdüğünüzde düşünün.

Bir 3B nesneyi döndürmek için setRotate yöntemini kullanmanın tek problemi, bir defada yalnızca bir eksen üzerinde çalışmasıdır. Örneğin, kutuyu hem z hem de x ekseni üzerinde 25 derece döndürmek istediğinizi varsayalım. Aşağıdaki kod değil bunu başarır:

kutusu. setRotationAxis (Döndür, X_AXIS); Kutu. setRotate (25); Kutu. setRotationAxis (Döndür, Z_AXIS); Kutu. setRotate (25);

Z ekseni üzerinde kutuyu döndürmek için ikinci kez setRotate yöntemi çağrıldığında, x ekseni dönüşü sıfırlanır.

Birden fazla eksende döndürmek için bunun yerine Rotate sınıfını kullanmalısınız. Nesneyi döndürmek istediğiniz her eksene ayrı bir Döndürme örneği oluşturursunuz ve ardından Döndüren tüm örnekleri, getTransforms () aracılığıyla nesnenin Dönüşümler koleksiyonuna eklersiniz. Bu gibi addAll yöntemi:

Döndür rxBox = yeni Döndür (0, 0, 0, 0, Döndür; X_AXIS); Döndür ryBox = yeni Döndür (0, 0, 0, 0, Döndür, Y_AXIS); Döndür rzBox = yeni Döndür (0, 0, 0, 0, Döndür, Z_AXIS); rxBox. setAngle (30); ryBox. setAngle (50); rzBox. setAngle (30); Kutu. getTransforms (). addAll (rxBox, ryBox, rzBox);

Döndüren yapıcı dört parametre kabul eder. İlk üç, dönme ekseninin geçeceği cismin içindeki noktanın x, y ve z koordinatlarıdır. Genellikle, nesneyi merkez noktası etrafında döndürmek için bu parametreler için sıfırlar belirtirsiniz. Dördüncü parametre rotasyon eksenini belirtir.

Bu şekil, kutu döndürüldükten sonra nasıl göründüğünü gösterir.

Döndükten sonra kutu.

JavaFX Programlama Örneği: 3D Box - mankenler

Editörün Seçimi

Aptallar İçin Cheat Sheet - mankenler

Aptallar İçin Cheat Sheet - mankenler

Mobil web siteleri masaüstü web siteleri ile aynı değildir. Bir mobil web sitesi genelde paralelleştirilir, böylece akıllı telefonunuz ya da tabletiniz olsun, çok daha küçük cihazda işlevseldir. Kendi web sitenizin mobil bir sürümünü oluşturmak isterseniz, varolan alanınızı bazı genel, küçük düzenlemelerle kullanabilirsiniz.

Mobil Bilimler İçin Mobil Pazarlama Cheat Sheet - mankenler

Mobil Bilimler İçin Mobil Pazarlama Cheat Sheet - mankenler

Mobil pazarlama, özel zorlukları ve fırsatları beraberinde getirir. Müşterileri işinize çekmek için yenilikçi pazarlama planları geliştirmek için ses, video, fotoğraf makinesi ve metin mesajlaşma özellikleri de dahil olmak üzere bir mobil cihazın özelliklerini kullanabilirsiniz. Mobil mesajlaşma kampanyanız için taşıyıcı onay almak, etik seçimler yapabilmeniz için müşteri seçimleri yakalamak istiyorsanız ...

Editörün Seçimi

Düşük Kolesterollü Pişirme: Çözülebilir Elyafların 10 Büyük Kaynağı

Düşük Kolesterollü Pişirme: Çözülebilir Elyafların 10 Büyük Kaynağı

Çözünür lif , çeşitli gıdalarda bulunur, kolestrolü emmeye ve vücuttan atmaya yardımcı olur. On en sık önerilen kaynak alfabetik sırayla burada listelenmiştir. Kuşkonmaz Arpa Brokoli Brüksel lahanası Yeşil fasulye Yeşil bezelye Bezelye fasulye Lima fasulye Yulaf ezmesi Tatlı patates

Sense of Food Etiketlerini Yapmak - mankenler

Sense of Food Etiketlerini Yapmak - mankenler

Nasıl yiyecek etiketlerinin nasıl üretildiğini bilmiyorsanız, gıda etiketleri oldukça kafa karıştırıcı olabilir onları oku. Diyetinizdeki yağ miktarını azaltmaya çalışıyorsanız, etiket bir ürünün içindeki yağ ve diğer besin maddelerinin tam miktarını listelediğinden etiket okuması önemlidir. Ancak, bunu nasıl anlamlandırıyorsun? Şunlardan emin olun ...

Editörün Seçimi

Facebook Kapak Görüntülerini Photoshop Elements 15'de Oluşturmak için nasıl Yaparsanız Yapalım

Facebook Kapak Görüntülerini Photoshop Elements 15'de Oluşturmak için nasıl Yaparsanız Yapalım

Facebook Kapakları oluşturulurken Organizatör'deki Oluşturma Paneli'nde bir süre için; Bununla birlikte, Adobe'nin ilk çalışmaları sınırlıydı ve biraz beceriksizdi. Varsayılan metin olmadan arka plan fotoğrafı ve profil resmi eklemek için sınırlı sayıda şablonla mücadele etmek zorunda kaldınız. Şimdi Elements 15'te ...