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

131 lines
2.8 KiB
C++

#include "stdafx.h"
#include "StdArx.h"
#include "dbproxy.h"
#include "geassign.h"
#include "acgi.h"
#include "TDbEEquipment.h"
#define VERSION_TDBEEQUIPMENT 1
//{{AFX_ARX_MACRO
ACRX_DXF_DEFINE_MEMBERS( TDbEEquipment, TDbEquipmentBase,
AcDb::kDHL_CURRENT, AcDb::kMReleaseCurrent,
AcDbProxyEntity::kAllAllowedBits,
ATS_EEQUIPMENT, "图形无法解析, 请下载上华软件|网址: www.shanghuasoft.com");
//}}AFX_ARX_MACRO
TDbEEquipment::TDbEEquipment()
{
//{{AFX_ARX_DATA_INIT(TDbEEquipment)
//}}AFX_ARX_DATA_INIT
}
TDbEEquipment::~TDbEEquipment()
{
}
Acad::ErrorStatus TDbEEquipment::dxfOutFields(AcDbDxfFiler* pFiler) const
{
assertReadEnabled();
Acad::ErrorStatus es;
if ((es = TDbEquipmentBase::dxfOutFields(pFiler)) != Acad::eOk)
return es;
// Write subclass marker.
pFiler->writeItem(AcDb::kDxfSubclass, _T("TDbEEquipment"));
// Write version number.
pFiler->writeItem(AcDb::kDxfInt16, (Adesk::UInt16) VERSION_TDBEEQUIPMENT);
return es;
}
Acad::ErrorStatus TDbEEquipment::dxfInFields(AcDbDxfFiler* pFiler)
{
assertWriteEnabled();
struct resbuf rb;
if ((TDbEquipmentBase::dxfInFields(pFiler) != Acad::eOk) ||
!pFiler->atSubclassData(_T("TDbEEquipment")))
return pFiler->filerStatus();
// Read version number.
pFiler->readItem(&rb);
if (rb.restype != AcDb::kDxfInt16)
{
pFiler->pushBackItem();
pFiler->setError(Acad::eInvalidDxfCode,
_T("Error: expected object version group code %d"),
AcDb::kDxfInt16);
return pFiler->filerStatus();
}
else
{
Adesk::UInt16 version = rb.resval.rint;
if (version > VERSION_TDBEEQUIPMENT)
return Acad::eMakeMeProxy;
}
return pFiler->filerStatus();
}
Acad::ErrorStatus TDbEEquipment::dwgOutFields(AcDbDwgFiler* pFiler) const
{
assertReadEnabled();
Acad::ErrorStatus es;
// Call dwgOutFields from TDbInterfacesObj
if ((es = TDbEquipmentBase::dwgOutFields(pFiler)) != Acad::eOk)
{
return es;
}
// Write version number.
pFiler->writeItem((Adesk::UInt16) VERSION_TDBEEQUIPMENT);
return pFiler->filerStatus();
}
Acad::ErrorStatus TDbEEquipment::dwgInFields(AcDbDwgFiler* pFiler)
{
assertWriteEnabled();
Acad::ErrorStatus es;
// Call dwgInFields from TDbInterfacesObj
if ((es = TDbEquipmentBase::dwgInFields(pFiler)) != Acad::eOk)
{
return es;
}
// Read version number.
Adesk::UInt16 version;
pFiler->readItem(&version);
if (version > VERSION_TDBEEQUIPMENT)
return Acad::eMakeMeProxy;
switch (version)
{
case (1):
{
break;
}
default:
break;
}
return pFiler->filerStatus();
}
Acad::ErrorStatus TDbEEquipment::subGetTransformedCopy( const AcGeMatrix3d& xform,AcDbEntity*& pEnt) const
{
assertReadEnabled();
pEnt = new TDbEEquipment;
(TDbEEquipment*)pEnt->copyFrom(this);
pEnt->transformBy(xform);
return Acad::eOk;
}