19 |
</author> |
</author> |
20 |
</authorgroup> |
</authorgroup> |
21 |
<copyright> |
<copyright> |
22 |
<year>2003, 2004</year> |
<year>2003, 2004, 2005, 2006</year> |
23 |
<holder>Intevation GmbH</holder> |
<holder>Intevation GmbH</holder> |
24 |
</copyright> |
</copyright> |
25 |
<revhistory> |
<revhistory> |
26 |
<!-- comment this first revision out when releasing a real version --> |
<!-- comment this first revision out when releasing a real version --> |
|
<!-- |
|
27 |
<revision> |
<revision> |
28 |
<revnumber>CVS version $Id$</revnumber> |
<revnumber>SVN version $Id$</revnumber> |
29 |
<date></date> |
<date></date> |
30 |
<revremark>Under development.</revremark> |
<revremark>Under development.</revremark> |
31 |
</revision> |
</revision> |
|
--> |
|
32 |
<revision> |
<revision> |
33 |
<revnumber>1.0.0</revnumber> |
<revnumber>1.0.0</revnumber> |
34 |
<date>22-Jan-2004</date> |
<date>22-Jan-2004</date> |
66 |
<chapter><title>Introduction</title> |
<chapter><title>Introduction</title> |
67 |
<para> |
<para> |
68 |
Thuban is an interactive geographic data viewer. |
Thuban is an interactive geographic data viewer. |
69 |
It has been developed because there was no simple interactive |
Its development had been started because there was no simple interactive |
70 |
viewer for geographic information available as Free Software. Thuban is |
viewer for geographic information available as Free Software. Thuban is |
71 |
written in Python and C++ and uses the wxWindows library allowing it to |
written mainly in Python and uses the wxWidgets (former wxWindows) |
72 |
|
library allowing it to |
73 |
run on many different platforms, including GNU/Linux and Windows. |
run on many different platforms, including GNU/Linux and Windows. |
74 |
</para> |
</para> |
75 |
<para> |
<para> |
83 |
</para> |
</para> |
84 |
<para> |
<para> |
85 |
Thuban arranges a session in a hierarchy. A session contains a map which |
Thuban arranges a session in a hierarchy. A session contains a map which |
86 |
consists of layers. Each layer represents one kind of data set. For |
consists of layers. Each layer represents a data set. For |
87 |
instance, there may be a layer for roads and another layer for buildings. |
instance, there may be a layer for roads and another layer for buildings. |
88 |
These layers can either be vector shapes or images. |
These layers can either be vector shapes or images. |
89 |
</para> |
</para> |
396 |
<listitem><para>French</para></listitem> |
<listitem><para>French</para></listitem> |
397 |
<listitem><para>German</para></listitem> |
<listitem><para>German</para></listitem> |
398 |
<listitem><para>Italian</para></listitem> |
<listitem><para>Italian</para></listitem> |
399 |
|
<listitem><para>Portuguese (Brazilian)</para></listitem> |
400 |
<listitem><para>Russian</para></listitem> |
<listitem><para>Russian</para></listitem> |
401 |
<listitem><para>Spanish</para></listitem> |
<listitem><para>Spanish</para></listitem> |
402 |
</itemizedlist> |
</itemizedlist> |
408 |
LC_ALL=fr_FR for the french language support). Please check your |
LC_ALL=fr_FR for the french language support). Please check your |
409 |
systems documentation for details and supported settings. |
systems documentation for details and supported settings. |
410 |
Specifiying LC_ALL on the command line while launching thuban |
Specifiying LC_ALL on the command line while launching thuban |
411 |
allows appication specific language settings. |
allows appication specific language settings: |
412 |
</para> |
</para> |
413 |
|
<programlisting> |
414 |
|
LC_ALL=fr_FR thuban.py |
415 |
|
</programlisting> |
416 |
|
|
417 |
<para> |
<para> |
418 |
MS Windows users have to specify the language to be used via the control |
MS Windows users have to specify the language to be used via the control |
484 |
If a session is already loaded and has been modified without |
If a session is already loaded and has been modified without |
485 |
being saved a prompt will ask if the current session should |
being saved a prompt will ask if the current session should |
486 |
be saved. A new session consists of an empty map with no |
be saved. A new session consists of an empty map with no |
487 |
layers and no tables. |
layers, no tables and no projection. |
488 |
</para> |
</para> |
489 |
</section> |
</section> |
490 |
|
|
498 |
for a Thuban Session file. Thuban session files end with |
for a Thuban Session file. Thuban session files end with |
499 |
<varname>.thuban</varname>. Selecting a file a clicking |
<varname>.thuban</varname>. Selecting a file a clicking |
500 |
<guibutton>OK</guibutton> will load the session into Thuban. |
<guibutton>OK</guibutton> will load the session into Thuban. |
501 |
|
</para> |
502 |
|
|
503 |
|
<para> |
504 |
If a session is already loaded and has been modified without |
If a session is already loaded and has been modified without |
505 |
being saved a prompt will ask if the current session should |
being saved a prompt will ask if the current session should |
506 |
be saved. |
be saved. |
507 |
</para> |
</para> |
508 |
|
|
509 |
|
<para> |
510 |
|
Thuban provides a path recovery feature: If a (shape) file referenced |
511 |
|
in a Thuban session cannot be found at the specified location, the user |
512 |
|
is prompted a file dialog. Here a new location can be selected for the |
513 |
|
currents layer data source. Cancelling the dialog removes the layer |
514 |
|
from the session. If a new location has been selected, Thuban checks |
515 |
|
this again, if further layers data sources are missing. The user is |
516 |
|
informed about this and can accept or cancel the suggestion. |
517 |
|
</para> |
518 |
</section> |
</section> |
519 |
|
|
520 |
<section><title>Saving a Session</title> |
<section><title>Saving a Session</title> |
523 |
<menuchoice> |
<menuchoice> |
524 |
<guimenu>File</guimenu> |
<guimenu>File</guimenu> |
525 |
<guimenuitem>Save Session</guimenuitem> |
<guimenuitem>Save Session</guimenuitem> |
526 |
</menuchoice>. A dialog box will open allowing the user to browse |
</menuchoice>. |
527 |
|
In the case the session is not a new and unsaved one, |
528 |
|
the corresponding file is updated with the current session |
529 |
|
data. |
530 |
|
In the case the current session is a new one and yet unsaved |
531 |
|
a dialog box will open allowing the user to browse |
532 |
the file system and select a place to save the session. Thuban |
the file system and select a place to save the session. Thuban |
533 |
sessions should be saved under a name ending in |
sessions should be saved under a name ending in |
534 |
<varname>.thuban</varname>. If the file already exists the user |
<varname>.thuban</varname>. If the file already exists the user |
624 |
<guimenu>Map</guimenu> |
<guimenu>Map</guimenu> |
625 |
<guimenuitem>Add Database Layer</guimenuitem> |
<guimenuitem>Add Database Layer</guimenuitem> |
626 |
</menuchoice>. |
</menuchoice>. |
627 |
A dialog with two is list is opened. The left list displays all |
A dialog with two lists is opened. The left list displays all |
628 |
database connections currently open for the session. You can retrieve |
database connections currently open for the session. You can retrieve |
629 |
a list of available layers from the selected database which is |
a list of available layers from the selected database which is |
630 |
displayed on the right hand. From this list one layer can be selected, |
displayed on the right hand. From this list one layer can be selected, |
1192 |
<section><title>Value</title> |
<section><title>Value</title> |
1193 |
<para> |
<para> |
1194 |
The Value column of the classification table is the value that will |
The Value column of the classification table is the value that will |
1195 |
be matched when the map is being drawn. The type of data that can |
be matched when the map is being drawn. The type of filter that can |
1196 |
entered into this field depends on the type of data of the |
entered into this field depends on the type of data of the |
1197 |
classification field. |
classification field: |
1198 |
</para> |
</para> |
1199 |
<para> |
<para> |
1200 |
If the field is of type Text, anything entered |
If the field is of type Text, anything entered |
1201 |
into the field is valid. The text will be compared literally to the |
into the field is valid. By default the text will be compared |
1202 |
value of the shape attribute, including case sensitivity. |
literally to the |
1203 |
|
value of the shape attribute, including case sensitivity. |
1204 |
|
Alternatively the comparison can be based on regular experessions. |
1205 |
|
Right-click on the row label to open a popup menu with the options |
1206 |
|
<guibutton>Singleton</guibutton> (literal comparison) and |
1207 |
|
<guibutton>Pattern</guibutton> (regular expressions). |
1208 |
|
</para> |
1209 |
|
<para> |
1210 |
If the type is Integer, then any valid integer may be entered. In |
If the type is Integer, then any valid integer may be entered. In |
1211 |
addition, with special syntax, a range of values can be entered. |
addition, with special syntax, a range of values can be entered. |
1212 |
A range from <varname>start</varname> to <varname>end</varname> |
A range from <varname>start</varname> to <varname>end</varname> |
1217 |
Decimal. They represent any rational number and can be used in |
Decimal. They represent any rational number and can be used in |
1218 |
ranges as well. |
ranges as well. |
1219 |
</para> |
</para> |
1220 |
</section> |
</section> |
1221 |
<section><title>Label</title> |
<section><title>Label</title> |
1222 |
<para> |
<para> |
1223 |
By default, the text that is displayed for a group in the legend |
By default, the text that is displayed for a group in the legend |
1680 |
</para> |
</para> |
1681 |
|
|
1682 |
<section><title>Stable extensions</title> |
<section><title>Stable extensions</title> |
1683 |
<para> |
<para> |
1684 |
These extensions provide extra-functionality to Thuban |
These extensions provide extra-functionality to Thuban |
1685 |
that has not (yet) been integrated in the main application. |
that has not (yet) been integrated in the main application. |
1686 |
They are considered to be free of bugs, but may be |
They are considered to be free of bugs, but may be |
1687 |
further polished with helpful user interactions. |
further polished with helpful user interactions. |
1688 |
</para> |
</para> |
1689 |
<section><title>gns2shp</title> |
<section><title>gns2shp</title> |
1690 |
<para> |
<para> |
1691 |
This tool converts data of the Geospatial Names Server |
This tool converts data of the Geospatial Names Server |
1692 |
(GNS, see <ulink url="http://www.nima.mil/gns"/>) |
(GNS, see <ulink url="http://www.nima.mil/gns"/>) |
1713 |
is included in the directory |
is included in the directory |
1714 |
<literal>Extensions/gns2shp/test</literal>. |
<literal>Extensions/gns2shp/test</literal>. |
1715 |
</para> |
</para> |
1716 |
</section> |
</section> |
1717 |
|
<section><title>SVG Export</title> |
1718 |
|
<para> |
1719 |
|
Map and legend can be exported separately in the |
1720 |
|
Thuban-Map-SVG format. |
1721 |
|
You get files that comply with |
1722 |
|
the Scalable Vector Graphics (SVG) 1.1 Specification |
1723 |
|
and can be read by many vector drawing applications. |
1724 |
|
</para> |
1725 |
|
<para> |
1726 |
|
Goal of svgexport is to provide |
1727 |
|
the start of a printing pipeline for Thuban. |
1728 |
|
For this purpose the written Thuban-Map-SVG files |
1729 |
|
contain information that can be used in postprocessing. |
1730 |
|
Typically a general vector drawing application is |
1731 |
|
more powerful then a geographic information viewer; |
1732 |
|
e.g. having much fancier symbols and fonts. |
1733 |
|
Also users benefit much more when learning to use a |
1734 |
|
more general application they can also use for other |
1735 |
|
tasks. So the charming idea is to enable |
1736 |
|
the drawing application to postprocess a Thuban maps. |
1737 |
|
So thee xtra information in the format will make it |
1738 |
|
possible to export from Thuban and if a few geoobjects |
1739 |
|
change, and keep the general layout and style |
1740 |
|
of the full map in the vector drawing appplication. |
1741 |
|
</para> |
1742 |
|
<para> |
1743 |
|
Markus Rechtien has developed a prototype of this |
1744 |
|
printing pipline as his Diplom thetis, showing |
1745 |
|
the feasability of Bernhard Reiter's concept. |
1746 |
|
Scripts exist for the drawing application Skencil |
1747 |
|
(<ulink url="http://www.skencil.org"/>). |
1748 |
|
</para> |
1749 |
|
<para> |
1750 |
|
Technical notes: the names of the layers are used |
1751 |
|
as base for ids within the SVG format. |
1752 |
|
If you try to export with two layers having |
1753 |
|
the same name, you will get a name clash error. |
1754 |
|
Just change one of the layer names and try again. |
1755 |
|
</para> |
1756 |
|
</section> |
1757 |
</section> |
</section> |
1758 |
<section><title>Experimental extensions</title> |
<section><title>Experimental extensions</title> |
1759 |
<para> |
<para> |