快速浏览:共享自定义工具
您可以将地理处理结果作为包或服务共享。在共享某一结果时,ArcGIS 会为您的模型和脚本工具生成一个副本、检查副本的内容,并对副本进行更改以确保这些工具可以在其他计算机上执行。此外,用于创建结果的数据也可以共享。
但如果希望共享自定义工具而不共享任何数据,将如何操作呢?也就是说,您希望为某人提供您的工具箱并允许他们使用其中的工具,就像使用系统工具箱那样。您可以做到这一点,但需要一定的技巧:
- 您工具使用的所有数据必须是工具的输入参数。您不能在工具中直接引用任何数据,因为工具接收者(用户)的系统中一定会有数据存在。例如,如果您的模型或脚本需要查找 D:\ToolData\cfcc_codes.dbf,但用户的系统中却没有 D:\ToolData\cfcc_codes.dbf,因此您的工具在他们的计算机上将无法运行。如果您的工具需要使用特定的数据集,则必须创建一个包。
- 由于您没有随工具一起提交数据(如果含有数据,需将它们打包),因此您的工具必须是可靠的,也就是说,它们必须能够使用您的用户所提供的任何数据集。这需要正确的参数定义、错误处理和文档记录。
- 您的工具必须是独立的。理想情况下,您只希望共享工具箱,即不包括辅助 Python 或文档文件。
- 任何由您的工具创建的中间数据或临时数据都需要纳入考虑范畴;您需要为临时数据创建一个可写位置,并且您的工具需要在用过之后进行清理。
- 您需要仔细地对您的工具进行测试。在本地计算机上运行工具时遇到的问题,有些看似虽小,但在共享自定义工具时却变成了大问题。
在共享自定义工具和工具箱时,您可通过两种格式提供工具:
- Python 工具箱 (.pyt)
- 包含模型或脚本工具的自定义工具箱 (.tbx)
Python 工具箱特别适合提供自定义工具。所需的只是 .pyt 文件。
只要自定义工具箱中的模型没有使用任何位于其他工具箱中的自定义工具,您就可以提交这些模型。它们可以使用任何系统工具,但您需要了解用户的许可级别,也就是说您不能使用用户未获得许可的系统工具。
自定义工具箱中的脚本应该在工具中嵌入代码。否则,您将需要随工具箱提交 .py 文件,通常在使用 ZIP 压缩工具压缩后提交。
相关主题
5/10/2014