public abstract class Dataset
extends java.lang.Object
所有数据集类型(如矢量数据集,栅格数据集等)的基类。提供各数据集共有的方法和事件。
数据集一般为存储在一起的相关数据的集合;根据数据类型的不同,分为矢量数据集和栅格数据集和影像数据集,以及为了处理特定问题而设计的如拓扑数据集,网络数据集等。数据集是 GIS 数据组织的最小单位。其中矢量数据集是由同种类型空间要素组成的集合,所以也可以称为要素集。根据要素的空间特征的不同,矢量数据集又分为点数据集,线数据集,面数据集等,各矢量数据集是空间特征和性质相同而组织在一起的数据的集合。而栅格数据集由像元阵列组成,在表现要素上比矢量数据集欠缺,但是可以很好的表现空间现象的位置关系。光栅数据集包括影像数据集和栅格数据集。
在 SuperMap 中有十八种类型的数据集,但目前版本支持的数据集主要有点数据集,线数据集,面数据集,文本数据集,纯属性表数据集和影像数据集。
对数据集进行操作后必须调用 Workspace.dispose()
方法,否则数据修改的内容不能被保存。
限定符和类型 | 方法和说明 |
---|---|
void |
close()
用于关闭当前数据集。
|
Rectangle2D |
getBounds()
返回数据集中包含所有对象的最小外接矩形。
|
Datasource |
getDatasource()
返回此数据集对象所属数据源对象。
|
java.lang.String |
getDescription()
返回用户加入的对数据集的描述信息。
|
EncodeType |
getEncodeType()
返回此数据集数据存储时的编码方式。
|
java.lang.String |
getName()
返回此数据集的名称,是数据集的唯一标识。
|
PrjCoordSys |
getPrjCoordSys()
返回数据集的投影信息。
|
DatasetType |
getType()
返回此数据集的类型。
|
boolean |
isOpen()
判断此数据集是否已经打开。
|
boolean |
isReadOnly()
返回当前数据集是否为只读。
|
boolean |
open()
用于打开数据集,准备对数据集进行操作。
|
void |
setDescription(java.lang.String value)
设置用户加入的对数据集的描述信息。
|
void |
setName(java.lang.String name)
设置此Dataset的名称。
|
void |
setPrjCoordSys(PrjCoordSys prjCoordSys)
设置数据集的投影信息。
|
void |
setReadOnly(boolean readOnly)
设置数据集是否只读
|
public Rectangle2D getBounds()
public boolean isReadOnly()
DatasetVector
),不允许删除、修改和添加记录;DatasetImage
),不允许设置其像素值;open()
Dataset.open()
方法的示例。public boolean isOpen()
open()
Dataset.open()
方法的示例。public Datasource getDatasource()
public java.lang.String getDescription()
public void setDescription(java.lang.String value)
value
- 用户加入的对数据集的描述信息。public void setDescriptionTest() { // 假设打开一个工作空间 workspace 对象,工作空间中存在一个数据库型数据源 datasource 对象 // 从数据源中取出数据集,为数据集写入描述信息 Dataset dataset = datasource.getDatasets().get("World"); dataset.setDescription("世界地图"); String description = dataset.getDescription(); System.out.println("数据集描述信息为:" + description); }
public java.lang.String getName()
public DatasetType getType()
public EncodeType getEncodeType()
EncodeType
public PrjCoordSys getPrjCoordSys()
public void getPrjCoordSysTest() { // 假设打开一个工作空间 workspace 对象,工作空间中存在一个数据库型数据源 datasource 对象 // 从数据源中取出数据集,查看数据集的投影 Dataset dataset = datasource.getDatasets().get("World"); PrjCoordSys prjCoordSys = dataset.getPrjCoordSys(); }
public void setPrjCoordSys(PrjCoordSys prjCoordSys)
prjCoordSys
- 数据集的投影信息。public void close()
Dataset.open()
方法的示例。public boolean open()
因此,在对数据集进行各种操作之前,需要先打开该数据集,即调用 Dataset.open() 方法。
public void openTest() { // 假设打开一个工作空间 workspace 对象,工作空间中存在一个数据库型数据源 datasource 对象 // 从数据源中取出数据集,打开数据集,将数据集设置为只读 Dataset dataset = datasource.getDatasets().get("World"); dataset.open(); if (dataset.isOpen()) { System.out.println("打开数据集成功"); // 判断数据集是否为只读 if (dataset.isReadOnly()) { System.out.println("数据集为只读数据集"); } else { // 如果不是只读将其设置为只读 dataset.setReadOnly(true); } dataset.close(); } }
public void setReadOnly(boolean readOnly)
readOnly
- 为true,设置数据集为只读public void setName(java.lang.String name)
name
- 此Dataset的名称