栅格数据集集合是一种数据集类型,派生于 Dataset
,对该类型的数据集可以创建、更新和删除影像金字塔、重命名数据集等;它又具有集合的功能,能对集合中栅格数据集进行添加、删除和追加等操作。
只有栅格数据集 DatasetGrid
能添加到栅格数据集集合中。
栅格数据集集合类型的数据集默认为平面坐标系。
只有当集合中无子数据集时,对其设置投影才有效;有子数据集时,不允许修改集合的投影信息,即设置投影无效。
当添加的子数据集行列数大于5000的时候,添加到地图窗口,数据集和集合都没有金字塔的情况下,该子数据集在原始分辨率下才能显示。
@Deprecated public class DatasetGridCollection extends Dataset
public void datasetGridCollectionExample() { // 假设打开一个工作空间 workspace 对象,工作空间中存在一个数据源 datasource 对象 // 该数据源下有一个名为 “Raster” 和一个名为 “DEM25” 的栅格数据集 Datasets datasets = datasource.getDatasets(); // 取出数据源中名为 "Raster"和 "DEM25"的栅格数据集(DatasetGrid) DatasetGrid datasetGrid1 = (DatasetGrid)datasets.get("Raster"); DatasetGrid datasetGrid2 = (DatasetGrid)datasets.get("DEM25"); // 获取影像数据集的投影信息 PrjCoordSys prj = datasetGrid1.getPrjCoordSys(); datasetGrid2.setPrjCoordSys(prj); // 创建一个名为 “DTGC” 的影像数据集集合类型的数据集 DatasetGridCollection datasetGridCollection = datasets.createGridCollection("DTGC",PixelFormat.BIT32); // 设置集合数据集的投影信息与影像数据集一致 datasetGridCollection.setPrjCoordSys(prj); // 创建一个映射对象 Map<String,String> values = new HashMap<String, String>(); values.put("gird", datasetGrid1.getName()); values.put("grid_1", datasetGrid2.getName()); // 获取的两个栅格数据集都添加集合中 datasetGridCollection.add(values); // 获取集合中影像数据集的个数 int count = datasetGridCollection.getCount(); if(count!=2){ System.out.println("添加栅格数据集失败!"); } datasetGridCollection.close(); }
限定符和类型 | 方法和说明 |
---|---|
boolean |
add(Map<String,String> aliasNameAndName)
已过时。
以映射方式向栅格数据集集合中添加栅格数据集。
|
boolean |
add(String name,
String aliasName)
已过时。
将栅格数据添加到栅格数据集集合的尾部。
|
boolean |
add(String name,
String aliasName,
boolean isTop)
已过时。
将栅格数据添加到栅格数据集集合的最顶层或尾部。
|
void |
addAddedListener(DatasetCollectionListener l)
已过时。
添加一个用于接收向栅格数据集集合中添加子数据集结束事件(
DatasetCollectionEvent )的监听器。 |
void |
addOrderChangedListener(DatasetCollectionChangeOrderListener l)
已过时。
添加一个用于接收改变栅格数据集集合中子数据集位置事件(
DatasetCollectionChangeOrderEvent )的监听器。 |
void |
addRemovedAllListener(DatasetCollectionRemoveAllListener l)
已过时。
添加一个用于接收删除栅格数据集集合中所有子数据集结束事件(
DatasetCollectionRemoveAllEvent )的监听器。 |
void |
addRemovedListener(DatasetCollectionListener l)
已过时。
添加一个用于接收删除栅格数据集集合中的子数据集结束事件(
DatasetCollectionEvent )的监听器。 |
void |
addRemovingAllListener(DatasetCollectionRemoveAllListener l)
已过时。
添加一个用于接收删除栅格数据集集合中所有子数据集事件(
DatasetCollectionRemoveAllEvent )的监听器。 |
void |
addRemovingListener(DatasetCollectionListener l)
已过时。
添加一个用于接收删除栅格数据集集合中的子数据集事件(
DatasetCollectionEvent )的监听器。 |
void |
addRenamedListener(DatasetCollectionRenameListener l)
已过时。
添加一个用于接收对栅格数据集集合中的子数据集重命名结束事件(
DatasetCollectionRenameEvent )的监听器。 |
void |
addRenamingListener(DatasetCollectionRenameListener l)
已过时。
添加一个用于接收对栅格数据集集合中的子数据集重命名事件(
DatasetCollectionRenameEvent )的监听器。 |
void |
addRequireRefreshListener(DatasetCollectionRequireRefreshListener l)
已过时。
添加一个用于接收更新栅格数据集集合事件(
DatasetCollectionRequireRefreshEvent )的监听器。 |
boolean |
append(DatasetGridCollection datasetGridCollection)
已过时。
向栅格数据集集合对象中追加另外一个栅格数据集集合。
|
boolean |
buildPyramid()
已过时。
为栅格数据集集合对象创建影像金字塔。
|
boolean |
changeOrder(String aliasName,
int index)
已过时。
改变栅格数据集在栅格数据集集合中的位置。
|
String |
get(int index)
已过时。
返回栅格数据集集合中指定序号的栅格数据集对象的别名。
|
DatasetVector |
getAttributeDataset()
已过时。
返回记录栅格数据集合信息的矢量数据集。
|
String |
getAvailableAliasName(String name)
已过时。
根据传入字符串获取一个合法的栅格数据集集合的别名。
|
GeoRegion |
getClipRegion()
已过时。
返回栅格数据集集合的裁剪区域。
|
Colors |
getColorTable()
已过时。
返回栅格数据集集合的颜色表。
|
int |
getCount()
已过时。
返回栅格数据集集合中栅格数据集的个数。
|
DatasetGrid |
getDataset(String aliasName)
已过时。
返回栅格数据集集合中指定别名的栅格数据集对象。
|
boolean |
getHasPyramid()
已过时。
返回栅格数据集集合是否创建影像金字塔
|
double |
getNoValue()
已过时。
返回集合的无值,对所有子数据集有效,主要用于创建集合金字塔时,忽略子数据集无值。
|
PixelFormat |
getPixelFormat()
已过时。
返回栅格数据集集合的像素格式。
|
int |
indexOf(String aliasName)
已过时。
返回指定别名对应的子数据集在栅格数据集集合中的序号。
|
boolean |
insert(String name,
String aliasName,
int index)
已过时。
将栅格数据集插入到栅格数据集集合指定的位置处。
|
boolean |
isAvailableAliasName(String name)
已过时。
判断传入字符串是否是一个合法的栅格数据集集合的别名。
|
boolean |
remove(int index)
已过时。
将栅格数据集集合对象中指定序号处的栅格数据集删除。
|
boolean |
remove(String aliasName)
已过时。
根据指定的别名从栅格数据集集合中移除栅格数据集。
|
void |
removeAddedListener(DatasetCollectionListener l)
已过时。
移除一个用于接收向栅格数据集集合中添加子数据集结束事件(
DatasetCollectionEvent )的监听器。 |
boolean |
removeAll()
已过时。
移除栅格数据集集合对象中所有的栅格数据集。
|
void |
removeOrderChangedListener(DatasetCollectionChangeOrderListener l)
已过时。
移除一个用于接收改变栅格数据集集合中子数据集位置事件(
DatasetCollectionChangeOrderEvent )的监听器。 |
boolean |
removePyramid()
已过时。
删除栅格数据集集合对象的影像金字塔。
|
void |
removeRemovedAllListener(DatasetCollectionRemoveAllListener l)
已过时。
移除一个用于接收删除栅格数据集集合中所有子数据集结束事件(
DatasetCollectionRemoveAllEvent )的监听器。 |
void |
removeRemovedListener(DatasetCollectionListener l)
已过时。
移除一个用于接收删除栅格数据集集合中的子数据集结束事件(
DatasetCollectionEvent )的监听器。 |
void |
removeRemovingAllListener(DatasetCollectionRemoveAllListener l)
已过时。
移除一个用于接收删除栅格数据集集合中所有子数据集事件(
DatasetCollectionRemoveAllEvent )的监听器。 |
void |
removeRemovingListener(DatasetCollectionListener l)
已过时。
移除一个用于接收删除栅格数据集集合中的子数据集事件(
DatasetCollectionEvent )的监听器。 |
void |
removeRenamedListener(DatasetCollectionRenameListener l)
已过时。
移除一个用于接收对栅格数据集集合中的子数据集重命名结束事件(
DatasetCollectionRenameEvent )的监听器。 |
void |
removeRenamingListener(DatasetCollectionRenameListener l)
已过时。
移除一个用于接收对栅格数据集集合中的子数据集重命名事件(
DatasetCollectionRenameEvent )的监听器。 |
void |
removeRequireRefreshListener(DatasetCollectionRequireRefreshListener l)
已过时。
移除一个用于接收更新栅格数据集集合事件(
DatasetCollectionRequireRefreshEvent )的监听器。 |
boolean |
rename(String aliasName,
String newAliasName)
已过时。
重命名栅格数据集集合的别名。
|
void |
setClipRegion(GeoRegion value)
已过时。
设置栅格数据集集合的裁剪区域。
|
void |
setColorTable(Colors colors)
已过时。
设置栅格数据集集合的颜色表。
|
void |
setNoValue(double value)
已过时。
设置集合的无值,对所有子数据集有效,主要用于创建集合金字塔时,忽略子数据集无值。
|
boolean |
synchronize()
已过时。
同步栅格数据集集合。
|
boolean |
updatePyramid(Rectangle2D value)
已过时。
根据指定范围更新栅格数据集集合的影像金字塔。
|
addClosedListener, addClosingListener, addLockChangedListener, addSteppedListener, close, dispose, equals, getBounds, getDatasource, getDescription, getEncodeType, getExtInfo, getGeoStoreType, getGroup, getID, getLockState, getName, getPrivilegeTypes, getPrivilegeTypes, getPrjCoordSys, getSchema, getTableName, getTransState, getType, hashCode, hasPrivilegeGrant, hasPrjCoordSys, isDisposed, isOpen, isReadOnly, isVersioned, open, refresh, removeClosedListener, removeClosingListener, removeLockChangedListener, removeSteppedListener, setBounds, setDescription, setExtInfo, setLockState, setPrivilegeTypes, setPrjCoordSys, setReadOnly, toString
public int getCount()
public DatasetGrid getDataset(String aliasName)
aliasName
- 栅格数据集的别名。public String get(int index)
index
- 指定的序号。IndexOutOfBoundsException
- 当 index 小于 0 或 index 大于等于 getCount()
返回值时,抛出 IndexOutOfBoundsException 异常。public int indexOf(String aliasName)
aliasName
- 指定的别名。public DatasetVector getAttributeDataset()
返回的矢量数据集是一个面数据集,不允许用户修改。
该面数据集的一个面对象对应一个子数据集。如果子数据集含有裁剪区域,则面对象即是每个子数据集的裁剪区域,如果子数据集不含有裁剪区域,则面对象是每个子数据集最小外接矩形。
这个面数据集的字段除了包含系统字段外,还包含其他描述影像子数据集信息的字段,字段名称和字段中存储的信息含义如下表所示
public double getNoValue()
public void setNoValue(double value)
value
- 指定的无值。public PixelFormat getPixelFormat()
PixelFormat
枚举类型。public boolean getHasPyramid()
public GeoRegion getClipRegion()
栅格数据集集合的裁剪区域用来控制所有子数据集的显示范围。
调用该方法无法得到集合内的子数据集的裁剪区域。
注意:
1.当用户所设定的栅格数据集集合的地理范围(即调用 DatasetGridCollection.SetGeoReference()
方法)与所设定的裁剪区域无重叠区域,栅格数据集集合不显示。
2.当重新设置栅格数据集集合的地理范围,不自动修改栅格数据集集合的裁剪区域。
public void setClipRegion(GeoRegion value)
栅格数据集集合的裁剪区域用来控制所有子数据集的显示范围。
调用该方法无法对集合内的子数据集设置裁剪区域。子数据集裁剪区域的需子栅格数据集对象通过 DatasetGrid#setClipRegion()
方法设置。
注意:
1.当用户所设定的栅格数据集集合的地理范围(即调用 DatasetGridCollection.SetGeoReference()
方法)与所设定的裁剪区域无重叠区域,栅格数据集集合不显示。
2.当重新设置栅格数据集集合的地理范围,不自动修改栅格数据集集合的裁剪区域。
value
- 裁剪区域。public Colors getColorTable()
public void setColorTable(Colors colors)
无论是否对子数据集对象设置颜色表,栅格数据集集合显示时使用集合的颜色表。
colors
- 颜色表对象,即颜色集合。public boolean add(String name, String aliasName)
使用该方法有以下三点注意事项:
1.目前只支持和栅格数据集集合在同一数据源下的栅格数据集的添加。
2.所添加的栅格数据集的投影必须与栅格数据集集合一致,否则不能加入集合。
3.不限制添加栅格数据集的像素格式。但是建议一个集合中的各子数据集像素格式保持一致。
4.所指定的别名必须合法且在集合中是唯一的,否则添加失败。
name
- 栅格数据集的名称。aliasName
- 添加到栅格数据集集合中的栅格数据集的别名,别名需合法且唯一。public boolean add(String name, String aliasName, boolean isTop)
使用该方法有以下四点注意事项:
1.目前只支持和栅格数据集集合在同一数据源下的栅格数据集的添加。
2.所添加的栅格数据集的投影必须与栅格数据集集合一致,否则不能加入集合。
3.不限制添加栅格数据集的像素格式。但是建议一个集合中的各子数据集像素格式保持一致。
4.所指定的别名必须合法且在集合中是唯一的,否添加失败。
name
- 栅格数据集的名称。aliasName
- 添加到栅格数据集集合中的栅格数据集的别名,别名需合法且唯一。isTop
- 是否添加到最顶层,为true,则添加在最顶层,其索引值为0,反之显示在尾部。public boolean add(Map<String,String> aliasNameAndName)
该方法相当于向影像数据集集合中批量添加影像数据。
使用该方法有以下四点注意事项:
1.目前只支持和栅格数据集集合在同一数据源下的栅格数据集的添加。
2.所添加的栅格数据集的投影必须与栅格数据集集合一致,否则不能加入集合。
3.不限制添加栅格数据集的像素格式。但是建议一个集合中的各子数据集像素格式保持一致。
4.所指定的别名必须合法且在集合中是唯一的,否则添加失败。
values
- 需要添加的栅格数据集别名和名称组成的映射对象,键值为栅格数据集的别名,值为栅格数据集的名称。public boolean insert(String name, String aliasName, int index)
使用该方法有以下几点注意事项:
1.目前只支持和栅格数据集集合在同一数据源下的栅格数据集的插入。
2.所插入的栅格数据的投影必须与栅格数据集集合一致,否则不能插入到集合中。
3.不限制插入的栅格数据的像素格式。但是建议一个集合中的各子数据集像素格式保持一致。
4.所指定的别名必须合法且在集合中是唯一的,否则插入失败。
name
- 栅格数据集的名称。aliasName
- 添加到栅格数据集集合中的栅格数据集的别名,别名需合法且唯一。index
- 指定的索引值。IndexOutOfBoundsException
- 当 index 小于 0 或 index 大于等于 getCount()
返回值时,抛出 IndexOutOfBoundsException 异常。public boolean append(DatasetGridCollection datasetGridCollection)
若追加成功,则所追加的栅格数据集集合中的所有栅格数据集按照其原有顺序添加到被追加的集合的尾部。
datasetCollection
- 待追加的栅格数据集集合对象。public boolean remove(String aliasName)
注意:删除的只是栅格数据集在集合中的信息,与子数据集关联的同一数据源下的栅格数据集不会被删除。
aliasName
- 指定的栅格数据集别名。public boolean remove(int index)
注意:删除的只是栅格数据集在集合中的信息,与子数据集关联的同一数据源下的栅格数据集不会被删除。
index
- 要删除的栅格数据集的序号。IndexOutOfBoundsException
- 当 index 小于 0 或 index 大于等于 getCount()
返回值时,抛出 IndexOutOfBoundsException 异常。public boolean removeAll()
注意:删除的只是栅格数据集在集合中的信息,与子数据集关联的同一数据源下的栅格数据集不会被删除。
public boolean synchronize()
为了确保集合相关信息的正确性和有效性,对栅格数据集集合做了以下操作后,建议调用该方法同步集合:
1.跨数据源复制栅格数据集集合。
2.修改了集合中子数据集所关联的原始栅格数据集信息;
3.删除栅格数据集集合中的子数据集。
注意:调用该方法,对于不存在的子数据集,将自动将其从栅格数据集集合中移除。
public boolean changeOrder(String aliasName, int index)
调整栅格数据集集合中子数据集的顺序,可以改善集合的显示效果。
注意:该方法建议在对栅格数据集集合创建影像金字塔之前调用,以减少对集合金字塔的创建和更新。
aliasName
- 需要改变位置的栅格数据集的别名。index
- 栅格数据集移动到集合中的索引值。IndexOutOfBoundsException
- 当 index 小于 0 或 index 大于等于 getCount()
返回值时,抛出 IndexOutOfBoundsException 异常。public boolean buildPyramid()
public boolean removePyramid()
public boolean updatePyramid(Rectangle2D value)
当对栅格数据集集合执行以下操作后,需要调用该方法:
1.修改子数据集的裁剪区域;
2.调整子数据集的顺序,执行添加、删除子数据集等操作;
3.当添加的子数据集的范围在已有金字塔范围之外。
value
- 指定的范围。public boolean isAvailableAliasName(String name)
name
- 输入的字符串。public String getAvailableAliasName(String name)
name
- 输入的字符串。public boolean rename(String aliasName, String newAliasName)
如果数据源以只读的方式打开,将不能重命名。
aliasName
- 原始的别名。newAliasName
- 新的别名。public void addRenamingListener(DatasetCollectionRenameListener l)
DatasetCollectionRenameEvent
)的监听器。l
- 一个用于接收对栅格集合数据集的子数据集重命名事件的监听器。public void removeRenamingListener(DatasetCollectionRenameListener l)
DatasetCollectionRenameEvent
)的监听器。l
- 一个用于接收对栅格集合数据集的子数据集重命名事件的监听器。public void addRenamedListener(DatasetCollectionRenameListener l)
DatasetCollectionRenameEvent
)的监听器。l
- 一个用于接收对栅格数据集集合中的子数据集重命名结束事件的监听器。public void removeRenamedListener(DatasetCollectionRenameListener l)
DatasetCollectionRenameEvent
)的监听器。l
- 一个用于接收对栅格数据集集合中的子数据集重命名结束事件的监听器。public void addRemovingListener(DatasetCollectionListener l)
DatasetCollectionEvent
)的监听器。l
- 一个用于接收删除栅格数据集集合中的子数据集事件的监听器。public void removeRemovingListener(DatasetCollectionListener l)
DatasetCollectionEvent
)的监听器。l
- 一个用于接收删除栅格数据集集合中的子数据集事件的监听器。public void addRemovedListener(DatasetCollectionListener l)
DatasetCollectionEvent
)的监听器。l
- 一个用于接收删除栅格数据集集合中的子数据集结束事件的监听器。public void removeRemovedListener(DatasetCollectionListener l)
DatasetCollectionEvent
)的监听器。l
- 一个用于接收删除栅格数据集集合中的子数据集结束事件的监听器。public void addRemovingAllListener(DatasetCollectionRemoveAllListener l)
DatasetCollectionRemoveAllEvent
)的监听器。l
- 一个用于接收删除栅格数据集集合中所有子数据集事件的监听器。public void removeRemovingAllListener(DatasetCollectionRemoveAllListener l)
DatasetCollectionRemoveAllEvent
)的监听器。l
- 一个用于接收删除栅格数据集集合中所有子数据集事件的监听器。public void addRemovedAllListener(DatasetCollectionRemoveAllListener l)
DatasetCollectionRemoveAllEvent
)的监听器。l
- 一个用于接收删除栅格数据集集合中所有子数据集结束事件的监听器。public void removeRemovedAllListener(DatasetCollectionRemoveAllListener l)
DatasetCollectionRemoveAllEvent
)的监听器。l
- 一个用于接收删除栅格数据集集合中所有子数据集结束事件的监听器。public void addAddedListener(DatasetCollectionListener l)
DatasetCollectionEvent
)的监听器。l
- 一个用于接收向栅格数据集集合中添加子数据集结束事件的监听器。public void removeAddedListener(DatasetCollectionListener l)
DatasetCollectionEvent
)的监听器。l
- 一个用于接收向栅格数据集集合中添加子数据集结束事件的监听器。public void addOrderChangedListener(DatasetCollectionChangeOrderListener l)
DatasetCollectionChangeOrderEvent
)的监听器。l
- 一个用于接收改变栅格数据集集合中子数据集位置事件的监听器。public void removeOrderChangedListener(DatasetCollectionChangeOrderListener l)
DatasetCollectionChangeOrderEvent
)的监听器。l
- 一个用于接收改变栅格数据集集合中子数据集位置事件的监听器。public void addRequireRefreshListener(DatasetCollectionRequireRefreshListener l)
DatasetCollectionRequireRefreshEvent
)的监听器。l
- 一个用于接收更新栅格数据集集合事件的监听器。public void removeRequireRefreshListener(DatasetCollectionRequireRefreshListener l)
DatasetCollectionRequireRefreshEvent
)的监听器。l
- 一个用于接收更新栅格数据集集合事件的监听器。Copyright © 2021–2024 SuperMap. All rights reserved.