Full text: Proceedings, XXth congress (Part 4)

2004 
puter 
ed in 
Data 
7 
and 
ware 
DL is 
plete 
full 
gine. 
ctive 
endly 
(Le. 
This 
S. 
d be 
After 
n the 
The 
| any 
licks 
nt or 
louse 
ut to 
n the 
e the 
event 
and 
le for 
er its 
jile it 
:eded 
Es 
gram, 
oints. 
rding 
wing 
h are 
and 
ram; 
rface 
and 
nt or 
dling 
tation 
while 
gram 
CAP 
X P- 
d by 
on on 
idling 
] will 
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B4. Istanbul 2004 
Figure 1 
  
be going to step 3, but if user sends ‘datapoint’, 
cleanup module will be running; 
After modifying the input signal according to cleanup 
rules, IPCBS sends required. commands/data to 
MicroStation to draws Current point, as a part of a 
feature and this point's coordinates will be added to 
feature's point-list and we can see digitized point on 
screen, which is first point of a LineString; 
If MicroStation's active command is not being 
finished, then dynamic motion event hook will be 
activated, and one temporary dotted line will be 
drawn and when P-Cursor moves around the screen, 
this dotted line will be changes dynamically; 
Steps 6 to 9 will continue, until user sends ‘Reset’. In 
this case, MicroStation's active command will be 
terminated. Next PCAP's data will say which 
command should be run by IPCBS; 
IPCBS will be pending until user closes the program. 
So, IPCBS always goes to step 5 and waits for 
another event; 
illustrates flowchart of IPCBS program. 
3. IPCBS'S DATA CLEANUP METHOD 
3.1 IPCBS Cleanup Module 
“Cleanup module” is heart of IPCBS program. The main 
purpose of this module is REAL-TIME data cleaning. Assume 
that user has already picked a point by P-Cursor. Now, this 
point should be checked from cleanup and topological points of 
view. The main steps are as following: 
1. 
Setting a search criterion surrounding the point, and 
beginning to search for linear objects; 
Snap to nearest linear feature if exists in the search 
area using these rules: 
a. If a node/vertex of linear feature exists, that 
node/vertex would be selected as start point; 
b. If none of vertices of founded linear feature 
are exist in the search area; then it would be 
snapped to the linear feature 
perpendicularly, and one node will be 
generated at that point on the linear feature; 
Store this point in the LineString’s point list, and in 
buffer of DGN also; 
Draw a temporary dotted rubber band line from 
previous point to anywhere user moves the P-Cursor, 
(erase last temporary line at each motion of P- 
Cursor); 
Request for another point; 
Check if this point is not located at the location of 
previous point; (Caused by double click). If X and Y 
of second point are as same as the first point, another 
module checks whether the Z values are different then 
a warning will be send to user to check his input data, 
because the spatial distance is not zero and in this 
case, duplication may be correct (for example in 
digitizing building with different floors in different 
elevation). But if X, Y and Z of both points are almost 
same then program will give a message to user and 
ask him to confirm whether he needs this point, or 
not. If user needs this point, it will be added to the 
DGN buffer and point list of LineString for drawing 
in future. If user does not need this duplicate/near 
point, then this point will be ignored and control will 
go to step 4; 
393 
  
  
  
- Performing orientations 
(interior, relative, 
absolute) 
- Other required settings 
- start to digitize features 
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
   
    
      
    
    
    
    
     
  
     
     
   
Loading 
Manual PCAP 
input by P- program 
Cursor 
LA» PCAP I/O 
>| Interrupt 
handling 
module 
Y 
Ü Loading 
mm mmm IPCBS 
Suspicious for ! program 
1 P-Cursor event ) 
! 3 
Suspicious for 
PCAP event 
A — oo 
  
i 
I 
I 
Manual Keyin by 
user (keyboard 
or UI menu) for 
drawing 
command 
  
Reset 
Making decision 
on PCAP event 
by IPCBS event- 
handling 
function 
  
Datapoint 
  
Cleanup Module 
  
  
  
Y 
  
  
-Draw current point 
-Active Dynamic motion 
event hook 
  
-Draw temporary dotted 
line 
-Add this point to 
LineString point list 
  
  
  
Figure 1. Flowchart of IPCBS program 
Setting a search criterion surrounding this point, and 
beginning to search for linear objects (with tolerance 
dimension); 
Snap to nearest linear feature in the search area if any 
exists (using rules mentioned in step 2), go to step 3; 
If no linear feature exists in the search area, then go to 
step 3: 
Go to step 4 and repeat the entire task from step 4 to 
8. After third datapoint, if distance between current 
  
 
	        
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.