120 lines
3.9 KiB
C++
120 lines
3.9 KiB
C++
|
|
// = FileName: CThunderXData.h
|
|
// = Version: 1.0
|
|
// = Author:
|
|
// = Date: 2008/06/10
|
|
// = Description: 插入,查看扩展数据
|
|
// = Maintainers:
|
|
|
|
#ifndef __CTHUNDERXDATA_H__
|
|
#define __CTHUNDERXDATA_H__
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif
|
|
|
|
class CThunderXData
|
|
{
|
|
public:
|
|
CThunderXData();
|
|
virtual ~CThunderXData();
|
|
|
|
public:
|
|
|
|
enum XDataStyle
|
|
{
|
|
//滚球法
|
|
eXDataPinNum = 0, //避雷针编号
|
|
eXDataPinHeight = 1, //避雷针高度
|
|
eXDataPinRadius = 2, //避雷针保护半径
|
|
eXDataPinIs2d = 3, //避雷针显示是否为2d
|
|
eXDataBlockScale = 4, //图块系数
|
|
eXDataTextHeight = 5, //字体高度
|
|
};
|
|
|
|
enum XFoldStyle
|
|
{
|
|
//折线法
|
|
eXFoldPinNum = 0, //避雷针编号
|
|
eXFoldPinHeight = 1, //避雷针高度
|
|
eXFoldBlockScale = 2, //图块系数
|
|
eXFoldTextHeight = 3, //字体高度
|
|
};
|
|
|
|
enum XDataProHeightIndex
|
|
{
|
|
eZero = 0,
|
|
eOne = 1,
|
|
eTwo = 2,
|
|
};
|
|
|
|
public:
|
|
|
|
// 设置基本数据
|
|
bool SetBaseInformationExData(const AcDbObjectId& idEnt, const CStringArray& arsXData, LPCTSTR pszAppName);
|
|
// 获取基本数据(使用ID)
|
|
bool GetBaseInformationExData(const AcDbObjectId& idEnt, CStringArray& arsXData, LPCTSTR pszAppName);
|
|
// 获取基本数据(使用实体指针)
|
|
bool GetBaseInformationExData(AcDbEntity* pEnt, CStringArray& arsXData, LPCTSTR pszAppName);
|
|
// 获取指定项(使用实体指针)
|
|
bool GetIndexOf(AcDbEntity* pEnt, CString& strDes, int iIndex, LPCTSTR pszAppName);
|
|
// 获取指定项(使用实体ID)
|
|
bool GetIndexOf(AcDbObjectId& entId, CString& strDes, int iIndex, LPCTSTR pszAppName);
|
|
// 从扩展数据中获取实体ID
|
|
bool GetEntityIdFromExData(const AcDbObjectId& idInput, AcDbObjectIdArray& arIdOutput, LPCTSTR pszAppName);
|
|
|
|
bool GetEntityIdFromExData(const AcDbObjectId& idInput, AcDbObjectId& idOutput, LPCTSTR pszAppName);
|
|
|
|
bool GetEntityIdFromExData(AcDbEntity* pEnt, AcDbObjectId& idOutput, LPCTSTR pszAppName);
|
|
|
|
bool GetEntityIdFromExData(AcDbEntity* pEnt, AcDbObjectIdArray& aridOutput, LPCTSTR pszAppName);
|
|
// 由实体ID获取句柄以字符串的形式写入到指定(圆)实体的扩展数据中
|
|
bool SetEntityIdToExData(const AcDbObjectIdArray& arIdData, const AcDbObjectId& idGoal, LPCTSTR pszAppName);
|
|
|
|
BOOL SetProtectHeightToObjEx(const AcDbObjectId& idThunder, const AcGeDoubleArray& arProHeight);
|
|
|
|
BOOL GetProtectHeightFromObjEx(const AcDbObjectId& idThunder, AcGeDoubleArray& arProHeight);
|
|
|
|
BOOL GetProtectHeightFromObjEx(AcDbEntity* pEnt, AcGeDoubleArray& arProHeight);
|
|
|
|
BOOL GetProtectHeightFromReg(AcGeDoubleArray& arProHeight, LPCTSTR pszKey = TEL_THUNDER_MULTIPROHT);
|
|
|
|
BOOL SetProtectHeightToReg(const AcGeDoubleArray& arProHeight, LPCTSTR pszKey = TEL_THUNDER_MULTIPROHT);
|
|
|
|
BOOL SplitValue(LPCTSTR pszSrc, LPCTSTR pszSplitCh, AcGeDoubleArray& arValue);
|
|
|
|
BOOL SplitString(CString& sSrc, LPCTSTR pszSplitCh, CString& sValue);
|
|
|
|
CString ConvertToCString(const AcGeDoubleArray& arValue, LPCTSTR pszSplitCh);
|
|
|
|
BOOL SetXData(const AcDbObjectId& id, LPCTSTR pszAppName, LPCTSTR pszXData);
|
|
|
|
BOOL SetXData(AcDbEntity* pEnt, LPCTSTR pszAppName, LPCTSTR pszXData);
|
|
|
|
BOOL GetXData(const AcDbObjectId& id, LPCTSTR pszAppName, CString& sXData);
|
|
|
|
BOOL GetXData(AcDbEntity* pEnt, LPCTSTR pszAppName, CString& sXData);
|
|
|
|
BOOL SetXData(const AcDbObjectId& idSrc,LPCTSTR pszAppName,const AcDbObjectId& oid);
|
|
BOOL SetXData(AcDbEntity* pEnt,LPCTSTR pszAppName,const AcDbObjectId& oid);
|
|
|
|
BOOL GetXData(const AcDbObjectId& idSrc,LPCTSTR pszAppName,AcDbObjectId& oid);
|
|
BOOL GetXData(AcDbEntity* pEnt,LPCTSTR pszAppName,AcDbObjectId& oid);
|
|
|
|
int GetGroupNO(Entity& ent);
|
|
|
|
int GetGroupNO(const AcDbObjectId& id);
|
|
|
|
int GetGroupNO(AcDbEntity* pEnt);
|
|
|
|
int GetFoldGroupNO(Entity& ent);
|
|
int GetFoldGroupNO(const AcDbObjectId& id);
|
|
int GetFoldGroupNO(AcDbEntity* pEnt);
|
|
|
|
BOOL GetFoldProHeightFromObjEx(const AcDbObjectId& idThunder, AcGeDoubleArray& arProHeight);
|
|
BOOL GetFoldProHeightFromObjEx(AcDbEntity* pEnt, AcGeDoubleArray& arProHeight);
|
|
BOOL SetFoldProHeightToObjEx(const AcDbObjectId& idThunder, const AcGeDoubleArray& arProHeight);
|
|
};
|
|
|
|
#endif // __CThunderXData_H__
|