跳至内容

配置 GeoScene Maritime

在标准版或高级版许可等级下可用。

获得生产制图许可后可用。

获得 GeoScene Maritime 许可后可用。

GeoScene Maritime 使用服务器对象扩展模块 (SOE)。您必须将 SOE 添加到 GeoScene Server Manager 站点,才能为地图服务启用海图服务功能。

在设置服务之前,请查看以下系统要求信息:

  • 由于潜在的性能问题,不建议将映射的网络驱动器用于 workspaceDirectories 属性设置。建议将 .senc 文件存储在物理服务器上。
  • 海图服务只能在专用实例类型上启用。不支持共享实例池
  • 如果在 GET 请求中使用显示属性,则 URL 长度将超过 2,048 个字符。并非所有第三方应用都支持 POST。如果您的应用不支持 POST,则建议您使用 web.config.xml 文件增加允许的 URL 长度。
  • 部署自定义海图生成器 (CCB) 时,需要使用 web.config.xml 增加默认 URL 长度。
  • 建议您将地图服务的 javaHeapSize 值从默认的 128MB 增加到 2048MB 或更大,具体取决于您的系统资源和服务中的数据集数量。queryDataset 操作和自定义海图生成器 (CCB) 导出可以超过此默认限制。
  • 默认情况下,在 GeoScene Enterprise 4.0中,具有专用实例池的新地图服务将每台计算机的最小和最大实例数设置为零。强烈建议将每台计算机的最小和最大实例数设置为 1。这将确保在启动启用了海图服务 (MCS) 的地图服务时,编目过程将自动启动。这是先前版本的 GeoScene Enterprise 中的默认设置。如果没有此最小设置 1,则需向海图服务端点之一发出请求,以启动编目过程,并可能导致响应时间延迟。编目过程是 MCS 扫描数据集文件夹并生成必要的 .senc 文件。有关更改实例设置的详细信息,请参阅配置服务实例设置

启用海图服务

完成以下步骤以启用海图服务

  1. 在位于 <GeoScene Server installation drive>\geosceneserver\directoriesGeoScene Server 站点中创建名为 maritimeserver 的文件夹。
    注:

    如果此位置不存在,请验证是否已创建 GeoScene Server 站点。

    了解有关创建 GeoScene Server 站点的详细信息

  2. maritimechartservice 文件夹从 <GeoScene Server 安装目录>\MaritimeServer\Server<version> 复制到 maritimeserver 文件夹。
    注:

    安装步骤提供了用于部署配置文件的默认位置和名称。海图服务文件夹的名称和位置可能因组织的要求而异。

  3. 登录到 GeoScene Server Manager
  4. 单击站点
  5. 服务器配置窗口中,单击扩展模块
  6. 单击添加扩展模块
  7. 单击选择文件并浏览至 <GeoScene Maritime Server 安装目录>\MaritimeServer\Server<version>\Bin
  8. 单击 MaritimeServer.soe
  9. 单击添加

    添加 MaritimeServer.soe 文件。

  10. 单击服务选项卡。
  11. 单击要添加海图服务的地图服务。

    海图服务可与任何现有地图服务配合使用。

  12. 单击功能,然后选中海图服务复选框。
  13. 验证是否正确配置了海图服务属性。
    注:

    MaritimeServer.soe 使用 maritimechartservice 文件夹自动填充海图服务功能属性

  14. 单击保存并重新启动以重新启动地图服务。

    海图服务功能现已启用。

现在,您可以将 S-57S-63 数据集加载到地图服务中。

注:

可以修改默认配置设置

部署自定义海图生成器 (CCB)

Maritime 服务器扩展允许您部署基于 web 的应用程序,以实时生成信息地图产品,并允许您创建任何规模的产品。

复制 customchartbuilder 文件夹

自定义海图生成器 (CCB) 安装中的 customchartbuilder 文件夹复制到部署位置。可将安装位置中的文件视为备份,并根据需要修改部署位置中的文件。建议将 customchartbuilder 文件夹复制到以下位置:<GeoScene Server installation drive>\geosceneserver\directories\maritimeserver,以便 CCB 文件夹和 Maritime 服务器文件夹位于同一文件夹下。

注:
  • 要完成这些步骤,您必须拥有已启用海图服务功能的地图服务。
  • 自定义海图生成器 (CCB) 需要安装 PDF Merge Support。如果没有此功能,则无法从自定义海图生成器 (CCB) 应用程序导出 PDF 文档。

