很多人可能知道使用.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文件

Exe

netcoreapp3.1

netcoreapp3.1/AnyCAD.Foundation.NetCore.dll

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!");

}

}

}

3.3 编译运行

效果如下:

20200526172111.png

总结

随着硬件国产化、Linux操作系统国产化,CAD/CAE/CAM等三维应用也亟需国产化。基于AnyCAD .NET Core三维控件,借助AnyCAD .NET Core三维控件,也可以快速搭建三维建模和可视化的应用。

linux 三维数据绘图软件,Linux下开发基于.NET的三维绘图程序相关推荐

  1. linux上三维绘图软件,linux下开发基于.net的三维绘图程序

    很多人可能知道使用.NET Core可以开发跨平台(包括windows,linux.macOS)的App,但知道在Linux下使用.NET Core可以开发三维程序的恐怕就很少了.本文通过借助.NET ...

  2. 南通数字孪生智能工厂,数字工厂智能车间建设,3d可视化工业建模,三维数据交互大屏系统开发

    南通数字孪生智能工厂,数字工厂智能车间建设,3d可视化工业建模,三维数据交互大屏系统开发."中国制造2025"与"互联网+"等国家级行动纲领的颁发,给制造业带来 ...

  3. Qt Creator开发基于小部件的应用程序

    Qt Creator开发基于小部件的应用程序 开发基于小部件的应用程序 代码编辑器集成 管理影像资源 指定Qt Designer的设置 使用设备皮肤预览表单 添加小部件 开发基于小部件的应用程序 Qt ...

  4. linux最新系统下载软件,linux lite4.8稳定版下载

    linux lite4.8稳定版是最新推出的linux稳定版操作系统,支持64位安装系统,并且拥有丰富完整的系统套件,让你开发与办公更加方便,还搭载了各种各样的主题皮肤,以及强大的图像编辑器和查看器, ...

  5. python 三维数据绘制等值高线剖面图_Matplotlib中的三维绘图

    Matplotlib最初设计时只考虑了二维绘图.在1.0版本发布时,一些三维绘图实用程序构建在Matplotlib的二维显示之上,结果是一组方便(如果有限)的三维数据可视化工具.通过导入mplot3d ...

  6. linux有数据恢复工具吗,Linux运维人员必备的数据恢复工具有哪些?

    今天小编要跟大家分享的文章是关于Linux运维人员必备的数据恢复工具有哪些?相信对于很多正在从事Linux运维工作,或者是其他Linux运维爱好者都需要重点.无论你使用的是台式电脑还是笔记本,需要关注 ...

  7. python windows linux 传数据_Windows、Linux之间传输文件的几种方式

    常见的文件传输协议有ftp.sftp,sftp就是在ftp的基础上对传输的数据进行了加密. ftp明文传输,速度快:sftp加密传输,速度略慢但安全性高.如果传输的数据包含敏感内容,使用sftp. f ...

  8. 三维算量软件哪个好?鹏业BIM三维安装算量软件

    三维算量软件哪个好?市面上得安装算量软件多种多样,哪个是比较容易上手,并且是三维安装算量软件?鹏业BIM三维安装算量软件,可视化三维 BIM三维建模,与revit软件无缝接口. 某地下室喷淋.消火栓. ...

  9. linux 数据绘图软件,linux下的数据绘图工具-gnuplot

    Gnuplot 是一种免费分发的绘图工具,可以移植到各种主流平台.它可以下列两种模式之一进行操作:当需要调整和修饰图表使其正常显示时,通过在 gnuplot 提示符中发出命令,可以在交互模式下操作该工 ...

最新文章

  1. 最大流问题模板-java-蓝桥杯-算法训练-网络流裸题
  2. 截取指定网站Html编码
  3. TCP,IP数据包结构
  4. secFox setting
  5. mysql计算1天后的时间_mysql 计算某个时间,多少天后,多少个月后时间戳
  6. ios 图片居中裁剪_使用居中图像iOS启动屏幕故事板
  7. java内存优化详解_jvm堆内存优化详解
  8. 图论--最短路-- Dijkstra模板(目前见到的最好用的)
  9. 了解javascript中函数执行顺序
  10. Git初学札记(六)————在远程新建本地Branch与在本地新建远程Branch
  11. LeetCode 112. Path Sum
  12. 程序员的绩效到底是应该衡量项目,还是改 Bug 量?
  13. Cocos2dx 学习之CCTableView
  14. liunx grep sed
  15. C语言程序设计谭浩强版 六
  16. 超高频UHF RFID读写模块R200开发测试
  17. 程序员IT认证有用吗?软件工程师考证有必要吗?
  18. 计算机专业应届毕业生有没有必要参加IT培训?
  19. python公众号留言功能_搭建hexo博客给公众号制作留言功能
  20. 机器学习(八) 生成对抗网络(GAN)

热门文章

  1. 各种版本的Visual C++编译器
  2. 机器视觉:CMOS图像传感器
  3. VS2010下配置OpenCV2.2
  4. 【Java例题】8.2 手工编写字符串统计的可视化程序
  5. 12.2 asmca fails with 'ORA-00845'
  6. 如何防止网站被SQL注入攻击之java网站安全部署
  7. linux mv命令: 移动文件或文件改名
  8. Sonos拿1.3亿美金给员工发福利,中国厂商要拿什么拼?
  9. Mysql Replication 之 GTID 实战
  10. 关于 react的生命周期