安卓系统CAD开发的图形数据库,安卓中浏览和编辑DWG

2021/6/1 19:23:30

本文主要是介绍安卓系统CAD开发的图形数据库,安卓中浏览和编辑DWG,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

  图层

新建图层

CAD中我们设置好图层后除了我们平常的绘图时选择线段的颜色,线型,线宽等作用,而且我们还可以在出图时选择性显示图形,冻结图形,已达到我们想要的效果。

实现代码说明:

  //增加一个图层   参数为图层名
  MxLibDraw.addLayer("AAA111");
  //设置当前绘图函数使用的图层   参数为图层名字符串
  MxLibDraw.setLayerName("AAA111");

得到所有图层名

实现代码说明:

  //得到所有图层
  long[] ids = MxFunction.getAllLayer();
  if(ids ==null)
      return;
   
  for(int i = 0; i < ids.length;i++)
  {
      McDbLayerTableRecord layer = new McDbLayerTableRecord(ids[i]);
      //返回符号表记录的名称
      String sName = layer.getName();
      Log.e("LayerName:",sName);
   
     
  }

打开所有图层

实现代码说明:

  //得到所有图层
  long[] ids = MxFunction.getAllLayer();
  if(ids ==null)
      return;
   
  for(int i = 0; i < ids.length;i++)
  {
      McDbLayerTableRecord layer = new McDbLayerTableRecord(ids[i]);
      
   
      layer.setIsOff(false);
  }

隐藏指定的图层

实现代码如下:

  // 隐藏指定的层。
  //增加一个图层   参数为图层名
  MxLibDraw.addLayer("AAA111");
  //设置当前绘图函数使用的图层   参数为图层名字符串
  MxLibDraw.setLayerName("AAA111");
   
  long lId = MxLibDraw.drawLine(400,0,0,400);
   
  McDbLine line = new McDbLine(lId);
  line.setColorIndex(5);
   
  McDbLayerTableRecord layer = new McDbLayerTableRecord("AAA111");
  layer.setIsOff(true);

锁定所有图层

实现代码如下:

  //得到所有图层
  long[] ids = MxFunction.getAllLayer();
  if(ids ==null)
      return;
   
  for(int i = 0; i < ids.length;i++)
  {
      McDbLayerTableRecord layer = new McDbLayerTableRecord(ids[i]);
   
   
      layer.setIsLocked(true);
  }

锁定指定图层

实现代码如下:

  //设置图层锁定状态
  //增加一个图层   参数为图层名
  MxLibDraw.addLayer("AAA111");
  //设置当前绘图函数使用的图层   参数为图层名字符串
  MxLibDraw.setLayerName("AAA111");
   
  long lId = MxLibDraw.drawLine(400,0,0,400);
   
  McDbLine line = new McDbLine(lId);
  line.setColorIndex(5);
   
  McDbLayerTableRecord layer = new McDbLayerTableRecord("AAA111");
  layer.setIsLocked(true);
    文字样式

增加文字样式

用户可以增加文字样式到数据库,并设置其字体等属性,具体实现代码如下:

  // 增加文字样式
  //getCurrentDatabase()返回当前数据库对象
  //getTextstyle()返回数据库中的文字样式表对象
  McDbTextStyleTable txtstyleTable =  MxFunction.getCurrentDatabase().getTextstyle();
  //增加一个文字样式
  //参数一为样式名;参数二为shx字体名;参数三为中文shx字体名;参数四为宽度比例
  MxLibDraw.addTextStyle1("myshx","romans.shx","gbcbig.shx",0);
  //设置当前绘图函数使用的文字样式
  MxLibDraw.setTextStyle("MyTextStyle");

得到文字样式名

用户可以得到所有文字样式名,具体实现代码如下:

  // 得到所有文字样式名称
  //getCurrentDatabase()返回当前数据库对象
  //getTextstyle()返回数据库中的文字样式表对象
  McDbTextStyleTable txtstyleTable =  MxFunction.getCurrentDatabase().getTextstyle();
  //getAll()得到所有文字样式表中的文字样式对象
  long[] allId = txtstyleTable.getAll();
  for(int i = 0; i < allId.length;i++)
  {
      McDbTextStyleTableRecord textStyleRecord = new McDbTextStyleTableRecord(allId[i]);
      //getName()返回符号表记录名称
      Log.e("textStyleRecord:",textStyleRecord.getName());
      //返回文字样式的字体文件名,shx字体文件,fileName在不使用时需要调用Mx::mcutDelString函数释放内存
      Log.e("fileName:",textStyleRecord.fileName());
      //返回文字的big shx文件名
      Log.e("bigFontFileName:",textStyleRecord.bigFontFileName());
   
  }


这篇关于安卓系统CAD开发的图形数据库,安卓中浏览和编辑DWG的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程