JavaFX - Efektler

Efekt, grafiklerin görünümünü geliştiren herhangi bir eylemdir. JavaFX'te efekt, görünümlerini görsel olarak geliştirmek için düğümlere uygulanan bir algoritmadır. Etkinin özelliğiNode sınıfı, efekti belirtmek için kullanılır.

JavaFX'te, aşağıdaki gibi bir düğüme çeşitli efektler ayarlayabilirsiniz: bloom, blur ve glow. Bu efektlerin her biri bir sınıfla temsil edilir ve tüm bu sınıflar adlı bir pakette mevcuttur.javafx.scene.effect.

Bir Düğüme Efekt Uygulama

Kullanarak bir düğüme efekt uygulayabilirsiniz. setEffect()yöntem. Bu yönteme, efektin nesnesini iletmeniz gerekir.

Bir düğüme efekt uygulamak için yapmanız gerekenler -

  • Düğümü oluşturun.

  • Uygulanması gereken ilgili efekt sınıfını somutlaştırın.

  • Efektin özelliklerini ayarlayın.

  • Efekti kullanarak düğüme uygulayın. setEffect() yöntem.

Düğümlerin Oluşturulması

Her şeyden önce, bir JavaFX uygulamasında ilgili sınıflarını başlatarak düğümleri oluşturun.

Örneğin, uygulamanızdaki bir görüntüye ışıma efekti uygulamak istiyorsanız. Öncelikle, Image sınıfını örnekleyerek bir görüntü düğümü oluşturmanız ve görünümünü aşağıda gösterildiği gibi ayarlamanız gerekir.

//Creating an image 
Image image = new Image("https://www.tutorialspoint.com/green/images/logo.png"); 
       
//Setting the image view 
ImageView imageView = new ImageView(image); 

//Setting the position of the image 
imageView.setX(100); 
imageView.setY(70);  

//setting the fit height and width of the image view 
imageView.setFitHeight(200);
imageView.setFitWidth(400); 

//Setting the preserve ratio of the image view 
imageView.setPreserveRatio(true);

İlgili Sınıfın Örneklenmesi

Oluşturulan düğüme uygulanması gereken etkiyi temsil eden sınıfı örnekleyin.

Örneğin - Işıma efektini uygulamak için, Glow aşağıdaki kod kutusunda gösterildiği gibi sınıf -

Glow glow = new Glow();

Efektin Özelliklerini Ayarlama

Sınıfı başlattıktan sonra, ayarlayıcı yöntemlerini kullanarak efektin özelliklerini ayarlamanız gerekir.

Örneğin - 3 Boyutlu bir kutu çizmek için genişliğini, yüksekliğini ve derinliğini iletmeniz gerekir. Bu değerleri, aşağıda gösterildiği gibi ilgili ayarlayıcı yöntemlerini kullanarak belirtebilirsiniz -

//setting the level property 
glow.setLevel(0.9);

Düğüme Efekt Ekleme

Son olarak, gerekli efekti düğüme uygulayabilirsiniz. setEffect()yöntem. Örneğin: Parlama efektini görüntü düğümüne ayarlamak için, Glow sınıfının nesnesini bu yönteme aşağıdaki gibi iletmeniz gerekir -

imageView.setEffect(glow);

JavaFX Effects- Aşağıdaki tablo, JavaFX tarafından sağlanan çeşitli efektlerin (sınıfların) listesini verir. Bu sınıflar adlı pakette bulunurjavafx.scene.effect.

S.No Şekil ve Açıklama
1 Renk Ayarı

Renk ayarlama efektini uygulayarak görüntünün rengini ayarlayabilirsiniz. Bu,hue, saturation, brightness ve contrast her pikselde

Adlı sınıf ColorAdjust paketin javafx.scene.effect renk ayarlama efektini temsil eder.

2 Renkli Giriş

Renkli Giriş Efekti, bir dikdörtgen çizmek ve onu renkle doldurmakla aynı çıktıyı verir. Diğer efektlerin aksine, bu efekt herhangi bir düğüme uygulanırsa, yalnızca dikdörtgen bir kutu görüntüler (düğümü değil). Bu efekt çoğunlukla diğer efektler için bir girdi olarak geçmek için kullanılır.

Adlı sınıf ColorInput paketin javafx.scene.effect renk giriş efektini temsil eder.

3 Görüntü Girişi

JavaFX'teki görüntü giriş efekti yalnızca JavaFX ekranına bir görüntü yerleştirir.

Renk Giriş efekti gibi (Belirtilen renkli dikdörtgen bölgeyi başka bir efekte girdi olarak geçirmek için kullanılır), Görüntü Giriş efekti, belirtilen görüntüyü başka bir efekte girdi olarak geçirmek için kullanılır.

Adlı sınıf ImageInput paketin javafx.scene.effect Görüntü Giriş efektini temsil eder.

4 Harman

Genel olarak harman, iki veya daha fazla farklı şey veya maddenin karışımı anlamına gelir. Bu harmanlama efektini uygularsak, iki farklı girdinin piksellerini aynı konumda alır ve buna göre birleşik bir çıktı üretir.blend mode.

