首页 / 浏览问题 / 其他 / 问题详情
后端如何通过iObjects Java将dwg文件转为geojson文件 需要
2EXP 2023年09月21日
后端如何通过iObjects Java将dwg文件转为geojson文件 需要指定一下依赖包的版本

1个回答

您好,可以先将dwg以只读数据源的方式打开,再获取对应datasetvector数据集的recordset记录集,用recordset.getgeometry方法从中获取到几何对象,最后使用Toolkit.GeometryToGeoJson(Geometry geometry)方法将几何对象转换为geojson字符串
3,255EXP 2023年09月22日
有没有完整的demo,,这一个个在文档里面找方法眼睛真真疼
Dataset dataset = new Dataset() {
            @Override
            public boolean isReadOnly() {
                return super.isReadOnly();
            }
        };

        DatasetVector d = (DatasetVector) dataset;
        Recordset recordset = d.query(null);
        Geometry geometry =  recordset.getGeometry();
        String json =  Toolkit.GeometryToGeoJson(geometry);
没有完整的demo,该方法涉及到的类有,datasourceconnectioninfo数据源连接信息类用于记录dwg文件信息,dataourcess类用于打开数据源连接信息,datasetvector矢量数据集类用于获取到矢量数,recordset类用于获取几何对象,最后是Toolkit类用于转换,以上类在帮助文档中有相应示例代码,请参阅帮助文档

我是上传文件,,完了拿到上传的文件源,,之后再转化,,,

datasourceconnectioninfo这个对象好像不适用,,我只是需要转化我的源文件为目标的geojson文件
需要用到datasourceconnectioninfo,该对象设置数据源的连接信息,如果不用该对象,将dwg文件导入数据源也是可行的,一下为datasourceconnectioninfo使用示例
            DatasourceConnectionInfo datasourceconnection = new DatasourceConnectionInfo();
            datasourceconnection.setEngineType(EngineType.VECTORFILE);
            datasourceconnection.setServer("XXX/xxx/xxx.dwg");
            datasourceconnection.setAlias("dwg");             
// 打开数据源
            Datasource datasource = workspace.getDatasources().open(datasourceconnection);
...