Matrix from model space referenced by a viewport to layout

本文介绍如何将模型空间中视口的坐标转换到布局空间。通过使用AcGeMatrix3d类的各种方法,如旋转、缩放和平移等,来实现从模型空间到图纸空间的完整坐标变换过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

The following code demostrates how to the matrix from model space referenced by a viewport to the layout where the viewport resides.

 

//we need to apply the the view's transform to have it look the same

 

 

// in paper space (the paper space view is always orthogonal)

AcGeMatrix3d mat = AcGeMatrix3d::worldToPlane(AcGePlane(viewTarget, viewDirection));

 

 

 

//apply any view twist

mat = AcGeMatrix3d::rotation(twistAngle, AcGeVector3d::kZAxis) * mat;

 

 

 

// Get the center of the view in WCS coords

AcGePoint3d viewCenter3d(viewCenter.x, viewCenter.y, 0);

mat = AcGeMatrix3d::scaling(scale, viewCenter3d) * mat;

 

 

 

// Origin displacement from model to paper

AcGeVector3d offset(centerPoint.x - viewCenter3d.x, centerPoint.y - viewCenter3d.y, 0);

mat = AcGeMatrix3d::translation(offset) * mat;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值