首页 / 浏览问题 / 桌面GIS / 问题详情
IDeskTopX 数据集输出CAD
2EXP 2024年07月01日

使用产品:iObjects  Java 11i,操作系统 win10 x64

问题描述:创建CAD数据集,将原有的数据集的所有数据重新赋值到CAD数据集,想要把原有数据集的图层样式添加到CAD数据集里面,设置FillSymbolID.当前使用的是通过地图获取到原数据集的图层样式,获取SymboliD后,新建GeoStyle赋值,但结果不对,线数据可以获取到SymbolID,但点数据无法获取,或者此功能有没有其他办法进行实现。

部分代码如下:

Layer layer = mapControl.getMap().getLayers().get(name.concat("@").concat(GlobalParamterConfig.dataSourceVector));
int pointId = ((LayerSettingVector)layer.getAdditionalSetting()).getStyle().getFillSymbolID();
if (geometry != null && !geometry.isEmpty()) {
   GeoStyle geoStyle = new GeoStyle();
   geoStyle.setFillBackOpaque(false);
   geoStyle.setFillGradientMode(FillGradientMode.NONE);
   geoStyle.setLineWidth(1);
   geoStyle.setFillForeColor(new Color(255, 0, 0));
   geoStyle.setFillOpaqueRate(100);
   if (geometry.getType()==GeometryType.GEOLINE) {
      int LineStyleId = ((LayerSettingVector)layer.getAdditionalSetting()).getStyle().getLineSymbolID();
      geoStyle.setLineSymbolID(LineStyleId);
   }
   geoStyle.setFillSymbolID(pointId);
   geometry.setStyle(geoStyle);
 }
boolean isAdd = recordsetResult.addNew(geometry, objectMap);
关闭重复的问题: IDeskTopX 数据集输出CAD
...