var fDesc=new Array(); fDesc[0] = "CLUCalc/CLUViz is a freely available software tool for 3D visualizations and scientific calculations that was conceived and written by Dr. Christian Perwass. CLUCalc interprets a script language called ‘CLUScript’, which has been designed to make mathematical calculations and visualisations very intuitive.

The new version of CLUCalc is contained in the visualization suite CLUViz. CLUViz separates the visualization engine from the CLUScript editor CLUCalc. In this way you can now use the visualization power of CLUCalc from within you own C++ and C# programs. The CLUViz distribution also includes the editor CLUCalc.

The user interface consists of three windows:

the CLUScript editor,
the visualization window and
the output window.

If one of the windows has the focus, i.e. is active, you can switch to any other window by using the menu "Window", or by pressing the following key combinations:

SHIFT + CTRL + 'e' to switch to the editor window.
SHIFT + CTRL + 'v' to switch to the visualization window.
SHIFT + CTRL + 'o' to switch to the output window.

Command Line Parameters
CLUCalc also has the following optional command line parameters.

A call like CLUCalc [filename], starts CLUCalc, whereby the script given by the filename is loaded, parsed and displayed immediately.

--main-path=[path], the path you can specify here has to have as subdirectories the ExampleScripts and Documentation directories. This option allows CLUCalc to find the documentation and example scripts, even if it is started from a different directory.

--no-intro, this switches off the introduction script and starts up CLUCalc with an empty script instead. This is useful if you just want to work with CLUCalc.

--viz-only, starts CLUCalc with only the visualization window. That is, the user can neither edit nor see the script or the text output. This can be useful if you are giving presentations with some other program but want to start up CLUCalc to show some visualizations in between.

The CLUScript editor implements syntax highlighting to facilitate the programming of CLUScripts. It offers the standard functionality of an editor with copy, cut, paste and search and replace routines. Note that if you press CTRL + c when no text is selected, the whole line in which the cursor is places, will be copied. In structured programming it is nice to indent paragraphs. The Tabulator key indents a line. If you press return at the end of an indented line, the new line will have the same indent (hanging indent). You can also indent or remove the indent of a whole block of lines by first selecting the lines you wish to indent and then pressing CTRL + i and CTRL + SHIFT + i, resepectively.

You can visualize a script written in the editor by pressing CTRL + p. The script does not have to be saved before it can be visualized. You can also re-parse a script while it is animated.

The editor also allows you to open a number of scripts concurrently. You can switch between the scripts using either the combo box at the top of the editor window (as shown in the above image), or by using the key combination CTRL + LEFT and CTRL + RIGHT. When you switch between scripts, the scripts are not automatically parsed again. This allows you, for example, to work on the include file of a main file, while visualizing only the main file. Independently of which script is currently displayed in the editor, it is always possible to re-parse the script that is currently visualized by selecting from the menu Code the command Parse Main. Alternatively, you can also use the key combination CTRL + m. hallr

The keys Home (Pos1) and End (Ende) move the cursor to the beginning and the end of a line, respectively. Pressing Home a number of times moves the cursor between the beginning of the line and the first letter in the line.

As of CLUCalc v4.2 there is now also a context menu, when you press the right mouse button in the editor window, that allows you to quickly enter standard CLUScript constants into the script text."; function tShowHide(id, show) { var s = document.getElementById("desc"); if ((s.innerHTML.length<=212 || show==1) && show!=2) { s.innerHTML = fDesc[id]; if (document.getElementById('m1')) document.getElementById('m1').style.display='none'; if (document.getElementById('m2')) document.getElementById('m2').style.display='none'; if (document.getElementById('more_txt')) document.getElementById('more_txt').style.display='inline'; } else { s.innerHTML = ''; } }