Master's Thesis - Computer Graphics and Visualization - TU Delft
Master's Thesis - Computer Graphics and Visualization - TU Delft
Master's Thesis - Computer Graphics and Visualization - TU Delft
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Chapter 4 Implementation of the Culgi<br />
GPE<br />
Chapter 3 suggests three models: the network editor, the sequence editor, <strong>and</strong> the concept editor. It also<br />
points out that the combination of sequence editor <strong>and</strong> concept editor will be the solution of the Culgi<br />
GPE. This chapter will mainly introduce the implementation of the solution. Although the network<br />
editor is not a solution to the Culgi GPE, in the prototype we also implemented the prototype to this<br />
model in the very beginning. This chapter will also introduce this model very shortly.<br />
This chapter first shows the architecture of the whole system, <strong>and</strong> then explains each component in this<br />
architecture.<br />
4.1 System Overview<br />
The Culgi GPE will be a part of the Culgi Package. Its main functionality can be described as a bridge<br />
for users between Culgi Library <strong>and</strong> Tcl scripts. This section will give an overview of the<br />
implementation of the prototype. It first introduces the implementation language, <strong>and</strong> then shows the<br />
architecture of the whole system.<br />
Before implementation, several considerations should be kept in mind. These considerations from the<br />
requirements analysis are 1) the system should be platform independent; 2) external software<br />
component are the Tcl 8.4 interpreter <strong>and</strong> Culgi.dll.<br />
4.1.1 Programming languages<br />
Python is chosen as the implementation language. Python [7] is an interpreted, interactive,<br />
object-oriented programming language. It is selected for the following reasons.<br />
1) As a functional scripts language, Python does not have compile-link cycle.<br />
2) It is cross platform.<br />
3) The Python 2.4 core includes Tcl8.4.dll. Thus it is very easy to run Tcl scripts in Python<br />
environment.<br />
4) It is possible to load modules dynamically. That is to say, if a module in the module library is<br />
modified when the system (the Culgi GPE) is running, a user does not need to restart the system to<br />
accept the changes.<br />
5) It is very easy to create an interface because Tkinter <strong>and</strong> Tix are integrated inside. Tkinter <strong>and</strong> Tix<br />
can be used to build a graphical interface.<br />
- 27 -