光伏自动化出图系统 基于C#的AutoCad二次开发

  • 行业动态 2022-07-05 分享新闻到:
<返回列表

  CAD计算机软件的开发及应用,是工程公司提高设计工作效率,工程设计质量的重要手段。在光伏发电工程设计的过程中,需要进行一系列工程计算。目前在设计中设计的计算包括:高度角计算,最佳倾角计算,光伏阵列布置,串并联计算和发电量计算等。
 

 
 
  从程序实现方面进行相关算法的介绍,采用的语言为C#。Autocad的开发形式包括visual lisp、objectarx、vba、.Net等等,其中基于.Net平台的C#语言学习曲线较为平缓,使用该语言进行AutoCad的二次开发效率较高。
 
  垂杨科技小编记录了,使用C#进行AutoCad二次开发的环境搭建和几种二次开发的模式。
 
  软件配置:Autocad2014 + objectarx2014 + AutoCAD_2014_dotnet_wizards + vs2013;(注:此配置不是唯一的,因为.NET框架可向下兼容;)
 
  1.搭建环境
 
  1.1 创建项目
 
  在vs中创建一个类库项目,适用于.dll和对话框应用程序的开发。
 

 
 
  1.2  引用类库
 
  从objectarx2014中引入下图所示类库,并且对于所有类库,右击->属性->复制到本地->false;
 

 
 
  1.3 框架及目标平台
 
  做完上述操作,建议先不要动项目的框架及目标平台(右击->项目->应用程序or生成),如果编译出问题,再调整这两项,即注意:平台要与Autocad相匹配:是x64 or x32;框架也要相匹配,看是否和当前Autocad版本相兼容。
 
  2.代码编写
 
  在正式写代码之前,需要了解你想做哪种形式的Cad二次开发,如:.dll; Ribbon; 对话框应用程序等等。不同形式的开发,其代码编写也有所不同。
 
  2.1  载入动态链接库(.dll)
 
  这应该是较为常用的,且比较简单快捷的一种开发形式。可以用其来编写一些小的功能,类似于在Cad下方的编辑框中输入一些命令(Command)。
 
  具体开发如下:
 
  在public class xxx下方编写:
 
  [Command("xxx")]                     //可以理解为:当写完代码并加载至cad后,在编译框键入命令xxx,从而执行操作。至于具体执行什么操作,这要根据下面的xxx方法具体的算法逻辑了。
 
  public void xxx()                  //编写期望cad具体执行的操作。
 
  {
 
  xxxxxx;
 
  }
 
  注:以上只是一个模板,具体可参照《Autocad .Net开发指南》上的例子。
 
  2.2 对话框应用程序
 
  本质上,这也是一个类库项目,与2.1节类似,也是先编译生成一个.dll格式的动态链接库,然后再通过NETLOAD命令加载入Cad中,随后键入xxx命令,执行操作。但是,与上述开发形式相比,其与用户之间的交互模式更为友好。
 
  一般地,当键入xxx命令后,cad会弹出一个对话框,通过点选按钮的方式,让cad执行具体操作。
 
  具体开发如下:(注:仅为模板)
 
  1. 创建一个类库项目;
 
  2. 添加窗体文件,并在类库中编写类似如下的代码:
 
  复制代码
 
  public class Class1
 
  {
 
  [CommandMethod("DialogDemo")]
 
  public void DialogDemo()
 
  {
 
  Form1 f1 = new Form1();   //创建窗体实例
 
  f1.ShowDialog();    //弹出对话框,注意与show的区别
 
  }
 
  }
 
  复制代码
 
  3. 为了实现:当点击按钮,从而触发事件这一操作,
 
  需要编写事件中命令cad所做的具体操作逻辑,这就需要单独编写一个或多个类,可以添加一个类文件,将他们放在其中。
 
  4.最后,为了点击按钮后能够触发相应的事件,在事件处理器中需要添加类似如下的代码:
 
  复制代码
 
  private void btnDrawToCad_Click(object sender, EventArgs e)
 
  {
 
  MyEntites m1 = new MyEntites((double)numericUpDown1.Value, (double)numericUpDown2.Value, (double)numericUpDown3.Value); //创建一个实例;
 
  datatool.AddEntity(m1.Ents); //将list作参数载入,将创建的图形添加进模型空间块表记录中。
 
  }
 
  复制代码
 
  5. 综合起来,在cad键入命令xxx后,弹出一个对话框,点击按钮后,在cad中自动画出了一个图形。
 
  3.光伏踏勘痛点
 
  在销售安装设备的过程中,需要针对农户屋顶现场现状踏勘,功能需求和尺寸匹配选型等,踏勘过程工作繁重,踏勘完成后使用AutoCAD根据勘测数据绘制图纸,整个过程耗时很长。
 

 
 
  面对上述目标,提出项目实施过程规范化、流程化,借助手机移动端等提供的便利性,在H5页面中,把需要踏勘的数据模板化,只需根据模板填完踏勘数据,在H5页面中完成踏勘数据的录入,就可以自动生成一套完整的的图纸(需要服务器支持)。
 
  联系小编,索要“光伏自动出图系统”行业解决方案,大幅度提升出图效率,减少用工成本。
分享新闻到:
扫描二维码分享到微信
确 认
扫描二维码关注我们:垂杨科技
确 认