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 classStandardMargin.MarginElementType该类定义了标准图幅元素类型常量,包括了标准图幅边框中包含的元素。static classStandardMargin.MarginKilometerGridType该类定义了公里网网格类型常量,用于标示网格线类型是十字丝类型还是实线类型。static classStandardMargin.MarginLargeScaleCoordSysType该类定义了大比例尺图幅的坐标系类型常量。static classStandardMargin.MarginLargeScaleSheetType该类定义了大比例尺图幅范围类型常量。classStandardMargin.MarginOffset标准图幅偏移设置类。static classStandardMargin.MarginScaleType该类定义了标准比例尺类型常量,包括了边框处比例尺的类型。static classStandardMargin.MarginStandardType该类定义了图幅标准类型常量。classStandardMargin.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 StringcomputeSheetName(Point2D bottomLeft, StandardMargin.MarginScaleType scaleType)根据左下脚坐标和比例尺计算图幅名称。static DatasetVectorcreateStandardMarginDataset(Datasource datasource, String datasetName, StandardMargin standardMargin)创建标准图幅图框,并将标准图幅图框以CAD数据集的形式保存到指定的数据源中。voiddispose()释放该对象所占用的资源。booleanget(StandardMargin.MarginElementType type)返回指定图幅元素是否可见。String[]getAnnotation()返回附注文本数组。doublegetAnnotationRowSpace()返回地图显示信息的行间距。Rectangle2DgetBounds()返回图幅经纬度范围。doublegetContourInterval()返回等高距。doublegetCrossLength()返回十字丝公里网十字的长度。String[]getInformation()返回信息,通常放置在图幅的右下角,包括图示,坐标系,高程基准,航摄,出版等信息。doublegetInformationRowSpace()返回地图显示信息的行间距。doublegetInsideSpace()返回图幅外框的外边沿与内框的距离。doublegetKilometerGridHorizontalSpace()返回公里网水平方向网格长度。StandardMargin.MarginKilometerGridTypegetKilometerGridType()返回公里网网格类型。doublegetKilometerGridVerticalSpace()返回公里网垂直方向网格长度。StandardMargin.MarginLargeScaleCoordSysTypegetLargeScaleCoordSysType()返回大比例尺图幅的坐标系类型。StandardMargin.MarginLargeScaleSheetTypegetLargeScaleSheetType()返回大比例尺(1:500 - 1:2000)图幅分幅类型。doublegetMagnetAngle()返回磁偏角。StringgetMapName()返回地图名。doublegetMeridianAngle()返回子午线收敛角。String[]getNeighborMapNames()返回邻接图幅名。String[]getNeighborSheetNames()返回邻接图幅号。StandardMargin.MarginOffsetgetOffset()返回图幅元素对象的偏移设置。doublegetOuterBoxLineWidth()返回图幅外框的线宽。PrjCoordSysgetPrjCoordSys()返回图幅投影坐标系。StringgetPublisher()返回地图出版单位的名称。StringgetSafeInfo()返回出版密级文本。StandardMargin.MarginScaleTypegetScaleType()返回图幅比例尺类型。intgetSegmentCount()返回为保证投影转换后的精度而在边框上插值的个数。StringgetSheetName()返回图幅名(即图幅编号)。StandardMargin.MarginStandardTypegetSheetNameType()返回图幅编号类型。StandardMargin.MarginStylegetStyle()返回图幅元素的文本样式。intgetZoneNumber()返回大比例尺地图的国家坐标系的条带号,要求用户输入。voidhideAllElements()使所有的标准图幅元素不可见。booleanisCreateLonLatText()voidset(StandardMargin.MarginElementType type, boolean value)设置指定图幅元素是否可见。voidsetAnnotation(String[] annotation)设置附注文本数组。voidsetAnnotationRowSpace(double value)设置地图显示信息的行间距。voidsetContourInterval(double value)设置等高距。voidsetCrossLength(double value)设置十字丝公里网十字的长度。voidsetInformation(String[] information)设置信息,通常放置在图幅的右下角,包括图示,坐标系,高程基准,航摄,出版等信息。voidsetInformationRowSpace(double value)设置地图显示信息的行间距。voidsetInsideSpace(double value)设置图幅外框的外边沿与内框的距离。voidsetIsCreateLonLatText(boolean bValue)voidsetKilometerGridHorizontalSpace(double value)设置公里网水平方向网格长度。voidsetKilometerGridType(StandardMargin.MarginKilometerGridType type)设置公里网网格类型。voidsetKilometerGridVerticalSpace(double value)设置公里网垂直方向网格长度。voidsetLargeScaleCoordSysType(StandardMargin.MarginLargeScaleCoordSysType type)设置大比例尺图幅的坐标系类型。voidsetLargeScaleSheetType(StandardMargin.MarginLargeScaleSheetType type)设置大比例尺(1:500 - 1:2000)图幅分幅类型。voidsetMagnetAngle(double value)设置磁偏角。voidsetMapName(String mapName)设置地图名。voidsetMeridianAngle(double value)设置子午线收敛角。voidsetNeighborMapNames(String[] neighborMapName)设置邻接图幅名。voidsetOuterBoxLineWidth(double value)设置图幅外框的线宽。voidsetPrjCoordSys(PrjCoordSys prjCoordSys)设置图幅投影坐标系。voidsetPublisher(String publisher)设置地图出版单位的名称。voidsetSafeInfo(String safeInfo)设置出版密级文本。voidsetSegmentCount(int value)设置为保证投影转换后的精度而在边框上插值的个数。voidsetZoneNumber(int value)设置大比例尺地图的国家坐标系的条带号,要求用户输入。voidshowAllElements()使所有的标准图幅元素可见。
-
-
-
构造器详细资料
-
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–2025 SuperMap. All rights reserved.