Technology
by Henri Van Oosterwyck, Eurosense, Belgium
EUROSENSE, distributor of Esri for Belgium and Luxembourg, has developed together with CEVI, an IT developer for local governments, a suite of GIS products, called LOGIS. These are based upon ArcView GIS 3.0.a to support the administrative as well as the decision processes of local governments. LOGIS has been developed as a shell on top of ArcView. The foundation of this shell consists of LOGIS BASICS and DRAW. LOGIS BASICS adds base functionalities to ArcView for every civil servant such as the creation of a map library, the declaration of dedicated map views, the addition of a bird's eye view, the hard cut of themes, the conversion from polyshapes into polylines, the creation of overlays and buffers, and some supplementary import and export tools e.g. DXF. LOGIS BASICS also takes care of the management and the administration of the local GIS ( maps/data as well as tools) LOGIS DRAW introduces CAD Light type functionalities to ArcView. Map updating, the creation of zonal planning maps, registration of the sewer system etc. are enabled in an easy way without the need for real CAD software and with concern for the GIS needs.
Fig. 1 : The municipal data network
Belgium has some 6OO municipalities. Most of them are rather small; an average surface of 5 000 ha and a number of inhabitants between 10 000 to 30 000. The local administrations are therefore rather small. Their staff of civil servants is skilled for the day-to-day administration.
Today their only affinity with maps consists in the use of analogue cadastral maps and analogue zonal maps. The need for the automation of the Technical Department of the Municipal Administration urges for the introduction of a GIS. From their point of view automation also means the introduction of CAD, although real technical conceptional work is delegated to independent private engineering offices. So bringing together their needs, EUROSENSE , the distributor of Esri in Belgium and Luxemburg, has developed together with CEVI, an IT developer for local governments, the LOGIS software solution. LOGIS has been conceived as a shell on top of ArcView GIS 3.0.a . LOGIS itself consists of a LOGIS BASICS and DRAW extension forming the base shell, of several independent extensions sitting on top of LOGIS BASICS and DRAW, and of course of ArcView GIS 3.0.a for specific tasks such as cadaster, urban planning, technical department, traffic/police, environment etc…They create different applications in direct relation with administrative data, protocols and software applications residing on the municipal computer network.
Fig. 2 : The building block concept of LOGIS
The purpose of this paper is to focus on the LOGIS BASICS and DRAW extensions. In another paper of this conference, the LOGIS TRAFFIC/POLICE extension will be presented.
Both LOGIS BASICS and DRAW are developed to be the essential extensions on top of ArcView to create a suite of tools for the local government.
LOGIS BASICS can be subdivided into 4 parts. The first part is dedicated to the system management. A second part provides the individual civil servant user with tools to manage his own map library, map views, zoom factor, localised geocoding etc. The third part adds some functionality to ArcView GIS tools like scalability of text, rotation of vectormaps, hard cut, overlay and buffering. The fourth part adds some export functionalities : ArcInfo, DXF,…
Parts of this BASICS extension are real ArcView extensions, other parts like the system management part are written in Visual Basic and run a separate program to define the user profiles, the system map library, …. These settings are kept in separate files on the system. For some operations the VB script sends direct calls towards ArcView.
LOGIS DRAW is a real extension to ArcView. It enables ArcView to perform like a "CAD LT".
The LOGIS BASICS extension is operated through the LOGIS template, which acts as a separate application window. This template adapts itself to the active document type, view, tables, lay-out.
Fig. 3 : a screen dump of LOGIS
(View 1 : "Gebouwen" = Buildings, "Wegassen" = Road axes; on the right : "Instellingen" = Settings, "Beheer..." = Management...)
The first part of LOGIS BASICS is intended for the system manager/GIS co-ordinator. He is able to deploy certain extensions to certain civil servant groups. Some of them will have the ability to edit maps using the LOGIS DRAW; others won’t have this possibility and will only be allowed to look at the cadastral data with LOGIS CADASTER etc. Once a user starts up his LOGIS session from his ArcView, there will be a call over the network to look for the actual deployments for this user, to update his version of LOGIS as well as to load the actual map library.
Fig. 4 : The extension of the file pull down menu with the management tools
Furthermore the GIS co-ordinator is able to set up the reference map library. These maps will be controlled from the server and will be accessible to every user. (Every user may also establish his own map library, which will reside on his PC and will live on top of the reference library). For map series it is sufficient to read only one mapsheet, the system will be able to look for all the other mapsheets based on their characteristics.
The second part of LOGIS BASICS tools is intended for the user to ease his management of data. The map library helps him to pick the right maps for his actual task. An additional adds button goes directly to the map library. Also with a supplementary edit button, the system will automatically generate a back up copy of the file; if the system fails, the back up can still be used. Additionally, a search for addresses is added, the system will automatically extract the relevant maps out of the library. On top of this, the user can also name different views as "sights", e.g. the crossing of Churchstreet and Schoolstreet, or Townhall. These sights can be used to focus immediately on these map extents. Moreover, the user can also select all active themes within his view and zoom in or out with a fixed factor which is easy to define. These settings can be changed using the setting menu on top of the LOGIS template. An overview map can also be added.
The third part adds some functional tools to ArcView. By clicking a button the user can define whether the label will be scalable or not. He has also the possibility to rotate the vector information for a given angle; this can be very interesting to fit maps on certain paper formats. The following operations on themes are possible: cutting (selection with straight boundaries), converting a polyshape into a lineshape and converting a lineshape into a (node) pointshape. Operations between two themes are also enabled: overlay (cross-section) or overlay (global) and buffering.
Fig. 5 : The appearance of the LOGIS template
The view document the tables doc. the lay out doc
(Translations: "Instellingen" = Settings, "Beheer" = Management, / "Terug" = Back, / "Versie" = Version, "Beheer Kaartbibliotheek" = Map Library Management, "Aanmaken kaartzicht" = Create Mapview, "Zoomfactor" = Zoom Factor, "Overzicht thema" = Theme Overview, "Systeembeheer" = System Management, / "Exporteer" = Export, "Regressie" = Regression, / "Maak template" = Create Template, "Lees template" = Read Template
The fourth part has tools for import and export of data e.g. ArcInfo and DXF. It automatically creates surface and length data and converts several themes into one theme.
Finally, the user can toggle the menu bar in function of the choice of extensions he wants to use.
Overview of the newly developed functionalities
Fig. 6 : The DRAW menu bar
Before drawing:
: A new button has been added in the view environment.
This button will copy the active themes to the Draw environment. The same
button exists in the new Draw environment and lets you copy active themes
back to a ‘normal’ view environment. Now the draw functionalities
are exported to an extension, the need for copying the themes towards a
separate drawing environment has gone.
It is also advisable to start up a multiple set of new help themes to create your intended new theme or to edit an existing theme. This additional set of help themes (one for points, one for lines and one for polygons) facilitates the creation of the new theme; complex constructions can be stored in these help themes and the results can be copied into the new theme.
Settings menu:
By using the 'Settings' menu a number of items can be altered to suit you best.
The color of the Draw line, of its starting and end node, and whether you want to see the vertices on the Draw line, can be changed. This last option could influence the performance of the drawing module.
The option precision digits sets the number of precision digits used on dimension lines and in messages, arc resolution sets the gap between successive vertices on an arc. This is to improve performance and to reduce the number of vertices in the Draw line.
There are two menu items with reference to snapping (i.e. correspondence of new points with already existing points. Snapping is automatically performed on the active themes and on the Draw line).
The first item is the snap order (also accessed by pressing the F5 key). This sets the order in which you want to perform snapping. You have the option to choose between snap on points, snap on intersections or performing a near function. Pick the choice you want first and continue until you are satisfied; when you want to stop, simply click the Cancel button. Finally, you will be asked whether you want to keep to your initial point if no snap point is found.
Shift : shows you the current settings of the snap order.
The second item concerns the way you want to use the snap tolerance. If you want to set this tolerance relative to your view scale, it will be set in pixels.
Text height sets the height of the text on the dimension lines. This can be set in the view map units or, in case these are unknown, in millimeters on the plot.
Shift : recalculates a default height.
The split dimlines option is made to split the dimension lines into an x-axis and a y-axis line.
The right angle option restricts the angles in the Draw line to right angles, which means that the drawing module will automatically change the angle of a new segment to an angle of 0, 90, 180 or 270.
The last option, Flash line, is not a setting but will flash a line between the last Draw point and the current location of the mouse pointer. This option is also accessible through the F9 key.
These are the startup settings:
End node : Red
Draw line : Red
Starting node : Blue
Show vertices : No
Precision : 3
Arc resolution : 6 degrees
Snap order : snap on the nodes, keep the point.
Snap tolerance : 3 pixels
Text height : empty
Split dimlines : No
Right angle : No
Flash line : -
: This button sets the snap tolerance.
The snap tolerance is the tolerance limit that is used for snapping on objects. If no theme is active, no snapping will be performed. This snap tolerance is always set in map units, but when it is set relative to the view scale it will automatically be converted into pixels. The current snap tolerance can be viewed in the settings menu.
(Note : For tracing purposes, try setting the snap tolerance to a smaller radius. This will give a better result.)
Shift : By pressing the control key when clicking in the view, the snap tolerance can be entered numerically.
Ctrl : Flashes a circle, which shows the current snap tolerance
Drawing tools :
All tools add points to the Draw line, unless otherwise indicated.
Some tools are listed as columns in a tool menu. To use these tools, click and drag the mouse pointer to the tool you require.
: searches for a point, possibly defined by snapping. If the ‘right angle’ option is set , the angle of the newly created segment will be adjusted to an angle of 0 - 90 -180 -270 degrees, according to the nearest value.
: performs the same action as the tool above, but the length and angle of the new line section are shown and can be modified.
The angle value of this line section is the angle with reference to the reference line (see below), if such a line is present. If not, the standard coordinate system is used.
This tool needs one point of the Draw line, before being available.
The resulting angle will be adjusted, if the ‘right angle’ option is set.
: searches for a point and shows its coordinates. These can then be modified to position the point according to precise coordinates. The resulting angle will be adjusted, if the ‘right angle’ option is set.
: defines a point with reference to a second point.
To do so, first choose a point from which a new point can be defined by means of coordinates.
A dimension line will be created if the measurement function is active.
Standard coordinate system: y axis
x axis
In case a reference line has been defined, the reference line is represented as the x axis. The positive sense of the x axis is always to the right, and always upward for the y axis.
Example: This tool is very useful e.g. for following a house front line. To do so, first draw a reference line that is parallel to the house front. Afterwards, a line can be drawn at exactly 0.5 m of the house front line.
This is done as follows: click on the starting point of the house front. Introduce the following coordinates: x : 0, y: ± 0,5; this sets the first point. Define a similar point at the end of the line. This creates a line that is parallel to the house front line at any chosen distance.
: defines a point by calculating the intersection points of two construction circles.
To do so, proceed as follows :
- Draw the radius of a circle where the starting point can snap on the active layers.
- Draw the next construction circle in the same way. The computer then calculates the intersection points between both circles. If there are no such points found, then the second circle will be erased and you can draw a new one.
- One of both calculated intersections can be chosen as a new point for the Draw line.
When "measuring" is active there will be automatically 2 new dimension lines, from the center of the circles to the new drawing point. Shift : deletes existing construction circles and points.
: creates a circular arc.
To achieve this result you :
- Click in the view. Two circles will be drawn : from this point and from the last point of the Draw line, with the same radius (which you have to enter in a message box). The intersection points are then calculated.
- Choose one of these points and a circle will be drawn from this center through both other points.
- Now indicate the direction in which you want to draw the circular arc from the drawing point to the first user point.
Shift : removes existing construction elements.
: creates a circular arc (2)
To achieve this result, a circle will be drawn through the last segment of the Draw line.
- First indicate the direction in which you want to add the arc,
- then indicate the end point of the new arc.
Shift : removes existing construction elements.
: produces a reference line.
There are two ways to produce a reference line :
- Choose a line from an active theme as a reference line by simply clicking the mouse pointer on that line. If multiple lines are selected, you have to make a selection of the dotted lines.
- Draw a reference line: click on a starting point, then drag to draw the line, release the mouse button on reaching the end of the line.
Shift : deletes an existing reference line.
: searches for a new point, perpendicular to a selected line section.
: extends the Draw line parallel to a selected line section of a figure or a section of the Draw line. The point of the selected line section which is closest to the point indicated will be taken as a starting point of the parallel line.
Information on the new line section is shown and can be modified.
: extends or trims the Draw line in the same direction up to a selected line.
This tool does not create a new point, but moves the last or first point.
: searches for a point on a selected line section of a figure.
Upon clicking on a line section, its length is shown. It is assumed that the point nearest to the position indicated is the starting node. The new point will be created at the entered distance from the starting node.
: defines the intersection of 2 figures.
First a line section in the active theme has to be chosen (that line section is highlighted in yellow). If required, the active theme can be changed before choosing the second line section. The intersection of both line sections is automatically added to the Draw line.
Shift : removes the existing selection.
Tools to edit the Draw line :
: divides an indicated line section of the Draw line in equal parts.
On pressing the Shift key, the size of the line sections will be asked. It is assumed that the starting node is the point nearest to the position indicated by clicking when selecting the line section.
: divides an indicated section of the Draw line.
By drawing a line that intersects with the Draw line, a new Draw point will be created on the intersection of both lines.
: moves a node of the Draw line.
This is done by drawing a line from the chosen node to the desired position.
Shift : modifies the offset numerically, checking the existence of a reference line.
Ctrl : performs the displacement even when no end snap point has been found.
: moves the Draw line.
The Draw line is moved by drawing a line from one of the nodes of the Draw line representing the desired displacement.
Shift : modifies the offset numerically, relative to the reference line if present.
Ctrl : performs the displacement even when no end snap point has been found.
: deletes a point in the Draw line.
Points in the Draw line can be deleted by clicking on each separate point to be deleted or by creating a rectangle within which all points are then deleted.
: deletes all points in the Draw line that follow a selected point of the Draw line.
Tools to copy segments of the active layers :
: shows the possible connection of the Draw line to figures of the active themes.
The snap tolerance is used here as dangle tolerance to select nearby lines.
If several possibilities exist, these are highlighted in pink. One of these possibilities can be chosen. The Draw line is then extended with the chosen item. If only one choice is possible, the Draw line is automatically extended with that choice.
(Note : this tool demands a lot of your computer. By turning off the Draw line vertices you can increase the Drawing module’s performance.)
Shift : removes the pink selection lines.
Ctrl : zooms in on the possible selection lines.
: adds a selected line to the Draw line.
The selected line is highlighted in yellow. Its starting node is represented by a green square, the end node by a smaller, red square.
If a closed line is converted (e.g. a circle or a polygon), the starting and end node are situated one on top of the other and two purple selection lines appear to indicate the direction in which the line has to be added. To do so, select one of both purple lines while pressing the Shift-key.
Alt : the selected line is deleted.
Ctrl : zooms to the selected line.
Shift : the selected line is added to the already existing Draw line.
: moves the starting node (green) of the selection line.
Alt : starting and end node are switched.
Ctrl : zooms to the selected line.
Shift : the selected line is added to the Draw line.
: moves the end node (red) of the selected line.
Alt : starting and end node are switched.
Ctrl : zooms to the selected line.
Shift : the selected line is added to the Draw line.
e.g. : The three tools above are ideal to trace arcs or circles. An arc is generally represented as a succession of straight line sections. The input of small, successive sections is much easier using these functions.
Other tools and buttons :
: converts a shape from the editable theme into a Draw line.
This Draw line can be adapted. No new shape will be created when closing the Draw line; the original shape will be adapted (see below at "closing the Draw line"). The original shape does not disappear if the Draw line is entirely deleted!
: splits a multipart object. The data that belongs to this figure will be copied to the newly created records. The area, perimeter and length will be recalculated, if present.
Note : To create a multipart object you can still use the "merge graphics" option in ArcView. This option has been altered so that the data in the record of the first selected object is copied to the new multipart object. "Area" and "Perimeter" or "Length" fields are also automatically updated.
If this results in an "island" object (an object which contains another object completely), it will add 2 records, thus including the island. If Shift is pressed, it will keep only the thorus around it.
: shows information on the selected polygon, point, or line from the active theme. This information can be altered and then rewritten to the record.
: shows vertices of an active theme.
This tool will show all the vertices in a rectangular area of the active theme. To remove these vertices, simply click in the view window, or use this tool in combination with the SHIFT key.
Note : We recommend to use this tool for small areas only, and to remove the vertices if you do not need them any longer.
: zooms in on the Draw line.
Shift : zooms on the last point of the Draw line.
: shows information regarding the Draw line.
: searches a point relative to the angle of the last segment of the Draw line.
Note : the Draw line should consist of at least 2 points.
: draws a circular arc through the last 3 nodes of the Draw line.
Shift : draws an elliptical arc (i.e. a transformed quarter of a circle) through these nodes.
: undoes the last drawing action.
Shift : removes the Draw line.
: reverses the order of vertices of the draw line.
: uses "blocks" from a library.
These blocks can be used in the following ways :
- if there is only one Draw point : the shape will be reproduced.
- if there is only one segment : the shape will be drawn according to this line and will be equally rescaled in the x and y directions.
- if there are 2 segments : the shape will be drawn according to the first two segments with different x and y scales.
Note : the block is directly added to the editable theme, there will be no resulting Draw line here. This tool is only available when there is a Draw line with at least 1 node and with a maximum of 3 nodes.
To build this library, a theme has to be present with a "Name" field in its table. From this library a shape can be selected. These blocks can also be viewed in a different view.
Shift : sets a scale factor instead of distances.
Ctrl : selects a new block from the library.
: closes the Draw line.
When editing a polygon theme the starting node will be automatically connected to the end node. A new record will be added to the editable theme, unless you have converted an existing shape to the Draw line (see Convert). If the fields "Area" and "Perimeter" or "Length" were found in the themes table, they will be automatically updated.
This tool is only available if a certain number of nodes on the Draw line is reached. This number depends on the type of theme. A theme consisting of points only needs 1 node, a line theme 2, and a polygon theme 3 nodes.
: calculates or recalculates the perimeter, area or length of each record in the theme. If these fields do not exist, they will be created by this tool.
Dimensioning :
: This button switches dimensioning "on" or "off".
When dimensioning is activated for the first time, an extra theme will be created. This theme will contain the dimension lines.
Attention : When you delete the dimension line theme and after a while decide to continue measuring, the program will prompt you for this theme again.
After switching on dimensioning (this is indicated in the title of the view window), you can access extra buttons and tools :
: this tool creates a dimension line. This line can snap to the active layers, except to the measurement theme.
Shift : enter a text for the newly created line.
: this tool draws a dimension line with the starting node snapped on a point of the active themes perpendicular to a chosen line segment of an active theme.
Shift : enter a text for the newly created line.
The dimension lines can be modified with these following functions, which can only be accessed when the dimension theme is active.
: deletes a dimension line and its text
Shift : deletes all dimension lines.
: draws the text on one dimension line.
Shift : the text on one dimension line will be deleted.
: moves a dimension line and its text according to the indicated direction.
: changes the text on one dimension line.
Shift : the length of the dimension line will be recalculated so it can be re-used as a dimension text.
: draws text on all dimension lines.
If this text is a number which represents the length of the corresponding line, it will add the map unit.
Shift : all texts on the dimension lines will be deleted
When drawing text on the dimension lines the module will check whether the height of the text is defined in the settings menu. If it is not yet defined, it will prompt you to do so. It is also possible to split the dimension lines according to the axes that were active during the input of the dimension line (see reference line). The text on split dimension lines is always the projected length of the dimension line.
Henri Van Oosterwyck
Geographer – Regional Planner, Project Manager
Eurosense Technologies N.V.
NerviÎrslaan 54
B-1780 WEMMEL
BELGIUM
Tel. : + 32 2 460 70 00
Fax. : + 32 2 460 49 58
Email : info@eurosense.be
Eurosense is an ISO 9001 certified company
Copyright © 1997 Eurosense Technologies NV. All rights reserved. Reproduction prohibited without prior written consent of Eurosense. EurosenseÆ and LogisÆ are registered trademarks of Eurosense. Other company names and trademarks herein are the property of their respective companies. LogisÆ is a product of Eurosense Technologies NV and CEVI. Trademarks provided under licence from Environmental Systems Research Institute, Inc.