71 lines
2.1 KiB
C++
71 lines
2.1 KiB
C++
#pragma once
|
|
#include "EdJigEx.h"
|
|
|
|
class CBlockPreview : public AcDbEntity
|
|
{
|
|
public:
|
|
CBlockPreview(const TCHAR* szBlkName, XPoint pt, double nScaleX, double nScaleY, double dRadius);
|
|
virtual ~CBlockPreview();
|
|
virtual Adesk::Boolean subWorldDraw(AcGiWorldDraw *pWd);
|
|
AcDbBlockReference *m_pBlkRef;
|
|
// AcDbCircle *m_pCir;
|
|
CString m_csBlkName;
|
|
XPoint m_ptIns;
|
|
double m_dRadius;
|
|
double m_nRotate;
|
|
double m_nSacle, m_nSacleY;
|
|
BOOL m_bReversal;
|
|
};
|
|
|
|
|
|
class TBlockEdJig : public TSymbEdJig {
|
|
protected:
|
|
CString m_csBlkName;
|
|
double m_nRotate;
|
|
double m_dDist;
|
|
XPoint m_ptIns;
|
|
BOOL m_bInsCenPt;
|
|
BOOL m_bJigRotate;
|
|
double m_dRadius;
|
|
bool m_bUpdatePScale; // 预览实体是否随当前图纸比例变化 cet 2017.9.28 add
|
|
public:
|
|
TBlockEdJig(const TCHAR* szBlkName, XPoint pt, double nScaleX, double nScaleY, bool bUpdatePScale = false);
|
|
TBlockEdJig(const TCHAR* szBlkName, XPoint pt, double nScale, bool bUpdatePScale = false);
|
|
TBlockEdJig(const TCHAR* szBlkName, XPoint pt, double nScale, AcGeVector3d vectBase, double dDist = 0.0, bool bUpdatePScale = false);
|
|
~TBlockEdJig();
|
|
virtual int DoIt(int *pKeyIndex = NULL);
|
|
DragStatus GetPoint(XPoint &pt);
|
|
// 预览实体是否随当前图纸比例变化 cet 2017.9.28 add
|
|
void SetUpdatePScale(bool bVal);
|
|
AcDbBlockReference *m_pBlkRef;
|
|
AcDbCircle *m_pCir;
|
|
AcGeMatrix3d m_mat;
|
|
BOOL m_bReversal;
|
|
double m_nSacle, m_nSacleY;
|
|
XPoint m_ptRef;
|
|
XPoint m_ptRetIns;
|
|
int m_iQuadrant;
|
|
AcGeVector3d m_vectBase;
|
|
void SetInsCenPt(BOOL bInsCenPt) { m_bInsCenPt = bInsCenPt; };
|
|
void SetRadius(double dRadius); //显示保护圆
|
|
protected:
|
|
virtual Adesk::Boolean update();
|
|
virtual AcDbEntity* entity() const;
|
|
};
|
|
|
|
class TBlockExJig : public TSymbEdJig {
|
|
public:
|
|
TBlockExJig(const TCHAR* szBlkName, XPoint pt, double nScaleX, double nScaleY, double dRadius);
|
|
~TBlockExJig();
|
|
virtual int DoIt(int *pKeyIndex = NULL);
|
|
DragStatus GetPoint(XPoint &pt);
|
|
CBlockPreview *m_pBlkRef;
|
|
XPoint m_ptRef;
|
|
void SetReversal(BOOL bReversal) { m_pBlkRef->m_bReversal = bReversal; };
|
|
|
|
|
|
protected:
|
|
virtual Adesk::Boolean update();
|
|
virtual AcDbEntity* entity() const;
|
|
};
|