本次开发环境我们选择
- 中望CAD2023
- Visual studio 2022
- 开发语言C#
创建一个项目
- 打开Visual studio,新建类库模板项目(.NET Framework),设置目标框架为.Net Framework 4.7.2。


添加引用
- 在解决方案资源管理器中右键点击[引用]然后点击[添加引用...]
- 切换到"浏览"界面并点击浏览按钮,在ZWCAD安装目录下选中ZwManaged.dll和ZwDatabaseMgd.dll。添加后如下图所示:.


编写第一个程序
新建一个Main.cs文件,写入以下代码
C#
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Xml.Linq;
using ZwSoft.ZwCAD.ApplicationServices;
using ZwSoft.ZwCAD.DatabaseServices;
using ZwSoft.ZwCAD.EditorInput;
using ZwSoft.ZwCAD.Geometry;
using ZwSoft.ZwCAD.Runtime;
namespace WebCAD1
{
public class Main
{
[CommandMethod("AddCircle")]
public void AddCircle()
{
Document zcDoc = ZwSoft.ZwCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
Database zcDB = zcDoc.Database;
Transaction ZcTran = zcDoc.TransactionManager.StartTransaction();
using (ZcTran)
{
BlockTable zcBLT = (BlockTable)ZcTran.GetObject(zcDB.BlockTableId, OpenMode.ForRead);
BlockTableRecord zcBLTR = (BlockTableRecord)ZcTran.GetObject(zcBLT[BlockTableRecord.ModelSpace], OpenMode.ForWrite);
Circle zcCircle = new Circle();
zcCircle.Center = new Point3d(2, 3, 0);
zcCircle.Radius = 10;
zcCircle.ColorIndex = 1;
zcBLTR.AppendEntity(zcCircle);
ZcTran.AddNewlyCreatedDBObject(zcCircle, true);
ZcTran.Commit();
}
zcDoc.SendStringToExecute("_ZOOM E ", false, false, false);
}
}
}
测试
设置启动外部程序,选择ZWCAD.exe

点击播放盒绿色三角形启动

启动后在命令行输入netload

选择项目路径下Debug文件夹中的编译好的.dll文件

输入AddCircle回车
屏幕中心出现一个圆