Files

91 lines
1.9 KiB
C++
Raw Permalink Normal View History

2026-10-04 00:04:20 +08:00
#pragma once
2026-09-28 15:28:50 +08:00
#include "resource.h"
#include "GsPreviewCtrl.h"
#include "AecDbObjXDataMap.h"
#include "EarThwormDef.h"
class AecDbX3dPart;
class AecDbX3dGroup;
class CTJTZDlg : public CDialog
{
DECLARE_DYNAMIC(CTJTZDlg)
public:
CTJTZDlg(CWnd* pParent = NULL);
virtual ~CTJTZDlg();
enum { IDD = IDD_TJTZ_DLG };
void SetCrossSectionScr(LPCTSTR psz){ m_sCrossSectionScr = psz; }
int GetX3dSolidRecs( AecDbX3dGroup*& pGroup);
int GetX3dPart( AecDbX3dPart*& pPart);
int GetX3dSolidRecsShEw( AecDbX3dGroup*& pGroup);
int GetX3dPartShEw( AecDbX3dPart*& pPart);
protected:
virtual void DoDataExchange(CDataExchange* pDX);
DECLARE_MESSAGE_MAP()
public:
virtual BOOL OnInitDialog();
afx_msg void OnBnClickedOk();
afx_msg LRESULT OnViewLButtonDown(WPARAM wp,LPARAM lp);
afx_msg void OnBnClickedButton1();
protected:
void InitPipeList();
void ShowEarthWorm();
//sh
void ShowShEarthWorm();
void ShowAddtion();
void ShowRoomName();
void ExtractRegionRooms();
void FormatAddtionScr();
void ShowEwSection();
void ExtrAddtionToMap( );
STSection* GetShEwSection() const;
void HitEarthWorm(int idxRoom);
void HitShEarthWorm(int idxRoom);
LRESULT OnViewShEwLButtonDown(WPARAM wp, LPARAM lp);
public:
double m_dW;
double m_dH;
int m_nKind;
double m_dX;
double m_dA;
int m_idxRoom;
CString m_sCrossSectionScr;
public:
CGsPreviewCtrl m_wndViewCtrl;
AcDbPolyline* m_pRectCell;
AecDbObjXDataMap m_mapBimData;
protected://sh
2026-10-04 00:04:20 +08:00
// 缓存,出图用
2026-09-28 15:28:50 +08:00
AcDbVoidPtrArray m_arDrawBuffer;
2026-10-04 00:04:20 +08:00
//附属脚本如支架
2026-09-28 15:28:50 +08:00
CMapStringToString m_mapAddtion;
2026-10-04 00:04:20 +08:00
//所有的舱室
2026-09-28 15:28:50 +08:00
AcDbVoidPtrArray m_arRegionRooms;
2026-10-04 00:04:20 +08:00
// 舱体类型
2026-09-28 15:28:50 +08:00
std::vector<CString> m_roomTypes;
CMapStringToPtr m_mapIndexToDbText;
2026-10-04 00:04:20 +08:00
//点击的舱室
2026-09-28 15:28:50 +08:00
AcDbEntity* m_pRegionRoom;
2026-10-04 00:04:20 +08:00
// 当前所选的截面描述
2026-09-28 15:28:50 +08:00
STSection m_curSection;
CString m_sAddtionScr;
2026-10-04 00:04:20 +08:00
//舱室名称和偏移
2026-09-28 15:28:50 +08:00
CMapStringToString m_mapIndexToName;
};