#ifndef AFX_TPIPECANALJIG_H__ #define AFX_TPIPECANALJIG_H__ #if _MSC_VER > 1000 #pragma once #endif #include "EdJigEx.h" #include "DrawPipeCanalDlg.h" class TVirtualPipeCanal; class TDbPipeCanal; class TPipeCanalJig : public TSymbEdJig { public: TPipeCanalJig(); ~TPipeCanalJig(); virtual int DoIt(int *pKeyIndex=NULL); DragStatus GetPoint(XPoint &pt); void GetDlgData(CDrawPipeCanalDlg *pDlg); void SetStartPoint(const AcGePoint3d &pt); void GetEndPoint(AcGePoint3d &pt); void GetStartPoint(AcGePoint3d &pt); void SetVtBefore(const AcGeVector3d &vtBefore); void SetPipeCanalPtr(TDbPipeCanal *&pCanal); // 刻度盘是否可用 cet 2012.3.26 add void EnableDial(bool bEnable); // 是否使用刻度盘 cet 2012.3.26 add bool IsDrawDial(); protected: virtual Adesk::Boolean update(); virtual AcDbEntity* entity() const; private: TVirtualPipeCanal *m_pVirtual; AcGePoint3d m_ptS; AcGePoint3d m_ptE; TDbPipeCanal *m_pCanal; AcGePoint3dArray m_arBeforePt; //记录经过点 AcGeVector3d m_vtBefore; //记录前一个向量 double m_dAverageAng;//转盘的最小角度 bool m_bUseDial; // 是否使用刻度盘 cet 2012.3.26 add CDrawPipeCanalDlg *m_pDlg; }; #endif // !defined(AFX_TPIPECANALJIG_H__D18A729A_453D_4296_B0C9_579A3A4DB682__INCLUDED_)