- java.lang.Object
-
- javafx.scene.Node
-
- javafx.scene.Camera
-
- Все реализованные интерфейсы:
-
Styleable,EventTarget
- Непосредственные подклассы:
-
ParallelCamera,PerspectiveCamera
public abstract class Camera extends Node
Базовый класс для камеры, используемой для рендеринга сцены. Камера определяет отображение координатного пространства сцены на окно. Camera — абстрактный класс с двумя конкретными подклассами:ParallelCameraиPerspectiveCamera.По умолчанию камера расположена в сцене таким образом, что её проекционная плоскость в координатном пространстве сцены находится в Z = 0, и она смотрит на экран в положительном направлении оси Z. Расстояние в Z от камеры до проекционной плоскости определяется
widthиheightсцены, к которой она прикреплена, и еёfieldOfView.nearClipиfarClipэтой камеры задаются в пространстве взгляда. Это пространство определено таким образом, что глаз находится в его начале координат, а проекционная плоскость находится на единицу впереди глаза в положительном направлении оси Z.Следующий псевдокод демонстрирует математику, используемую для вычисления ближней и дальней отсекающих плоскостей в координатном пространстве сцены:
final double tanOfHalfFOV = Math.tan(Math.toRadians(FOV) / 2.0); final double halfHeight = HEIGHT / 2; final double focalLenght = halfHeight / tanOfHalfFOV; final double eyePositionZ = -1.0 * focalLenght; final double nearClipDistance = focalLenght * NEAR + eyePositionZ; final double farClipDistance = focalLenght * FAR + eyePositionZ;
где
FOV— этоfieldOfViewв градусах,NEAR— этоnearClip, заданное в пространстве взгляда, аFAR— этоfarClip, заданное в пространстве взгляда.Примечание: так как у класса ParallelCamera нет свойства
fieldOfView, используется вертикальное поле зрения в 30 градусов.Примечание: в случае с PerspectiveCamera, где атрибут fixedEyeAtCameraZero имеет значение true, координатное пространство сцены нормализуется для того, чтобы поместиться в усечённый конус (см.
PerspectiveCameraдля получения дополнительной информации). В этом режиме пространство взгляда совпадает с локальным координатным пространством узла Camera. Следовательно, вышеупомянутая формула преобразования не используется.Приложение не должно напрямую расширять класс Camera. Делать это может привести к выбрасыванию исключения UnsupportedOperationException.
- С тех пор:
- JavaFX 2.0
-
Сводка свойств
Свойства Тип Свойство Описание DoublePropertyfarClipЗадает расстояние от глаза до дальней отсекающей плоскости этогоCameraв пространстве взгляда.DoublePropertynearClipЗадает расстояние от глаза до ближней отсекающей плоскости этогоCameraв пространстве взгляда.-
Свойства, унаследованные от класса javafx.scene.Node
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, viewOrder, visible
-
-
Сводка полей
-
Поля, унаследованные от класса javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
-
-
Сводка конструкторов
Конструкторы Модификатор Конструктор Описание protectedCamera()
-
Сводка методов
Все методыМетоды экземпляраКонкретные методы Модификатор и тип Метод Описание DoublePropertyfarClipProperty()Задает расстояние от глаза до дальней отсекающей плоскости этогоCameraв пространстве взгляда.doublegetFarClip()Возвращает значение свойства farClip.doublegetNearClip()Возвращает значение свойства nearClip.DoublePropertynearClipProperty()Задает расстояние от глаза до ближней отсекающей плоскости этогоCameraв пространстве взгляда.voidsetFarClip(double value)Устанавливает значение свойства farClip.voidsetNearClip(double value)Устанавливает значение свойства nearClip.-
Методы, унаследованные от класса javafx.scene.Node
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBaselineOffset, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClassCssMetaData, getClip, getContentBias, getCssMetaData, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInitialFocusTraversable, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isResizable, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookup, lookupAll, managedProperty, maxHeight, maxWidth, minHeight, minWidth, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, prefHeight, prefWidth, pressedProperty, pseudoClassStateChanged, queryAccessibleAttribute, relocate, removeEventFilter, removeEventHandler, requestFocus, resize, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty
-
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Методы, унаследованные от интерфейса javafx.css.Styleable
getStyleableNode
-
-
Подробное описание свойств
-
nearClip
public final DoubleProperty nearClipProperty
Указывает расстояние от глаза до ближней плоскости обрезки этогоCameraв пространстве координат глаза. Объекты, расположенные ближе к глазу, чемnearClip, не отображаются.nearClipзадаётся значением, большим нуля. Значение, меньшее или равное нулю, обрабатывается как очень малое положительное число.- Значение по умолчанию:
- 0.1
- С:
- JavaFX 8.0
- См. также:
-
getNearClip(),setNearClip(double)
-
farClip
public final DoubleProperty farClipProperty
Указывает расстояние от глаза до дальней плоскости обрезки этогоCameraв пространстве координат глаза. Объекты, расположенные дальше от глаза, чемfarClip, не отображаются.farClipзадаётся значением, большим, чемnearClip. Значение, меньшее или равноеnearClip, обрабатывается какnearClipплюс очень малое положительное число.- Значение по умолчанию:
- 100.0
- С:
- JavaFX 8.0
- См. также:
-
getFarClip(),setFarClip(double)
-
-
Подробное описание конструкторов
-
Camera
protected Camera()
-
-
Подробное описание методов
-
setNearClip
public final void setNearClip(double value)
Устанавливает значение свойства nearClip.- Описание свойства:
- Указывает расстояние от глаза до ближней плоскости обрезки этого
Cameraв пространстве координат глаза. Объекты, расположенные ближе к глазу, чемnearClip, не отображаются.nearClipзадаётся значением, большим нуля. Значение, меньшее или равное нулю, обрабатывается как очень малое положительное число. - Значение по умолчанию:
- 0.1
- С:
- JavaFX 8.0
-
getNearClip
public final double getNearClip()
Получает значение свойства nearClip.- Описание свойства:
- Указывает расстояние от глаза до ближней плоскости обрезки этого
Cameraв пространстве координат глаза. Объекты, расположенные ближе к глазу, чемnearClip, не отображаются.nearClipзадаётся значением, большим нуля. Значение, меньшее или равное нулю, обрабатывается как очень малое положительное число. - Значение по умолчанию:
- 0.1
- С:
- JavaFX 8.0
-
nearClipProperty
public final DoubleProperty nearClipProperty()
Указывает расстояние от глаза до ближней плоскости обрезки этогоCameraв пространстве координат глаза. Объекты, расположенные ближе к глазу, чемnearClip, не отображаются.nearClipзадаётся значением, большим нуля. Значение, меньшее или равное нулю, обрабатывается как очень малое положительное число.- Значение по умолчанию:
- 0.1
- С:
- JavaFX 8.0
- См. также:
-
getNearClip(),setNearClip(double)
-
setFarClip
public final void setFarClip(double value)
Устанавливает значение свойства farClip.- Описание свойства:
- Указывает расстояние от глаза до дальней плоскости обрезки этого
Cameraв пространстве координат глаза. Объекты, расположенные дальше от глаза, чемfarClip, не отображаются.farClipзадаётся значением, большим, чемnearClip. Значение, меньшее или равноеnearClip, обрабатывается какnearClipплюс очень малое положительное число. - Значение по умолчанию:
- 100.0
- С:
- JavaFX 8.0
-
getFarClip
public final double getFarClip()
Получает значение свойства farClip.- Описание свойства:
- Указывает расстояние от глаза до дальней плоскости обрезки этого
Cameraв пространстве координат глаза. Объекты, расположенные дальше от глаза, чемfarClip, не отображаются.farClipзадаётся значением, большим, чемnearClip. Значение, меньшее или равноеnearClip, обрабатывается какnearClipплюс очень малое положительное число. - Значение по умолчанию:
- 100.0
- С:
- JavaFX 8.0
-
farClipProperty
public final DoubleProperty farClipProperty()
Указывает расстояние от глаза до дальней плоскости обрезки этогоCameraв пространстве координат глаза. Объекты, расположенные дальше от глаза, чемfarClip, не отображаются.farClipзадаётся значением, большим, чемnearClip. Значение, меньшее или равноеnearClip, обрабатывается какnearClipплюс очень малое положительное число.- Значение по умолчанию:
- 100.0
- С:
- JavaFX 8.0
- См. также:
-
getFarClip(),setFarClip(double)
-
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.