//-------------------------------------------------------------------------------------------------------+ // Copyright (C), 1998-2007, SH Software Co. Ltd. // = FileName : AecDbGrip.h // = Version : ver2.0 // = Author : zjq // = CreateDate : 2002-09-09 // = Description: 夹点对象类的声明 // = Maintainers: // //-------------------------------------------------------------------------------------------------------+ #ifndef _AecDbGrip_H_ #define _AecDbGrip_H_ #if ARX > 17 #ifndef _AecDbGripDIM_H_ #include "AecDbGripDim.h" #endif #ifndef _SPTABLE_H_ #include "SPTable.h" #endif #include "dbGrip.h" class AEntityBase; class GEOAPI AecDbGrip { public: AecDbGrip(AEntityBase *pEnt,const AcGePoint3d&pt,int type = 0); virtual ~AecDbGrip(); bool operator>(const AecDbGrip&) const; bool operator<(const AecDbGrip&) const; int Index() const; void SetIndex(long id); const AcGePoint3d Position() const; AEntityBase* Owner() const; CString ToolTip() const; AecDbGripDim* GetDim(long i) const; int FindDim(AecDbGripDim* pDim) const; int GetDimNum() const; AcDbGripData* CreateGripData() const; void GetHoverDimension(const AcDbObjectId &entId,double dimScale,AcDbDimDataPtrArray& dimData) const; void GetHotDimension(const AcDbObjectId &entId,double dimScale,AcDbDimDataPtrArray& dimData) const; bool WorldDraw(AcGiWorldDraw* pWd,AcDbGripOperations::DrawType type,double dGripSize) const; void ViewportDraw(AcGiViewportDraw* pVd,AcDbGripOperations::DrawType type,int gripSize) const; //更新关联动态标注 void UpdateDimEnt(); void AppendDim(AecDbGripDim*pDim); protected: int m_iId; AcGePoint3d m_ptGrip;//位置 unsigned int m_bitFlags;//标志 SPTable m_allDims; int m_iType;//夹点类型,>0是自定义夹点,<0,JIG夹点 AEntityBase* m_pGripEntity;//所属实体 }; #endif #endif