src.gov.nasa.worldwind.view.ViewPropertyLimits Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of worldwindx Show documentation
Show all versions of worldwindx Show documentation
World Wind is a collection of components that interactively display 3D geographic information within Java applications or applets.
/*
* Copyright (C) 2012 United States Government as represented by the Administrator of the
* National Aeronautics and Space Administration.
* All Rights Reserved.
*/
package gov.nasa.worldwind.view;
import gov.nasa.worldwind.geom.*;
import gov.nasa.worldwind.util.RestorableSupport;
/**
* @author jym
* @version $Id: ViewPropertyLimits.java 1171 2013-02-11 21:45:02Z dcollins $
*/
public interface ViewPropertyLimits
{
/**
* Sets the Sector
which will limit the View
eye position latitude and longitude.
*
* @param sector Sector
which will limit the eye position latitude and longitude.
* @throws IllegalArgumentException if sector
is null.
*/
void setEyeLocationLimits(Sector sector);
/**
* Returns the Sector
which limits the View
eye position latitude and longitude.
*
* @return Sector
which limits the eye position latitude and longitude.
*/
Sector getEyeLocationLimits();
/**
* Returns the minimum and maximum values for the View
elevation.
*
* @return minimum and maximum allowable values for the elevation.
*/
double[] getEyeElevationLimits();
/**
* Sets the minimum and maximum values for the View
elevation.
*
* @param minValue The minimum elevation.
* @param maxValue The maximum elevation.
*/
void setEyeElevationLimits(double minValue, double maxValue);
/**
* Returns the minimum and maximum Angles
for the OrbitView
heading property.
*
* @return minimum and maximum allowable Angles
for heading.
*/
Angle[] getHeadingLimits();
/**
* Sets the minimum and maximum Angles
which will limit the OrbitView
heading property.
*
* @param minAngle the minimum allowable angle for heading.
* @param maxAngle the maximum allowable angle for heading.
* @throws IllegalArgumentException if either minAngle
or maxAngle
is null.
*/
void setHeadingLimits(Angle minAngle, Angle maxAngle);
/**
* Returns the minimum and maximum Angles
for the OrbitView
pitch property.
*
* @return minimum and maximum allowable Angles
for pitch.
*/
Angle[] getPitchLimits();
/**
* Sets the minimum and maximum Angles
which will limit the OrbitView
pitch property.
*
* @param minAngle the minimum allowable angle for pitch.
* @param maxAngle the maximum allowable angle for pitch.
* @throws IllegalArgumentException if either minAngle
or maxAngle
is null.
*/
void setPitchLimits(Angle minAngle, Angle maxAngle);
/**
* Returns the minimum and maximum Angles
for the OrbitView
roll property.
*
* @return minimum and maximum allowable Angles
for roll.
*/
Angle[] getRollLimits();
/**
* Sets the minimum and maximum Angles
which will limit the OrbitView
roll property.
*
* @param minAngle the minimum allowable angle for roll.
* @param maxAngle the maximum allowable angle for roll.
*
* @throws IllegalArgumentException if either minAngle
or maxAngle
is null.
*/
void setRollLimits(Angle minAngle, Angle maxAngle);
void getRestorableState(RestorableSupport rs, RestorableSupport.StateObject context);
void restoreState(RestorableSupport rs, RestorableSupport.StateObject context);
}