写AcEdJig类的一点心得

本文介绍了在CAD操作中如何利用AcEdJig类进行点、距离和角度的获取,详细讲解了sampler()、update()和entity()函数的重载应用,并提供了示例代码,强调了编程规范和常见错误避免方法。
摘要由CSDN通过智能技术生成

很不幸的,今天被老大训导了,但也因为学到不少东西:

AcGePoint3d (AcGePoint2d )转换 ads_point 用:asDblArray函数。

ads_point 转换AcGePoint2d  用asPnt2d(const double &pnt) 或aspnt3d

acdbUcs2Wcs(ptAds, asDblArray(m_ptStart) ,false), 是表示在CAD中的转换成常用坐标系WCS 进行转换

 

使用AcDbPolyline类时,必须用到的函数有:

 

m_pEntity->setNormal(AcGeVector3d::kZAxis);

m_pEntity->setElevation(0.0);

 

 

 

转换成实体所在平面的点:

先定义平面:AcGePlane plane(AcGePoint3d::kOrigin + m_pEntity->normal() * m_pEntity->elevation(), m_pEntity->normal());

AcGePoint2d pt1(m_ptStart.convert2d(plane)), pt2(m_ptEnd.convert2d(plane));

 

 

 

AcGeVector2d vt1(pt2 - pt1);

vt1.normalize();

AcGeVector2d vt2(vt1);

 

vt2.rotateBy(PI / 2.0);

 

 

向量vt1 与 向量vt2 互相垂直

 

用向量求点更简单(示例):

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值