(this page was created automatically. In case of formatting issues, please visit the official Wiki Page)

Image Point Viewer

The Dynamic Image Point Viewer Component is an interactive visualization element that displays an image with configurable interactive points overlaid on it. It enables users to view and interact with specific locations on images, with points that can change appearance based on data values. This component is ideal for creating interactive maps, facility diagrams, process visualizations, or any interface where users need to interact with specific locations on an image.

Properties

General Properties

Visual Properties

Datasource Properties

Event Actions Properties

Authorization Properties

Visibility Properties

Testing Hooks Properties

Data source

The Image Point Viewer is a dynamic component that displays an image with interactive points overlaid on it. It requires two data sources:

  1. Image Data Source: Provides the image to be displayed
  2. Points Data Source: Provides the points to be overlaid on the image

This document focuses on the expected data structure for the Points Data Source.

Data Source Configuration

The component requires proper configuration of several fields:

Required Configuration Fields

  1. pointsDataSourceId: ID of the data source that provides the points data
  2. positionXFieldName: Field name in the data that contains the X coordinate
  3. positionYFieldName: Field name in the data that contains the Y coordinate
  4. keyFieldName: Field name in the data that contains unique identifiers for the points
  5. displayFieldName: Field name in the data that contains the text to display in tooltips

Points Data Structure

The Points Data Source should return an array of objects. Each object represents a point on the image.

Required Format

[
  {
    "<positionXFieldName>": <x_coordinate>,
    "<positionYFieldName>": <y_coordinate>,
    "<keyFieldName>": <unique_identifier>,
    "<displayFieldName>": <display_text>,
    // Additional fields for thresholds if needed
  },
  // More points...
]

Field Descriptions

  1. X Coordinate Field: (specified by positionXFieldName)
  1. Y Coordinate Field: (specified by positionYFieldName)
  1. Key Field: (specified by keyFieldName)
  1. Display Field: (specified by displayFieldName)
  1. Additional Fields:

Example Data Structure

[
  {
    "xPos": 100,
    "yPos": 150,
    "pointId": "point1",
    "label": "Control Valve",
    "status": "normal",
    "temperature": 72
  },
  {
    "xPos": 250,
    "yPos": 200,
    "pointId": "point2",
    "label": "Pressure Gauge",
    "status": "warning",
    "temperature": 95
  },
  {
    "xPos": 400,
    "yPos": 300,
    "pointId": "point3",
    "label": "Flow Meter",
    "status": "critical",
    "temperature": 120
  }
]

In this example, if the component is configured with:

The component will display three points on the image at the specified coordinates, with tooltips showing "Control Valve", "Pressure Gauge", and "Flow Meter".

Nested Properties Support

The component supports accessing nested properties using dot notation. This is useful if your data has a more complex structure.

Example with Nested Properties

If your data looks like:

[
  {
    "metadata": {
      "position": {
        "x": 100,
        "y": 150
      }
    },
    "id": "point1",
    "details": {
      "name": "Control Valve"
    }
  }
]

You can configure:

The component will correctly extract the nested values.