使用Nuget快速集成.Net三维控件
据老一辈的程序员说开发三维程序门槛很高,需要学若干年才能入门,自从遇上AnyCAD三维控件后,开发三维应用变的简单了。当结合nuget后,一切更简单了。
1 准备工作
安装VS201x以后,就可以开始开发了。
1.1 创建WinForm工程
如果是跟已有的项目集成,就可以跳过此步。
1.2 使用nuget添加AnyCAD三维控件
使用nuget安装可以自动添加AnyCAD程序集引用。
1.3 设置项目属性
为保障三维应用的性能,建议使用x64
2 开始写代码
2.1 在窗体上添加控件容器
可以使用Panel这样的Container控件来存放三维控件。
2.2 创建三维控件
public partial class Form1 : Form
{
RenderWindow3d mRenderView;
public Form1()
{
InitializeComponent();
mRenderView = new RenderWindow3d();
this.splitContainer1.Panel2.Controls.Add(mRenderView);
mRenderView.Dock = DockStyle.Fill;
}
}
2.3 运行
3 扩展到CAD浏览器
3.1 打开STEP文件
增加打开文件菜单,在处理函数中增加以下代码:
private void openToolStripMenuItem_Click(object sender, EventArgs e)
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "STEP File (*.stp;*.step)|*.stp;*.step||";
if (DialogResult.OK != dlg.ShowDialog())
return;
var shape = GlobalInstance.BrepTools.LoadFile(new Path(dlg.FileName));
if (shape != null)
{
int myObjectId = 100;
mRenderView.ShowGeometry(shape, myObjectId);
}
}
3.2 运行测试
打开一个STEP文件测试一下:
4 小结
通过使用nuget包管理工具,简单基本就可以实现与AnyCAD三维控件集成,再加几行代码就可以开发一个CAD模型浏览程序。 更多的功能请参考anycad的github代码仓库,那里有丰富的示例,尤其是:https://github.com/anycad/AppFeatures。