• Linux下基于.NET5开发CAX应用


    <<.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的更高级用法可以参考在线文档

  • 相关阅读:
    弹性布局、动画、过渡
    HTML
    数据库对象
    函数
    oracle与PL/SQL安装
    网络编程
    多线程
    联调接口
    vue 全局变量
    vue ajax请求
  • 原文地址:https://www.cnblogs.com/anycad/p/develop-cax-application-for-Linux-using-NET5.html
Copyright © 2020-2023  润新知