Adlı sınıf Blend paketin javafx.scene.effect karışım etkisini temsil eder.

5 Çiçek açmak

Çiçeklenme efekti uygulanırken, düğümün bazı bölümlerindeki pikseller parlatılır.

Adlı sınıf Bloom paketin javafx.scene.effect çiçeklenme etkisini temsil eder.

6 Glow

Çiçeklenme gibi, Parlama efekti de verilen giriş görüntüsünün parlamasını sağlar, bu efekt, girişin parlak piksellerini daha parlak hale getirir.

Adlı sınıf Glow paketin javafx.scene.effect ışıma efektini temsil eder.

7 Kutu bulanıklığı

Bu bulanıklaştırma efektini bir düğüme uygularken netlik kazanmaz. Kutu bulanıklaştırma, JavaFX tarafından sağlanan bir tür bulanıklaştırma efektidir. Bu efektte, bir düğüme bulanıklık uyguladığımızda basit bir kutu filtresi kullanılır.

Adlı sınıf BoxBlur paketin javafx.scene.effect kutu bulanıklığı efektini temsil eder.

8 Gauss Bulanıklığı

Tıpkı Box Blur Gaussian gibi, JavaFX'teki düğümleri bulanıklaştırma efekti. Tek farkGaussian Blur effect bulanıklaştırma efekti oluşturmak için bir Gauss evrişim çekirdeğinin kullanılmasıdır.

Paketin GaussianBlur adlı sınıfı javafx.scene.effect Gauss Bulanıklığı efektini temsil eder.

9 Hareket bulanıklığı

Gaussian Efektleri gibi, Hareket Bulanıklığı da JavaFX'te düğümleri bulanıklaştıran bir efekttir. Ayrıca, bulanıklaştırma efekti oluşturmak için bir Gauss evrişim çekirdeği kullanır, ancak bu etkideki fark, Gauss evrişim çekirdeğinin belirli bir açıyla kullanılmasıdır.

Adlı sınıf MotionBlur paketin javafx.scene.effect Hareket Bulanıklığı efektini temsil eder.

10 Yansıma

Yansıma efektini JavaFX'te bir düğüme uygularken, düğümün altına bunun bir yansıması eklenir.

Adlı sınıf Reflection paketin javafx.scene.effect yansıma etkisini temsil eder.

11 SepiaTone

JavaFX'te (genel olarak görüntü) bir düğüme Sepya ton efekti uygulandığında, kırmızımsı kahverengi renkle tonlanır.

Adlı sınıf SepiaTone paketin javafx.scene.effect sepya ton efektini temsil eder.

12 Gölge

Bu efekt, belirtilen düğümün bulanık kenarları olan bir kopyasını oluşturur.

Adlı sınıf Shadow paketin javafx.scene.effect sepya ton efektini temsil eder.

13 Düşen gölge

Bu efekti bir düğüme uygularken, belirtilen düğümün arkasında bir gölge oluşturulacaktır.

Adlı sınıf DropShadow paketin javafx.scene.effect alt gölge efektini temsil eder.

14 İç gölge

Bu efekti bir düğüme uygularken, düğümün kenarlarının içinde bir gölge oluşturulacaktır.

Adlı sınıf InnerShadow paketin javafx.scene.effect iç gölge efektini temsil eder.

15 Aydınlatma

Işık efekti, bir ışık kaynağından gelen bir ışığı simüle etmek için kullanılır. Farklı türlerde ışık kaynakları vardır.point, distant ve spot.

Adlı sınıf Lighting paketin javafx.scene.effect aydınlatma efektini temsil eder.

16 Hafif Dayanıklı

Bu efekti bir düğüme uygularken, sanki uzak bir ışık kaynağı tarafından üretiliyormuş gibi üzerinde bir ışık simüle edilir.

Distant Light Source- Düğümden çok uzaktaki bir kaynak. Burada ışık kaynaktan tek yönde azaltılır.

Adlı sınıf Light.Distant paketin javafx.scene.effect uzaktaki ışık kaynağını temsil eder.

17 Light.Spot

Bu efekti bir düğüme uygularken, sanki bir spot ışık tarafından üretiliyormuş gibi üzerinde bir ışık simüle edilir.

Spot light Source- Bu kaynaktan gelen ışık her yönden zayıflıyor. Işığın yoğunluğu, nesnenin kaynaktan uzaklığına bağlıdır.

Adlı sınıf Light.Spot paketin javafx.scene.effect uzaktaki ışık kaynağını temsil eder.

18 Point.Spot

Bu efekti bir düğüme uygularken, sanki bir nokta ışık kaynağı tarafından üretiliyormuş gibi üzerinde bir ışık simüle edilir.

Point Light Source- Bu kaynaktan gelen ışık tek bir noktadan tüm yönlere doğru zayıflar. Işığın yoğunluğu, nesnenin kaynaktan uzaklığına bağlıdır.

Adlı sınıf Point.Spot javafx.scene.effect paketindeki nokta ışığı temsil eder.