Marc Boulanger
This paper presents an overview of an ArcInfo based multiple attribute polygon labelling application (Positext), for natural resources inventory mapping. Description of the software, the business domain it is aimed at, software design, functions, operation, and operational capacities are also presented. Finally the benefits are further described.
What is Positext?
In natural resources inventory mapping production, up to 50% of production time is spent on text positioning and text justification within corresponding polygons to be described (ex.: 1:20 000 or 1:50 000 inventory forest maps, geological survey maps...). This process is often referred to as "multiple attribute polygon labelling". Usually, textual information resides in an external RDBMS and is linked (through each polygon tag) to a corresponding geometric polygon file in a GIS. One major task is to automate as much as possible the cartographic placement of a series of attribute values in an order previously defined by the user. Positext is an application software specifically addressing this task through multiple user defined iterations (on all polygons of an entire map).Positext business domain
Major potential users of Positext are government agencies/departments, companies as well as consultants involved in natural resources inventory mapping. Two business sectors are more specifically targeted: forestry and geological surveys. Pulp and paper companies, forest engineering consulting firms, forestry departments, non government agencies involved in forest inventories and monitoring, geological surveys governmental agencies as well as other "annotation oriented" producers are prime users of Positext. In addition, Positext can also benefit to other sectors like agriculture, environment and, in general, to any "polygonally depicted" domains.The designer's job behind Positext
In mapping production involving polygonal thematics, Positext automates the "multiple attribute polygon labelling" task, through an interational process. Prior to initiate the task, minimal data preparation needs to be done. Maps to be processed must be put in a specific directory. External database attribute values must be converted into an ascii file, which will also contain tags of the polygons to be processed. An ascii file describing the database structure must also be creaded (at least for user selected attribute fields to be processed). When this data preparation is completed, the iterational process can begin. For each iteration, the software allows the user to choose which combination of attribute fields will be processed (called "multiple attribute value strings" or MAVS). Then it determines the dimensions of "text annotation rectangles" used to position the selected attribute values to be written inside each polygon. Dimensions of rectangles are automatically determined from user defined parameters such as character hight, width, spacing, rotation angle, rotation angle increment, multi-line annotation... and the exact lenght of the actual concatenated attribute values. Once these dimensions are known for each polygon, Positext searches for available space within each one of these polygons in order to position corresponding "annotation rectangles". The software prevents overwriting on existing symbols, texts, polygon limits, or islands belonging to reference themes already annotated. Two algorythms are used by Positext. With the first algorythm, the software attempts to position the annotation rectangles related to each polygon's MAVS on a single annotation line, unless otherwise defined. For each polygon, the positioning algorythm will try to position the annotation rectangle in the center of the polygon. If unable to do so, it will then work downwards and from left to right. When available space is found, the annotation rectangle will be centered between the last and next "obstacle". Such an obstacle may be an existing text, symbol, island or polygon boundary. When unable to position the MAVS as a single annotation line, Positext switches to the second algorythm, which allows for multiple annotation lines. For all polygons where it was impossible to position corresponding annotation rectangles using the multi-line algorythm, the software "traps" these polygon tags into a separate file for further annotation processing under refined user parameters. It is at this point in time that the next iteration will be initiated, using for example a smaller font size, a shorter character width and so on. When Positext is unable to automatically position annotation rectangles anymore, the user can then make the software to generate the annotation map based, as previously mentioned, on each actual attribute value string at the exact location of each polygon computed annotation rectangle. For these polygons which size or geometry did not allow to position annotation rectangles using either of the two algorythms, software options allow the user to display these unresolved polygon MAVS in "red color" indicating a need for subsequent and final manual screen editing. Finally, the software generates the ArcInfo binary annotation map.Positext current functions
In interactive mode, major functions are: