在 Standard 或 Advanced 许可等级下可用。
获得 Production Mapping 许可后可用。
获得 ArcGIS Maritime 许可后可用。
The Maritime Chart Service tile package, or mcstpk.exe file, is a stand-alone extension to Maritime Chart Service capabilities, which you can enable for a map service.
Using your datasets, this functionality allows you to create a tile package (.tpk file) that can be deployed throughout ArcGIS and taken offline. For example, you can mimic the look and feel of your existing map service that is enabled with Maritime Chart Service by creating a tile package using the same S-57 or S-63 datasets and configuration settings. This tile package can then be published as a cached map service in ArcGIS Server.
There is no dependency on having an existing map service with Maritime Chart Service enabled. The only dependency is that you have a valid ArcGIS Maritime license on the machine where you want to run the Maritime Chart Service Tile Package.
This design allows you to either use existing map services with Maritime Chart Service enabled or create individual Maritime Chart Service projects to manage tile packages.
Configure Maritime Chart Service tile package functionality
The Maritime Chart Service tile package is a stand-alone application that uses the same configuration setup that Maritime Chart Service functionality uses in a map service. Each tile package is managed in a Maritime Chart Service project. The <project name>.mcs file (SQLite database) contains a location under Project > Properties to the datasetsDirectory, controlFilesDirectory, and workingDirectory paths project location as well as the display settings, layer, and tile package information.
Similar to setting up support for multiple map services, each project can point to a single set of configuration folders to share information including datasets or establish individual copies so each tile package project can be uniquely configured. You can also modify the ServerConfiguration.xml and S52DisplayProperties.xml files before creating a project.
Learn more about modifying S52 Display Properties and Server Configuration files.
提示:
Once a project is created, you can use the tools in mcstpk.exe to make additional changes to the settings.
Before creating a tile package, it is recommended that you copy the maritimechartservice folder from <ArcGIS Server installation directory>\MaritimeServer\Server<version> to a new location to create a new tile package. This is the information that you will point to when you create a Maritime Chart Service project. You can copy the mcstpk.exe file to any location, along with the mcstpk_staging folder, as long as that machine is running a valid ArcGIS Maritime server license.
警告:
Do not set the workingDirectory folder path under the Configuration Paths parameter to an existing Maritime Chart Service project enabled in a map service. This setup is currently not supported and can cause issues due to file locks with existing .senc files being used by the map service.
Create a Maritime Chart Service project
To create a tile package, you must first create a project.
To create a project, complete the following steps:
- Click mcstpk.exe.
注:
You can copy the mcstpk.exe file to any location along with the mcstpk_staging folder as long as that machine is running a valid ArcGIS Maritime server license.
- Click Project.
- Click New.
The Create New Project dialog box appears.
- Type a name for the project in the Project Name text box.
This will be the name of the .mcs file and the tile package.
- Click Browse and browse to where you want to set the Project Location value.
The .mcs file and tile package will be created at this location.
- Click Browse and browse to where you want to set the Datasets Directory location.
This is the location of the S-57 and S-63 datasets.
注:
This setting can be shared between projects and existing map services with Maritime Chart Service enabled.
警告:
It is recommended that you use a location other than your C:\ drive for the Datasets Directory location. Using the C:\ drive will cause mcstpk.exe to scan the entire drive.
- Click Browse and browse to where you want to set the Controlfiles Directory location.
The folder selected must contain the controlFilesDirectory folder. Any configuration changes to the files contained in the controlFilesDirectory folder must be done before creating a project or those changes will not be applied. This setting can be shared between projects and existing map services with Maritime Chart Service enabled.
- Click Browse and browse to where you want to set the Working Directory location.
The folder selected must contain the logs and sencs folders.
警告:
It is recommended that this setting not be shared between projects or an existing map service with the Maritime Chart Service enabled due to system locks on the .senc files.
- Click Create Project.
A .mcs SQLite database project file is created and the S-57 and S-63 datasets are processed. Once the dataset processing is complete, you can modify the display and create a tile package.
注:
The project is in an unlocked state, which means you have not yet created a tile package and can modify the settings, including the configuration paths, under Properties. To apply additional S-57 or S-63 datasets to a project, you can copy those datasets into the correct datasetsDirectory location and run the Check for Dataset Changes tool.
A project contains configuration settings, display settings, and tile package information in a SQLite database ending with .mcs. Similar to creating a map service with Maritime Chart Service enabled, you must point to the Datasets Directory, Controlfiles Directory, and Working Directory property values. You can share these properties between projects similar to how you share properties between multiple map services.
Open an existing Maritime Chart Service project
Once you create a Maritime Chart Service project, you can click the .mcs file to re-open that project or access it through the application by completing the following steps:
- Click mcstpk.exe.
- Click Project.
- 单击打开。
- Select the .mcs file.
- 单击打开。
注:
The project opens using the information stored in the .mcs file. If new S-57 or S-63 data was added to the datasetsDirectory location, it is processed. You are also notified if no changes are found. To add more S-57 or S-63 datasets to a project once it is open, copy them to the correct datasetsDirectory location and run the Check for Dataset Changes tool. Once the project has opened, it will either be in the locked or unlocked state. This information is in the lower left corner of the application and determines what functionality is available.
警告:
If the project is in a locked state, it means you created a tile package. If additional S-57 or S-63 datasets were processed, only those that fell within or intersected the tile package extent will be available to the updated tile package process. The datasets that fall outside the tile package extent will still be processed and loaded onto the display but will not be available to update the tile package.
- If the project opened in an unlocked state, refer to the Create a tile package using Maritime Chart Service section.
- If the project opened in a locked state, refer to the Update a tile package using Maritime Chart Service section to create an update for the existing tile package.
Create a tile package using Maritime Chart Service
When a project is in the unlocked state, it means that a tile package has not yet been created in the project. Before creating a tile package, you can change the configuration properties, update the S-57 or S-63 datasets, modify the visible layers, and change the extent and display settings.
Once the setup is complete, you can create a tile package by completing the following steps:
- Click Tools.
- Click Create Tile Package.
The Create Tile Package dialog box appears with default information fields populated based on the current extent.
- To modify the Scale Levels value, click Use Full Extent to apply the Start and End levels to the full extent of the data instead of the visible extent.
- Click Create.
注:
Once the tile package is created, you can add more S-57 or S-63 datasets to the project by copying those S-57 or S-63 datasets into the project's datasetsDirectory location, which can be viewed under Properties, and running Check for Dataset Changes under Tools. After the dataset changes have been applied, you can run the Update Tile Package tool.
The tile package is created and stored in the project location. The .mcs project is automatically saved and locked. Depending on the number of bundles, the process can take many hours to complete. Once the project is locked, you can only unlock it by clicking Save As and saving the project with the same name to the same location. This removes any reference of a tile package from the .mcs project file. The tile package remains on disk and can be deleted or overwritten.
Learn more about publishing a tile package created by Maritime Chart Service
Update a tile package using Maritime Chart Service
Once you create a tile package, the project is automatically locked. This is to ensure that no settings are changed when creating an update to the existing tile package. The only exception is that you can apply S-57 or S-63 dataset changes. Only dataset changes that fall within or intersect the tile package extent will be available to the update tile package process.
To update a tile package, complete the following steps:
- Click mcstpk.exe.
- Click Project.
- 单击打开。
- Select the .mcs file.
- 单击打开。
The project opens using the information stored in the .mcs file. If new S-57 or S-63 data was added to the datasetsDirectory location, it is processed. You are notified if no changes are found.
注:
To add more S-57 or S-63 datasets to the project once it is open, copy that information into the correct datasetsDirectory location, which can be viewed under Properties, and run Check for Dataset Changes under Tools. Only dataset changes that are within or intersect the tile package extent will be available to the update tile package process. All datasets that fall outside the tile package extent will still be processed and loaded onto the display but will not be available to update the tile package.
- 单击打开。
- Click Tools.
- Click Update Tile Package.
The Update Tile Package dialog box appears with information fields populated based on dataset changes since the last tile package was created. If no updates are detected, you are asked if you want to check for dataset changes.
- Click Update.
The tile package is created and stored in the project location. The .mcs project file is automatically saved and locked. Depending on the number of bundles, the process can take many hours to complete.
Learn more about publishing a tile package created by Maritime Chart Service
Publish a tile package created by Maritime Chart Service
After you create a tile package, you must deploy it. Depending on your use case, there are various ArcGIS help topics that guide you through deploying a tile package at run time using ArcGIS Server to create a cached map service or upload to your organization.
Most topics in the ArcGIS help start with you defining and publishing through ArcGIS Pro. Since you already created the tile package, there is no need to follow those steps. You are only deploying the .tpk file.
Maritime Chart Service tile package functionality
The options described in the subsections below are available under Project when creating a new Maritime Chart Service tile package.
New
The New option creates an .mcs project file and applies the Configuration Paths settings.
Open
The Open option allows you to open an existing project.
If any existing project settings become invalid, the project opens in a mixed state until those settings are updated. If the mixed state is locked and cannot be reset, you can click Save As and overwrite the project. This allows you to modify the project settings.
Properties
Once you create a project, you can access the Properties window to review the project location and configuration paths. If the project is unlocked, you can update the configuration paths.
You cannot update the Properties settings once the project is locked. This is to ensure that the updated tile package has the same information as the base tile package. To unlock the project, click Save As.
Datasets Directory
This is the location of the S-57 or S-63 datasets. If you change this location and click Update, the project will honor this new location, process any datasets found under the parent folder, and delete any existing .senc files processed from the previous location.
注:
This setting can be shared between projects and existing map services with Maritime Chart Service enabled.
Controlfiles Directory
The folder selected must contain the Controlfiles Directory folder. Any configuration changes to the files contained in the Controlfiles Directory folder must be done before creating a project, or those changes will not be applied. For more information about what's in this location, refer to Modify Maritime Chart Service capabilities properties.
注:
This setting can be shared between projects and existing map services with Maritime Chart Service enabled. Once a project is created, you cannot change its properties. Depending on the changes required, you can either use display settings or create a new project with an updated Controlfiles Directory under Configuration Paths.
Working Directory
The folder selected must contain the logs and sencs folders.
警告:
It is recommended that this setting not be shared between projects or an existing map service with Maritime Chart Service enabled due to system locks on the .senc files.
Update
The Update option is only available if one of the configuration paths has been modified and is valid. When you click Update, the project is automatically saved with the new path information, and the necessary settings are applied. For example, if you modified the datasetsDirectory location, those datasets are processed.
Save As
A project, whether in the locked or unlocked state, can be saved as a new project or overwritten to bring it back to the unlocked state.
Save as a new project
Whether a project is in the locked or unlocked state, you can save it as a new project. This copies the existing .mcs file and renames it using the name you provided on the dialog box. All configuration paths remain the same as the original project but can be updated now that the new project is in an unlocked state.
This option is typically used when you have a set of configured display settings and want to apply them to different datasets. This option is also used to change the display settings or create new projects and tile packages using the same datasets. This reduces the amount of data loading that may be required to support multiple tile packages.
Overwrite a project
This workflow is beneficial if you have a locked project and want to disassociate the tile package from that project and start the create tile package process again while retaining some of the existing settings.
For example, you create a new tile package but discover you forgot to load a few datasets that now fall into one of your unsupported workflows, or you forgot to apply a certain display setting, or you got the start or end LOD incorrect. Instead of loading all the data again or making extensive changes, you can quickly overwrite the existing .mcs file and remove the reference to the tile package. This unlocks the project and allows you to create a new tile package.
Learn about additional information when creating and updating packages
If the new tile package has the same name as the old tile package, the old tile package is overwritten.
To overwrite a project, complete the following steps:
- Click Save As.
- 单击确定。
- Click Yes to overwrite the existing .mcs file.
If the project is in an unlocked state, it is saved as a new project. If the project is in a locked state, the reference to any tile packages are removed, allowing you to create a new tile package.
Layers
Layers can be turned on and off by clicking the Layers option under View. These layers are defined in the S52DisplayProperties.xml file, which is referenced by the controlFiles Directory in the S52PresentationLibrary folder during the creation of a project.
Learn about customizing configuration files
Any layer that is turned off will not be included in the tile package. All changes are automatically saved to the .mcs project file.
注:
This option is unavailable once the project is locked. This is to ensure that the updated tile package has the same information as the base tile package. To unlock the project, refer to Overwrite a project.
Full Extent
Clicking View > Full Extent allows you to zoom to full extent. This also zooms to the full extent of all the S-57 or S-63 datasets.
Display Settings
Clicking Tools > Display Settings allows you to set various mariner controls in accordance with S-52 standards. All changes are automatically stored in the .mcs project file.
The Display Settings option is unavailable once the project is locked. This is to ensure that the updated tile package has the same information as the base tile package. To unlock the project, refer to Overwrite a project.
Check for Dataset Changes
Clicking Tools > Check for Dataset Changes allows you to apply S-57 or S-63 dataset changes to projects that are in a locked or unlocked state.
Click Check for Dataset Changes to check for any changes (new datasets, updates, and deleted or canceled datasets). The updates are processed and the associated .senc files are updated or deleted.
Learn about additional information for workflows that may not be supported based on the changes found while running this command.
Additional information about creating and updating tile packages
Workflows that either require additional steps or are not fully supported when creating an updated tile package as well as other details about mcstpk.exe files are described below.
Apply dataset changes outside the tile package extent
If you add or modify S-57 or S-63 datasets outside of the tile package extent, those changes are not applied to the tile package update. Modification of an existing tile package extent is not currently supported. In this scenario, you can either create a new project that points to the same configuration settings or overwrite the existing project.
Add a small scale dataset to an existing tile package
If you add new S-57 or S-63 datasets that contain a small scale chart that is outside the existing Start level of display (LOD), those changes are not applied to the tile package update. In this scenario, you can either create a new project that points to the same configuration settings or overwrite the existing project.
Add a large scale dataset to an existing tile package
If you add new S-57 or S-63 datasets with a large scale chart, the update tile package processes will detect the new display scale and automatically modify the Overzoom value to include the new dataset. If this occurs, you must copy the newly created config.xml file in the tile package to the server when updating the cache. If you don't, the cached map's LOD information will not be updated and the new dataset will not be visible.
Learn about publishing a tile package created by Maritime Chart Service
Tile package update management
To process and update an existing tile package, the mcstpk.exe file analyzes changes to existing S-57 and S-63 datasets that either intersect or fall within the tile package extent. If changes are found after the tile package is created or updated, the bundles containing those changes are processed.
The Maritime Chart Service project file contains a reference to the tile package by name and update number. The mcstpk.exe file uses these references to process sequential updates similar to the S-57 model of updates. It is up to the ArcGIS Server administrator to backup and publish the tile package. The mcstpk.exe file only manages the creation of tile packages, not their distribution or archiving.
Learn about publishing a tile package created by Maritime Chart Service
Commonly asked questions
The following sections describe frequently asked questions.
What is a Maritime Chart Service project?
A Maritime Chart Service project is a SQLite database file with an .mcs file extension that is used by mcstpk.exe to store property settings, display settings or mariner controls based on S-52 standards, visible layers as defined in the S-52DisplayProperties.xml file, and tile package information such as start and end LOD. The information in a project file is used by the mcstpk.exe file to manage updates to a tile package as you apply additional S-57 or S-63 dataset changes.
What are locked and unlocked projects?
Projects are either locked or unlocked. An unlocked project means you have not created a tile package. In the locked state, you can modify the properties, which includes changing the dataset information and modifying the display. The locked state means you have created a tile package and are restricted to only checking for dataset changes. The reason for this is once a tile package is created, the extent is fixed and it keeps a user from unknowingly modifying a display property that would cause the updated tile package to appear different from the original.
When does the datasetsDirectory get processed and what do the messages mean?
The following are the places in the mcstpk.exe workflow that process the S-57 or S-63 datasets found in the datasetsDirectory path:
- New
- Open
- Update to the datasetsDirectory path
- Check for Dataset Changes
Each time a dataset's location is processed, one of the following messages appears:
Message | Description |
---|---|
No Changes | The datasets found in the datasetsDirectory already have .senc files created. |
Loading Complete | No log file will be generated, but a dataset that previously existed was deleted. |
Loading complete with Log File | New datasets and new editions or updates to existing datasets have been processed. |
Loading complete with errors | An error occurred while processing one or more datasets. |
注:
In all cases, the same processing logic is used, which is the same logic used and logged when running a map service with Maritime Chart Service capabilities enabled.