12.08.2013 Views

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

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

3.4 Possible solutions <strong>and</strong> transforms<br />

In the previous sections, three programming models are suggested. In summary, because there is no<br />

pipeline in the Culgi Library, the network model is not a good solution to the Culgi library. Compared<br />

to the Network Editor, the Sequence Editor is much more suitable to the features of the Culgi Library.<br />

So the sequence model could be a solution of the Culgi GPE. But for the novices who don’t know the<br />

general architecture of the simulation programs of Culgi, programming in the sequence editor is not<br />

very easy. They have to spend several hours to learn the structures the simulation programs. Thus, a<br />

concept model is designed to the novices. The Concept Editor is easy to learn for novices. But it cannot<br />

replace the Sequence Editor since the Sequence Editor is much more flexible than it <strong>and</strong> suitable to the<br />

skilled users.<br />

Since the Sequence Editor <strong>and</strong> the Concept Editor have their own advantages, <strong>and</strong> suit to different<br />

kinds of users, the solution to the Culgi GPE could be the combination of these two models. The<br />

novices of Culgi can program in the concept model. And the skilled users of Culgi can choose the<br />

sequence model to make programs which is out of the scope of the templates in concept model.<br />

One problem is here that since two models are supported at the same time, what the relationship<br />

between them is. One option is that these two models are separated. If a user’s application is edited in<br />

one model, it cannot be edited in the other model. In this option, the two models do not have any<br />

relationship with each other. The whole system does not look like one but two different systems. There<br />

must be even one file format for each model to save the user’s program.<br />

Another option is that these two models can be transformed into each other. In this option, a program<br />

edited in a model can also be transformed to other model <strong>and</strong> then edited there. If so, a user can have<br />

two views of an application. The concept model will show him the view at the architecture level, while<br />

the sequence model can show him the view at the detailed level. And the whole system just has one<br />

general format to save the user’s application. Thus, it would be the solution to this problem that to<br />

make transforms between these two models.<br />

3.5 Modules<br />

Modules are primitive components of the simulation programs in the Culgi GPE. All of the three<br />

models mentioned in the previous sections are based on modules. From the requirements list of Chapter<br />

2, we can see that in the Culgi GPE a module should have three properties: 1) the contents of a module<br />

should be several lines of Tcl code; 2) a module should have a visual interface so that users can<br />

manipulate it; 3) A module should have some arguments which will be passed to the Tcl code of this<br />

module. So in the user interface of a module, it should also be possible to show the parameters <strong>and</strong><br />

receive the input values from users. The design of a module should satisfy these basic requirements.<br />

- 20 -

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!