- 积分
- 2654
- 明经币
- 个
- 注册时间
- 2020-4-23
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
ObjectARX如何在当前UCS中获取正确的坐标点用于创建对象
我们在创建对象时,如果在重新定义过的坐标系(UCS)中创建时,如果不进行坐标系的转换,则会在意想不到的地方创建对象。
如下代码可以将当前坐标系定义的2D点转换为世界坐标系(WCS)的2D点,用于直接创建对象。
- static void ReSetPoint2WCS(AcGePoint2d &pt){
- ads_point ptIn, ptOut;
- SetAdsPt(ptIn, pt);
- acdbUcs2Wcs(ptIn, ptOut, false);
- AdsPt2AcGePt2d(pt, ptOut);
- }
- static void AdsPt2AcGePt2d(AcGePoint2d& pt, const ads_point& ap) {
- pt.x = ap[0];
- pt.y = ap[1];
- }
- static void SetAdsPt(ads_point& ap, const AcGePoint2d& pt) {
- ap[0] = pt.x;
- ap[1] = pt.y;
- ap[2] = 0.0;
- }
复制代码
|
|