157 lines
4.8 KiB
C++
157 lines
4.8 KiB
C++
// DbFloorRect.h: interface for the TDbFloorRectOld class.
|
|
//
|
|
//////////////////////////////////////////////////////////////////////
|
|
|
|
#if !defined(AFX_DBFLOORRECT_H__E28722E1_CA4E_4411_8513_E56D227DEBCF__INCLUDED_)
|
|
#define AFX_DBFLOORRECT_H__E28722E1_CA4E_4411_8513_E56D227DEBCF__INCLUDED_
|
|
|
|
#if _MSC_VER > 1000
|
|
#pragma once
|
|
#endif // _MSC_VER > 1000
|
|
/*============================================================================*
|
|
* Copyright(c), 1994-2008, Beijing Tangent Engineering Software Co.Ltd.
|
|
* 作 者: 沈睿
|
|
* 创建时间: 2009-2-28
|
|
* 描 述: 楼层范围
|
|
* 归属项目: 公共
|
|
=============================================================================*/
|
|
|
|
class PS_EXP TDbFloorRectOld : public TDbEntity
|
|
{
|
|
DECLARE_TENTBASE();
|
|
ACRX_DECLARE_MEMBERS(TDbFloorRectOld);
|
|
private:
|
|
static const Adesk::UInt8 g_nVersion;
|
|
public:
|
|
TDbFloorRectOld();
|
|
protected:
|
|
XPoint m_ptBase; // 楼层基点
|
|
XPoint m_ptCenter; // 中心点
|
|
double m_dLength; // 长
|
|
double m_dWidth; // 宽
|
|
double m_dFloorHeight; // 楼层高度
|
|
double m_nSpare; // 备用
|
|
XString m_sFloorName; // 楼层名词
|
|
Adesk::UInt8 m_nFloorFrom; // 楼层起始层
|
|
Adesk::UInt8 m_nFloorTo; // 楼层终止层
|
|
BOOL m_bShow; // 是否显示
|
|
XString m_sSpare; // 备用
|
|
|
|
public:
|
|
void SetShow(BOOL bFlag=TRUE) {
|
|
assertWriteEnabled();
|
|
m_bShow=bFlag;
|
|
}
|
|
BOOL IsShow() const { return m_bShow;}
|
|
|
|
const TCHAR* GetFloorName() const {
|
|
return (const TCHAR*)m_sFloorName;
|
|
}
|
|
void SetFloorName(const TCHAR *szFloorName) {
|
|
assertWriteEnabled();
|
|
m_sFloorName = szFloorName;
|
|
}
|
|
void SetFloorTo(const Adesk::UInt8 nNum) {
|
|
assertWriteEnabled();
|
|
m_nFloorTo = nNum;
|
|
}
|
|
int GetFloorTo() const {
|
|
return m_nFloorTo;
|
|
}
|
|
void SetFloorFrom(const Adesk::UInt8 nNum) {
|
|
assertWriteEnabled();
|
|
m_nFloorFrom = nNum;
|
|
}
|
|
int GetFloorFrom() const {
|
|
return m_nFloorFrom;
|
|
}
|
|
|
|
double GetFloorHeight() const {
|
|
return m_dFloorHeight;
|
|
}
|
|
void SetFloorHeight(double dFloorHeight) {
|
|
assertWriteEnabled();
|
|
m_dFloorHeight=dFloorHeight;
|
|
}
|
|
double GetWidth() const {
|
|
return m_dWidth;
|
|
}
|
|
void SetWidth(double dWidth) {
|
|
assertWriteEnabled();
|
|
m_dWidth=dWidth;
|
|
}
|
|
double GetLength() const {
|
|
return m_dLength;
|
|
}
|
|
void SetLength(double dLength) {
|
|
assertWriteEnabled();
|
|
m_dLength=dLength;
|
|
}
|
|
|
|
const TCHAR* GetSpare() const {
|
|
return (const TCHAR*)m_sSpare;
|
|
}
|
|
void SetSpare(const TCHAR *szSpare) {
|
|
assertWriteEnabled();
|
|
m_sSpare = szSpare;
|
|
}
|
|
XPoint GetBase() const {
|
|
return m_ptBase;
|
|
}
|
|
void SetBase(const XPoint &pt) {
|
|
assertWriteEnabled();
|
|
m_ptBase=pt;
|
|
}
|
|
XPoint GetCenter() const {
|
|
return m_ptCenter;
|
|
}
|
|
void SetCenter(const XPoint &pt) {
|
|
assertWriteEnabled();
|
|
m_ptCenter=pt;
|
|
}
|
|
// 导出参数
|
|
XPoint GetLowLeft() const;
|
|
XPoint GetLowRight() const;
|
|
XPoint GetUpRight() const;
|
|
XPoint GetUpLeft() const;
|
|
void GetPolyline(AcDbPolyline &pline) const;
|
|
|
|
public: // Override TDbEntity
|
|
// virtual Acad::ErrorStatus GetGripText(int idx, CString &cs) const;
|
|
virtual void CopyPropertiesFrom(AcDbEntity *pSrc, unsigned gMatchFlag);
|
|
virtual Acad::ErrorStatus getClassID(CLSID* pClsid) const;
|
|
virtual Acad::ErrorStatus ExplodeOrDraw2d(XExplodeDraw &dc) const;
|
|
virtual Acad::ErrorStatus ExplodeOrDraw3d(XExplodeDraw &dc) const;
|
|
virtual void GetTips(DList<TObjInfoUnit> &) const; //取动态属性显示数据
|
|
virtual int GetFirstVersion()const{return 8;}
|
|
public: // Override AcDbEntity
|
|
Acad::ErrorStatus getOsnapPoints(AcDb::OsnapMode osnapMode,
|
|
int gsSelectionMark,
|
|
const AcGePoint3d& ptPick,
|
|
const AcGePoint3d& lastPoint,
|
|
const AcGeMatrix3d& viewXform,
|
|
AcGePoint3dArray& snapPoints,
|
|
AcDbIntArray& geomIds) const;
|
|
virtual Acad::ErrorStatus getGripPoints(AcGePoint3dArray& gripPoints,
|
|
AcDbIntArray& osnapModes,
|
|
AcDbIntArray& geomIds) const;
|
|
virtual Acad::ErrorStatus moveGripPointsAt(const AcDbIntArray& indices,
|
|
const AcGeVector3d& offset);
|
|
virtual Acad::ErrorStatus moveStretchPointsAt(const AcDbIntArray& indices,
|
|
const AcGeVector3d& offset);
|
|
|
|
virtual Acad::ErrorStatus dwgInFields (AcDbDwgFiler*);
|
|
virtual Acad::ErrorStatus dwgOutFields(AcDbDwgFiler*) const;
|
|
virtual Acad::ErrorStatus dxfInFields (AcDbDxfFiler*);
|
|
virtual Acad::ErrorStatus dxfOutFields(AcDbDxfFiler*) const;
|
|
virtual Acad::ErrorStatus transformBy(const AcGeMatrix3d& xform);
|
|
virtual Acad::ErrorStatus deepClone(AcDbObject* pOwner,
|
|
AcDbObject*& pClonedObject,
|
|
AcDbIdMapping& idMap,
|
|
Adesk::Boolean isPrimary) const;
|
|
|
|
|
|
};
|
|
|
|
#endif // !defined(AFX_DBFLOORRECT_H__E28722E1_CA4E_4411_8513_E56D227DEBCF__INCLUDED_)
|