102 lines
2.1 KiB
C++
102 lines
2.1 KiB
C++
#ifndef _TTHUNDERINSERTPREVIEWJIG_H__
|
|
#define _TTHUNDERINSERTPREVIEWJIG_H__
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif
|
|
|
|
#define BLK_TAG _T("$TEXT$")
|
|
|
|
#include "TSymbEdJigEx.h"
|
|
|
|
class CLayPinDlg;
|
|
class TVirtualEntity;
|
|
class TThunderInsertPreviewJig : public TSymbEdJigEx
|
|
{
|
|
public:
|
|
TThunderInsertPreviewJig(AcDbBlockReference* pRef);
|
|
virtual ~TThunderInsertPreviewJig();
|
|
|
|
void SetLayPinDlgPtr(CLayPinDlg* pLayPtr);
|
|
|
|
virtual DragStatus GetPoint(XPoint &pt);
|
|
|
|
virtual Adesk::Boolean update();
|
|
virtual AcDbEntity* entity() const;
|
|
|
|
AcGePoint3d GetLastPoint() const;
|
|
|
|
private:
|
|
|
|
TVirtualEntity *m_pVirEnt;
|
|
CLayPinDlg *m_pLayPinDlg;
|
|
|
|
AcGePoint3d m_ptPos;
|
|
};
|
|
|
|
class TVirtualEntity : public AecCurveEntity
|
|
{
|
|
public:
|
|
|
|
TVirtualEntity(AcDbBlockReference* pRef);
|
|
virtual ~TVirtualEntity();
|
|
|
|
void SetWorldDrawEntities(const AcDbVoidPtrArray& arPtr);
|
|
|
|
void SetCurrentPos(const AcGePoint3d& ptPos);
|
|
|
|
void SetProCircleRadius(AcGeDoubleArray& arData);
|
|
|
|
void SetThunderData(CStringArray& arXData);
|
|
|
|
//{{AFX_ARX_METHODS(TVirtualEntity)
|
|
virtual Adesk::Boolean subWorldDraw(AcGiWorldDraw* mode);
|
|
//}}AFX_ARX_METHODS
|
|
|
|
private:
|
|
|
|
Adesk::Boolean subWorldDrawBlk(AcGiWorldDraw* mode);
|
|
|
|
Adesk::Boolean subWorldDrawCir(AcGiWorldDraw* mode);
|
|
|
|
void SetCurBlkAttText(AcDbBlockReference* pRef, LPCTSTR pszText, double dTextH);
|
|
|
|
bool DocGetMeterUnitDraw();
|
|
|
|
private:
|
|
|
|
AcGePoint3d m_ptPos;
|
|
AcGeDoubleArray m_arCirData;
|
|
AcDbBlockReference *m_pRef;
|
|
CStringArray m_arXData;
|
|
};
|
|
|
|
//避雷带
|
|
//////////////////////////////////////////////////////////////////////////
|
|
class TThunderLinePreviewJig : public TSymbEdJigEx
|
|
{
|
|
public:
|
|
|
|
TThunderLinePreviewJig(AcDbPolyline* pLine);
|
|
virtual ~TThunderLinePreviewJig();
|
|
|
|
virtual DragStatus GetPoint(XPoint &pt);
|
|
|
|
virtual Adesk::Boolean update();
|
|
virtual AcDbEntity* entity() const;
|
|
|
|
void SetFixAngleState(BOOL bFix);
|
|
void SetFixAngleValue(double dFixAngle);
|
|
|
|
AcGePoint3d GetLastPoint();
|
|
|
|
private:
|
|
|
|
BOOL m_bFix;
|
|
double m_dFixAngle;
|
|
AcDbPolyline *m_pLine;
|
|
AcGePoint3d m_ptPos;
|
|
};
|
|
|
|
#endif // !defined(_TTHUNDERINSERTPREVIEWJIG_H__)
|