Files
envi-code/SourceCode/Code2026/CoreLibrary/AecWall3DJoin.h
T
gjm 164968b62e chore
把非utf8-bom编码的cpp/h文件改为 utf8 bom 编码, msvc识别utf8编码时,如果不是bom格式的,会使用当前cp_oem来解码.
2026-10-04 00:04:20 +08:00

58 lines
1.1 KiB
C++

#pragma once
/*-------------------------------------------
墙体端部
以墙体的中心线为基准的对齐,根据材质决定融合方式
以及墙体的高度,标高 参数
---------------------------------------------*/
#ifdef EARTHWORM_EXPORT
#define DLLIMPEXP __declspec(dllexport)
#else
#define DLLIMPEXP __declspec(dllimport)
#endif
typedef struct ColItem
{
ColumnParam colData;
AcDbPolyline *pCol;
}COLITEM;
typedef struct WallItem
{
WallData wd;
AcDbCurve *pBaseCrv;
AcDbPolyline *pPoly;
AcDbObjectId idWall;
}WALLITEM;
typedef struct WallJoin
{
WallItem* pWItem;
AcArray<WallItem*> arWallJoins;
AcArray<ColItem*> arColJoins;
}WALLJOIN;
class DLLIMPEXP AecWall3DJoin
{
public:
AecWall3DJoin(void);
~AecWall3DJoin(void);
bool DoStruDraw(bool b3dUnit = false);
bool DoWall2DDraw();
bool DoWall2DDraw(AcDbObjectIdArray &arIds);
protected:
void AddWallItem(WallData &wallD, AcDbCurve *pCrv, AcDbPolyline *pPoly,const AcDbObjectId &idWall);
void AddColItem(ColumnParam &colD, AcDbPolyline *pColPl, const AcDbObjectId &idCol);
bool DoWall2DJoin();
private:
AcArray<WallItem*> m_arWallItems;
AcArray<WallJoin> m_arWallJoins;
};