Linux下基於.NET5開發CAX應用
阿新 • • 發佈:2020-12-13
[<<.NET5下的三維應用程式開發>>](https://www.cnblogs.com/anycad/p/anycad-rapid-sdk-for-net5.html)一文中介紹瞭如何在.NET5下使用AnyCAD開發應用程式。相比.NET4.x,.NET5一大進步便是可以跨平臺,即可以在Linux、Mac也可以使用,實現程式碼最大程度的複用。本文介紹如何在Linux下基於.NET5來開發三維應用程式。
## 1. 環境準備
### 1.1 下載按照包
```
連結: https://pan.baidu.com/s/1bygB0ugyiUYLaS4dY3nW4Q
提取碼: 95q8
```
以上鍊接包括.NET5 SDK for Linux和AnyCAD Rapid .NET5 SDK for Linux。
### 1.2 .NET5 SDK
解壓dotnet-sdk-5.0.100-linux-x64.tar.gz到 $HOME/dotnet/,即在$HOME/dotnet/目錄下可以找到dotnet可執行程式。可執行程式dotnet是編譯.NET程式的入口。
p.s. 這裡使用的是免安裝方式,你也可以參考微軟官方教程安裝.NET5 SDK。
### 1.3 解壓AnyCAD SDK
解壓anycad.rapid.NET.linux.zip 到某一目錄,裡面包含示例程式和SDK
## 2. 編譯和執行
SDK裡已經準備好了build的shell指令碼,在終端執行即可:
```
./build.sh
```
在bin目錄即可看到編譯好的HiCAD可執行程式。
在終端執行之:
```
./bin/Debug/HiCAD
```
可以看到執行介面:
![執行介面](https://img2020.cnblogs.com/blog/587154/202012/587154-20201212211635895-567394217.png)
## 3. 專案結構
專案主要有工程檔案和程式碼檔案組成。
### 3.1 HiCAD.csproj
```xml
```
### 3.2 Program.cs
```csharp
using AnyCAD.Foundation;
using System;
namespace anycad.test
{
class Program
{
static void Main(string[] args)
{
//初始化程式
GlobalInstance.Initialize();
//建立三維視窗
WindowCanvas canvas = new WindowCanvas("AnyCAD .NET5", true);
canvas.Initialize(0, 600, 400);
//建立個盒子
var box = ShapeBuilder.MakeBox(GP.XOY(), 10,20,30);
var node = BrepSceneNode.Create(box, null, null, 0.01);
var scene = canvas.GetContext().GetScene();
scene.AddNode(node);
// 顯示視窗
canvas.Run();
//釋放資源
canvas.Destroy();
GlobalInstance.Destroy();
}
}
}
```
## 小結
在Linux下使用.NET5目前比較遺憾的是還不能使用WinForms和WPF。
本文建立的程式比較簡單,關於AnyCAD Rapid SDK的更高階用法可以參考[線上文件](http://anycad