| |
Core is basic construction stone of platform. Core provides necessary
functionality for appliction. C++ is platform program language, using MFC
library.
List of smaller units contained in core following:
- 'main frame' of applic -
apart from another parts it consists of parts that are important for base
application window creation. The window contain MDI administrator, konfigurable menu,
toolbars and property dialog.
- projects and positions administration -
insure functionality for creation, editing, rename and deleting of project and
positions. User work with project, that contain several positions. Position
is separate part of project (e.g. plate structure, beam, cross-section, ...),
that create a unit mainly in static seeing. More positions of same or
different type can create a project. Positions communicete and change a data
among themselves. By this way is possible use cross-section data (as
separate position) in frameworks and reactions calculated in framewoks use
as inputs for design of foundations.
- windows administration-
insure storing of work area for single projects and positions. User can
create a own settings for single projects and positions, that will be
applied in start of project or position.
- property dialog - is modelles dialog of minimal
necessary dimensions, varied of its content by current action. Property
dialog contents necessary and optional informations for currently executed
input insertion, mainly for graphical mouse inserting.
- catalog administration - user can creates
a catalogs for objects with multiple usage. Catalogs contain by user defined
groups of ordered elements (materials, cross-sections ...), that are
central administrated and arbitrary user can use them later in single
positions.
- output document generation - platform
contains simple generator for outputs. User defines in generator look of
output document and inserts to document single representations of positions
(graphical or text), for that user choose a corresponding characteristics
settings (scale, factors for representation of results, ...). Generator
works directely with result look (see pages dividing, placement of single
parts in pages ...), that is result of printing. User can inserts to result
document own graphical entities and settings for later using.
- representation view - the view is uses
by all modules for representation. View contains functionality for
representation, tranformations and user inputs and contains a class for
representation (standard drawing via WIN API - Device Context), that assure
drawing of basic graphical entities (line, circle ...). The class can be
changes by another class during program running, that can be created for
another kind of representation - e.g. for rendering change a class for
representation by Open GL or DirectX. Also all coordinates changes are
alignmented by interchangeable class of 2D transformations. The class is
automaticaly changed during Draw3D
module initialization to class for 3D transformations. The change allow,
without compiling of arbitrary application part, not only 3D entities
drawing, also 2D entities drawing in space (finded in one plane).
- single commands - are created by single
modules and central managed by command manager. The solution allow
configuring menu and toolbars by user requests
- attributes administrator -
characteristic object property is attribute (color, type of pen, font, ...).
Platform contains administrator for keeping of the properties (repeted
and multiple usage), i.e. contains functionality for attributes
creation, editing, deleting and save.
- database engine - insure all
manipulations with database file for projets and positions save.
- collections - contain lists and arrays
for different types
- basic UI classes - contain base classes
for UI. Standard objects are defined for inputs inserting for Windows 95/NT.
- mathematic and geometric functionality
- contain mathematic definitions of base graphic elements (point,
vector, matrix ...), operations, tranformations and geometrical
operations with simple graphic entities (intersection points of two
abscissas...). Booleans operations with enclosed objects are component too.
- grid - it is table for inputs inserting and
representation of multiple informations. Separate control is aviable,
control "work" in dialogs and views for application based on MFC
library. Single items can be different type - edit,
edit for numeric values, combobox, checkbox, list, ... . By user defined new
types can be added to class. Single label (items of vertical and horizontal
header) and table items can merge through more fields, defined by table
creation. Defined table is represented in output document (after transformation
to graphical object) too, where it contains edit functionality too.
- interactors - exist in cooperation with
commands for inputs inserting. Interactors are objects, that take all inputs
(mainly mouse) in case of given action choice. Interactors communicate with
property dialog.
- link to remote objects - platform
contains links for communication between positions and positions
and extern data (catalogs, other projects ...). The objects, without user
influence, keep up the relations to remote objects. The functionality
allows connection of single positions with data usage, connection to
catalogs and at the same time updetes changes in all connections, i.e. in
case of e.g. material change, position recalculation ..., the changes will
be immediately carried out in positions using these data.
|