(Tekla Structures二次开发)在图纸中创建旋转的3D视图

在图纸中创建指定零件的3D视图

private static bool CreateRotatedView(Beam myBeam, Drawing currentDrawing)
        {
            DrawingHandler drawingHandler = new DrawingHandler();
            currentDrawing = drawingHandler.GetActiveDrawing();

            CoordinateSystem displayCoordinateSystem = new CoordinateSystem();
            CoordinateSystem myCoordinateSystem = myBeam.GetCoordinateSystem();
            ArrayList myParts = new ArrayList(); 

            myParts.Add(myBeam.Identifier);//*

            //角度由度数换算成弧度
            Matrix RotationAroundX = MatrixFactory.Rotate(20.0 * Math.PI * 2 / 360.0, myCoordinateSystem.AxisX);
            Matrix RotationAroundZ = MatrixFactory.Rotate(30.0 * Math.PI * 2 / 360.0, myCoordinateSystem.AxisY);

            Matrix Rotation = RotationAroundX * RotationAroundZ;

            displayCoordinateSystem.AxisX = new Vector(Rotation.Transform(new Point(myCoordinateSystem.AxisX)));
            displayCoordinateSystem.AxisY = new Vector(Rotation.Transform(new Point(myCoordinateSystem.AxisY)));

            TSD.View rotatedView = new TSD.View(currentDrawing.GetSheet(), myCoordinateSystem, displayCoordinateSystem, myParts);

            rotatedView.Name = "Example_View";
            return rotatedView.Insert();
        }

*这里是单个零件的id,也可以添加多个零件id。具体参见View构造函数说明。
视图名称“Example_View”可以在标签里面调出来。

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值