package com.esri.samples.scene.change_atmosphere;

import com.esri.arcgisruntime.mapping.ArcGISScene;
import com.esri.arcgisruntime.mapping.ArcGISTiledElevationSource;
import com.esri.arcgisruntime.mapping.Basemap;
import com.esri.arcgisruntime.mapping.Surface;
import com.esri.arcgisruntime.mapping.view.SceneView;
import javafx.application.Application;
import javafx.scene.Scene;
import com.esri.arcgisruntime.mapping.view.Camera;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

public class ChangeAtmosphereSample extends Application {

    private SceneView sceneView;
    private static final String ELEVATION_IMAGE_SERVICE =
            "http://elevation3d.arcgis.com/arcgis/rest/services/WorldElevation3D/Terrain3D/ImageServer";

    @Override
    public void start(Stage stage) {

        try {
            // create stack pane and JavaFX app scene
            StackPane stackPane = new StackPane();
            Scene fxScene = new Scene(stackPane);

            // set title, size, and add JavaFX scene to stage
            stage.setTitle("Change Atmosphere Sample");
            stage.setWidth(800);
            stage.setHeight(700);
            stage.setScene(fxScene);
            stage.show();

            // create a ArcGIS scene and add a basemap to it
            ArcGISScene scene = new ArcGISScene();
            scene.setBasemap(Basemap.createImagery());

            // add the SceneView to the stack pane
            sceneView = new SceneView();
            sceneView.setArcGISScene(scene);
            stackPane.getChildren().add(sceneView);

            // add a camera and initial camera position
            Camera camera = new Camera(64.687362, -14.371570, 200, 305, 95, 0);
            sceneView.setViewpointCamera(camera);

            // add base surface for elevation data
            Surface surface = new Surface();
            surface.getElevationSources().add(new ArcGISTiledElevationSource(ELEVATION_IMAGE_SERVICE));
            scene.setBaseSurface(surface);

        } catch (Exception e) {
            // on any error, display the stack trace.
            e.printStackTrace();
        }
    }

    /**
     * Stops and releases all resources used in application.
     */
    @Override
    public void stop() {

        if (sceneView != null) {
            sceneView.dispose();
        }
    }

    /**
     * Opens and runs application.
     *
     * @param args arguments passed to this application
     */
    public static void main(String[] args) {

        Application.launch(args);
    }
}

@@ -251,24 +251,85 @@
 ng.Surface;%0A
+import com.esri.arcgisruntime.mapping.view.AtmosphereEffect;%0A
 import com.e
@@ -370,16 +370,16 @@
 neView;%0A
-
 import j
@@ -409,16 +409,47 @@
 cation;%0A
+import javafx.geometry.Insets;%0A
 import j
@@ -545,25 +545,50 @@
 .layout.
-StackPane
+*;%0Aimport javafx.scene.paint.Paint
 ;%0Aimport
@@ -1332,24 +1332,418 @@
 ge.show();%0A%0A
+            // create a control panel%0A            VBox controlsVBox = new VBox(6);%0A            controlsVBox.setBackground(new Background(new BackgroundFill(Paint.valueOf(%22rgba(0, 0, 0, 0.3)%22), CornerRadii.EMPTY, Insets.EMPTY)));%0A            controlsVBox.setPadding(new Insets(10.0));%0A            controlsVBox.setMaxSize(260, 120);%0A            controlsVBox.getStyleClass().add(%22panel-region%22);%0A%0A
             
@@ -2471,24 +2471,24 @@
 _SERVICE));%0A
-
             
@@ -2515,24 +2515,135 @@
 (surface);%0A%0A
+            // change the atmosphere effect%0A            sceneView.setAtmosphereEffect(AtmosphereEffect.NONE);%0A%0A
         %7D ca

Update src/main/java/com/esri/samples/scene/change_atmosphere/ChangeAtmosphereSample.java