arcgis toolbox 工具不能用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了arcgis toolbox 工具不能用相关的知识,希望对你有一定的参考价值。

我装好Arcmap 后 toolbox中的有些工具缺失 在查看toolbox时发现 缺失的工具上显示有个小锁 类似被锁定!我想问问这是什么原因呢?
我安装的时候选择的是完全安装!

不知道你装的是哪个版本。
1、你说的完全安装,是完全安装的是桌面版ArcGIS,需要找到同版本的服务器版本,再一次安装,arctools才是完全安装。
2、如果装的是9.0以上版本的话,有可能就是没有打开插件了。arcmap界面,tools-extensions里面打开需要的功能。追问

tools-extensions里面所有功能我都选中了!应该不是插件没有打开!我所指的完全安装正如你所说的是砖面版本的完全安装。服务器版本没有安装,请问这会对toolbox的使用造成影响吗?

追答

如果你要使用一些高级功能,例如对数据的操作、矢量文件的修改之类,必须安装服务器版的。

参考技术A 有个专门的toolbox插件可以安装,网络上搜下

ArcObject SDK for Java调用自定义toolbox工具

DATE:2018-4-17

开发环境:

MyEclipse 2014, JDK 1.8 32位(64位环境无法运行arcobject程序,只限工程引用的jdk)、ArcGIS 10.5

ArcGIS 软件安装完成后,还要安装 ArcObject SDK for Java,安装之后,才能进行 AO 的二次开发

 

开发步骤:

1、新建 esri templates 示例工程

新建esri templates工程目的是为了省去对 arcgis 许可初始化和加载 arcobjects.jar 的步骤,见下图:

技术分享图片

技术分享图片

技术分享图片

选择上图中的ArcObject Samples,在弹出的对话框中选择geoprocessing示例,随便新建一个工程即可;

2、修改生成代码中 initializeArcGISLicenses 初始化许可函数体(此步骤要注意

由于每个人机器上的安装的ArcGIS 版本不同,获取的许可也不相同,所以要初始化正确的许可

3、上代码

public void produceFormattedJSONFileFromTiff() {
        LocalDateTime start = LocalDateTime.now();
        
        String projectRoot = new File("").getAbsolutePath();
        
        try {
            // Add the BestPath toolbox.
            gp.addToolbox(projectRoot + "/resource/customertoolbox/ZCustomer.tbx");
            // Generate the array of parameters.
            VarArray parameters = new VarArray();
            //输入tif路径
            parameters.add(projectRoot + "/resource/data/rain_2016.flt");
            //重采样分类列表
            parameters.add("0 0.013435 1;"
                    + "0.013435 0.037422 2;0.037422 0.080247 3;"
                    + "0.080247 0.156709 4;0.156709 0.293223 5;"
                    + "0.293223 0.536956 6;0.536956 0.972118 7;"
                    + "0.972118 1.749056 8;1.749056 3.136204 9;"
                    + "3.136204 5.612822 10");
            //输出json路径
            parameters.add(projectRoot + "/resource/result/rain_2016.json");
            // Execute the model tool by name.
            IGeoProcessorResult result = gp.execute("ProduceJsonFromFltWithNoProject", parameters, null);
            while (result.getStatus() == esriJobStatus.esriJobSucceeded){
                
                System.out.println(result.getOutputCount());
                
                String resultJsonPath = (String) result.getReturnValue();
                System.out.println(resultJsonPath);
                
                //读取json文件
                BufferedReader reader = new BufferedReader(new FileReader(new File(resultJsonPath)));
                StringBuffer sb = new StringBuffer();
                String line = reader.readLine();
                while(line != null) {
                    sb.append(line);
                    line = reader.readLine();
                }
                
                JSONObject jsonObject = JSONObject.parseObject(sb.toString());
                
                System.out.println(result.getMessageCount());
                break;
            }
            
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
        LocalDateTime end = LocalDateTime.now();
        Duration duration = Duration.between(start, end);
        
        System.out.println("自定义gp运行耗时:" + duration.toMillis() + "毫秒");
        
    }

 

 尾注

 上文截取的代码片段中的 ZCustomer.tbx 是我在 ArcMap 的模型编辑器中生成的,各位亲在引用上文代码时,一定要注意改成自己的toolbox,并为自己的toolbox输入正确的参数。

 

注意

在调用自定义 toolbox 时,一定注意 2 点: 一是toolbox 工具的名称;二是 toolbox 工具的参数顺序

 

以上是关于arcgis toolbox 工具不能用的主要内容,如果未能解决你的问题,请参考以下文章

ArcGIS基础篇——如何将本地制作的模型进行拷贝?

怎样用ARCGIS裁切地图

arcgis中怎么根据面积大小进行破图斑

ArcObject SDK for Java调用自定义toolbox工具

arcgis的sql语句怎么表达图斑相邻

R-ArcGIS探秘安装以及Sample执行