Ограничение вида камеры в WorldWind Java

Я просматривал документацию и примеры, но не нашел хороших демонстраций, показывающих, что я хотел бы сделать:

Как ограничить просмотр в World Wind Java определенным регионом? Как и в том, чтобы позволить пользователю перемещаться по миру, но только через небольшую область. Удаление возможности перемещать камеру и установка вида в определенное положение сработало бы в моем случае, но это кажется пустой тратой невероятных функций просмотра WWJ.


person Chase Sandmann    schedule 06.12.2012    source источник


Ответы (1)


На самом деле пример того, как это сделать, есть в gov.nasa.worldwindx.examples (я только просматривал демо): ViewLimits.

Можно преобразовать представление WorldWindowGLCanvas в представление OrbitView. Затем ограничения могут применяться как таковые:

OrbitView viewbounds = (OrbitView)wwd.getView();
if (viewbounds != null)
{
    OrbitViewLimits limits = viewbounds.getOrbitViewLimits();
    if (limits != null)
    {
        viewLimit = new Sector();// Fill with appropriate bounds
        limits.setCenterLocationLimits(viewLimit);
        limits.setPitchLimits(Angle.fromDegrees(0), Angle.fromDegrees(90));
        //^in degrees downward from looking directly at the earth
        limits.setHeadingLimits(Angle.ZERO, Angle.ZERO);// rotation cw or ccw
        limits.setZoomLimits(minZoom, maxZoom);// in meters
        BasicOrbitViewLimits.applyLimits(viewbounds, limits);
    }
}
person Chase Sandmann    schedule 07.12.2012