使用产品: supermap-objectjava-10.2.1 操作系统 linux 64
数据类型:dwg文件(图层有上千个)
问题详细描述:需要从dwg文件中读取几个图层图形数据,为了处理dwg中线宽不为0的问题,先将dwg转为了udbx文件,通过ImportSettingDWG的setLWPLineWidthIgnored方法忽略多义线的宽度,但是由于dwg中图层过多,导致数据转换慢,是否有其它办法能获取到dwg中部分图层数据(同时也处理了多义线宽度问题)
Workspace tempWorkspace = new Workspace();
String udbxPath = filePath.substring(0, filePath.length() - 4);
datasource = WorkspaceUtil.createUDBXDatasource(tempWorkspace, udbxPath);
ImportSettingDWG importSettingDWG = new ImportSettingDWG(filePath, datasource);
importSettingDWG.setLWPLineWidthIgnored(true);// (解决dwg文件图形宽度不为0问题)
importSettingDWG.setImportingAsCAD(true);
DataImport dataImport = new DataImport();
dataImport.getImportSettings().add(importSettingDWG);
ImportResult importResult = dataImport.run();
ImportSetting[] impt = importResult.getFailedSettings();