风格对照表的制作与使用

版权声明:本文为博主原创文章,欢迎转载,SuperMap技术问答社区 http://ask.supermap.com https://blog.csdn.net/supermapsupport/article/details/82798390

在SuperMap桌面软件中导入和导出CAD数据,有可能出现风格丢失,这是因为两个软件所支持的风格不一样,此时需要对应AutoCAD和桌面软件中的风格制作一个风格对照表。

1.从桌面中导入CAD数据

导入数据时,风格对照表包含四个部分
  1.1 线型对照
  1.2 符号对照
  1.3 填充对照
  1.4 字体对照
  1.5 在Java组件中使用风格对照表
1.1线型对照:
  LineStyleBegin//线型对照的开头
   (id: ByLayer),(id:19;c: 0xFF0000;w:1)
  LineStyleEnd//线型对照结尾
  第一个括号中id指的是在CAD中线型名称,可以在AutoCAD软件中查看,“格式-线型”打开线型管理器,如图所示:
      在这里插入图片描述
  第二个括号中的参数是在我们桌面中参数,id指的是我们桌面中与CAD线型相似的线型id,c代表的是线型的颜色;w为线型宽度。这些参数可以在桌面中线型符号库中查找。如图所示:
      在这里插入图片描述
1.2符号对照
  在做点符号对照前,首先得先在AutoCAD中创建块,在软件中的绘图—块—创建块
      在这里插入图片描述
  创建好了块就需要对块进行编辑,双击块名进入设计界面,设计好保存即可
       在这里插入图片描述
  在块制作好后就是对风格对照表的制作,
  SymbolBegin
  (id: 54000001),(id: 54000001;g: SMSymbol;c:0x000000;a:0;xs:1; ys:1)
  SymbolEnd
  第一个id是我们创建块时的名称,后面的参数在我们桌面点符号资源库中可以查找,id为该符号的编号;g是这个符号所在的组的名称(不需要指明组的路径);c代表的是符号颜色;a代表的倾斜角度,后面的为xy方向的缩放比例。
1.3 填充对照
  注意:目前只支持实体填充的对照,不支持渐变填充和图案填充的对照
  FillStyleBegin
  (id:ANGLE),(id:015;a:60;fc:0xff0000;bc:0x000000)
  FillStyleEnd
  第一个id指的是CAD中的填充名称。后面依次是对应我们桌面软件中已经填充名称,填充旋转角度,填充的前景色,填充的背景色
       在这里插入图片描述
1.4字体对照:
  在CAD中打开字体样式框,在格式—文字样式,打开文字样式对话框
       在这里插入图片描述
  FontBegin
  (id:仿宋),(id:System;a:0;fc:0x00ff00;bc:0x000000;xs:1;ys:1)
  FontEnd
   id为CAD中的字体名称,右边的id是我们桌面中字体名称,a为字体倾斜角度,fc为字体的前景色,bc为字体的背景色,xs为字体的x缩放比,ys为y缩放比。
  以上就是风格对照表的制作流程,最后就是创建stt对照文件,新建文本文件,根据需要命名,并将文件后缀修改为stt,如test.stt;
  SuperMap Style Mapping Table
  Version 6.0
  LineStyleBegin//线型对照的开头
  (id: ByLayer),(id:19;c:0xFF0000;w:1)
  LineStyleEnd//线型对照结尾
  SymbolBegin
  (id: 54000001),(id: 54000001;g: SMSymbol;c:0x000000;a:0;xs:1; ys:1)SymbolEnd
  FillStyleBegin
  (id:ANGLE),(id:015;a:60;fc:0xff0000;bc:0x000000)
  FillStyleEnd
  FontBegin
  (id:仿宋),(id:System;a:0;fc:0x00ff00;bc:0x000000;xs:1;ys:1)
  FontEnd
1.5在Java组件中使用风格对照表
  在组件中使用风格对照表的关键代码如下:
     在这里插入图片描述
说明:如果其中一种类型没有对照关系,可以将Begin和End及之间的内容删除。

2.从桌面中导出CAD数据

如果在iDesktop中导出数据集为CAD数据集,需要设置风格对照,风格对照表末尾需要加上dxf文件的路径,dxf文件可以通过dwg文件在CAD中另存获得。
  SuperMap Style Mapping Table
  Version 6.0
  LineStyleBegin//线型对照的开头
  (id: ByLayer),(id:19;c:0xFF0000;w:1)
  LineStyleEnd//线型对照结尾
  SymbolBegin
  (id: 54000001),(id: 54000001;g: SMSymbol;c:0x000000;a:0;xs:1; ys:1)SymbolEnd
  FillStyleBegin
  (id:ANGLE),(id:015;a:60;fc:0xff0000;bc:0x000000)
  FillStyleEnd
  FontBegin
  (id:仿宋),(id:System;a:0;fc:0x00ff00;bc:0x000000;xs:1;ys:1)
  FontEnd
  dxffile //设置dxf文件
  ***.dxf
  导出时组件的关键代码如下:
     在这里插入图片描述
导出时需要注意:线型、面和字体在导出的时候只有id有效,设置颜色导出时是没有效果的,导出数据为点数据时只有id和xs、ys有效。

猜你喜欢

转载自blog.csdn.net/supermapsupport/article/details/82798390