CHAPTER 2. VECTOR PRODUCT FORMAT
23
Coverages
Coverage
Attribute
Table
Library
Header
Table
Geographic
Reference
Table
GAZETTE
Names
Reference
Coverage
LIBREF
Reference
Coverage
TILEREF
Reference
Coverage
Data
Quality
Table
DQ
Reference
Coverage
Registration
Point Table
Diagnostic
Point Table
Optional
Mandatory
Directory
Figure 2.7: VPF library directory
Tiling Coverages can be tiled. Tiling is deviding a coverage to obtain enhanced data man-
agement. Each tile will have a separate subdirectory under the coverage directory. The tiles
will also have separate primitive tables.
Libraries
AVPF library should look like figure 2.7.
Alibrary is a collection of coverages that share a single coordinate system and scale, have a
common thematic definition and are contained within a specified spatial extent. If any of the
coverages composing the library are tiled, then all other coverages must either use the same
tiling scheme or be untiled.
There is a need for a tile reference coverage if a library contains tiled coverages. The tile
reference will describe the spatial deviding of the library. The tile reference itself will be
untiled.
The coordinate system of a library is defined by a geographic reference table. This table
defines the basic coordinate system for the library.
The names reference coverage provides the user with a way to locate a place in a library by
using a place name.
Database
Adatabase is a collection of related libraries and additional tables.
The database directory is represented in figure 2.8.
The library attribute table is a table of contents for the library.
The database header table describes the database itself.
Pdf metadata online - add, remove, update PDF metadata in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Allow C# Developers to Read, Add, Edit, Update and Delete PDF Metadata
edit pdf metadata online; pdf metadata extract
Pdf metadata online - VB.NET PDF metadata library: add, remove, update PDF metadata in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Enable VB.NET Users to Read, Write, Edit, Delete and Update PDF Document Metadata
batch pdf metadata editor; online pdf metadata viewer
CHAPTER 2. VECTOR PRODUCT FORMAT
24
Libraries
Library
Attribute
Table
Database
Header
Table
Data
Quality
Table
Optional
Mandatory
Directory
Figure 2.8: VPF database directory
2.3.3 Data Quality
VPF allows the storage of data quality information. The data quality specification for a
database has to be provided by the product specification.
Depending on the source of the data, there can be a difference in quality for each structure
in the VPF data model. Therefor the data quality can be kept in multiple levels of the VPF
multilevel structure. The lowest level data quality has more priority than the highest level
(database level).
2.4 Spatial decomposition
2.4.1 Purpose
Spatial decomposition is the seperation of spatial objects.
The main reasons for spatial decomposition are saving memory and increasing the speed of
retrieving coordinates at a certain position.
2.4.2 Categories of spatial decomposition
Tile directory
Tiling is the first form of spatial decomposition that is used. Tiling devides geographical
information into rectangular smaller parts. These rectangulars don’t necessary need to have
the same size. This is represented in figure 2.9.
Atile itself is an area and a reference to a directory where the primitives of this area can be
found. Which means that tiling is implemented at a low level.
There can be issues. Primitives can be broken into several seperate tables. The attributes of
those primitives will be broken as well. VPF resolves this problem by keeping the attribute
tables and the feature class tables unbroken.
Adatabase containing global geographical information will consist of a large amount of mem-
ory.
VB.NET PDF- View PDF Online with VB.NET HTML5 PDF Viewer
C#.NET edit PDF bookmark, C#.NET edit PDF metadata, C#.NET C#.NET read barcodes from PDF, C#.NET OCR scan PDF. C# ASP.NET Document Viewer, C# Online Dicom Viewer
pdf metadata viewer online; delete metadata from pdf
VB.NET PDF - Create PDF Online with VB.NET HTML5 PDF Viewer
C#.NET edit PDF bookmark, C#.NET edit PDF metadata, C#.NET C#.NET read barcodes from PDF, C#.NET OCR scan PDF. C# ASP.NET Document Viewer, C# Online Dicom Viewer
remove pdf metadata online; c# read pdf metadata
CHAPTER 2. VECTOR PRODUCT FORMAT
25
Figure 2.9: VPF Tiles
When tiling isn’t used, the programme processing the database will have to make more effort
in displaying a certain area. All of the coordinates will have to be checked to determine if
they are in a certain area. When tiling is used, the program can determine what coordinates
will be in the area in advance.
The closer the area which has to be displayed is to the database geographical area, the less
tiling will be useful.
The tiling structure is declared in the tile reference coverage (TILEREF). The size of the tiles
is defined in the product specification. The tile reference coverage itself is a seperate coverage
at library level that only represents all of the tiles. No other data besides tile boundaries and
tile labels is used. The attributes (properties) of each tile are stored in the area feature table,
which makes the area feature table very important.
Spatial index
The purpose of a spatial indexing is to impove the speed with which software can retrieve a
specific set of row ids from a primitive table.
Spatial indexing is implemented for the possibility to make spatial queries: when a user
wants to know something at a specific coordinate, it has to be possible to tell what primitive
is at that coordinate. If spatial indexing isn’t used, the software will have to search in every
primitive to get the correct response.
The spatial indexes are listed in the same directory as the primitives.
Bounding rectangle
The bounding rectangle can be compared with spatial indexing. Spatial indexing uses a
conversion of the coordinates to integers in order to search primitives within a content, while
abouding rectangle works with coordinates. This makes bounding rectangles more exact,
but also slower.
C# HTML5 PDF Viewer SDK to create PDF document from other file
C#.NET edit PDF bookmark, C#.NET edit PDF metadata, C#.NET C#.NET read barcodes from PDF, C#.NET OCR scan PDF. C# ASP.NET Document Viewer, C# Online Dicom Viewer
view pdf metadata; edit pdf metadata
VB.NET PDF Library SDK to view, edit, convert, process PDF file
PDF Metadata Edit. Offer professional PDF document metadata editing APIs, using which VB.NET developers can redact, delete, view and save PDF metadata.
batch edit pdf metadata; google search pdf metadata
CHAPTER 2. VECTOR PRODUCT FORMAT
26
2.5 Feature class relations
2.5.1 Overview
The most important part of the feature classes are the relations between the features and
the primitives. Depending on the product specification, the relationship can be on-to-one,
on-to-many, many-to-one and many-to-many.
In this section (feature class reations), there will be tiled coverages and indexing. They will
be explained first.
Tiled coverages
There are 2 possibilities:
Tiled coverages have a triplet id column (primitive id, feature id and tile id) in the
feature table or in the associated join table to define the relationship between features
and tiled primitives. That means that there will have to be an extra id.
Tile id and primitive id components are maintained in separate columns in the feature
or join tables. Depending on the table type, there will be different column names, like
in table 2.1.
Area Feature
fac
id
Line Feature
edg
id
Point Feature
end
id
Point Feature
cnd
id
Text Feature
txt
id
Tile ID
tile
id
Table 2.1: VPF Feature class relations: Tiled coverages
Indexing
The search for features can be optimised by using indexing.
When multiple items are in the same feature class, they have the same “theme”. This means
that feature tables are searchable using thematic indexes. They are searchable on primitive
id or tile id. Primitive id’s can be FAC
ID, EDG
ID, CND
ID, END
ID and TXT
ID.
Spatial indexes allow the software to search the database spatially.
Feature indexes enhance the retrieval of feature information when given a selected primitive.
This is very helpful when multiple feature classes use the same primitives within a coverage.
The feature indexes have “FIT” as extension. They contain PRIM
ID(primitive id), TILE
ID
(tile id), FC
ID (feature class id) and FEATURE
ID (feature table id).
VB.NET PDF Image Extract Library: Select, copy, paste PDF images
zonal information, metadata, and so on. Extract image from PDF free in .NET framework application with trial SDK components for .NET. Online source codes for
view pdf metadata in explorer; extract pdf metadata
C# HTML5 PDF Viewer SDK to view, annotate, create and convert PDF
C#.NET users and developers can view PDF online with convenient manipulation, add varieties of annotations to PDF freely online, create PDF document from
pdf xmp metadata viewer; remove metadata from pdf acrobat
CHAPTER 2. VECTOR PRODUCT FORMAT
27
2.5.2 Feature and primitive table relationships
One-to-one relationship
Afeature id is linked to a primitive id.
Untiled When the coverage isn’t tiled, the relation between a feature table and a primitive
table is quite simple. Each feature entry will have a direct link to a primitive id. This gives
good performance going from feature to primitive, but very poor performance going from
primitive to feature. So when selecting a line, it will take a while before the programme can
determine the feature.
Tiled The link to the primitive is also direct here, but one has to keep in mind what tile
the primitive is in. There can be more than one edg with id “1” since there are multiple tiles
and each tile can have an edge. Like untiled relationship, going from primitive to feature,
this will also have poor performance.
Thematic The thematic index will improve the performance when going from feature to
primitive. For example, a thematic index on the TILE
ID column in the feature table would
provide a list of all records for a given TILE
ID value. If the TILE
ID’s are given, getting all
the features within a given tile will go faster. Not only TILE
ID’s can be used that way, also
primitive id’s.
Tiled with feature id pointers in primitive tables When one gives the primitive a
reference to the feature, it will improve the performance when a feature has to be determined.
The tile where the primitive is in, is known. That way the tile id can be found in the feature
table.
Tiled with feature id pointers in primitive tables and thematic indexes This is
combining previous with thematic indexes.
One-to-many relationships
This implies that a single feature is composed of many primitives. The structure is about the
same as from one-to-one relationships, but now there is a feature join table.
Many-to-many relationships
Many features can relate to many primitives and vice versa. There is also the need for a
feature join table here.
VB.NET PDF File Compress Library: Compress reduce PDF size in vb.
Document and metadata. All object data. File attachment. Flatten visible layers. VB.NET Demo Code to Optimize An Exist PDF File in Visual C#.NET Project.
remove pdf metadata; clean pdf metadata
C# HTML5 PDF Viewer SDK to view PDF document online in C#.NET
Create PDF Online. Convert PDF Online. WPF PDF Viewer. View Image to PDF. Image: Remove Image from PDF Page. Edit URL. Bookmark: Edit Bookmark. Metadata: Edit, Delete
read pdf metadata java; embed metadata in pdf
CHAPTER 2. VECTOR PRODUCT FORMAT
28
Complex feature relationships
Acomplex feature contains multiple simple features. Simple features are features like an area
feature or a line feature. A complex feature is built up using these kind of simple features.
2.6 Winding-Edge Topology
The function of winding-edge topology is to provide a line network and face topology and
also to maintain seamless coverages across physical partitions of tiles.
2.6.1 Components
Winding-edge topology uses three columns of anedge primitive table. It provides connectivity
between nodes, edges and faces.
Node information Each edge contains a start and an end node column. This information
is used to define the edge direction.
Edge information Right and left edges connect an edge to its neighbour edges. The right
edge is the first edge connected to the end node that is encountered when cycling around
the node in a counterclockwise direction. The left edge is the first edge connected to
the start node that is encountered when cycling around the node in a counterclockwise
direction. This information can be viewed in figure 2.10.
Face information Only defined when coverage level 3 topology. Each edge will contain a
left and a right face. Left and right are determined by the edge direction. This allows
edges to know their neighbouring faces.
Aring is a collection of edges that bounds a face. There can be inner and outer rings.
2.6.2 Algorithm
The algorithm for faces is built up in several steps:
Determine which face to draw.
Identify the starting edge.
Travel to the left edge to trace the left face. Travel to the right edge to find the right
face.
The algorithm for line network is also built up in several steps, like show in figure 2.10:
Locate current edge.
CHAPTER 2. VECTOR PRODUCT FORMAT
29
Figure 2.10: VPF winding edge components
Read the end node of the current edge and gather all edges on that end node.
Repeat previous step with the following edge until the network has been completely
traversed.
Exit with the complete network.
2.6.3 Cross-tile topology
When there are tiles in a coverage, it is possible to introduce cross-tile constructs. The
winding-edge topology can be used for this. The following rules have to be followed for
obtaining the cross-tile topology:
An edge is broken when it intersects a tile boundary. A connected node will be placed
at the intersection on both tiles. All edges terminated by this node will have cross-tile
topology.
Across tileedge is the first edge inthe tile that touches thecurrent one, counterclockwise
from the refencing edge at the node.
All edges that intersect with a tile boundary occur in both tiles.
When a face is broken by a tile boundary, multiple faces are created by closing the face
along the boundary of the tile. The edges used to close the faces occur in both tiles.
An example of this can be viewed in figure 2.11.
CHAPTER 2. VECTOR PRODUCT FORMAT
30
Figure 2.11: VPF Cross tile topology
Chapter 3
Vector Smart Map Level 0
3.1 General information
[10, Vector Smart Map Level 0 or VMap Level 0], is a product specification of the Vector
Product Map. This means that VMap Level 0 uses the same definitions as the VPF standard.
In this chapter the implementation of VPF into VMap Level 0 will be explained.
This product specification is designed to support Geographic Information System (GIS) ap-
plications with geographic data at small resolution.
3.2 Hierarchy
VMap Level 0 has the same hierarchy level as VPF. The implementation looks like figure 3.1.
VMap Implementation
VMap Level 0
Database
Data Libraries
Reference Library
Reference
Coverages
Thematic
Coverages
Reference
Coverages
Thematic
Coverages
Reference
Feature Tables
Thematic
Feature Tables
Reference
Feature Tables
Thematic
Feature Tables
VPF Structure Levels
Database
Library
Coverage
Feature Class
Figure 3.1: VMAPs VPF structure
31
CHAPTER 3. VECTOR SMART MAP LEVEL 0
32
3.3 VMAP’s VPF structure
Since the VPF structure has been specified in the previous chapter (chapter 2), the structure
of VMap Level 0, which is based on the VPF structure, can be approached in a top-down
way. This is easier to understand the structure and gives a better view on how it has to be
implemented.
3.3.1 Database
AVMap database contains only one database directory.
Table
Directory
vmaplv0
lat
dht
rference
lib1
lib2
...
Figure 3.2: VMAPs Database Directory
This directory contains a library attribute table, a database header table, a reference library
and data libraries.
3.3.2 Library directories
VMAP knows two types of libraries: the reference library and the data libraries.
lib
cat
lht
grt
dqx
dqt
lineage.doc
tileref
libref
bnd
...
Table
Directory
dq
fcs
tileref.aft
telereft.tft
primitive tables
fcs
libref.lft
libreft.tft
primitive tables
Figure 3.3: VMAPs Library Directory
Each library has its own metadata and coverages.
The metadata includes a coverage attribute table (cat), a library header table (lht), a
geographic reference table (grt), a data quality index (dqx), a data quality table (dqt),
and a lineage narrative table (lineage.dot).
Documents you may be interested
Documents you may be interested