## 1. Trail: Getting Started

> This section provides everything you'll need to know about getting started with the Astroframe.

> 1.1. Introduction.

> 1.2. Graphics object domain Configures

> 1.3 Formula Editor

> 1.4 Openness of the software

## 1.1. Introduction

> The software had been appeared as further development of the CategoryTheory project devoted to math category theory. Basic notions of category theory are object and arrow. In this software objects are star catalogues, statistical processing methods, ordinary differential equation systems, recursive elements, video cameras etc. Arrows are geometric links, information links, links between databases and math methods. Each type of object implements a number of interfaces. For example video camera implements following interfaces: object with geometric motion, source of information for navigation by video images. Moved reference frame is a consumer of information (about motion parameters), object with geometric motion, source of information (about relative motion parameters).

> The basic ideas of this sofware are graphics domain Configures, formula editor and Openness.

## 1.2 Graphics object domain Configures

Every object domain phenomena may be decomposed to elementary objects. There are different links between these objects. For example position of a material point may be expressed in reference frame. Thus we have a link between the point and the frame. This link contains coordinates of the point. Second example of link contains in math processing of information. We have an information provider and a consumer of its information. Consumer and provider should be linked. Some objects are both a provider and a consumer. They are information processors. If we use such processor we should link it to information provider(s) and consumers. In this case we have information links. According to multiple inheritance principle every object may implement a set of interfaces. For example any object that sets a trajectory of a material is an object from positioning domain. However it consumes information about trajectory parameters. Hence it is also consumer of information. Thus this object implements two interfaces. As an object of first interface should be linked to material point and reference frame. However as information consumer it should be linked to information provider(s) as well. If we have elementary objects and an opportunity of linking them, then it is possible to simulate at once very completive phenomenons. Graphics domain configurer provides facilities for phenomenon construction by setting objects and linking them. The configurer is shown on the following picture.

> Big squares on the desktop are objects and small ones are links. If you wish to create an object, press toolbar button and then click left button on the desktop. Whether user wishes to create an arrow press toolbar button and drag mouse form source object to target one. To open properties editor of given object or arrow you should mouse right click on the square. Shift + Mouse click on the square results to object or arrow selecting (unselecting). If you press button then you can select a group of objects by mouse drag.

> Every object and arrow has a property editor. Right mouse click on a square object (arrow) opens the property editor of corresponding object (arrow). Property editors enable us to edit numbers, texts, plots, formulas, SQL queries etc. For sample property editor of Functional transformer is shown on the following picture.

> This editor enables us to edit formulas of transformation

## 1.3 Formula Editor

The formula editor enables to enter different formulas. These formulas are used for definition of signals, transformation of 3D figures, definition of right parts of differential equations, image processing, definition of size and color of figures, etc. The formulas may contain real, integer, Boolean, vector variables etc. In the CategoryTheory project formula editor operates even with Galois fields. This editor is shown on the following picture.

There are following rules for formula editing. Click mouse on a necessary symbol. Then drag symbol to necessary place. Click mouse once again after gray cursor appears. Double click sets the symbol behind former set symbol. If you set exponent then drag symbol to the right top of the base. If you set the logarithm base then drag to the right bottom of the base. If you want to delete symbol then set the mouse cursor on it and click the mouse after gray cursor appears. You can use a school formula notation. For example the sinx , cos2x are accepted.

## 1.4 Openness of the software

Usually every developer or company have their own projects of object domain. This software do not require to refuse existing projects. Any object domain project may be included to this software. If you wish to include your project or its part then you need to develop an adapter, compile class library and link it to this software. The adapter should contain one or more classes that implement one or more of interfaces of this sofware. More profound description of these interfaces is contained in developer's guide (to be appear). Let us consider an example of working with external libraries. Suppose the it has been created dynamic link library for calculation of Earth gravity field. If you wish to use it then put the object on desktop. After this action open the property editor of the object. It looks like

Then select the dynamic link library file and object type (using combobox below). After this selection icon of the object shall be replaced by . Moreover the property editor of the object shall be replaced by
It corresponds to property editor of Earth gravity field.