地图工作室 WebApp 支持用户通过配置使用自定义 Web 符号、配置要素捕捉所支持的最大节点数量。本节将介绍地图工作室 WebApp 的扩展流程。

自定义Web符号

  1. 在 【iPortal产品包】/webapps/iportal/WEB-INF/lib/ 路径下找到并解压 webjar-mapstudio-*.jar 文件,打开 解压目录/META-INF/resources/apps/mapstudio/config 路径下的 MapStudio.json 配置文件,在此文件中配置自定义符号,示例代码如下:

{
    "customSymbols": {
        "iconIds":  [
            {
                "name": "滑板车",
                "path": "./customSymbol/custom-0.png"
            },
            {
                "name": "乒乓",
                "path": "./customSymbol/custom-1.png"
            },
            {
                ...
            }
        ]
    }

  1. 将自定义符号的图片存放在 webjar-mapstudio-*.jar 中的 META-INF/resources/apps/mapstudio/static/symbols 路径下,目前支持JPG和PNG格式的符号。
  2. 将 MapStudio.json 重新压缩到 webjar-mapstudio-*.jar 文件中。
  3. 配置完成后重新进入地图工作室,自定义符号会显示在通用符号面板中的“自定义”标签下,如下图所示:

 

支持通过配置为自定义符号添加一级和二级分类,以便分类管理和精准检索自定义符号,示例代码如下:

  • 配置category参数,为自定义符号添加一级分类

{
    "customSymbols": {
        "iconIds": {
            "pointColor": [
                {
                    "name": "红色",
                    "path": "./customSymbol/custom-0.png"
                },
                {
                    "name": "绿色",
                    "path": "./customSymbol/custom-number.png"
                },

               {

                    ...

                }
            ],

            "pointShape": [
                {
                    "name": "圆形",
                    "path": "./customSymbol/custom-0.png"
                },
                {
                    "name": "半圆形",
                    "path": "./customSymbol/custom-number.png"
                },

               {

                    ...

                }
            ]

        },
        "category": [
            {
                "value": "pointColor",
                "label": "颜色"
            },

            {
                "value": "pointShape",
                "label": "形状"
            },
        ]
    }
}

在“自定义”标签下将显示自定义符号的一级分类,如下图所示:

  • 配置了category和subCategory参数,为自定义符号添加一级和二级分类

{
    "customSymbols": {
        "iconIds": {
            "pointColor": {
                "pointRed": [
                    {
                        "name": "靶子",
                        "path": "./customSymbol/custom-0.png"
                    },
                    {
                        ...
                    }
                ],
                "pointGreen": [
                    {
                        "name": "花菜",
                        "path": "./customSymbol/custom-4.jpg"
                    },

                    {
                        ...
                    },
                ]
            },

           "pointShape": {

               ...

            }
        },
        "category": [
            {
                "value": "pointColor",
                "label": "颜色"
            },

            {
                "value": "pointShape",
                "label": "形状"
            }
        ],
        "subCategory": {
            "pointColor": [
                {
                    "value": "pointRed",
                    "label": "红色"
                },
                {
                    "value": "pointGreen",
                    "label": "绿色"
                },
                {
                    ...
                }
            ],

            "pointShape": [
                {
                    ...
                }

             ]
        }
    }
}

在“自定义”标签下将显示自定义符号的一级分类和二级分类,如下图所示:

配置要素捕捉支持的最大节点数量

要素编辑时,视图范围内要素累加节点总数超过某一最大数量则无法捕捉,该最大数量可配置,未进行配置时最大数量默认为100000。配置方法如下:
在 【iPortal产品包】/webapps/iportal/WEB-INF/lib/ 路径下找到并解压 webjar-mapstudio-*.jar 文件,打开 解压目录/META-INF/resources/apps/mapstudio/config 路径下的 MapStudio.json 配置文件,在此文件中配置要素捕捉支持的最大节点数量,该数量需大于0。示例代码如下:

{
“snapMaxVertex": 80000
}