使用Nuget快速集成.Net三维控件
程序员文章站
2022-11-20 23:42:59
据老一辈的程序员说开发三维程序门槛很高,需要学若干年才能入门,自从遇上AnyCAD三维控件后,开发三维应用变的简单了。当结合nuget后,一切更简单了。 ......
据老一辈的程序员说开发三维程序门槛很高,需要学若干年才能入门,自从遇上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。