完成以下步骤以在 GeoScene Server 站点中部署自定义海图生成器 (CCB)

  1. 如有必要,可在位于 <GeoScene Server installation drive>\geosceneserver\directoriesGeoScene Server 站点中创建名为 maritimeserver 的文件夹。
    注:

    如果此位置不存在,请验证是否已创建 GeoScene Server 站点启用了海图服务

  2. 将 customchartbuilder 文件夹从 <GeoScene Maritime server installation drive>\MaritimeServer\Server<version> 复制到 <GeoScene Server installation drive>\geosceneserver\directories\maritimeserver
  3. 配置 GeoScene Server 账户

配置共享和权限

执行以下步骤以便为 <GeoScene Server installation drive>\geosceneserver 文件夹配置共享,并为 GeoScene Server 账户添加完全控制权限:

  1. 右键单击 geosceneserver 文件夹,然后单击属性
  2. 单击共享选项卡。
  3. 单击高级共享
  4. 选中共享此文件夹复选框。
  5. 单击权限
  6. 单击共享权限选项卡上的添加
  7. 添加 GeoScene Server 账户。
    注:

    您可以指定 GeoScene Server 账户的区域设置。默认情况下,除非指定了其他用户,否则此用户为 GeoScene。

  8. 添加 GeoScene Server 账户后,单击确定关闭选择用户或群组对话框。
  9. 共享权限选项卡的群组或用户名窗口中选择新添加的 GeoScene Server 账户。
  10. 选中完全控制旁边的允许复选框。
  11. 单击确定
  12. 单击确定关闭高级共享对话框。
  13. 单击关闭
  14. 单击确定关闭属性对话框。

发布服务定义文件

在地图上创建范围以导出 PDF 图表时,将两个服务定义文件发布到 GeoScene Server for CCB 以计算感兴趣区域 (AOI) 范围。

  1. 注:

    使用 GeoScene Server Manager 发布服务定义文件。为了简化部署,建议您在 GeoScene Server Manager 中创建一个名为 CCB 的文件夹,以组织与 CCB 相关的服务。

  2. 单击服务> 管理服务,选择 CCB 文件夹,然后单击发布服务
  3. 单击选择文件浏览到要发布的服务定义,或键入文件的路径。

    默认位置为 <GeoScene Server installation drive>\geosceneserver\directories\maritimeserver\customchartbuilder\ServiceDefinitionFiles

  4. 选择 Calculators.sd,然后单击打开
    警告:

    请勿更改服务的名称。如果这样做,web 应用程序将无法正常运行。

    默认情况下,服务定义将发布到服务定义配置中指定的服务器文件夹。若要更改发布服务定义的文件夹,请从下拉列表中选择一个文件夹,或单击新建

    注:

    所有 CCB 服务定义必须位于同一文件夹中才能部署 CCB。建议您创建一个文件夹以组织与 CCB 相关的服务。建议的文件夹名称为 CCB。

  5. 单击下一步

    您需要指定新服务的属性。不需要其他功能。

  6. 可选,选中现有复选框,然后从下拉箭头中选择 CCB
  7. 单击上一步或根据需要单击下一步
  8. 单击发布
  9. ExportWebmap.sd 重复这些步骤。

更新 Utilities.py 文件

您必须在发布 CCB 服务定义文件后完成此过程。这可确保 Calculators 和 ExportWebmap 地理处理服务使用已更新的 Utilities.py 文件:

  1. 文件资源管理器中,浏览到 Utilities.py 文件并在文本编辑器中打开它。

    默认位置为 <GeoScene Server installation drive>\geosceneserver\directories\maritimeserver\customchartbuilder\Tools

  2. 更新以下变量:
    • shared_products_pathoutput_directory - 如果您未使用建议的默认设置,请使用您的计算机名称、域和文件夹路径更新变量。
    • output_url - 如果您未使用建议的默认设置,请使用您的计算机名称和域更新变量并更新文件夹路径。Localhost 只能用于本地测试。
  3. 将更改保存到 Utilities.py,然后关闭文件。
  4. 将更新的 Utilities.py 文件复制到新发布的 Calculators 和 ExportWebmap CCB 服务的 geosceneinput 位置。
  5. 浏览至 CCB 的 geosceneinput 位置。

    默认位置为 <GeoScene Server installation drive>\geosceneserver\directories\geoscenesystem\geosceneinput\CCB

    • 将更新的 Utilities.py 文件复制到<安装位置>\geosceneserver\directories\geoscenesystem\geosceneinput\CCB\Calculators.GPServer\extracted\p30\tools
    • 将更新的 Utilities.py 文件复制到<安装位置>\geosceneserver\directories\geoscenesystem\geosceneinput\CCB\ExportWebmap.GPServer\extracted\p30\tools
  6. GeoScene Server Manager 中,单击服务 > 管理服务
  7. 单击文件夹 > CCB
  8. 重新启动 Calculators 和 ExportWebmap 地理处理服务。

