1 /*
2 * Copyright (c) 2013, 2015, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
127 assertEquals(90, CameraShim.getFarClipInScene(camera), 1e-3);
128
129 camera.setTranslateZ(100);
130 assertEquals(0.1, camera.getNearClip(), 1e-3);
131 assertEquals(100, camera.getFarClip(), 1e-3);
132 assertEquals(100.1, CameraShim.getNearClipInScene(camera), 1e-3);
133 assertEquals(200, CameraShim.getFarClipInScene(camera), 1e-3);
134 }
135
136 /**
137 * Test of getSceneToLocalTransform method, of class Camera.
138 */
139 @Test
140 public void testGetSceneToLocalTransform() {
141 Camera camera = new PerspectiveCamera();
142 new Scene(new Group(camera));
143 camera.setTranslateX(300);
144 camera.getParent().setTranslateY(100);
145 Affine3D expected = new Affine3D();
146 try {
147 camera.getLocalToSceneTransform().createInverse().impl_apply(expected);
148 } catch (NonInvertibleTransformException ex) {
149 fail("NonInvertibleTransformException when compute sceneToLocalTx.");
150 }
151 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
152
153 camera.setTranslateZ(-10);
154 camera.setScaleX(10);
155 expected.setToIdentity();
156 try {
157 camera.getLocalToSceneTransform().createInverse().impl_apply(expected);
158 } catch (NonInvertibleTransformException ex) {
159 fail("NonInvertibleTransformException when compute sceneToLocalTx.");
160 }
161 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
162 }
163
164 /**
165 * Test of getSceneToLocalTransform method when camera is not in scene.
166 */
167 @Test
168 public void testGetSceneToLocalTransformWhenNotInScene() {
169 Camera camera = new PerspectiveCamera();
170 Affine3D expected = new Affine3D();
171 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
172
173 try {
174 camera.getLocalToSceneTransform().createInverse().impl_apply(expected);
175 } catch (NonInvertibleTransformException ex) {
176 fail("NonInvertibleTransformException when compute sceneToLocalTx.");
177 }
178 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
179
180 camera.setTranslateZ(-10);
181 camera.setScaleX(10);
182 expected.setToIdentity();
183 try {
184 camera.getLocalToSceneTransform().createInverse().impl_apply(expected);
185 } catch (NonInvertibleTransformException ex) {
186 fail("NonInvertibleTransformException when compute sceneToLocalTx.");
187 }
188 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
189 }
190
191 @Test
192 public void testViewSize() {
193 final Scene scene = new Scene(new Group(), 300, 200);
194 Camera camera = new PerspectiveCamera();
195 scene.setCamera(camera);
196 assertEquals(300.0, CameraShim.getViewWidth(camera), 1.0e-20);
197 assertEquals(200.0, CameraShim.getViewHeight(camera), 1.0e-20);
198 }
199
200 @Test
201 public void testDefaultCamera() {
202 final Scene scene = new Scene(new Group(), 300, 200);
203 Camera camera = SceneShim.getEffectiveCamera(scene);
204
|
1 /*
2 * Copyright (c) 2013, 2016, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this
8 * particular file as subject to the "Classpath" exception as provided
9 * by Oracle in the LICENSE file that accompanied this code.
10 *
11 * This code is distributed in the hope that it will be useful, but WITHOUT
12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 * version 2 for more details (a copy is included in the LICENSE file that
15 * accompanied this code).
16 *
17 * You should have received a copy of the GNU General Public License version
18 * 2 along with this work; if not, write to the Free Software Foundation,
19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
20 *
21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
22 * or visit www.oracle.com if you need additional information or have any
127 assertEquals(90, CameraShim.getFarClipInScene(camera), 1e-3);
128
129 camera.setTranslateZ(100);
130 assertEquals(0.1, camera.getNearClip(), 1e-3);
131 assertEquals(100, camera.getFarClip(), 1e-3);
132 assertEquals(100.1, CameraShim.getNearClipInScene(camera), 1e-3);
133 assertEquals(200, CameraShim.getFarClipInScene(camera), 1e-3);
134 }
135
136 /**
137 * Test of getSceneToLocalTransform method, of class Camera.
138 */
139 @Test
140 public void testGetSceneToLocalTransform() {
141 Camera camera = new PerspectiveCamera();
142 new Scene(new Group(camera));
143 camera.setTranslateX(300);
144 camera.getParent().setTranslateY(100);
145 Affine3D expected = new Affine3D();
146 try {
147 com.sun.javafx.scene.transform.TransformHelper.apply(
148 camera.getLocalToSceneTransform().createInverse(), expected);
149 } catch (NonInvertibleTransformException ex) {
150 fail("NonInvertibleTransformException when compute sceneToLocalTx.");
151 }
152 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
153
154 camera.setTranslateZ(-10);
155 camera.setScaleX(10);
156 expected.setToIdentity();
157 try {
158 com.sun.javafx.scene.transform.TransformHelper.apply(
159 camera.getLocalToSceneTransform().createInverse(), expected);
160 } catch (NonInvertibleTransformException ex) {
161 fail("NonInvertibleTransformException when compute sceneToLocalTx.");
162 }
163 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
164 }
165
166 /**
167 * Test of getSceneToLocalTransform method when camera is not in scene.
168 */
169 @Test
170 public void testGetSceneToLocalTransformWhenNotInScene() {
171 Camera camera = new PerspectiveCamera();
172 Affine3D expected = new Affine3D();
173 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
174
175 try {
176 com.sun.javafx.scene.transform.TransformHelper.apply(
177 camera.getLocalToSceneTransform().createInverse(), expected);
178 } catch (NonInvertibleTransformException ex) {
179 fail("NonInvertibleTransformException when compute sceneToLocalTx.");
180 }
181 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
182
183 camera.setTranslateZ(-10);
184 camera.setScaleX(10);
185 expected.setToIdentity();
186 try {
187 com.sun.javafx.scene.transform.TransformHelper.apply(
188 camera.getLocalToSceneTransform().createInverse(), expected);
189 } catch (NonInvertibleTransformException ex) {
190 fail("NonInvertibleTransformException when compute sceneToLocalTx.");
191 }
192 assertEquals(expected, CameraShim.getSceneToLocalTransform(camera));
193 }
194
195 @Test
196 public void testViewSize() {
197 final Scene scene = new Scene(new Group(), 300, 200);
198 Camera camera = new PerspectiveCamera();
199 scene.setCamera(camera);
200 assertEquals(300.0, CameraShim.getViewWidth(camera), 1.0e-20);
201 assertEquals(200.0, CameraShim.getViewHeight(camera), 1.0e-20);
202 }
203
204 @Test
205 public void testDefaultCamera() {
206 final Scene scene = new Scene(new Group(), 300, 200);
207 Camera camera = SceneShim.getEffectiveCamera(scene);
208
|