.NET 6 十行代碼搭建三維應(yīng)用程序

給程序起一個(gè)酷酷的名字,選一個(gè)酷酷的位置:
選一下.NET 6
二、配置項(xiàng)目
從nuget.org上或者本地安裝AnyCAD Rapid SDK 2022。
下載鏈接: https://pan.baidu.com/s/1FQQpwjImo-T3thUk5E1sQw 提取碼: 9d86

三、設(shè)計(jì)界面
給三維界面留個(gè)位置,采用經(jīng)典的所有窗口。右邊用來顯示三維內(nèi)容。

四、創(chuàng)建三維控件
using?AnyCAD.Forms;
namespace?WinFormsStarter
{
????public?partial?class?Form1?:?Form
????{
????????RenderControl?mRenderView;?
????????public?Form1()
????????{
????????????InitializeComponent();
????????????mRenderView?=?new?RenderControl(this.splitContainer1.Panel2);
????????}
????}
}
運(yùn)行一下:
五、顯示模型
using?AnyCAD.Forms;
using?AnyCAD.Foundation;
namespace?WinFormsStarter
{
????public?partial?class?Form1?:?Form
????{
????????RenderControl?mRenderView;?
????????public?Form1()
????????{
????????????InitializeComponent();
????????????mRenderView?=?new?RenderControl(this.splitContainer1.Panel2);
????????????//構(gòu)造函數(shù)里不能在使用Rapid?SDK的其他的API,需要放在Load里面
????????}
????????//?窗口加載后,創(chuàng)建個(gè)球
????????private?void?Form1_Load(object?sender,?EventArgs?e)
????????{
????????????var?shape?=?ShapeBuilder.MakeSphere(new?GPnt(0,?0,?0),?10);
????????????mRenderView.ShowShape(shape,?ColorTable.PaleVioletRed);
????????}
????}
}
再運(yùn)行一下:
六、資源釋放
在調(diào)試模式下,程序退出的時(shí)候在輸出窗口中,你可能會(huì)發(fā)現(xiàn)這樣的錯(cuò)誤:
程序“[81560]?WinFormsStarter.exe”已退出,返回值為?3221225477?(0xc0000005)?'Access?violation'。
這是因?yàn)锳nyCAD Rapid SDK沒有正確的釋放資源。為保證三維控件資源能夠正確釋放,程序能夠得到正常的返回值,只需要這樣加一下:
namespace?WinFormsStarter
{
????internal?static?class?Program
????{
????????///?
????????///??The?main?entry?point?for?the?application.
????????///?
????????[STAThread]
????????static?void?Main()
????????{
????????????AnyCAD.Foundation.GlobalInstance.Initialize();
????????????ApplicationConfiguration.Initialize();
????????????Application.Run(new?Form1());
????????????AnyCAD.Foundation.GlobalInstance.Destroy();
????????}
????}
}
七、總結(jié)
.NET6為開發(fā)者帶來了高效的開發(fā)體驗(yàn),而AnyCAD Rapid SDK也一樣,通過簡(jiǎn)單幾步即可為應(yīng)用添加三維能力,讓程序顯得高大上!
AnyCAD Rapid SDK的包括三維顯示、造型、STEP/IGES讀取等場(chǎng)景的三維功能,能夠滿足大部分的三維工業(yè)軟件應(yīng)用場(chǎng)景,比如CAD設(shè)計(jì)、CAE仿真、CAM加工,機(jī)器人模擬等,可以應(yīng)用在建筑、機(jī)械、電力、化工、自動(dòng)化等多個(gè)領(lǐng)域。
源碼:https://gitee.com/anycad/rapid.net.starter
轉(zhuǎn)自:AnyCAD
鏈接:cnblogs.com/anycad/p/anycad-winforms-net6-starter.html
