93 lines
2.0 KiB
C++
93 lines
2.0 KiB
C++
#pragma once
|
|
#include "dbjig.h"
|
|
#include "earthwormdef.h"
|
|
|
|
class AECStatusRecord;
|
|
class TDbPipeLine;
|
|
|
|
class TDbPipeJig : public AcEdJig
|
|
{
|
|
public:
|
|
TDbPipeJig(void);
|
|
virtual ~TDbPipeJig(void);
|
|
|
|
void SetAdoDb(CUIISQLiteServer* pDb);
|
|
CUIISQLiteServer* GetAdoDb();
|
|
|
|
BOOL DoIt(WPipe::EApp app, BOOL bParamDlg = TRUE,BOOL bCalRefPoint = TRUE);
|
|
|
|
BOOL DoIt(WPipe::EApp app, const AcGePoint3d& ptRef,BOOL bParamDlg = TRUE);
|
|
|
|
BOOL DoIt(AecInterface* pIntf,WPipe::PipeParam* pParam);
|
|
|
|
BOOL DoItSpec(WPipe::EApp app, BOOL bParamDlg = TRUE,BOOL bCalRefPoint = TRUE);
|
|
|
|
BOOL DoItNotPipe(WPipe::EApp app, BOOL bParamDlg = TRUE);
|
|
|
|
BOOL DoItOnPath(WPipe::EApp app, const AcGePoint3dArray &arPts, WPipe::PipeParam *pParam = NULL);
|
|
|
|
//拉命令点前继承夹点的初始化信息,PL_wpipeaddd调用
|
|
void SetInitDataMapPartFrom(AecDbObjXDataMap* pXDataMap);
|
|
|
|
//是否有上下弯头产生遮挡处理
|
|
bool HasWipeClip();
|
|
|
|
public:
|
|
|
|
void PushBackStatusRec(AECStatusRecord* pRec);
|
|
|
|
void PopUpStatusRec();
|
|
|
|
int GetUndoGroupID();
|
|
|
|
void SetAngleWath(AcGePoint3d& ptCen,const AcGePoint3d& ptGeTo,const AcGeVector3d& vtDir);
|
|
|
|
AECStatusRecord* GetTailStatusRec();
|
|
|
|
public:
|
|
|
|
virtual AcEdJig::DragStatus sampler();
|
|
|
|
virtual AcDbEntity* entity() const;
|
|
|
|
virtual Adesk::Boolean update();
|
|
|
|
protected:
|
|
|
|
BOOL AfterDrag();
|
|
|
|
void InitStatusRecs();
|
|
|
|
void FreeStatusRecs();
|
|
|
|
BOOL GetLastStatusAquire(AcGePoint3d& ptGeBase);
|
|
|
|
void SetUndoGroupBegin();
|
|
void SetUndoGroupEnd();
|
|
|
|
void SetDispPromptWithEleTip(CString& sPrompt);
|
|
|
|
double PickWPipehereEl(const AcGePoint3d& ptGe);
|
|
|
|
void CalReferencePoint();
|
|
void SetReferencePoint(const AcGePoint3d& ptRef);
|
|
|
|
BOOL DoDrag();
|
|
|
|
protected:
|
|
|
|
TDbPipeLine* m_pPipeLine; //预演实体
|
|
AecInterface m_tStartIntf; //默认开始接口
|
|
CUIISQLiteServer* m_pDb; //数据库服务
|
|
|
|
CPtrArray m_arStaPtrs; //状态集
|
|
CPtrList m_lstStaPtrsBack; //上次状态
|
|
AcGeVector3d m_vtStaDir; //默认开始向量
|
|
int m_nUndoGoupid; //undo标记id
|
|
|
|
public:
|
|
|
|
AECStatusRecord* m_pCurStaRec; //当前请求状态
|
|
CString m_sSystem;
|
|
};
|