Nateo Concepts

# Nateo Time Chart Control: Concepts

# Overview

The Nateo Time Chart consists of a set of controls. The principles of of how they work are not very complicated but it still makes sense to build up a good understanding of the internals in order to develop applications quickly and efficiently. It is recommended to go through the concepts listed below. Following the order of this list is the most efficient way of getting familiar with the Nateo API.
For practical exercises on the basics and common techniques please also see the tutorials here.

Concepts:

Chapter | Description
--- | ---
1. Basics | Some basic information on the Nateo Time Chart.
2. The Data Sheet | The Data Sheet is the scrollable area of the Time Chart control. In this section you will find the details on how it is being adjusted to allow users a seamless navigation through time.
3. Ticks and Pixels | The horizontal axis of the Time Chart is the time. Its resolution (time zoom factor) can be adjusted by the user or by the application. This has certain implications programmers should understand.
4. Data Objects | All data stored in the Time Chart consists of individual data objects with their own time stamp each. This section describes how these objects are being created and added to the Time Chart.
5. Data Display | For those data ojbects that intersect the visible range of the chart the NtTimeChartControl creates so called Display Objects that are used to finally render the data. This section explains details.
6. Display Definitions | Objects that are visible have to be drawn somehow. For each data type the Time Chart needs to know how to draw the respective objects. This is determined by NtDisplayDefinition objects (one per data type).
7. Custom Drawing | Implementing your own style of drawing data objects is a straight forward process that urges you to implement a few methods and classes. This sections describes how.
8. Categories | The Time Chart consists of rows, each containing data of specific data types. Defining Categories allows to organize groups and subgroups of rows that can be hidden and shown on demand in order to customize the current view.
9. Perspectives | The Time Chart's current lineup of rows and categories is defined by the so called Perspective that is set in the Time Chart. This sections describes what the Perspective can do and how it is created.
10. Row Headers and Flank Controls | The rows inside a Time Chart need labels to let users know what kind of data they see. These labels are called 'Row Headers' and they are arranged within so called 'Flank Controls'.
11. Condensed View | When zooming out the time scale to an overview over several months or even longer, data objects overlay too much to see any detail or even understand where data groups. The condensed view is a special display mode for better overviews.
12. Bitmaps and Icons | Certain values are represented by certain icons or bitmaps. And as same values might occur many times in a data set, it makes sense to allocate icons and bitmaps once in a map and reuse them for each occurence of the value.
13. Courves | Some data can best be represented as a courved plot. By default the Time Chart supports basic drawing of courves by indicating samples and link them with straight lines. This fits for many practical cases already.
14. Tooltips | Tooltips offer a very good way of giving users specific detail on data objects. Setting up good tooltips can rise the usability of an application significantly.
15. Initialization of the Time Chart | Initialization of the Time Chart and its supportive controls is the most important challenge when using these controls. Steps depend on each other so the right sequence is important.

Top Nateo Concepts © 2016 Bassaly