|
|
@ -59,9 +59,23 @@ const TSClassId CPolyObject::SuperClassId = CGeomObject::SuperClassId;
|
|
|
|
const CPolyObjectClassDesc PolyObjectClassDesc(&DllPluginDescBuiltin);
|
|
|
|
const CPolyObjectClassDesc PolyObjectClassDesc(&DllPluginDescBuiltin);
|
|
|
|
|
|
|
|
|
|
|
|
void CPolyObject::parse(uint16 version, uint filter)
|
|
|
|
void CPolyObject::parse(uint16 version, uint filter)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
if (filter == 0)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
CGeomObject::parse(version);
|
|
|
|
CGeomObject::parse(version);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (filter == PMB_POLY_OBJECT_PARSE_FILTER)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
if (!m_ChunksOwnsPointers)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
CGeomObject::parse(version, PMB_GEOM_OBJECT_PARSE_FILTER);
|
|
|
|
|
|
|
|
// 0x0906
|
|
|
|
|
|
|
|
// 0x0908
|
|
|
|
|
|
|
|
// 0x090a
|
|
|
|
|
|
|
|
// 0x090c
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void CPolyObject::clean()
|
|
|
|
void CPolyObject::clean()
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -69,9 +83,20 @@ void CPolyObject::clean()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void CPolyObject::build(uint16 version, uint filter)
|
|
|
|
void CPolyObject::build(uint16 version, uint filter)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
if (filter == 0)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
CGeomObject::build(version);
|
|
|
|
CGeomObject::build(version);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (filter == PMB_POLY_OBJECT_PARSE_FILTER)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
CGeomObject::build(version, PMB_GEOM_OBJECT_PARSE_FILTER);
|
|
|
|
|
|
|
|
// 0x0906
|
|
|
|
|
|
|
|
// 0x0908
|
|
|
|
|
|
|
|
// 0x090a
|
|
|
|
|
|
|
|
// 0x090c
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void CPolyObject::disown()
|
|
|
|
void CPolyObject::disown()
|
|
|
|
{
|
|
|
|
{
|
|
|
@ -95,9 +120,20 @@ const ISceneClassDesc *CPolyObject::classDesc() const
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void CPolyObject::toStringLocal(std::ostream &ostream, const std::string &pad, uint filter) const
|
|
|
|
void CPolyObject::toStringLocal(std::ostream &ostream, const std::string &pad, uint filter) const
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
if (filter == 0)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
CGeomObject::toStringLocal(ostream, pad);
|
|
|
|
CGeomObject::toStringLocal(ostream, pad);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (filter == PMB_POLY_OBJECT_PARSE_FILTER)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
CGeomObject::toStringLocal(ostream, pad, PMB_GEOM_OBJECT_PARSE_FILTER);
|
|
|
|
|
|
|
|
// 0x0906
|
|
|
|
|
|
|
|
// 0x0908
|
|
|
|
|
|
|
|
// 0x090a
|
|
|
|
|
|
|
|
// 0x090c
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
IStorageObject *CPolyObject::createChunkById(uint16 id, bool container)
|
|
|
|
IStorageObject *CPolyObject::createChunkById(uint16 id, bool container)
|
|
|
|
{
|
|
|
|
{
|
|
|
|