Full text: Proceedings, XXth congress (Part 4)

  
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B4. Istanbul 2004 
the labeling process. The structure is designed to allow an 
efficient labeling in a further step (section 5). In other words: it 
will react promptly to the users interaction during the 
interaction phase and delivers appropriate amount of detailed 
data on labeling requests. These kind of data-structures are 
called reactive data-structures (Oosterom, 1990) — in our case 
*reactive conflict graph'. 
For the data-structure we are using the well-known graph 
concept (Harary, 1972). A graph consists of nodes and edges; an 
edge connects two nodes. In our case each node represents one 
object to be labeled and each edge a potential conflict between 
both connected nodes or rather objects to be labeled. A potential 
conflict is an overlapping between two labeling spaces. 
reactive conflict graph edge 
  
    
  
a] 
small MA recor oie 
üt 3 i , i SC 
conflict free potential conflict conflict free 
no edge edge no edge 
no 2 conflict partners avallable no overlapping 
[1owerBound 
conflict between both nodes | 
small sus Maas puce Cu 
NR S 
scale 
overlapping/conflict]no overlapping 
Jeutting scale 
    
‘not labeled labeled - ae : e ‘scale 
deselected 
Il large 
not labeled 
labeled scale 
deselected 
deselection scale 
deselect 
Figure 10 A conflict edge attributed by a scale interval (top 
axis) representing the conflict range. The lower 
bound is derived from the larger deselection scale of 
the involved nodes (nodel and node2 — two lower 
axes). The upper bound is the cutting scale between 
the labeling spaces of the involved nodes (second 
axis from top). 
  
  
The characteristic of a conflict is discussed in subsection 3.1 in 
detail and visualized in Figure 4. It occurs in a scale-interval. 
The upper bound of the interval is the cutting scale and can be 
calculated as described in subsection 3.2. 
The deselection scale for objects is determined by the 
deselection criterion that is developed for the different object 
types in subsection 3.3. This deselection-scale of each object is 
passed to the involved potential conflicts (Figure 10). A 
potential conflict disappears beneath the maximum of the 
deselection-scales of the both incident objects. 
As you discovered, a procedure to generate the data-structure 
was not yet mentioned. In a naive approach, a potential conflict 
would be assumed between all pairs of objects and in a further 
step thinned out depending on the scale-interval of the conflict 
edges. This would lead to a high running-time because a lot of 
unnecessary conflicts would be assumed and afterwards deleted. 
To avoid these disadvantages we developed an algorithm to 
speed up the generation of the data-structure (Algorithm 1). The 
data-structure is built up depending upon the object's priority. It 
starts with the least important object and considers possible 
conflicts to objects with higher priorities. MaxDifficult 
represents the lower bound of the number of allowed possible 
conflicts. In combination with the previously developed 
deselection criterion, this is the minimum remaining conflict 
free space. The allowed conflicts cannot be chosen only by their 
priority, the scale and distance of occurrence have to be 
considered in addition. This is performed in the inner loop 
through the sorted cutting-scale-list. 
  
Input: — objects to label with position, reference labeling, priority and 
maxDifficulty (maximum labeling difficulty relatively to more 
important objects) 
Output: reactive conflict graph (nodes and edges) 
» for each object in ascending order of priority (priorityObject): 
* generate node 
* calculate cutting-scale of priorityObject to all more important 
objects 
* sort these objects in descending order of cutting-scale 
* run through cutting-scale-list (cufObject): 
. calculate labeling difficulty between priorityObject and 
cutObject and all previous elements of cutting-scale-list 
if calculated labeling difficulty is higher than maxDifficulty. 
then generate edge between priorityObject and cutObject 
set upperBound to cutting-scale 
else leave loop 
*  ifcutObject exists 
° then set deselect on cutting-scale of cutObject + € 
. else set deselect on 0 
* for each pair of objects with same priority: 
* calculate cutting-scale 
* generate edge if cutting-scale greater than both deselect of incident 
nodes and set upperBound to calculated cutting-scale 
* for each edge: 
*  set/owerBound to maximum of deselect of incident nodes 
  
* eliminate edge if upperBound smaller than lowerBound 
  
  
Algorithm 1 Generation of the reactive conflict graph. 
  
    
Bad Godesberg 
  
  
  
Bonn - Leverkusen [1:1.307.001, 1:1.262.000] 
Bonn - Bad Godesberg [1:2.247.001, 1:100.000] 
Köln - Leverkusen [1:1.307.001, 1:274.000] 
Kéln- Bad Godesberg — [1:2.247.001, 1:681.000] 
Figure 11 Visualized reactive conflict graph with node labels 
and edges attributed with scale intervals. Due to 
space constraints, some of the scale intervals have to 
be listed below the figure. 
5. LABELING 
For fast labeling and access, the reactive conflict graph is stored 
in a three dimensional geometric data-structure like the 3-D-R- 
Tree (Guttman, 1984). The first two dimensions represent the 
geometry while the third dimension represents the scale. The 
objects’ geometry or its bounding box is stored. For the 
labeling, the reactive conflict graph is queried to a specific map 
clipping and scale. The result — the so-called static conflict 
graph — contains all objects to be labeled and all possible 
conflicts between these objects for the specific map clipping 
and scale. Details about the usage and labeling algorithms are 
described in detail in (Petzold, 2003) and in short in (Petzold et. 
al., 2003). 
232 
Interni 
— 
z-axis 
(scale 
14 
Figure 
The oj 
cartogi 
of obje 
of obj 
criterie 
and lin 
be ap 
simpli 
positio 
The u 
genera 
multire 
necess; 
enable: 
Compe 
algoritl 
In this 
for eff 
line ar 
scrollir 
Togeth 
labelin 
Cartog 
inform: 
In cont 
the foc 
encapsi 
it can I 
purpose 
generat 
preproc 
With tl 
labeling 
time-co 
as far a 
running 
Essenti 
difficul 
be labe
	        
Waiting...

Note to user

Dear user,

In response to current developments in the web technology used by the Goobi viewer, the software no longer supports your browser.

Please use one of the following browsers to display this page correctly.

Thank you.