Class ProjectedImageryFeature

java.lang.Object
com.luciad.models.projectedimagery.ProjectedImageryFeature

public final class ProjectedImageryFeature extends Object
This class makes the projected imagery feature data type available, together with its property paths.

A projected imagery feature describes a virtual camera in 3D space of which the imagery is projected onto the map using that virtual camera. The actual imagery is not stored on the feature. It is provided separately by the matching IProjectedImageryModel. Add these features to a regular IFeatureModel and visualize them with a FeatureLayer and a custom painter, for example to track the camera over time and to draw a frustum or a 3D icon at its location. The ProjectedImageryLayer renders the projection but draws nothing at the camera location, so the two complement each other.

The feature stores the string ID of the projection it represents (ProjectedImagery#getId) as a separate property, reachable through getProjectionIdPropertyPath. This projection ID is not the same as the feature's numeric

invalid reference
FeatureId
: it lets a picked feature be matched back to its projection, for example to select that projection on a ProjectedImageryLayer.

Use ProjectedImageryFeature#newBuilder to create a projected imagery feature. The overload that takes a ProjectedImagery copies the pose and the projection ID from an existing projection.

Since:
2026.1
  • Method Details

    • getProjectedImageryPropertiesDataType

      @NotNull public static DataType getProjectedImageryPropertiesDataType()
      Returns the data type describing the projected imagery feature properties.
      Returns:
      the data type describing the projected imagery feature properties.
    • getLocationPropertyPath

      @NotNull public static DataPropertyPath getLocationPropertyPath()
      Returns the data property path for the projected imagery location property.

      The value referred to by this path is the georeferenced position of the virtual camera, as a Geometry pointing to a Point.

      Returns:
      the data property path for the projected imagery location property.
    • getFovXPropertyPath

      @NotNull public static DataPropertyPath getFovXPropertyPath()
      Returns the data property path for the horizontal field of view property.

      Values referred to by this path are in degrees. This property is absent for features that have no field of view, such as panorama positions.

      Returns:
      the data property path for the horizontal field of view property.
    • getFovYPropertyPath

      @NotNull public static DataPropertyPath getFovYPropertyPath()
      Returns the data property path for the vertical field of view property.

      Values referred to by this path are in degrees. This property is absent for features that have no field of view, such as panorama positions.

      Returns:
      the data property path for the vertical field of view property.
    • getYawPropertyPath

      @NotNull public static DataPropertyPath getYawPropertyPath()
      Returns the data property path for the yaw property.

      Values referred to by this path are in degrees, measured clockwise from the north.

      Returns:
      the data property path for the yaw property.
    • getPitchPropertyPath

      @NotNull public static DataPropertyPath getPitchPropertyPath()
      Returns the data property path for the pitch property.

      Values referred to by this path are in degrees, representing rotation around the camera's lateral axis. A pitch of 0 means the camera is looking at the horizon. Positive values tilt the camera down.

      Returns:
      the data property path for the pitch property.
    • getRollPropertyPath

      @NotNull public static DataPropertyPath getRollPropertyPath()
      Returns the data property path for the roll property.

      Values referred to by this path are in degrees, representing rotation around the camera's longitudinal (viewing) axis. A roll of 0 means the camera is level with the horizon.

      Returns:
      the data property path for the roll property.
    • getProjectionIdPropertyPath

      @NotNull public static DataPropertyPath getProjectionIdPropertyPath()
      Returns the data property path for the projection ID property.

      The value referred to by this path is the string ID of the projection this feature represents (ProjectedImagery#getId). It is distinct from the feature's numeric

      invalid reference
      FeatureId
      and lets a picked feature be matched back to its projection, for example to select it on a ProjectedImageryLayer.
      Returns:
      the data property path for the projection ID property.
    • newBuilder

      @NotNull public static ProjectedImageryFeature.Builder newBuilder()
      Returns a new builder for creating a projected imagery feature.
      Returns:
      a new builder for creating a projected imagery feature.
    • newBuilder

      @NotNull public static ProjectedImageryFeature.Builder newBuilder(@NotNull ProjectedImagery projection, long id)
      Returns a new builder pre-filled from the given projection.

      Copies the projection's location, rotation and projection ID (ProjectedImagery#getId), and its field of view when the projection has one. The given

      invalid reference
      FeatureId
      becomes the feature ID. Any value can be overridden on the returned builder before build is called, for example to store the location in a different reference.
      Parameters:
      projection - the projection to copy from.
      id - the feature ID to assign.
      Returns:
      a new builder pre-filled from the given projection.