启用自定义符号系统

ServerConfiguration.xml 文件包含一个 CustomSymbology 布尔值,以启用或禁用覆盖默认 S-52 演示库的自定义符号系统的显示。如果可用,海图服务会引用 CustomSymbolMap.xml、可伸缩矢量图形 (SVG) 符号和 Lua 脚本中的规则,以提供类似纸质海图的 S-57 数据显示。

将自定义符号系统设置为 true 后,必须重新构建 .senc 文件,符号才能显示在服务中。

自定义符号系统的示例
默认的 S-52 演示库

海图服务中的 Lua 可以执行以下操作:

  • 引用 SVG 文件以覆盖点符号或线图案(简单和复杂)
  • 覆盖符号说明,例如颜色、填充图案或透明度
  • 访问视图组或显示属性
  • 提供修改文本组的字体名称、大小、粗细、颜色和偏移量的说明

更新地理注释

地理注释允许您根据产品的地理位置生成 CCB 输出的文本注释。

注释存储在点、线或面要素类中,其中每条记录都有一个包含注释的文本框。插入新的感兴趣区域产品时,感兴趣区将与地理注释图层相交,并将单独的 A4 工作表追加到导出中。如果有多页注释,则生成第二页,依此类推。

执行以下步骤以自定义启用地理注释:

  1. Notes.zip 文件解压缩到 <GeoScene Server 目录位置>\geosceneserver\directories\maritimeserver\customchartbuilder\LayoutTemplates 目录。
    提示:

    Notes.zip 文件中存在示例注释地理数据库。

  2. GeoScene Pro 中,将多部件面要素添加到 Notes.gdb 文件夹中的 FeatureClassForNotes 要素类。

    (可选) 将要素添加到 FeatureClassForNotes 或 FeatureClassForNotes_Line 要素类。

    提示:
    • 示例注释可在 Notes.gdb 文件夹的 FeatureClassForNotes_Sample 要素类中找到。
    • 多部件面允许您拥有多个地理位置,这些位置共享相同的注释文本,而不会冗余。
  3. (可选) 编辑 FeatureClassForNotes 要素类中的以下字段:

    这是一个必需字段。

    添加注释文本或段落正文。

    Title

    这是一个可选字段。

    添加打印在注释段落上方的注释名称。

    Color

    这是一个可选字段。

    设置注释段落和标题的红、绿、蓝 (RGB) 值。用单个逗号 (,) 分隔值。如果字段为空、null 或具有无效值,则注释将显示黑色文本。

    注:

    此字段不符合 CYMK。

    minScale

    这是一个可选字段。

    指定显示注释的最小图表比例。例如,如果注释在 1:40000 和 1:90000 之间的图表上显示,请在字段中键入 40000

    maxScale

    这是一个可选字段。

    指定显示注释的最大图表比例。例如,如果注释在 1:40000 和 1:90000 之间的图表上显示,请在字段中键入 90000

自定义布局模板

您可如下所述自定义布局模板。

地图元素

自定义海图生成器 (CCB) 可为各种页面大小和方向提供多个布局模板。每个布局都包含地图元素,例如比例尺、指北针和图例;为图表中的特定目的而创建的徽标、文本或其他图形。地图框也是布局元素。

提示:

使用地图框中的中心锚点可最大限度地减少移动,并防止格网边框与整饰元素重叠。在导出地图过程中,地图框的每条边会扩展 13 毫米。

页面大小 A0 和 ANSI E 的模板添加了常用图表注释。您可根据本地需要修改这些注释。如果不想创建带有注释的 A0 或 ANSI E 大小的图表,则可从设置中移除这些模板,并将其替换为使用 _withoutnotes 后缀重命名的这些模板的早期版本。

提示:

