비디오: 16 03 첨부 파일 보내기 2024
JavaFX의 특수 효과를 사용하면 흐림, 그림자, 색상 변위, 광선 등과 같은 특수 효과를 추가하여 장면 그래프의 노드 모양을보다 멋지게 꾸밀 수 있습니다. 실제 3D 프로그래밍을 수행하지 않고도 응용 프로그램에 3 차원 모양을 제공하기 위해 원근감을 추가 할 수도 있습니다.
JavaFX의 특수 효과는 특수 효과를 만드는 데 사용할 수있는 다양한 하위 클래스가있는 추상 클래스 인 Effect 클래스에서 파생됩니다. Effect 클래스에는 총 17 개의 하위 클래스가 있지만 17 개 모두를 배우지 않아도됩니다. 대신 흐릿함, 그림자, 반사 및 광선을 추가하여 모양을보다 사실적으로 보이게 만드는 효과에 집중하십시오.
모든 효과는 비슷한 방식으로 작동합니다. 먼저 기본 생성자를 호출하여 이펙트 클래스의 인스턴스를 만듭니다. 그런 다음 선택적으로 하나 이상의 set 메서드를 호출하여 효과의 속성을 설정합니다. 대부분의 경우 기본 속성 값이 적절하므로이 단계를 건너 뛸 수 있습니다. 마지막으로 노드의 setEffect 메서드를 호출하여 노드에 효과를 적용합니다.
예를 들어, 직사각형을 만들고 채우고 그림자를 추가하는 코드는 다음과 같습니다.
사각형 r1 = 새 사각형 (50, 50, 100, 100); r1. setFill (색상. 라이트급); r1. setStroke (Color. BLACK); r1. setStrokeWidth (2); DropShadow shadow1 = 새 DropShadow (); r1. setEffect (shadow1);
이 그림은이 효과의 결과를 보여줍니다. 보시다시피, 사각형은 미묘한 그림자로 둘러싸여 있습니다.
setEffect 메소드는 노드 클래스에 의해 정의됩니다. 즉, 장면 그래프의 노드에 효과를 적용 할 수 있습니다. 이 효과는 setEffect 메서드를 호출하는 노드뿐 아니라 해당 노드의 자식 노드에도 적용됩니다. 사실 장면의 루트 노드에서 setEffect를 호출하면 효과가 전체 장면에 적용됩니다.