Класс PerspectiveCamera
- Все реализованные интерфейсы:
-
Styleable,EventTarget
public class PerspectiveCamera extends Camera
Эта камера определяет объём обзора для перспективной проекции; усечённая прямая пирамида. Значение fieldOfView может использоваться для изменения объёма обзора. По умолчанию эта камера расположена в центре сцены и направлена вдоль положительной оси z. Система координат, определённая этой камерой, имеет начало в верхнем левом углу панели, ось Y направлена вниз, а ось Z — от наблюдателя (в экран). Если узел PerspectiveCamera добавлен в график сцены, преобразованное положение и ориентация камеры определят положение камеры и направление взгляда.
В камере по умолчанию, где fixedEyeAtCameraZero ложно, значение Z позиции глаза корректируется по Z таким образом, чтобы матрица проекции, сгенерированная с использованием указанного fieldOfView, производила единицы в Z = 0 (плоскость проекции), в устройствах независимых пикселях, соответствовала ParallelCamera. При изменении размера сцены, объекты на плоскости проекции (Z = 0) останутся того же размера, но больше или меньше контента сцены будет видно.
Если fixedEyeAtCameraZero истинно, позиция глаза фиксируется в (0, 0, 0) в локальных координатах камеры. Матрица проекции генерируется с использованием указанного fieldOfView, а объём проекции отображается на область просмотра (окно) таким образом, чтобы он растягивался на большее или меньшее количество устройств независимых пикселей на плоскости проекции. При изменении размера сцены, объекты на сцене будут пропорционально уменьшаться или увеличиваться, но видимая часть контента останется неизменной.
Рекомендуется установить fixedEyeAtCameraZero в истинное значение, если вы собираетесь преобразовывать (перемещать) камеру. Преобразование камеры, когда fixedEyeAtCameraZero установлено в ложное значение, может привести к результатам, которые не интуитивны.
Обратите внимание, что это условная функция. См. ConditionalFeature.SCENE3D для получения дополнительной информации.
- С:
- JavaFX 2.0
Краткое описание свойств
| Тип | Свойство | Описание |
|---|---|---|
final DoubleProperty |
fieldOfView |
Задаёт угол поля зрения камеры проекции, измеряемый в градусах. |
final BooleanProperty |
verticalFieldOfView |
Определяет, будет ли свойство fieldOfView применяться к вертикальному измерению проекции. |
Свойства, объявленные в классе javafx.scene.Node
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, focusVisible, focusWithin, 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
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
PerspectiveCamera() |
Создаёт пустой экземпляр PerspectiveCamera. |
PerspectiveCamera |
Создаёт PerspectiveCamera с указанным флагом fixedEyeAtCameraZero. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final DoubleProperty |
fieldOfViewProperty() |
Задаёт угол поля зрения камеры проекции, измеряемый в градусах. |
final double |
getFieldOfView() |
Возвращает значение свойства fieldOfView. |
final boolean |
isFixedEyeAtCameraZero() |
Возвращает флаг, указывающий, использует ли эта камера фиксированную позицию глаза в начале координат камеры. |
final boolean |
isVerticalFieldOfView() |
Возвращает значение свойства verticalFieldOfView. |
final void |
setFieldOfView |
Устанавливает значение свойства fieldOfView. |
final void |
setVerticalFieldOfView |
Устанавливает значение свойства verticalFieldOfView. |
final BooleanProperty |
verticalFieldOfViewProperty() |
Определяет, будет ли свойство fieldOfView применяться к вертикальному измерению проекции. |
Методы, объявленные в классе javafx.scene.Camera
farClipProperty, getFarClip, getNearClip, nearClipProperty, setFarClip, setNearClip
Методы, объявленные в классе 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, focusVisibleProperty, focusWithinProperty, 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, isFocusVisible, isFocusWithin, 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
Подробности свойств
fieldOfView
public final DoubleProperty fieldOfViewProperty
- Значение по умолчанию:
- 30.0
- См. также:
verticalFieldOfView
public final BooleanProperty verticalFieldOfViewProperty
fieldOfView применяться к вертикальной оси проекции. Если false, то fieldOfView будет применяться к горизонтальной оси проекции.- Значение по умолчанию:
- true
- С момента:
- JavaFX 8.0
- См. также:
Подробности конструкторов
PerspectiveCamera
public PerspectiveCamera()
PerspectiveCamera
public PerspectiveCamera(boolean fixedEyeAtCameraZero)
В стандартной камере, где fixedEyeAtCameraZero равно false, значение Z позиции глаза корректируется таким образом, что матрица проекции, сгенерированная с помощью заданного fieldOfView, будет отображать единицы при Z = 0 (плоскость проекции) в пикселях, независимых от устройства, соответствующих пикселям ParallelCamera. При изменении размера сцены объекты в сцене на плоскости проекции (Z = 0) будут сохранять размер, но будет отображаться больше или меньше контента сцены.
Если fixedEyeAtCameraZero равно true, позиция глаза фиксируется в (0, 0, 0) в локальных координатах камеры. Матрица проекции генерируется с использованием заданного fieldOfView, а проекционное пространство отображается на области просмотра (окно) таким образом, что оно растягивается на большее или меньшее количество пикселей, независимых от устройства, на плоскости проекции. При изменении размера сцены объекты в сцене будут уменьшаться или увеличиваться пропорционально, но видимая часть содержимого останется неизменной.
Рекомендуется устанавливать fixedEyeAtCameraZero в true, если вы собираетесь преобразовывать (перемещать) камеру. Преобразование камеры, когда fixedEyeAtCameraZero установлено в false, может привести к неинтуитивным результатам.
- Параметры:
-
fixedEyeAtCameraZero- true, если позиция глаза фиксируется в (0, 0, 0) в локальных координатах камеры. - С момента:
- JavaFX 8.0
Подробности методов
setFieldOfView
public final void setFieldOfView(double value)
fieldOfView.- Описание свойства:
- Угол обзора проекции камеры, измеряемый в градусах.
- Значение по умолчанию:
- 30.0
- Параметры:
-
value- значение для свойстваfieldOfView - См. также:
getFieldOfView
public final double getFieldOfView()
fieldOfView.- Описание свойства:
- Угол обзора проекции камеры, измеряемый в градусах.
- Значение по умолчанию:
- 30.0
- Возвращает:
- значение свойства
fieldOfView - См. также:
fieldOfViewProperty
public final DoubleProperty fieldOfViewProperty()
- Значение по умолчанию:
- 30.0
- Возвращает:
- свойство
fieldOfView - См. также:
setVerticalFieldOfView
public final void setVerticalFieldOfView(boolean value)
verticalFieldOfView.- Описание свойства:
- Определяет, будет ли свойство
fieldOfViewприменяться к вертикальной оси проекции. Если false, тоfieldOfViewбудет применяться к горизонтальной оси проекции. - Значение по умолчанию:
- true
- Параметры:
-
value- значение для свойстваverticalFieldOfView - С момента:
- JavaFX 8.0
- См. также:
isVerticalFieldOfView
public final boolean isVerticalFieldOfView()
verticalFieldOfView.- Описание свойства:
- Определяет, будет ли свойство
fieldOfViewприменяться к вертикальной оси проекции. Если false, тоfieldOfViewбудет применяться к горизонтальной оси проекции. - Значение по умолчанию:
- true
- Возвращает:
- значение свойства
verticalFieldOfView - С момента:
- JavaFX 8.0
- См. также:
verticalFieldOfViewProperty
public final BooleanProperty verticalFieldOfViewProperty()
fieldOfView применяться к вертикальной оси проекции. Если false, то fieldOfView будет применяться к горизонтальной оси проекции.- Значение по умолчанию:
- true
- Возвращает:
- свойство
verticalFieldOfView - С момента:
- JavaFX 8.0
- См. также:
isFixedEyeAtCameraZero
public final boolean isFixedEyeAtCameraZero()
fixedEyeAtCameraZero равно true, то позиция глаза фиксируется в (0, 0, 0) в локальных координатах камеры. Этот атрибут неизменяемый.- Возвращает:
- флаг, указывающий, использует ли эта камера фиксированную позицию глаза в начале координат камеры
- С момента:
- JavaFX 8.0
© 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.