Class BasicViewPropertyLimits

    • Field Detail

      • eyeLocationLimits

        protected Sector eyeLocationLimits
      • minHeading

        protected Angle minHeading
      • maxHeading

        protected Angle maxHeading
      • minPitch

        protected Angle minPitch
      • maxPitch

        protected Angle maxPitch
      • minRoll

        protected Angle minRoll
      • maxRoll

        protected Angle maxRoll
      • minEyeElevation

        protected double minEyeElevation
      • maxEyeElevation

        protected double maxEyeElevation
    • Constructor Detail

      • BasicViewPropertyLimits

        public BasicViewPropertyLimits()
        Creates a new BasicViewPropertyLimits with default limits.
    • Method Detail

      • getEyeLocationLimits

        public Sector getEyeLocationLimits()
        Returns the Sector which limits a view's eye latitude and longitude.
        Specified by:
        getEyeLocationLimits in interface ViewPropertyLimits
        Returns:
        Sector which limits the eye latitude and longitude.
      • setEyeLocationLimits

        public void setEyeLocationLimits​(Sector sector)
        Sets the Sector which will limit a view's eye latitude and longitude.
        Specified by:
        setEyeLocationLimits in interface ViewPropertyLimits
        Parameters:
        sector - Sector which will limit the eye latitude and longitude.
      • getEyeElevationLimits

        public double[] getEyeElevationLimits()
        Returns the minimum and maximum values for a view's eye elevation.
        Specified by:
        getEyeElevationLimits in interface ViewPropertyLimits
        Returns:
        Minimum and maximum allowable values for the elevation.
      • setEyeElevationLimits

        public void setEyeElevationLimits​(double minValue,
                                          double maxValue)
        Sets the minimum and maximum values for a view's eye elevation.
        Specified by:
        setEyeElevationLimits in interface ViewPropertyLimits
        Parameters:
        minValue - the minimum elevation.
        maxValue - the maximum elevation.
      • getHeadingLimits

        public Angle[] getHeadingLimits()
        Returns the minimum and maximum angles for a view's heading property.
        Specified by:
        getHeadingLimits in interface ViewPropertyLimits
        Returns:
        Minimum and maximum allowable angles for heading.
      • setHeadingLimits

        public void setHeadingLimits​(Angle minAngle,
                                     Angle maxAngle)
        Sets the minimum and maximum angles which will limit a view's heading property.
        Specified by:
        setHeadingLimits in interface ViewPropertyLimits
        Parameters:
        minAngle - the minimum allowable angle for heading.
        maxAngle - the maximum allowable angle for heading.
      • getPitchLimits

        public Angle[] getPitchLimits()
        Returns the minimum and maximum angles for a view's pitch property.
        Specified by:
        getPitchLimits in interface ViewPropertyLimits
        Returns:
        Minimum and maximum allowable angles for pitch.
      • setPitchLimits

        public void setPitchLimits​(Angle minAngle,
                                   Angle maxAngle)
        Sets the minimum and maximum angles which will limit a view's pitch property.
        Specified by:
        setPitchLimits in interface ViewPropertyLimits
        Parameters:
        minAngle - the minimum allowable angle for pitch.
        maxAngle - the maximum allowable angle for pitch.
      • getRollLimits

        public Angle[] getRollLimits()
        Returns the minimum and maximum angles for a view's roll property.
        Specified by:
        getRollLimits in interface ViewPropertyLimits
        Returns:
        Minimum and maximum allowable angles for roll.
      • setRollLimits

        public void setRollLimits​(Angle minAngle,
                                  Angle maxAngle)
        Sets the minimum and maximum angles which will limit a view's roll property.
        Specified by:
        setRollLimits in interface ViewPropertyLimits
        Parameters:
        minAngle - the minimum allowable angle for roll.
        maxAngle - the maximum allowable angle for roll.
      • reset

        public void reset()
        Resets all property limits to their default values.
        Specified by:
        reset in interface ViewPropertyLimits
      • limitEyePosition

        public Position limitEyePosition​(View view,
                                         Position position)
        Returns a position clamped to the eye location limits and the eye elevation limits specified by this limit object. This method does not modify the specified view's properties, but may use the view as a context for determining how to apply the limits.
        Specified by:
        limitEyePosition in interface ViewPropertyLimits
        Parameters:
        view - the view associated with the center position and the property limits.
        position - position to clamp to the allowed range.
        Returns:
        The clamped position.
      • limitHeading

        public Angle limitHeading​(View view,
                                  Angle angle)
        Returns an angle clamped to the heading limits specified by this limit object. This method does not modify the specified view's properties, but may use the view as a context for determining how to apply the limits.
        Specified by:
        limitHeading in interface ViewPropertyLimits
        Parameters:
        view - the view associated with the heading angle and the property limits.
        angle - angle to clamp to the allowed range.
        Returns:
        The clamped angle.
      • limitPitch

        public Angle limitPitch​(View view,
                                Angle angle)
        Returns an angle clamped to the pitch limits specified by this limit object. This method does not modify the specified view's properties, but may use the view as a context for determining how to apply the limits.
        Specified by:
        limitPitch in interface ViewPropertyLimits
        Parameters:
        view - the view associated with the pitch angle and the property limits.
        angle - angle to clamp to the allowed range.
        Returns:
        The clamped angle.
      • limitRoll

        public Angle limitRoll​(View view,
                               Angle angle)
        Returns an angle clamped to the roll limits specified by this limit object. This method does not modify the specified view's properties, but may use the view as a context for determining how to apply the limits.
        Specified by:
        limitRoll in interface ViewPropertyLimits
        Parameters:
        view - the view associated with the roll angle and the property limits.
        angle - angle to clamp to the allowed range.
        Returns:
        The clamped angle.
      • is2DGlobe

        protected boolean is2DGlobe​(Globe globe)
      • isNonContinous2DGlobe

        protected boolean isNonContinous2DGlobe​(Globe globe)