例如,重命名 A0 和 ANSI E 模板,在其名称中使用 _withnotes 后缀。从备份 A0 和 ANSI E 模板中移除 _withoutnotes。系统将识别不再具有常用注释的 A0 和 ANSI E 模板。

默认情况下,布局模板字体为 Arial。

管理元素

在产品创建过程中,地图元素会动态更新以反映图表中的更改,如比例尺、地理范围和生成日期。CCB 使用元素名称来管理和识别自动化脚本要修改的元素。请勿更改地图元素名称。如果修改了名称,则无法使用自动化脚本管理该元素。如有必要,可通过属性对话框中的大小和位置选项卡,单击元素名称来访问该名称。

地图框

CCB web 应用程序中生成的 AOI 是从布局模板的地图框中获取的。计算器查找数据框的左下角,然后是左边缘和下边缘。更改地图框大小会影响 AOI 大小。

配置 web 应用程序

发布服务定义文件、更新布局模板、发布具有可用海图服务的地图服务并更新 Utilities.py 文件后,即可配置和部署 CCB web 应用程序。

  1. 浏览至 <GeoScene Server 安装目录>\MaritimeServer\Server<version>\WebApplications,如果使用 Internet 信息服务器 (IIS) 部署 web 应用程序,则将 CCB 文件夹复制到 C:\inetpub\wwwroot
    注:

    您可重命名 CCB 文件夹。这是您通过 web 访问的应用程序的名称。

  2. 注册 web 应用程序并获取应用程序 ID。
    注:

    如果将 web 应用程序配置固定产品类型,则可以跳过此步骤。对于自定义产品类型,这是一个可选设置。如果要激活登录功能,并且需要从组织账户添加数据,则需要执行此步骤。

    如果您通过门户注册了 web 应用程序,请完成注册后步骤

  3. 更新位于 ccb\js 下的 ccbconfig.js 文件。
    1. 使用在发布服务定义文件的步骤 2 中创建的服务位置更新 serviceURL 参数。

      如果使用建议的默认值,则路径为 https://gisserver.domain.com/geoscene/rest/services/CCB

    2. MCSURL 参数更新为启用海图服务的地图服务。

      如果为 SampleWorldCities 激活了海图服务功能,则路径为 https://gisserver.domain.com/geoscene/rest/services/SampleWorldCities/MapServer/exts/MaritimeChartService/MapServer

      注:

      该应用程序使用海洋底图。通过修改底图变量来选择其他底图。

    3. 如有必要,请使用您在步骤 2 中创建的 App ID 更新 appID 参数。这允许您登录到 GeoScene 组织账户。这仅适用于自定义产品类型。
  4. 保存对 ccbconfig.js 文件所做的更改。

您现在可以启动应用程序以使用 CCB。

注册应用程序

如果您通过门户注册了 web 应用程序,请完成注册后步骤:

  1. 浏览到 web 根目录下的 CCB 文件夹。例如,如果使用 Internet Information Server (IIS) 部署 web 应用程序,请浏览至 C:\inetpub\wwwroot\ccb
  2. widgets\AddData 文件夹中,打开 Widget.js
  3. portalUrl 变量更新为 https://portalserver.domain.com/geoscene
  4. 单击保存
  5. widgets\LayerList 文件夹中,打开 Widget.js
  6. appConfig 部分,将 portalUrl 更新为 https://portalserver.domain.com/geoscene
  7. 单击保存
  8. js 文件夹中,打开 SignInButton.js
  9. 取消注释 // portalUrl: "https://portalserver.domain.com/geoscene",并更新 portalUrl 参数。
  10. 单击保存

Maritime 服务器扩展配置疑难解答

使用以下常见问题解决配置问题:

海图服务数据在自定义海图生成器 (CCB) 应用程序中不可用

验证在配置 web 应用程序的步骤 3 中设置的 MCSURL 是否可供访问该应用程序的用户访问。

我收到无法完成操作的错误

如果出现错误:无法完成操作,请将配置 GeoScene Server 账户添加到安装目录。执行工具时出错。出现 CalculateExtent

更改显示属性后,我的海图服务不显示或消失

确定使用显示参数时是否超出了 2,048 个字符的服务器 URL 长度。如果是这样,请在 web.config.xml 文件中增加允许的 URL 长度。

我收到一个在 web 服务器上启用 HTTPS 失败的错误

验证您是否已在 web 服务器上启用了 HTTPS