NASA World Wind

gov.nasa.worldwindx.examples.analytics
Class AnalyticSurfaceDemo

java.lang.Object
  extended by gov.nasa.worldwindx.examples.ApplicationTemplate
      extended by gov.nasa.worldwindx.examples.analytics.AnalyticSurfaceDemo

public class AnalyticSurfaceDemo
extends ApplicationTemplate

Illustrates how to configure and display a 3D geographic grid of scalar data using the World Wind AnalyticSurface. Analytic surface defines a grid over a geographic Sector at a specified altitude, and enables the caller to specify the color and height at each grid point.

This illustrates three key AnalyticSurface configurations:


Nested Class Summary
static class AnalyticSurfaceDemo.AppFrame
           
 
Nested classes/interfaces inherited from class gov.nasa.worldwindx.examples.ApplicationTemplate
ApplicationTemplate.AppPanel
 
Field Summary
protected static String DATA_PATH
           
protected static int DEFAULT_RANDOM_ITERATIONS
           
protected static double DEFAULT_RANDOM_SMOOTHING
           
 
Constructor Summary
AnalyticSurfaceDemo()
           
 
Method Summary
protected static Renderable createLegendRenderable(AnalyticSurface surface, double surfaceMinScreenSize, AnalyticSurfaceLegend legend)
           
static Iterable<? extends AnalyticSurface.GridPointAttributes> createMixedColorGradientGridValues(double a, BufferWrapper firstBuffer, BufferWrapper secondBuffer, double minValue, double maxValue, double minHue, double maxHue)
           
protected static void createPrecipitationSurface(double minHue, double maxHue, RenderableLayer outLayer)
           
protected static void createRandomAltitudeSurface(double minHue, double maxHue, int width, int height, RenderableLayer outLayer)
           
protected static void createRandomColorSurface(double minHue, double maxHue, int width, int height, RenderableLayer outLayer)
           
protected static BufferWrapperRaster loadRasterElevations(String path)
           
static void main(String[] args)
           
protected static void mixValuesOverTime(long timeToMix, BufferWrapper firstBuffer, BufferWrapper secondBuffer, double minValue, double maxValue, double minHue, double maxHue, AnalyticSurface surface)
           
static BufferWrapper randomGridValues(int width, int height, double min, double max)
           
static BufferWrapper randomGridValues(int width, int height, double min, double max, int numIterations, double smoothness, BufferFactory factory)
           
protected static void scaleValues(double[] values, int count, double minValue, double maxValue)
           
protected static void smoothBand(double[] values, int start, int stride, int count, double smoothness)
           
protected static void smoothValues(int width, int height, double[] values, double smoothness)
           
 
Methods inherited from class gov.nasa.worldwindx.examples.ApplicationTemplate
insertAfterPlacenames, insertBeforeCompass, insertBeforeLayerName, insertBeforePlacenames, start
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DATA_PATH

protected static final String DATA_PATH
See Also:
Constant Field Values

DEFAULT_RANDOM_ITERATIONS

protected static final int DEFAULT_RANDOM_ITERATIONS
See Also:
Constant Field Values

DEFAULT_RANDOM_SMOOTHING

protected static final double DEFAULT_RANDOM_SMOOTHING
See Also:
Constant Field Values
Constructor Detail

AnalyticSurfaceDemo

public AnalyticSurfaceDemo()
Method Detail

createLegendRenderable

protected static Renderable createLegendRenderable(AnalyticSurface surface,
                                                   double surfaceMinScreenSize,
                                                   AnalyticSurfaceLegend legend)

createMixedColorGradientGridValues

public static Iterable<? extends AnalyticSurface.GridPointAttributes> createMixedColorGradientGridValues(double a,
                                                                                                         BufferWrapper firstBuffer,
                                                                                                         BufferWrapper secondBuffer,
                                                                                                         double minValue,
                                                                                                         double maxValue,
                                                                                                         double minHue,
                                                                                                         double maxHue)

createPrecipitationSurface

protected static void createPrecipitationSurface(double minHue,
                                                 double maxHue,
                                                 RenderableLayer outLayer)

createRandomAltitudeSurface

protected static void createRandomAltitudeSurface(double minHue,
                                                  double maxHue,
                                                  int width,
                                                  int height,
                                                  RenderableLayer outLayer)

createRandomColorSurface

protected static void createRandomColorSurface(double minHue,
                                               double maxHue,
                                               int width,
                                               int height,
                                               RenderableLayer outLayer)

loadRasterElevations

protected static BufferWrapperRaster loadRasterElevations(String path)

main

public static void main(String[] args)

mixValuesOverTime

protected static void mixValuesOverTime(long timeToMix,
                                        BufferWrapper firstBuffer,
                                        BufferWrapper secondBuffer,
                                        double minValue,
                                        double maxValue,
                                        double minHue,
                                        double maxHue,
                                        AnalyticSurface surface)

randomGridValues

public static BufferWrapper randomGridValues(int width,
                                             int height,
                                             double min,
                                             double max)

randomGridValues

public static BufferWrapper randomGridValues(int width,
                                             int height,
                                             double min,
                                             double max,
                                             int numIterations,
                                             double smoothness,
                                             BufferFactory factory)

scaleValues

protected static void scaleValues(double[] values,
                                  int count,
                                  double minValue,
                                  double maxValue)

smoothBand

protected static void smoothBand(double[] values,
                                 int start,
                                 int stride,
                                 int count,
                                 double smoothness)

smoothValues

protected static void smoothValues(int width,
                                   int height,
                                   double[] values,
                                   double smoothness)

NASA World Wind