com.supermap.data

类 GeoMapGrid

  • 所有已实现的接口:
    IDisposable


    public class GeoMapGrid
    extends Geometry
    GeoMapGrid 类,用来为布局中的地图对象添加经纬网格或者公里网,或者添加自定义的参考网格。 如下图所示,为一个布局控件,其中显示了一个布局,布局中的地图(地图为经纬度坐标系)添加了经纬网格,以及对经纬网格所指示的经纬度进行标注显示。

    示范代码:
    以下代码示范了如何为布局中的地图添加经纬网。下列代码要求已经创建了一个 Workspace实例,实例的名称(name)为:workspace,并且通过该实例打开了示范数据提供的 World.smwu 工作空间。还要求创建一个 MapLayoutControl实例,实例的名称(name)为:m_mapLayoutControl,,并且已经建立了 m_mapLayoutControl 实例与 workspace 实例的关联关系。
            public static void geoMapGridExample(Workspace workspace)
        {
                    // 新建一个布局对象,并将布局对象关联到已经打开的工作空间。
            MapLayout mapLayout = m_mapLayoutControl.getMapLayout();
            mapLayout.getPaper().setOrientation(PaperOrientation.LANDSCAPE);
            
            // 设置布局中所显示的地图对象的范围。
            Rectangle2D bounds = mapLayout.getBounds();
            int nDis = 300;
            bounds.setLeft(bounds.getLeft() + nDis);
            bounds.setBottom(bounds.getBottom() + nDis);
            bounds.setRight(bounds.getRight() - nDis);
            bounds.setTop(bounds.getTop() - nDis);
            GeoRectangle geomapShape = new GeoRectangle(bounds, 0);
            String strMapName = "Map";
            m_geomap = new GeoMap(strMapName, geomapShape);
            m_geomap.setMapName("世界地图_Day");
    
            // 新建一个 GeoMapGrid 对象。
            GeoMapGrid geoMapGrid = new GeoMapGrid();
            
            // 设置 GeoMapGrid 对象的相关属性,即设置地图的经纬网的风格。
            
            // 设置为地图添加经纬网。
            geoMapGrid.setGridType(GeoMapGridType.GRATICULE);
            // 设置经纬网的格网线的线型风格。
            geoMapGrid.getGridLineStyle().setLineSymbolID(9);
            geoMapGrid.getGridLineStyle().setLineColor(Color.BLACK);
            // 设置经纬网的格网线的水平、竖直间距。
            geoMapGrid.setHorizontalGridDistance(40);
            geoMapGrid.setVerticalGridDistance(40);
            // 设置经纬网的格网线的类型为实线。
            geoMapGrid.setGridLineType(GeoMapGridLineType.SOLIDLINE);
            // 设置经纬网的边框风格。
            GeoStyle style = new GeoStyle();
            style.setLineSymbolID(6);
            style.setLineColor(Color.BLACK);
            style.setLineWidth(0.2);
            geoMapGrid.setBorderLineStyle(style);
            // 设置经纬网文本标注的水平、竖直位置。
            geoMapGrid.setHorizontalTextPosition(HorizontalTextPositionType.MIDDLE);
            geoMapGrid.setVerticalTextPosition(VerticalTextPositionType.MIDDLE);
            // 设置经纬网文本标注的文本风格。
            geoMapGrid.getGridLineTextStyle().setForeColor(Color.BLACK);
            geoMapGrid.getGridLineTextStyle().setFontHeight(60);
    
            // 为地图对象添加经纬网。
            m_geomap.setGridVisible(true);
            m_geomap.setMapGrid(geoMapGrid);
    
            // 将添加经纬网的地图对象添加到布局中。
            mapLayout.getElements().addNew(m_geomap);
            mapLayout.zoomToPaper();
            mapLayout.refresh();
        }
    
     
    • 构造器详细资料

      • GeoMapGrid

        public GeoMapGrid()
        构造一个新的 GeoMapGrid 对象。
      • GeoMapGrid

        public GeoMapGrid(GeoMapGrid geoMapGrid)
        根据给定的 GeoMapGrid 对象构造一个与其完全相同的新对象。
        参数:
        geoMapGrid - 一个 GeoMapGrid 对象。
    • 方法详细资料

      • getGridType

        public GeoMapGridType getGridType()
        返回为地图添加的网格的类型。
        返回:
        返回为地图添加的网格的类型。
      • setGridType

        public void setGridType(GeoMapGridType gridType)
        设置为地图添加的网格的类型,如,如果地图是经纬度坐标系,可以为地图添加经纬网,如果地图是平面坐标系,可以为地图添加公里网,还可以通过自定义的方式为地图添加自定义参考网格。
        参数:
        gridType - 一个枚举值,用来设置为地图添加的网格的类型。
      • getVerticalGridDistance

        public double getVerticalGridDistance()
        返回为地图添加的经纬网或者公里网的格网线的垂直刻度值间隔。如果为经纬网,单位为度;如果为公里网,单位为千米。
        返回:
        返回为地图添加的经纬网或者公里网的格网线的垂直刻度值间隔。如果为经纬网,单位为度;如果为公里网,单位为千米。
      • setVerticalGridDistance

        public void setVerticalGridDistance(double value)
        设置为地图添加的经纬网或者公里网的格网线的垂直刻度值间隔。如果为经纬网,单位为度;如果为公里网,单位为千米。
        参数:
        value - 垂直刻度值间隔。如果为经纬网,单位为度;如果为公里网,单位为千米。
      • getHorizontalGridDistance

        public double getHorizontalGridDistance()
        返回为地图添加的经纬网或者公里网的格网线的水平刻度值间隔。如果为经纬网,单位为度;如果为公里网,单位为千米。
        返回:
        返回为地图添加的经纬网或者公里网的格网线的水平刻度值间隔。如果为经纬网,单位为度;如果为公里网,单位为千米。
      • setHorizontalGridDistance

        public void setHorizontalGridDistance(double value)
        设置为地图添加的经纬网或者公里网的格网线的水平刻度值间隔。如果为经纬网,单位为度;如果为公里网,单位为千米。
        参数:
        value - 水平刻度值间隔。如果为经纬网,单位为度;如果为公里网,单位为千米。
      • getGridLineStyle

        public GeoStyle getGridLineStyle()
        返回为地图添加的经纬网或者公里网的格网线的线型风格。
        返回:
        返回为地图添加的经纬网或者公里网的格网线的线型风格。
      • setGridLineStyle

        public void setGridLineStyle(GeoStyle lineStyle)
        设置为地图添加的经纬网或者公里网的格网线的线型风格。只有在设置的格网线的类型为实线类型时,该属性的设置才生效。
        参数:
        lineStyle - 为地图添加的经纬网或者公里网的格网线的线型风格。
      • getBorderLineStyle

        public GeoStyle getBorderLineStyle()
        返回为地图添加的经纬网或者公里网的边框样式。
        返回:
        返回为地图添加的经纬网或者公里网的边框样式。
      • setBorderLineStyle

        public void setBorderLineStyle(GeoStyle lineStyle)
        设置为地图添加的经纬网或者公里网的边框样式。
        参数:
        lineStyle - 一个 GeoStyle 对象,为地图添加的经纬网或者公里网的边框样式边框样式。
      • getGridLineType

        public GeoMapGridLineType getGridLineType()
        返回为地图添加的经纬网或者公里网的格网线的类型。
        返回:
        返回为地图添加的经纬网或者公里网的格网线的类型。
      • setGridLineType

        public void setGridLineType(GeoMapGridLineType gridLineType)
        设置为地图添加的经纬网或者公里网的格网线的类型,如,可以选择不添加格网线;也可以选择不添加格网线,但是在垂直网格线和水平网格线间的交叉处添加十字丝;或者选择添加实线类型的格网线,然后自定义格网线的线型风格。
        参数:
        gridLineType - 一个枚举值,指定为地图添加的经纬网或者公里网的格网线的类型。
      • isMajorDivisionTicksVisible

        public boolean isMajorDivisionTicksVisible()
        返回是否显示经纬网或者公里网的主分割线。
        返回:
        返回是否显示经纬网或者公里网的主分割线。True,表示显示;false,表示不显示。
      • setMajorDivisionTicksVisible

        public void setMajorDivisionTicksVisible(boolean value)
        设置是否显示经纬网或者公里网的主分割线。
        参数:
        value - 一个布尔值,指定是否显示经纬网或者公里网的主分割线。True,表示显示;false,表示不显示。
      • getMajorDivisionTicksStyle

        public GeoStyle getMajorDivisionTicksStyle()
        返回经纬网或者公里网的主分割线的线型风格。
        返回:
        返回经纬网或者公里网的主分割线的线型风格。
      • setMajorDivisionTicksStyle

        public void setMajorDivisionTicksStyle(GeoStyle geoStyle)
        设置经纬网或者公里网的主分割线的线型风格。
        参数:
        geoStyle - 一个 GeoStyle 对象,指定经纬网或者公里网的主分割线的线型风格。
      • isMinorDivisionTicksVisible

        public boolean isMinorDivisionTicksVisible()
        返回是否显示公里网的次分割线。
        返回:
        返回是否显示公里网的次分割线。True,表示显示;false,表示不显示。
      • setMinorDivisionTicksVisible

        public void setMinorDivisionTicksVisible(boolean value)
        设置是否显示公里网的次分割线。
        参数:
        value - 一个布尔值,指定是否显示经纬网或者公里网的次分割线。True,表示显示;false,表示不显示。
      • getMinorDivisionTicksStyle

        public GeoStyle getMinorDivisionTicksStyle()
        返回公里网的次分割线的线型风格。
        返回:
        返回公里网的次分割线的线型风格。
      • setMinorDivisionTicksStyle

        public void setMinorDivisionTicksStyle(GeoStyle geoStyle)
        设置公里网的次分割线的线型风格。
        参数:
        geoStyle - 一个 GeoStyle 对象,指定经纬网或者公里网的次分割线的线型风格。
      • getMinorDivisionTicksCount

        public double getMinorDivisionTicksCount()
        返回公里网的次分割线的个数。
        返回:
        返回公里网的次分割线的个数。
      • setMinorDivisionTicksCount

        public void setMinorDivisionTicksCount(int value)
        设置公里网的次分割线的个数。
        参数:
        value - 公里网的次分割线的个数。
      • getHorizontalTextPosition

        public HorizontalTextPositionType getHorizontalTextPosition()
        返回经纬网或者公里网文本标注的水平位置。
        返回:
        返回经纬网或者公里网文本标注的水平位置。
      • setHorizontalTextPosition

        public void setHorizontalTextPosition(HorizontalTextPositionType positionType)
        设置经纬网或者公里网文本标注的水平位置。
        参数:
        positionType - 一个枚举值,指定经纬网或者公里网文本标注的水平位置。
      • getVerticalTextPosition

        public VerticalTextPositionType getVerticalTextPosition()
        返回经纬网或者公里网文本标注的垂直位置。
        返回:
        返回经纬网或者公里网文本标注的垂直位置。
      • setVerticalTextPosition

        public void setVerticalTextPosition(VerticalTextPositionType positionType)
        设置经纬网或者公里网文本标注的垂直位置。
        参数:
        positionType - 一个枚举值,指定经纬网或者公里网文本标注的垂直位置。
      • getGridLineTextStyle

        public TextStyle getGridLineTextStyle()
        返回经纬网或者公里网文本标注的文本风格。
        返回:
        返回经纬网或者公里网文本标注的文本风格。
      • setGridLineTextStyle

        public void setGridLineTextStyle(TextStyle textStyle)
        设置经纬网或者公里网文本标注的文本风格。
        参数:
        textStyle - 一个 TextStyle 对象,指定经纬网或者公里网文本标注的文本风格。
      • clone

        public GeoMapGrid clone()
        从类复制的说明: Geometry
        克隆一个Geometry对象。
        指定者:
        clone 在类中 Geometry
        返回:
        克隆的Geometry对象。
      • setPrjCoordSys

        public void setPrjCoordSys(PrjCoordSys prjCoordSys)
      • getIsVisible

        public boolean getIsVisible()
      • setIsVisible

        public void setIsVisible(boolean value)
      • setMapGridTextType

        public void setMapGridTextType(MapGridTextType mapGridTextType)
      • getIsOnlyShowNote

        public boolean getIsOnlyShowNote()
      • setIsOnlyShowNote

        public void setIsOnlyShowNote(boolean value)
      • getNoteMaxLength

        public int getNoteMaxLength()
      • setNoteMaxLength

        public void setNoteMaxLength(int value)
      • getLabelTextOffset

        public int getLabelTextOffset()
      • setLabelTextOffset

        public void setLabelTextOffset(int value)
      • getIsAutoAdjustGridDistance

        public boolean getIsAutoAdjustGridDistance()
      • setIsAutoAdjustGridDistance

        public void setIsAutoAdjustGridDistance(boolean value)
      • getName

        public String getName()
      • setName

        public void setName(String name)
      • getLabelVisibleDirections

        public Direction[] getLabelVisibleDirections()
        返回边框标注可见方向。
        返回:
        返回边框标注可见方向。
      • setLabelVisibleDirections

        public void setLabelVisibleDirections(Direction[] directions)
        设置边框标注可见方向。
        参数:
        directions - 边框标注可见方向。
      • getVerticalLabelDirections

        public Direction[] getVerticalLabelDirections()
        返回边框垂直标注方向。
        返回:
        返回边框垂直标注方向。
      • setVerticalLabelDirections

        public void setVerticalLabelDirections(Direction[] directions)
        设置边框垂直标注方向。
        参数:
        directions - 边框垂直标注方向。
      • getMaxDisplayDecimalLength

        public int getMaxDisplayDecimalLength()
        返回标注最多显示小数位数。
        返回:
        返回标注最多显示小数位数。
      • setMaxDisplayDecimalLength

        public void setMaxDisplayDecimalLength(int value)
        设置标注最多显示小数位数。
      • getCornerTextOffsetX

        public int getCornerTextOffsetX()
        返回拐角标注横轴方向偏移量。
        返回:
        返回拐角标注横轴方向偏移量。
      • setCornerTextOffsetX

        public void setCornerTextOffsetX(int value)
        设置拐角标注横轴方向偏移量。
        参数:
        value - 拐角标注横轴方向偏移量。
      • getCornerTextOffsetY

        public int getCornerTextOffsetY()
        返回拐角标注纵轴方向偏移量。
        返回:
        返回拐角标注纵轴方向偏移量。
      • setCornerTextOffsetY

        public void setCornerTextOffsetY(int value)
        设置拐角标注纵轴方向偏移量。
        参数:
        value - 拐角标注纵轴方向偏移量。
      • getCornerTextPosition

        public CornerTextPositionType getCornerTextPosition()
        返回拐角标注位置。
        返回:
        返回拐角标注位置。
      • setCornerTextPosition

        public void setCornerTextPosition(CornerTextPositionType cornerTextPosition)
        设置拐角标注位置。
        参数:
        cornerTextPosition - 拐角标注位置。
      • FromXML

        public boolean FromXML(String gridXML)
      • setGridShowWay

        public void setGridShowWay(GridShowWayType showWayType)
        设置经纬网格文本标注的显示格式。
        参数:
        showWayType - 经纬网格文本标注的显示格式。
      • getGridShowWay

        public GridShowWayType getGridShowWay()
        返回经纬网格文本标注的显示格式。
        返回:
        返回经纬网格文本标注的显示格式。

Copyright © 2021–2024 SuperMap. All rights reserved.