Linux下基于.NET5开发CAX应用
2020-12-12 21:20
2156 查看
<<.NET5下的三维应用程序开发>>一文中介绍了如何在.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
可以看到运行界面:
3. 项目结构
项目主要有工程文件和代码文件组成。
3.1 HiCAD.csproj
<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>net5.0</TargetFramework> <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath> <OutputPath>./bin/$(Configuration)</OutputPath> </PropertyGroup> <ItemGroup> <Reference Include="AnyCAD.Foundation.NET5"> <HintPath>./bin/$(Configuration)/AnyCAD.Foundation.NET5.dll</HintPath> </Reference> </ItemGroup> </Project>
3.2 Program.cs
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的更高级用法可以参考在线文档。
相关文章推荐
- 在Linux下基于Eclipse的Hadoop应用开发环境配置
- 基于 Laravel 开发博客应用系列 —— 设置 Linux/Mac 本地开发环境
- 基于嵌入式Linux进行Python应用开发
- 【DSP开发】【Linux开发】基于ARM+DSP进行应用开发
- 志同道合 法中结成联盟开发Linux应用平台
- 基于WEB应用开发的java程序员必备工具
- 基于MySQL的高性能数据库应用开发
- Linux程序应用开发环境和工具经验谈
- 基于WEB应用开发的java程序员必备工具
- 基于微软Office Communicator 2007 Automation API开发应用
- 中法合作开发 Linux 应用平台
- (转载)Linux应用开发入门(GCC)
- 基于NetBeans 5.0 Mobility Pack 5的无线应用开发
- 基于JBPM的工作流应用的开发
- 基于WEB应用开发的java程序员必备工具
- 基于 Lotus Expeditor 6.1 的复合应用开发
- Linux程序应用开发环境和工具经验谈
- 基于HK-2000 OEM的嵌入式Linux开发
- 开发基于JBoss的J2EE应用
- 应用 Rational 工具简化基于 J2EE 的项目第 9 部分: 产品化开发与测试