zoukankan      html  css  js  c++  java
  • AnyCAD C#开发-BrepTools::Transform变换移动

    AnyCAD2020+VS2012
    
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    using AnyCAD.Platform;
    using AnyCAD.Exchange;
    using AnyCAD.Presentation;
    
    namespace WindowsFormsApplication3
    {
        public partial class Form1 : Form
        {
            AnyCAD.Presentation.RenderWindow3d renderView;
            AnyCAD.Platform.BrepTools BrepToolsFeat = new AnyCAD.Platform.BrepTools();
            AnyCAD.Exchange.StepReader reader = new AnyCAD.Exchange.StepReader();
    
            public Form1()
            {
                InitializeComponent();
    
                this.renderView = new AnyCAD.Presentation.RenderWindow3d();
                this.Controls.Add(renderView);
                renderView.Size = this.ClientSize;
            }
    
            TopoShape exrude1;
            TopoShape exrude2;
            private void button1_Click(object sender, EventArgs e)
            {
                //创建椭圆
                TopoShape ellipse1 = BrepToolsFeat.MakeEllipse(new Vector3(0, 0, 0), 60, 40, new Vector3(0, 0, 1));
    
                //创建一个面
                TopoShape ellipse2 = BrepToolsFeat.MakeEllipse(new Vector3(100, 100, 100), 60, 40, new Vector3(0, 0, 1));
                TopoShape face1 = BrepToolsFeat.MakeFace(ellipse2);
    
                //创建拉伸
                exrude1 = BrepToolsFeat.Extrude(ellipse1, 100, new Vector3(0, 0, 1));
                exrude2 = BrepToolsFeat.Extrude(face1, 100, new Vector3(0, 0, 1));
    
                //显示几何
                int exrude1ID = 0;
                renderView.ShowGeometry(exrude1, exrude1ID);
    
                int exrude2ID = 0;
                renderView.ShowGeometry(exrude2, exrude2ID);
    
            }
    
            private void button2_Click(object sender, EventArgs e)
            {
                //变换移动
                Coordinate3 coord1 = new Coordinate3(new Vector3(200, 200, 200), new Vector3(1,0,0), new Vector3(0,1,0), new Vector3(0,0,1));
                TopoShape transform1 = BrepToolsFeat.Transform(exrude1, coord1);
    
                //显示几何
                int transform1ID = 0;
                renderView.ShowGeometry(transform1, transform1ID);
            }
        }
    }
    
    Caesar卢尚宇
    2020年6月29日

  • 相关阅读:
    第1章:路线图
    第0章:战胜恐惧和懊悔
    c++ 变量 定义 声明
    两个无符号数相减 可以得到负数
    c++ cast operator(类型转换操作符)
    C++中static 的使用方式,以及与c中的static的区别
    重载overload 重写override 重定义redefining
    用到位运算的题目
    C++ 虚函数表解析
    虚函数 动态绑定 实现方式是:虚函数表
  • 原文地址:https://www.cnblogs.com/nxopen2018/p/13499290.html
Copyright © 2011-2022 走看看