WPF之AnyCAD显示3维坐标系的方式

WPF之AnyCAD显示3维坐标系的方式
1.添加AnyCAD包的引用
在这里插入图片描述
2.定义AnyCADd的3D坐标系,并与WPF控件绑定

private AnyCAD.Presentation.RenderWindow3d m_RenderView;
public AnyCAD.Presentation.RenderWindow3d  RenderView
{
  get { return m_RenderView; }
  set { m_RenderView = value; }
}

//绑定到WPF控件
System.Windows.Forms.Integration.WindowsFormsHost host =
                new System.Windows.Forms.Integration.WindowsFormsHost();
            this.m_RenderView = new AnyCAD.Presentation.RenderWindow3d();
            host.Child = this.m_RenderView;
            this.Grid3D.Children.Add(host);

显示效果
在这里插入图片描述
3.从本地txt读取3维坐标点信息

List<Vector3> listpoint = new List<Vector3>();
using (StreamReader file = new StreamReader(File.Open(path, FileMode.Open)))
                {
                    char[] separator = { ' ', ',' };//用于分割字符串的标示符号,即空格
                    string line = file.ReadLine();//读取行;
                    do
                    {
                        string[] newstr = line.Trim().Split(separator);
                        if(newstr.Length==3)
                        {
                            Vector3 curPoint = new Vector3(
                                 Math.Round(Math.Abs(double.Parse(newstr[0])),0),
                                 Math.Round(Math.Abs(double.Parse(newstr[1])),0),
                                 Math.Round(Math.Abs(double.Parse(newstr[2])-1700),0)
                                 );
                             listpoint.Add(curPoint);
                        }
                        line = file.ReadLine();//读取行                            
                    } while (line != null);

4.利用读取的点,生成空间多边形

   TopoShape ply= GlobalInstance.BrepTools.MakePolyline(listpoint);
   m_RenderView.ShowGeometry(ply, 0);

显示效果
在这里插入图片描述
注:与微信公众号文章同步https://mp.weixin.qq.com/s?__biz=MzU0MjE4MTc5MQ==&mid=2247483928&idx=1&sn=72d096b94aad5ad556bf3c6127ba3ce5&chksm=fb1fd2e8cc685bfecdf450a5d57aecd4f7066a78d99cfd143336f884c8b629ea083ef365f9ab&token=491782610&lang=zh_CN#rd
扫一扫,了解更多扫一扫,了解更多

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
WPF AnyCAD.NET是一个用于构建三CAD应用程序的框架,它提供了丰富的功能和易于使用的界面设计。 要显示一个立体矩形的图例,我们需要进行以下步骤: 1. 导入AnyCAD命名空间:首先,在WPF项目中导入AnyCAD命名空间,以便可以使用其提供的API和工具。 2. 创建3D视图窗口:在WPF的XAML文件中,添加一个用于显示内容的容器,例如 `<Grid>` 或 `<Canvas>`,并设置其属性。 3. 创建正交投影相机:使用AnyCAD的API,在代码中创建一个正交投影相机,以便将三内容以2D方式呈现在视图窗口中。 4. 创建矩形对象:使用AnyCAD的API,在代码中创建一个立体矩形的对象。可以通过指定起点、终点和高度等参数来定义矩形的形状和位置。 5. 将矩形对象添加到场景中:使用AnyCAD的API,将创建的矩形对象添加到场景中。这样,矩形就会在三视图中显示出来。 6. 添加光源和材质:为了使矩形能够正确显示阴影和反射效果,我们可以添加光源和材质。使用AnyCAD的API,可以创建光源对象和材质对象,并将其与矩形对象关联。 7. 刷新视图:最后,使用AnyCAD的API,刷新三视图,并将内容呈现在WPF界面中。 通过以上步骤,就可以在WPF界面中显示一个立体矩形的图例。注意,以上只是一个简单的示例,实际中可能需要根据具体需求进行更复杂的操作和样式设置。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值