很多人可能知道使用.NET Core可以开发跨平台(包括windows,linux、macOS)的App,但知道在Linux下使用.NET Core可以开发三维程序的恐怕就很少了 。本文通过借助.NET三维绘图控件,可以方便地用C#编程语言在Linux下搭建一个集三维建模和三维显示于一身的.NET Core App 。
1 .NET Core环境搭建
Linux下的编辑器推荐使用VS Code 。
以Ubuntu20.04为例,搭建开发环境的步骤为:1.1 配置一下微软的包服务器
配置一下包服务器
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
1.2 下载和安装SDK:
sudo apt-get update
sudo apt-get install apt-transport-https
sudo apt-get update
sudo apt-get install dotnet-sdk-3.1
1.3 下载和安装.NET Core运行时
sudo apt-get update
sudo apt-get install apt-transport-https
sudo apt-get update
sudo apt-get install dotnet-runtime-3.1
2 创建一个.NET Core App
在控制台创建一个控制台App
dotnet new console -o MyFirstApp
编译一下:
dotnet build
就可以生成一个可执行程序 。接下来我们要基于这个程序增加代码,来集成AnyCAD .NET Core三维控件 。
3 集成AnyCAD .NET Core
3.1 引用程序集
修改csproj文件
<Project Sdk="Microsoft.NET.Sdk"><PropertyGroup><OutputType>Exe</OutputType><TargetFramework>netcoreapp3.1</TargetFramework></PropertyGroup>
<ItemGroup><Reference Include="AnyCAD.Foundation.NetCore"><HintPath>netcoreapp3.1/AnyCAD.Foundation.NetCore.dll</HintPath></Reference></ItemGroup>
</Project>
3.2 添加代码创建一个长方体
修改program.cs
using AnyCAD.Foundation;
using System;
namespace anycad.netcore.test
{
class Program
{static void Main(string[] args){
GlobalInstance.Initialize();
WindowCanvas canvas = new WindowCanvas("AnyCAD DotNetCore");
canvas.Initialize(0, 600, 400);
var box = ShapeBuilder.MakeBox(GP.XOY(), 10,20,30);
var node = ShapeSceneNode.Create(box, 0.01);
var scene = canvas.GetContext().GetScene();
scene.AddNode(node);
canvas.Run();
canvas.Destroy();
GlobalInstance.Destroy();
Console.WriteLine("Hello World!");
}
}
}
如果想创建更复杂的模型,可以参考AnyCAD github上的例子:
https://github.com/anycad/anycad.rapid.net.sample
3.3 编译运行
效果如下:
文章插图
20200526172111.png
总结
随着硬件国产化、Linux操作系统国产化,CAD/CAE/CAM等三维应用也亟需国产化 。基于AnyCAD .NET Core三维控件,借助AnyCAD .NET Core三维控件,也可以快速搭建三维建模和可视化的应用 。
作者:三维控件研究
链接:
https://www.jianshu.com/p/bf13722fe67d
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处 。
【linux下开发基于.net的三维绘图程序】
推荐阅读
- 大学|职教风口下,优路教育的“产教融合”思路是否可行?
- 淘宝上架用什么软件 淘宝自动上下架最好的软件
- 店侦探电脑版在哪里下载 店侦探使用教程
- 从1到10读懂茶,品牌白茶今年价格下降约10%左右
- 搞懂这9个“烹饪原理”,让你厨艺大增,下厨做饭不求人,真实用
- 突然爆胎千万别慌 以下几招保平安
- 茶熏鸭脯寿司的做法,下午茶寿司的做法
- 怎么消除淘宝降权 淘宝权重下降怎么补救
- 网络、cpu、内存、io、文件 linux下资源监控和分析工具汇总
- Linux内存管理之MMU的过程