ArcGIS Runtime SDK for Java

Scene Properties Expressions

Demonstrates how to update the orientation of a graphic using scene property rotation expressions.

How it works

To update a Graphic's orientation using expressions:

  1. Create a new GraphicsOverlay.
  2. Create a SimpleRenderer and set expressions on its scene properties: Renderer.getSceneProperties().setHeadingExpression("HEADING"). Then set the renderer to the graphics overlay with GraphicsOverlay.setRenderer(renderer).
  3. Create a graphic and add it to the graphics overlay.
  4. To update the graphic's rotation, use Graphic.getAttributes.put("HEADING", heading)where the attribute key is the expression and the value is the rotation angle.


 * Copyright 2017 Esri.
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
 * use this file except in compliance with the License. You may obtain a copy of
 * the License at
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 * License for the specific language governing permissions and limitations under
 * the License.

package com.esri.samples.scene.scene_properties_expressions;


import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class ScenePropertiesExpressionsSample extends Application {

  private static ScenePropertiesExpressionsController controller;

  public void start(Stage stage) throws IOException {
    // set up the scene
    FXMLLoader loader = new FXMLLoader(getClass().getResource("/fxml/scene_properties_expressions.fxml"));
    Parent root = loader.load();
    controller = loader.getController();
    Scene scene = new Scene(root);

    // set up the stage
    stage.setTitle("Scene Properties Expressions Sample");

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

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


In this topic
  1. How it works
  2. Code