Files
envi-code/SourceCode/Code2026/PIDLineCmd/KTJigTrapezia.h
T
2026-09-28 15:28:50 +08:00

39 lines
983 B
C++

#if !defined(__KTJIGTRAPEZIA_H__)
#define __KTJIGTRAPEZIA_H__
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class KTJigTrapezia : public AcEdJig
{
public:
KTJigTrapezia();
virtual ~KTJigTrapezia();
// 两边是否有裙形(相对vtEdge)
enum ESkirtType
{
eSkirtNone = 0, // 没有
eSkirtCoDir = 1, // 同方向有
eSkirtReDir = 2, // 反方向有
eSkirtBoth = (eSkirtCoDir | eSkirtReDir), // 两边都有
};
// 拖放创建多段线,返回的多段线内存由调用者管理
AcDbPolyline* DragCreate(const AcGePoint3d& ptBase, const AcGeVector3d& vtEdge, const AcGeVector3d& vtNormal,
LPCTSTR pszPrompt, BOOL bDragEdge = TRUE, KTJigTrapezia::ESkirtType eSkirt = KTJigTrapezia::eSkirtNone);
protected:
virtual AcEdJig::DragStatus sampler();
virtual Adesk::Boolean update();
virtual AcDbEntity* entity() const;
BOOL m_bDragEdge;
KTJigTrapezia::ESkirtType m_eSkirt;
AcDbPolyline* m_pPline;
AcGePoint3d m_ptLast;
};
#endif // !defined(__KTJIGTRAPEZIA_H__)