SHP数据通过MapBuilder导入Oracle数据库以后,如果要在MapBuilder、MapEditor或MapViewer中显示几何形状,还需要定义地图,即为每个几何字段构建几何主题(Geometry Theme),然后定义一个基本地图(BaseMap)由哪些主题(可能是几何主题、栅格主题等)构成。图2-10显示的是OVCPOINTS几何主题的创建过程之一,这里给出了几何主题的名称、描述、表的所有者、基础表和几何字段所在的列。图2-11显示的是OVCPOINTS主题的要素风格。图2-12显示的是OVCPOINTS主题的标注风格,在这里可以选择某个字段的值进行标注。图2-13显示的是OVCPOINTS主题的查询条件,采用的是默认查询。然后点击“Next>”进入总结信息页面,点击“Finish”完成OVCPOINTS几何主题的定义。采用同样的方法,也可以利用向导定义OVCLINES和OVCPOLYGONS两个几何主题。
这些主题信息存放在MDSYS方案的SDO_THEMES_TABLE中。为判断上述执行过程是否正确,执行下列查询语句:
select tab.name from mdsys.sdo_themes_table tab where tab.sdo_owner='ovcdemo';
正确的输出结果应该是:
---Name---
ovclines
ovcpoints
ovcpolygons
图2-10 定义几何主题的主题参数设置
图2-11 定义几何主题的要素风格
图2-12 定义几何主题的标注风格
图2-13 定义几何主题的查询条件
定义主题之后,接下来应该定义的是地图,它确定的是一个地图应包含哪些主题。在MapBuilder中有定义地图的向导。运行向导,首先是地图的名称与描述信息,如图2-14所示。接下来是定义地图的主题层信息,如图2-15所示,这里定义的OVCMAP包含了三个主题,这些信息将保存在USER_SDO_MAPS表中。向导的最后一个对话框显示的是所定义的地图的概要信息,如图2-16所示。
关于地图的定义信息存放在MDSYS方案的SDO_MAPS_TABLE中。为判断地图定义是否成功,可以执行下列查询语句:(www.xing528.com)
select tab.name from mdsys.sdo_maps_table tab where tab.sdo_owner='ovcdemo';
图2-14 定义地图的基本信息
图2-15 定义地图的主题层信息
图2-16 地图的概要信息
如果地图定义成功,则返回结果应该是OVCMAP。这是通过查询语句来验证的。同时也可以通过MapBuilder直接预览该地图,如图2-17所示。
图2-17 OVCMAP地图预览
上面的OVCMAP没有加入栅格主题层。栅格主题的定义方法和几何主题定义方法相似。可以采用MapBuilder的GeoRaster主题定义向导定义想要的主题。首先设定GeoRaster主题名称等参数,这里设定的名称为ovcraster,如图2-18所示。图2-19主要设置查询模式,一般可采用默认模式。图2-20为该主题的金字塔、投影等参数设置,均采用默认值。关于具体参数含义将在栅格数据的组织管理部分讨论。
图2-18 GeoRaster主题向导(Ⅰ)
图2-19 GeoRaster主题向导(Ⅱ)
图2-20 GeoRaster主题向导(Ⅲ)
定义好了GeoRaster主题后,可以像集合主题一样把它加入到地图中显示。这里构建一个基本地图叫OVCALL,包含所有的几何主题层和栅格主题层,然后在MapBuilder中显示该地图,如图2-21所示。这样OVCDEMO中就存在四个主题层(OVCPOINTS、OVCLINES、OVCPOLYGONS、OVCRASTER)和两个图(OVCMAP和OVCALL)。
图2-21 OVCALL地图预览
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。