com.supermap.data
类 StandardMargin
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.data.InternalHandleDisposable
-
- com.supermap.data.StandardMargin
-
- 所有已实现的接口:
- IDisposable
public class StandardMargin extends com.supermap.data.InternalHandleDisposable
中国标准图幅框设置类。- 示范代码:
- 以下代码示范如何创建标准图幅图框,并将标准图幅图框以 CAD 数据集的形式保存到指定的数据源中。假设打开一个工作空间 workspace 对象,工作空间中存在一个数据源 datasource 对象
public void standardMarginTest() { // 构造 StandardMargin 对象,并进行基本设置,使所有图幅元素均可见 StandardMargin standardMargin = new StandardMargin(); standardMargin.showAllElements(); standardMargin.setAnnotation(new String[] {"此为自定义图幅"}); standardMargin.setInformation(new String[] {"图示", "坐标系"}); standardMargin.setKilometerGridType(StandardMargin.MarginKilometerGridType.CROSS); standardMargin.setLargeScaleCoordSysType(StandardMargin.MarginLargeScaleCoordSysType.NATIONAL); standardMargin.setLargeScaleSheetType(StandardMargin.MarginLargeScaleSheetType.SHEET40x50); // 得到标准图幅图框的偏移设置并对其进行设置 StandardMargin.MarginOffset marginOffset = standardMargin.getOffset(); marginOffset.setAnnotation(new Size2D(0, -5)); marginOffset.setBasicScale(new Size2D(0, -15)); marginOffset.setBottomLeftSheetName(new Size2D(0, -30)); marginOffset.setBottomRightSheetName(new Size2D(90, -30)); marginOffset.setInformation(new Size2D(8, 0)); marginOffset.setPublisher(new Size2D(0, -5)); // 得到标准图幅图框的文本样式并对其进行设置 StandardMargin.MarginStyle marginStyle = standardMargin.getStyle(); TextStyle textStyle = new TextStyle(); textStyle.setFontName("黑体"); textStyle.setFontHeight(5); textStyle.setFontWidth(2); textStyle.setForeColor(java.awt.Color.DARK_GRAY); // 此处的参数可以为不同的 TextStyle 对象 marginStyle.setAnnotation(textStyle); marginStyle.setBasicScale(textStyle); marginStyle.setCornerMapName(textStyle); marginStyle.setCornerSheetName(textStyle); // 创建标准图幅图框,并将标准图幅图框以 CAD 数据集的形式保存到指定的数据源中 DatasetVector marginCAD = StandardMargin.createStandardMarginDataset(datasource,datasource.getDatasets().getAvailableDatasetName("marginExample"), standardMargin); if (marginCAD != null) { System.out.println("创建成功"); marginCAD.close(); } else { System.out.println("创建失败"); } }
-
-
嵌套类概要
嵌套类 限定符和类型 类和说明 static class
StandardMargin.MarginElementType
该类定义了标准图幅元素类型常量,包括了标准图幅边框中包含的元素。static class
StandardMargin.MarginKilometerGridType
该类定义了公里网网格类型常量,用于标示网格线类型是十字丝类型还是实线类型。static class
StandardMargin.MarginLargeScaleCoordSysType
该类定义了大比例尺图幅的坐标系类型常量。static class
StandardMargin.MarginLargeScaleSheetType
该类定义了大比例尺图幅范围类型常量。class
StandardMargin.MarginOffset
标准图幅偏移设置类。static class
StandardMargin.MarginScaleType
该类定义了标准比例尺类型常量,包括了边框处比例尺的类型。static class
StandardMargin.MarginStandardType
该类定义了图幅标准类型常量。class
StandardMargin.MarginStyle
中国标准图幅元素样式类。
-
构造器概要
构造器 构造器和说明 StandardMargin()
构造一个新的 StandardMargin 对象。StandardMargin(StandardMargin.MarginScaleType scaleType)
根据指定的参数来构造一个 StandardMargin 的新对象。StandardMargin(StandardMargin.MarginScaleType scaleType, Point2D leftBottom)
根据指定的参数来构造一个 StandardMargin 的新对象。StandardMargin(StandardMargin.MarginScaleType scaleType, StandardMargin.MarginLargeScaleSheetType largeScaleSheetType, Rectangle2D bounds)
根据指定的参数来构造一个 StandardMargin 的新对象。StandardMargin(StandardMargin margin)
根据指定的 StandardMargin 对象构造一个新的与其相同的新对象。StandardMargin(String sheetName)
根据指定的参数来构造一个 StandardMargin 的新对象。
-
方法概要
所有方法 静态方法 实例方法 具体方法 限定符和类型 方法和说明 static String
computeSheetName(Point2D bottomLeft, StandardMargin.MarginScaleType scaleType)
根据左下脚坐标和比例尺计算图幅名称。static DatasetVector
createStandardMarginDataset(Datasource datasource, String datasetName, StandardMargin standardMargin)
创建标准图幅图框,并将标准图幅图框以CAD数据集的形式保存到指定的数据源中。void
dispose()
释放该对象所占用的资源。boolean
get(StandardMargin.MarginElementType type)
返回指定图幅元素是否可见。String[]
getAnnotation()
返回附注文本数组。double
getAnnotationRowSpace()
返回地图显示信息的行间距。Rectangle2D
getBounds()
返回图幅经纬度范围。double
getContourInterval()
返回等高距。double
getCrossLength()
返回十字丝公里网十字的长度。String[]
getInformation()
返回信息,通常放置在图幅的右下角,包括图示,坐标系,高程基准,航摄,出版等信息。double
getInformationRowSpace()
返回地图显示信息的行间距。double
getInsideSpace()
返回图幅外框的外边沿与内框的距离。double
getKilometerGridHorizontalSpace()
返回公里网水平方向网格长度。StandardMargin.MarginKilometerGridType
getKilometerGridType()
返回公里网网格类型。double
getKilometerGridVerticalSpace()
返回公里网垂直方向网格长度。StandardMargin.MarginLargeScaleCoordSysType
getLargeScaleCoordSysType()
返回大比例尺图幅的坐标系类型。StandardMargin.MarginLargeScaleSheetType
getLargeScaleSheetType()
返回大比例尺(1:500 - 1:2000)图幅分幅类型。double
getMagnetAngle()
返回磁偏角。String
getMapName()
返回地图名。double
getMeridianAngle()
返回子午线收敛角。String[]
getNeighborMapNames()
返回邻接图幅名。String[]
getNeighborSheetNames()
返回邻接图幅号。StandardMargin.MarginOffset
getOffset()
返回图幅元素对象的偏移设置。double
getOuterBoxLineWidth()
返回图幅外框的线宽。PrjCoordSys
getPrjCoordSys()
返回图幅投影坐标系。String
getPublisher()
返回地图出版单位的名称。String
getSafeInfo()
返回出版密级文本。StandardMargin.MarginScaleType
getScaleType()
返回图幅比例尺类型。int
getSegmentCount()
返回为保证投影转换后的精度而在边框上插值的个数。String
getSheetName()
返回图幅名(即图幅编号)。StandardMargin.MarginStandardType
getSheetNameType()
返回图幅编号类型。StandardMargin.MarginStyle
getStyle()
返回图幅元素的文本样式。int
getZoneNumber()
返回大比例尺地图的国家坐标系的条带号,要求用户输入。void
hideAllElements()
使所有的标准图幅元素不可见。boolean
isCreateLonLatText()
void
set(StandardMargin.MarginElementType type, boolean value)
设置指定图幅元素是否可见。void
setAnnotation(String[] annotation)
设置附注文本数组。void
setAnnotationRowSpace(double value)
设置地图显示信息的行间距。void
setContourInterval(double value)
设置等高距。void
setCrossLength(double value)
设置十字丝公里网十字的长度。void
setInformation(String[] information)
设置信息,通常放置在图幅的右下角,包括图示,坐标系,高程基准,航摄,出版等信息。void
setInformationRowSpace(double value)
设置地图显示信息的行间距。void
setInsideSpace(double value)
设置图幅外框的外边沿与内框的距离。void
setIsCreateLonLatText(boolean bValue)
void
setKilometerGridHorizontalSpace(double value)
设置公里网水平方向网格长度。void
setKilometerGridType(StandardMargin.MarginKilometerGridType type)
设置公里网网格类型。void
setKilometerGridVerticalSpace(double value)
设置公里网垂直方向网格长度。void
setLargeScaleCoordSysType(StandardMargin.MarginLargeScaleCoordSysType type)
设置大比例尺图幅的坐标系类型。void
setLargeScaleSheetType(StandardMargin.MarginLargeScaleSheetType type)
设置大比例尺(1:500 - 1:2000)图幅分幅类型。void
setMagnetAngle(double value)
设置磁偏角。void
setMapName(String mapName)
设置地图名。void
setMeridianAngle(double value)
设置子午线收敛角。void
setNeighborMapNames(String[] neighborMapName)
设置邻接图幅名。void
setOuterBoxLineWidth(double value)
设置图幅外框的线宽。void
setPrjCoordSys(PrjCoordSys prjCoordSys)
设置图幅投影坐标系。void
setPublisher(String publisher)
设置地图出版单位的名称。void
setSafeInfo(String safeInfo)
设置出版密级文本。void
setSegmentCount(int value)
设置为保证投影转换后的精度而在边框上插值的个数。void
setZoneNumber(int value)
设置大比例尺地图的国家坐标系的条带号,要求用户输入。void
showAllElements()
使所有的标准图幅元素可见。
-
-
-
构造器详细资料
-
StandardMargin
public StandardMargin()
构造一个新的 StandardMargin 对象。
-
StandardMargin
public StandardMargin(StandardMargin margin)
根据指定的 StandardMargin 对象构造一个新的与其相同的新对象。- 参数:
margin
- 指定的 StandardMargin 对象。
-
StandardMargin
public StandardMargin(StandardMargin.MarginScaleType scaleType)
根据指定的参数来构造一个 StandardMargin 的新对象。若传入的比例尺是大比例尺(1:500,1:1000,1:2000),则认为左下角点坐标为(0,0)。
- 参数:
scaleType
- 指定比例尺类型。
-
StandardMargin
public StandardMargin(String sheetName)
根据指定的参数来构造一个 StandardMargin 的新对象。当指定的名称不标准时抛出异常。
在地图分幅中,1:100 万地图分幅是从赤道起向两极每纬差 4°为一行,至 88°,南北半球各分为 22 横列,依次编号 A、B、... V;经度由 180°自西向东每 6°一列,全球 60 列,以 1-60 表示。SuperMap 目前只支持纬度在 0 度到 北纬 76 度之间的分幅,即横列号只支持到 S。
- 参数:
sheetName
- 指定的图幅名。
-
StandardMargin
public StandardMargin(StandardMargin.MarginScaleType scaleType, Point2D leftBottom)
根据指定的参数来构造一个 StandardMargin 的新对象。若传入的比例尺类型不是大比例尺,则仍可构造,但是传入的左下角点坐标将无效。
- 参数:
scaleType
- 图幅比例尺类型,要求为大比例尺类型(1:500,1:1000,1:2000)。leftBottom
- 左下角点坐标,点的x和y值均不能为负。
-
StandardMargin
public StandardMargin(StandardMargin.MarginScaleType scaleType, StandardMargin.MarginLargeScaleSheetType largeScaleSheetType, Rectangle2D bounds)
根据指定的参数来构造一个 StandardMargin 的新对象。当分幅类型是自定义分幅时, 则构造的图幅框的大小可由给定的 bounds 决定, 但如果分幅类型为40*50 或者 50*50 时,则只取给定的图幅范围中的左下角点作为图幅的起始点。
若传入的比例尺类型不是大比例尺,则仍可构造,但是传入的分幅类型和范围将无效。
- 参数:
scaleType
- 图幅比例尺类型,要求为大比例尺类型(1:500,1:1000,1:2000)。largeScaleSheetType
- 大比例尺下的图幅分幅类型。bounds
- 给定的图幅范围。当图幅范围类型为 40*50分幅或者 50*50分幅时, 取该bounds中的左下角点作为图幅的起始点。
-
-
方法详细资料
-
getOffset
public StandardMargin.MarginOffset getOffset()
返回图幅元素对象的偏移设置。- 返回:
- 图幅元素对象的偏移设置。
-
getStyle
public StandardMargin.MarginStyle getStyle()
返回图幅元素的文本样式。- 返回:
- 图幅元素的文本样式。
-
get
public boolean get(StandardMargin.MarginElementType type)
返回指定图幅元素是否可见。- 参数:
type
- 指定图幅元素。- 返回:
- 指定图幅元素可见返回 true;否则返回 false。
-
set
public void set(StandardMargin.MarginElementType type, boolean value)
设置指定图幅元素是否可见。- 参数:
type
- 指定图幅元素。value
- 一个布尔值指定图幅元素是否可见。
-
getBounds
public Rectangle2D getBounds()
返回图幅经纬度范围。- 返回:
- 图幅经纬度范围。
- 默认值:
- 默认值为 (102,32,108,36}。
-
getPrjCoordSys
public PrjCoordSys getPrjCoordSys()
返回图幅投影坐标系。- 返回:
- 图幅投影坐标系。
- 默认值:
- 默认值为空的
PrjCoordSys
对象。
-
setPrjCoordSys
public void setPrjCoordSys(PrjCoordSys prjCoordSys)
设置图幅投影坐标系。- 参数:
prjCoordSys
- 图幅投影坐标系。
-
getScaleType
public StandardMargin.MarginScaleType getScaleType()
返回图幅比例尺类型。- 返回:
- 图幅比例尺类型。
- 默认值:
- 默认值为
MarginScaleType.SCALE_1000000
。
-
getSheetNameType
public StandardMargin.MarginStandardType getSheetNameType()
返回图幅编号类型。- 返回:
- 图幅编号类型。
-
getLargeScaleSheetType
public StandardMargin.MarginLargeScaleSheetType getLargeScaleSheetType()
返回大比例尺(1:500 - 1:2000)图幅分幅类型。- 返回:
- 大比例尺(1:500 - 1:2000)图幅分幅类型。
- 默认值:
- 默认值为
MarginLargeScaleSheetType.SHEET40x50
。
-
setLargeScaleSheetType
public void setLargeScaleSheetType(StandardMargin.MarginLargeScaleSheetType type)
设置大比例尺(1:500 - 1:2000)图幅分幅类型。- 参数:
type
- 大比例尺(1:500 - 1:2000)图幅分幅类型。
-
getLargeScaleCoordSysType
public StandardMargin.MarginLargeScaleCoordSysType getLargeScaleCoordSysType()
返回大比例尺图幅的坐标系类型。- 返回:
- 大比例尺图幅的坐标系类型。
- 默认值:
- 默认值为
MarginLargeScaleCoordSysType.USERDEFINE
。
-
setLargeScaleCoordSysType
public void setLargeScaleCoordSysType(StandardMargin.MarginLargeScaleCoordSysType type)
设置大比例尺图幅的坐标系类型。- 参数:
type
- 大比例尺图幅的坐标系类型。
-
getKilometerGridType
public StandardMargin.MarginKilometerGridType getKilometerGridType()
返回公里网网格类型。- 返回:
- 公里网网格类型。
- 默认值:
- 默认值为
MarginKilometerGridType.CROSS
。
-
setKilometerGridType
public void setKilometerGridType(StandardMargin.MarginKilometerGridType type)
设置公里网网格类型。- 参数:
type
- 公里网网格类型。
-
getMapName
public String getMapName()
返回地图名。- 返回:
- 地图名。
- 默认值:
- 默认值为 "Untitled"。
-
setMapName
public void setMapName(String mapName)
设置地图名。- 参数:
mapName
- 地图名。
-
getSheetName
public String getSheetName()
返回图幅名(即图幅编号)。- 返回:
- 图幅名(即图幅编号)。
- 默认值:
- 默认值为 "I"。
-
getPublisher
public String getPublisher()
返回地图出版单位的名称。- 返回:
- 地图出版单位的名称。
- 默认值:
- 默认值为“国家测绘局”。
-
setPublisher
public void setPublisher(String publisher)
设置地图出版单位的名称。- 参数:
publisher
- 地图出版单位的名称。
-
getSafeInfo
public String getSafeInfo()
返回出版密级文本。- 返回:
- 出版密级文本。
- 默认值:
- 默认值为“秘密 ★ 长期”。
-
setSafeInfo
public void setSafeInfo(String safeInfo)
设置出版密级文本。- 参数:
safeInfo
- 出版密级文本。
-
getInformation
public String[] getInformation()
返回信息,通常放置在图幅的右下角,包括图示,坐标系,高程基准,航摄,出版等信息。- 返回:
- 信息。
- 默认值:
- 默认值为空的 System.String[] 对象。
-
setInformation
public void setInformation(String[] information)
设置信息,通常放置在图幅的右下角,包括图示,坐标系,高程基准,航摄,出版等信息。- 参数:
information
- 信息。
-
getAnnotation
public String[] getAnnotation()
返回附注文本数组。- 返回:
- 附注文本数组。
- 默认值:
- 默认值为空的 System.String[] 对象。
-
setAnnotation
public void setAnnotation(String[] annotation)
设置附注文本数组。- 参数:
value
- 附注文本数组。
-
getNeighborMapNames
public String[] getNeighborMapNames()
返回邻接图幅名。- 返回:
- 邻接图幅名。
- 默认值:
- 默认值为空的 System.String[] 对象。
-
setNeighborMapNames
public void setNeighborMapNames(String[] neighborMapName)
设置邻接图幅名。- 参数:
neighborMapName
- 邻接图幅名。
-
getNeighborSheetNames
public String[] getNeighborSheetNames()
返回邻接图幅号。- 返回:
- 邻接图幅号。
- 默认值:
- 默认值为空的 System.String[] 对象
-
getInformationRowSpace
public double getInformationRowSpace()
返回地图显示信息的行间距。- 返回:
- 地图显示信息的行间距。
- 默认值:
- 默认值为 0。
-
setInformationRowSpace
public void setInformationRowSpace(double value)
设置地图显示信息的行间距。- 参数:
value
- 地图显示信息的行间距。
-
getAnnotationRowSpace
public double getAnnotationRowSpace()
返回地图显示信息的行间距。- 返回:
- 地图显示信息的行间距。
- 默认值:
- 默认值为 2。
-
setAnnotationRowSpace
public void setAnnotationRowSpace(double value)
设置地图显示信息的行间距。- 参数:
value
- 地图显示信息的行间距。
-
getContourInterval
public double getContourInterval()
返回等高距。- 返回:
- 等高距。
- 默认值:
- 默认值为 0。
-
setContourInterval
public void setContourInterval(double value)
设置等高距。- 参数:
value
- 等高距。
-
getKilometerGridHorizontalSpace
public double getKilometerGridHorizontalSpace()
返回公里网水平方向网格长度。- 返回:
- 公里网水平方向网格长度。
-
setKilometerGridHorizontalSpace
public void setKilometerGridHorizontalSpace(double value)
设置公里网水平方向网格长度。- 参数:
value
- 公里网水平方向网格长度。- 默认值:
- 默认值为 0。
-
getKilometerGridVerticalSpace
public double getKilometerGridVerticalSpace()
返回公里网垂直方向网格长度。- 返回:
- 公里网垂直方向网格长度。
-
setKilometerGridVerticalSpace
public void setKilometerGridVerticalSpace(double value)
设置公里网垂直方向网格长度。- 参数:
value
- 公里网垂直方向网格长度。- 默认值:
- 默认值为 0。
-
getSegmentCount
public int getSegmentCount()
返回为保证投影转换后的精度而在边框上插值的个数。一般中小比例尺地形图,图框的弧度比较大,需要多一些插值点,形成弧线的效果。
- 返回:
- 为保证投影转换后的精度而在边框上插值的个数。
-
setSegmentCount
public void setSegmentCount(int value)
设置为保证投影转换后的精度而在边框上插值的个数。一般中小比例尺地形图,图框的弧度比较大,需要多一些插值点,形成弧线的效果。
- 参数:
value
- 为保证投影转换后的精度而在边框上插值的个数。- 默认值:
- 默认值为 72。
-
getZoneNumber
public int getZoneNumber()
返回大比例尺地图的国家坐标系的条带号,要求用户输入。- 返回:
- 大比例尺地图的国家坐标系的条带号。
- 默认值:
- 默认值为 0。
-
setZoneNumber
public void setZoneNumber(int value)
设置大比例尺地图的国家坐标系的条带号,要求用户输入。- 参数:
value
- 大比例尺地图的国家坐标系的条带号。
-
getMeridianAngle
public double getMeridianAngle()
返回子午线收敛角。子午线收敛角指的是格网中相邻子午线间的夹角。
- 返回:
- 子午线收敛角。
- 默认值:
- 默认值为 1.4834。
-
setMeridianAngle
public void setMeridianAngle(double value)
设置子午线收敛角。子午线收敛角指的是格网中相邻子午线间的夹角。
- 参数:
value
- 子午线收敛角。
-
getMagnetAngle
public double getMagnetAngle()
返回磁偏角。磁偏角指的是地球磁场磁极北方向与地理北方向的夹角。
- 返回:
- 磁偏角。
- 默认值:
- 默认值-1.67。
-
setMagnetAngle
public void setMagnetAngle(double value)
设置磁偏角。磁偏角指的是地球磁场磁极北方向与地理北方向的夹角。
- 参数:
value
- 磁偏角。
-
getInsideSpace
public double getInsideSpace()
返回图幅外框的外边沿与内框的距离。- 返回:
- 图幅外框的外边沿与内框的距离。
- 默认值:
- 默认值 10。
-
setInsideSpace
public void setInsideSpace(double value)
设置图幅外框的外边沿与内框的距离。- 参数:
value
- 图幅外框的外边沿与内框的距离。
-
getOuterBoxLineWidth
public double getOuterBoxLineWidth()
返回图幅外框的线宽。- 返回:
- 图幅外框的线宽。
- 默认值:
- 默认值 1。
-
setOuterBoxLineWidth
public void setOuterBoxLineWidth(double value)
设置图幅外框的线宽。- 参数:
value
- 图幅外框的线宽。
-
getCrossLength
public double getCrossLength()
返回十字丝公里网十字的长度。只有大比例尺地形图图框才有十字丝公里网。
- 返回:
- 十字丝公里网十字的长度。
- 默认值:
- 默认值为 10。
-
setCrossLength
public void setCrossLength(double value)
设置十字丝公里网十字的长度。只有大比例尺地形图图框才有十字丝公里网。
- 参数:
value
- 十字丝公里网十字的长度。
-
isCreateLonLatText
public boolean isCreateLonLatText()
-
setIsCreateLonLatText
public void setIsCreateLonLatText(boolean bValue)
-
dispose
public void dispose()
释放该对象所占用的资源。当调用该方法之后,此对象不再可用。
-
showAllElements
public void showAllElements()
使所有的标准图幅元素可见。
-
hideAllElements
public void hideAllElements()
使所有的标准图幅元素不可见。
-
computeSheetName
public static String computeSheetName(Point2D bottomLeft, StandardMargin.MarginScaleType scaleType)
根据左下脚坐标和比例尺计算图幅名称。- 参数:
bottomLeft
- 左下脚坐标。scaleType
- 比例尺。- 返回:
- 图幅名称。
-
createStandardMarginDataset
public static DatasetVector createStandardMarginDataset(Datasource datasource, String datasetName, StandardMargin standardMargin)
创建标准图幅图框,并将标准图幅图框以CAD数据集的形式保存到指定的数据源中。- 当指定的标准图幅图框类对象比例尺大于1:2000时,生成的标准图幅图框不可以采用平面投影。
- 当指定的标准图幅图框对象比例尺小于或等于1:2000时,生成的标准图幅图框不可以采用平面投影或经纬投影。
- 参数:
datasource
- 指定的数据源。datasetName
- 指定的数据集名称。standardMargin
- 指定的标准图幅图框类对象。- 返回:
- CAD 数据集。
-
-
Copyright © 2021–2024 SuperMap. All rights reserved.