Add SchemaVersion to RestoreDocFile to distinquish double from float binary
This commit is contained in:
parent
29c3fa6458
commit
68078487c7
|
@ -401,7 +401,7 @@ void PropertyFileIncluded::SaveDocFile (Base::Writer &writer) const
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyFileIncluded::RestoreDocFile(Base::Reader &reader)
|
void PropertyFileIncluded::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
Base::FileInfo fi(_cValue.c_str());
|
Base::FileInfo fi(_cValue.c_str());
|
||||||
Base::ofstream to(fi);
|
Base::ofstream to(fi);
|
||||||
|
|
|
@ -91,7 +91,7 @@ public:
|
||||||
virtual void Restore(Base::XMLReader &reader);
|
virtual void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
virtual void SaveDocFile (Base::Writer &writer) const;
|
virtual void SaveDocFile (Base::Writer &writer) const;
|
||||||
virtual void RestoreDocFile(Base::Reader &reader);
|
virtual void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
virtual Property *Copy(void) const;
|
virtual Property *Copy(void) const;
|
||||||
virtual void Paste(const Property &from);
|
virtual void Paste(const Property &from);
|
||||||
|
@ -118,4 +118,4 @@ protected:
|
||||||
|
|
||||||
} // namespace App
|
} // namespace App
|
||||||
|
|
||||||
#endif // APP_PROPERTFILE_H
|
#endif // APP_PROPERTFILE_H
|
||||||
|
|
|
@ -301,7 +301,7 @@ void PropertyVectorList::SaveDocFile (Base::Writer &writer) const
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyVectorList::RestoreDocFile(Base::Reader &reader)
|
void PropertyVectorList::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
Base::InputStream str(reader);
|
Base::InputStream str(reader);
|
||||||
uint32_t uCt=0;
|
uint32_t uCt=0;
|
||||||
|
|
|
@ -147,7 +147,7 @@ public:
|
||||||
virtual void Restore(Base::XMLReader &reader);
|
virtual void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
virtual void SaveDocFile (Base::Writer &writer) const;
|
virtual void SaveDocFile (Base::Writer &writer) const;
|
||||||
virtual void RestoreDocFile(Base::Reader &reader);
|
virtual void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
virtual Property *Copy(void) const;
|
virtual Property *Copy(void) const;
|
||||||
virtual void Paste(const Property &from);
|
virtual void Paste(const Property &from);
|
||||||
|
|
|
@ -374,7 +374,7 @@ void PropertyPythonObject::SaveDocFile (Base::Writer &writer) const
|
||||||
writer.Stream().put(*it);
|
writer.Stream().put(*it);
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyPythonObject::RestoreDocFile(Base::Reader &reader)
|
void PropertyPythonObject::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
aboutToSetValue();
|
aboutToSetValue();
|
||||||
std::string buffer;
|
std::string buffer;
|
||||||
|
|
|
@ -63,7 +63,7 @@ public:
|
||||||
/** Use Python's pickle module to restore the object */
|
/** Use Python's pickle module to restore the object */
|
||||||
virtual void Restore(Base::XMLReader &reader);
|
virtual void Restore(Base::XMLReader &reader);
|
||||||
virtual void SaveDocFile (Base::Writer &writer) const;
|
virtual void SaveDocFile (Base::Writer &writer) const;
|
||||||
virtual void RestoreDocFile(Base::Reader &reader);
|
virtual void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
virtual unsigned int getMemSize (void) const;
|
virtual unsigned int getMemSize (void) const;
|
||||||
virtual Property *Copy(void) const;
|
virtual Property *Copy(void) const;
|
||||||
|
|
|
@ -1150,14 +1150,20 @@ void PropertyFloatList::SaveDocFile (Base::Writer &writer) const
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyFloatList::RestoreDocFile(Base::Reader &reader)
|
void PropertyFloatList::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
Base::InputStream str(reader);
|
Base::InputStream str(reader);
|
||||||
uint32_t uCt=0;
|
uint32_t uCt=0;
|
||||||
str >> uCt;
|
str >> uCt;
|
||||||
std::vector<double> values(uCt);
|
std::vector<double> values(uCt);
|
||||||
for (std::vector<double>::iterator it = values.begin(); it != values.end(); ++it) {
|
for (std::vector<double>::iterator it = values.begin(); it != values.end(); ++it) {
|
||||||
str >> *it;
|
if (DocumentSchema > 4) {
|
||||||
|
str >> *it;
|
||||||
|
} else {
|
||||||
|
float val;
|
||||||
|
str >> val;
|
||||||
|
(*it) = val;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
setValues(values);
|
setValues(values);
|
||||||
}
|
}
|
||||||
|
@ -2114,7 +2120,7 @@ void PropertyColorList::SaveDocFile (Base::Writer &writer) const
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyColorList::RestoreDocFile(Base::Reader &reader)
|
void PropertyColorList::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
Base::InputStream str(reader);
|
Base::InputStream str(reader);
|
||||||
uint32_t uCt=0;
|
uint32_t uCt=0;
|
||||||
|
|
|
@ -540,7 +540,7 @@ public:
|
||||||
virtual void Restore(Base::XMLReader &reader);
|
virtual void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
virtual void SaveDocFile (Base::Writer &writer) const;
|
virtual void SaveDocFile (Base::Writer &writer) const;
|
||||||
virtual void RestoreDocFile(Base::Reader &reader);
|
virtual void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
virtual Property *Copy(void) const;
|
virtual Property *Copy(void) const;
|
||||||
virtual void Paste(const Property &from);
|
virtual void Paste(const Property &from);
|
||||||
|
@ -833,7 +833,7 @@ public:
|
||||||
virtual void Restore(Base::XMLReader &reader);
|
virtual void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
virtual void SaveDocFile (Base::Writer &writer) const;
|
virtual void SaveDocFile (Base::Writer &writer) const;
|
||||||
virtual void RestoreDocFile(Base::Reader &reader);
|
virtual void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
virtual Property *Copy(void) const;
|
virtual Property *Copy(void) const;
|
||||||
virtual void Paste(const Property &from);
|
virtual void Paste(const Property &from);
|
||||||
|
|
|
@ -65,6 +65,6 @@ void Persistence::SaveDocFile (Writer &/*writer*/) const
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
void Persistence::RestoreDocFile(Reader &/*reader*/)
|
void Persistence::RestoreDocFile(Reader &/*reader*/, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
|
@ -145,7 +145,7 @@ public:
|
||||||
* \endcode
|
* \endcode
|
||||||
* @see Base::Reader,Base::XMLReader
|
* @see Base::Reader,Base::XMLReader
|
||||||
*/
|
*/
|
||||||
virtual void RestoreDocFile(Reader &/*reader*/);
|
virtual void RestoreDocFile(Reader &/*reader*/, const int DocumentSchema);
|
||||||
};
|
};
|
||||||
|
|
||||||
} //namespace Base
|
} //namespace Base
|
||||||
|
|
|
@ -304,7 +304,7 @@ void Base::XMLReader::readFiles(zipios::ZipInputStream &zipstream) const
|
||||||
// no file name for the current entry in the zip was registered.
|
// no file name for the current entry in the zip was registered.
|
||||||
if (jt != FileList.end()) {
|
if (jt != FileList.end()) {
|
||||||
try {
|
try {
|
||||||
jt->Object->RestoreDocFile(zipstream);
|
jt->Object->RestoreDocFile(zipstream, DocumentSchema);
|
||||||
}
|
}
|
||||||
catch(...) {
|
catch(...) {
|
||||||
// For any exception we just continue with the next file.
|
// For any exception we just continue with the next file.
|
||||||
|
|
|
@ -165,6 +165,8 @@ public:
|
||||||
|
|
||||||
/// Schema Version of the document
|
/// Schema Version of the document
|
||||||
int DocumentSchema;
|
int DocumentSchema;
|
||||||
|
/// Version of FreeCAD that wrote this document
|
||||||
|
std::string ProgramVersion;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/// read the next element
|
/// read the next element
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/***************************************************************************
|
/***************************************************************************
|
||||||
* Copyright (c) 2004 Jürgen Riegel <juergen.riegel@web.de> *
|
* Copyright (c) 2004 Jrgen Riegel <juergen.riegel@web.de> *
|
||||||
* *
|
* *
|
||||||
* This file is part of the FreeCAD CAx development system. *
|
* This file is part of the FreeCAD CAx development system. *
|
||||||
* *
|
* *
|
||||||
|
@ -649,7 +649,7 @@ void Document::Restore(Base::XMLReader &reader)
|
||||||
/**
|
/**
|
||||||
* Restores the properties of the view providers.
|
* Restores the properties of the view providers.
|
||||||
*/
|
*/
|
||||||
void Document::RestoreDocFile(Base::Reader &reader)
|
void Document::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
// We must create an XML parser to read from the input stream
|
// We must create an XML parser to read from the input stream
|
||||||
Base::XMLReader xmlReader("GuiDocument.xml", reader);
|
Base::XMLReader xmlReader("GuiDocument.xml", reader);
|
||||||
|
|
|
@ -119,7 +119,7 @@ public:
|
||||||
/// This method is used to save large amounts of data to a binary file.
|
/// This method is used to save large amounts of data to a binary file.
|
||||||
virtual void SaveDocFile (Base::Writer &writer) const;
|
virtual void SaveDocFile (Base::Writer &writer) const;
|
||||||
/// This method is used to restore large amounts of data from a binary file.
|
/// This method is used to restore large amounts of data from a binary file.
|
||||||
virtual void RestoreDocFile(Base::Reader &reader);
|
virtual void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
void exportObjects(const std::vector<App::DocumentObject*>&, Base::Writer&);
|
void exportObjects(const std::vector<App::DocumentObject*>&, Base::Writer&);
|
||||||
void importObjects(const std::vector<App::DocumentObject*>&, Base::Reader&);
|
void importObjects(const std::vector<App::DocumentObject*>&, Base::Reader&);
|
||||||
//@}
|
//@}
|
||||||
|
|
|
@ -160,7 +160,7 @@ void MergeDocuments::SaveDocFile (Base::Writer & w) const
|
||||||
document->exportObjects(objects, w);
|
document->exportObjects(objects, w);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MergeDocuments::RestoreDocFile(Base::Reader & reader)
|
void MergeDocuments::RestoreDocFile(Base::Reader & reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
std::vector<App::DocumentObject*> obj = objects;
|
std::vector<App::DocumentObject*> obj = objects;
|
||||||
// We must create an XML parser to read from the input stream
|
// We must create an XML parser to read from the input stream
|
||||||
|
|
|
@ -49,7 +49,7 @@ public:
|
||||||
void Save (Base::Writer & w) const;
|
void Save (Base::Writer & w) const;
|
||||||
void Restore(Base::XMLReader &r);
|
void Restore(Base::XMLReader &r);
|
||||||
void SaveDocFile (Base::Writer & w) const;
|
void SaveDocFile (Base::Writer & w) const;
|
||||||
void RestoreDocFile(Base::Reader & r);
|
void RestoreDocFile(Base::Reader & r, const int DocumentSchema);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
zipios::ZipInputStream* stream;
|
zipios::ZipInputStream* stream;
|
||||||
|
|
|
@ -117,7 +117,7 @@ void Thumbnail::SaveDocFile (Base::Writer &writer) const
|
||||||
writer.Stream().write(ba.constData(), ba.length());
|
writer.Stream().write(ba.constData(), ba.length());
|
||||||
}
|
}
|
||||||
|
|
||||||
void Thumbnail::RestoreDocFile(Base::Reader &reader)
|
void Thumbnail::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -52,7 +52,7 @@ public:
|
||||||
/// This method is used to save large amounts of data to a binary file.
|
/// This method is used to save large amounts of data to a binary file.
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
/// This method is used to restore large amounts of data from a binary file.
|
/// This method is used to restore large amounts of data from a binary file.
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
//@}
|
//@}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
|
@ -783,7 +783,7 @@ void FemMesh::SaveDocFile (Base::Writer &writer) const
|
||||||
fi.deleteFile();
|
fi.deleteFile();
|
||||||
}
|
}
|
||||||
|
|
||||||
void FemMesh::RestoreDocFile(Base::Reader &reader)
|
void FemMesh::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
// create a temporary file and copy the content from the zip stream
|
// create a temporary file and copy the content from the zip stream
|
||||||
Base::FileInfo fi(Base::FileInfo::getTempFileName().c_str());
|
Base::FileInfo fi(Base::FileInfo::getTempFileName().c_str());
|
||||||
|
@ -890,4 +890,4 @@ struct Fem::FemMesh::FemMeshInfo FemMesh::getInfo(void) const{
|
||||||
|
|
||||||
return rtrn;
|
return rtrn;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@
|
||||||
|
|
||||||
#ifndef FEM_FEMMESH_H
|
#ifndef FEM_FEMMESH_H
|
||||||
#define FEM_FEMMESH_H
|
#define FEM_FEMMESH_H
|
||||||
|
|
||||||
#include <App/ComplexGeoData.h>
|
#include <App/ComplexGeoData.h>
|
||||||
#include <Base/Placement.h>
|
#include <Base/Placement.h>
|
||||||
|
|
||||||
|
@ -66,7 +66,7 @@ public:
|
||||||
virtual void Save (Base::Writer &/*writer*/) const;
|
virtual void Save (Base::Writer &/*writer*/) const;
|
||||||
virtual void Restore(Base::XMLReader &/*reader*/);
|
virtual void Restore(Base::XMLReader &/*reader*/);
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
/** @name Subelement management */
|
/** @name Subelement management */
|
||||||
//@{
|
//@{
|
||||||
|
|
|
@ -151,9 +151,9 @@ void PropertyFemMesh::SaveDocFile (Base::Writer &writer) const
|
||||||
_FemMesh->SaveDocFile(writer);
|
_FemMesh->SaveDocFile(writer);
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyFemMesh::RestoreDocFile(Base::Reader &reader)
|
void PropertyFemMesh::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
aboutToSetValue();
|
aboutToSetValue();
|
||||||
_FemMesh->RestoreDocFile(reader);
|
_FemMesh->RestoreDocFile(reader, DocumentSchema);
|
||||||
hasSetValue();
|
hasSetValue();
|
||||||
}
|
}
|
||||||
|
|
|
@ -77,7 +77,7 @@ public:
|
||||||
void Save (Base::Writer &writer) const;
|
void Save (Base::Writer &writer) const;
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
App::Property *Copy(void) const;
|
App::Property *Copy(void) const;
|
||||||
void Paste(const App::Property &from);
|
void Paste(const App::Property &from);
|
||||||
|
|
|
@ -157,7 +157,7 @@ bool MeshTrimming::PolygonContainsCompleteFacet(bool bInner, unsigned long ulInd
|
||||||
bool MeshTrimming::IsPolygonPointInFacet(unsigned long ulIndex, Base::Vector3f& clPoint)
|
bool MeshTrimming::IsPolygonPointInFacet(unsigned long ulIndex, Base::Vector3f& clPoint)
|
||||||
{
|
{
|
||||||
Base::Vector2D A, B, C, P;
|
Base::Vector2D A, B, C, P;
|
||||||
double u,v,w, fDetPAC, fDetPBC, fDetPAB, fDetABC;
|
float u,v,w, fDetPAC, fDetPBC, fDetPAB, fDetABC;
|
||||||
Base::Polygon2D clFacPoly;
|
Base::Polygon2D clFacPoly;
|
||||||
const MeshGeomFacet &rclFacet = myMesh.GetFacet(ulIndex);
|
const MeshGeomFacet &rclFacet = myMesh.GetFacet(ulIndex);
|
||||||
|
|
||||||
|
|
|
@ -297,7 +297,7 @@ void MeshObject::Restore(Base::XMLReader &reader)
|
||||||
// this is handled by the property class
|
// this is handled by the property class
|
||||||
}
|
}
|
||||||
|
|
||||||
void MeshObject::RestoreDocFile(Base::Reader &reader)
|
void MeshObject::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
load(reader);
|
load(reader);
|
||||||
}
|
}
|
||||||
|
@ -1144,8 +1144,8 @@ void MeshObject::removeSelfIntersections(const std::vector<unsigned long>& indic
|
||||||
for (it = indices.begin(); it != indices.end(); ) {
|
for (it = indices.begin(); it != indices.end(); ) {
|
||||||
unsigned long id1 = *it; ++it;
|
unsigned long id1 = *it; ++it;
|
||||||
unsigned long id2 = *it; ++it;
|
unsigned long id2 = *it; ++it;
|
||||||
selfIntersections.push_back(std::make_pair
|
selfIntersections.push_back(std::make_pair
|
||||||
<unsigned long, unsigned long>(id1,id2));
|
<unsigned long, unsigned long>(id1,id2));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!selfIntersections.empty()) {
|
if (!selfIntersections.empty()) {
|
||||||
|
@ -1161,12 +1161,12 @@ void MeshObject::removeFoldsOnSurface()
|
||||||
MeshCore::MeshEvalFoldsOnSurface s_eval(_kernel);
|
MeshCore::MeshEvalFoldsOnSurface s_eval(_kernel);
|
||||||
MeshCore::MeshEvalFoldOversOnSurface f_eval(_kernel);
|
MeshCore::MeshEvalFoldOversOnSurface f_eval(_kernel);
|
||||||
|
|
||||||
f_eval.Evaluate();
|
f_eval.Evaluate();
|
||||||
std::vector<unsigned long> inds = f_eval.GetIndices();
|
std::vector<unsigned long> inds = f_eval.GetIndices();
|
||||||
|
|
||||||
s_eval.Evaluate();
|
s_eval.Evaluate();
|
||||||
std::vector<unsigned long> inds1 = s_eval.GetIndices();
|
std::vector<unsigned long> inds1 = s_eval.GetIndices();
|
||||||
|
|
||||||
// remove duplicates
|
// remove duplicates
|
||||||
inds.insert(inds.end(), inds1.begin(), inds1.end());
|
inds.insert(inds.end(), inds1.begin(), inds1.end());
|
||||||
std::sort(inds.begin(), inds.end());
|
std::sort(inds.begin(), inds.end());
|
||||||
|
@ -1178,8 +1178,8 @@ void MeshObject::removeFoldsOnSurface()
|
||||||
// do this as additional check after removing folds on closed area
|
// do this as additional check after removing folds on closed area
|
||||||
for (int i=0; i<5; i++) {
|
for (int i=0; i<5; i++) {
|
||||||
MeshCore::MeshEvalFoldsOnBoundary b_eval(_kernel);
|
MeshCore::MeshEvalFoldsOnBoundary b_eval(_kernel);
|
||||||
if (b_eval.Evaluate())
|
if (b_eval.Evaluate())
|
||||||
break;
|
break;
|
||||||
inds = b_eval.GetIndices();
|
inds = b_eval.GetIndices();
|
||||||
if (!inds.empty())
|
if (!inds.empty())
|
||||||
deleteFacets(inds);
|
deleteFacets(inds);
|
||||||
|
|
|
@ -147,7 +147,7 @@ public:
|
||||||
void Save (Base::Writer &writer) const;
|
void Save (Base::Writer &writer) const;
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
void save(const char* file,MeshCore::MeshIO::Format f=MeshCore::MeshIO::Undefined,
|
void save(const char* file,MeshCore::MeshIO::Format f=MeshCore::MeshIO::Undefined,
|
||||||
const MeshCore::Material* mat = 0) const;
|
const MeshCore::Material* mat = 0) const;
|
||||||
void save(std::ostream&) const;
|
void save(std::ostream&) const;
|
||||||
|
@ -181,7 +181,7 @@ public:
|
||||||
void addMesh(const MeshCore::MeshKernel&);
|
void addMesh(const MeshCore::MeshKernel&);
|
||||||
void deleteFacets(const std::vector<unsigned long>& removeIndices);
|
void deleteFacets(const std::vector<unsigned long>& removeIndices);
|
||||||
void deletePoints(const std::vector<unsigned long>& removeIndices);
|
void deletePoints(const std::vector<unsigned long>& removeIndices);
|
||||||
std::vector<std::vector<unsigned long> > getComponents() const;
|
std::vector<std::vector<unsigned long> > getComponents() const;
|
||||||
unsigned long countComponents() const;
|
unsigned long countComponents() const;
|
||||||
void removeComponents(unsigned long);
|
void removeComponents(unsigned long);
|
||||||
/**
|
/**
|
||||||
|
@ -372,4 +372,4 @@ private:
|
||||||
} // namespace Mesh
|
} // namespace Mesh
|
||||||
|
|
||||||
|
|
||||||
#endif // MESH_MESH_H
|
#endif // MESH_MESH_H
|
||||||
|
|
|
@ -45,7 +45,7 @@ using namespace Mesh;
|
||||||
TYPESYSTEM_SOURCE(Mesh::PropertyNormalList, App::PropertyVectorList);
|
TYPESYSTEM_SOURCE(Mesh::PropertyNormalList, App::PropertyVectorList);
|
||||||
TYPESYSTEM_SOURCE(Mesh::PropertyCurvatureList , App::PropertyLists);
|
TYPESYSTEM_SOURCE(Mesh::PropertyCurvatureList , App::PropertyLists);
|
||||||
TYPESYSTEM_SOURCE(Mesh::PropertyMeshKernel , App::PropertyComplexGeoData);
|
TYPESYSTEM_SOURCE(Mesh::PropertyMeshKernel , App::PropertyComplexGeoData);
|
||||||
|
|
||||||
void PropertyNormalList::transform(const Base::Matrix4D &mat)
|
void PropertyNormalList::transform(const Base::Matrix4D &mat)
|
||||||
{
|
{
|
||||||
// A normal vector is only a direction with unit length, so we only need to rotate it
|
// A normal vector is only a direction with unit length, so we only need to rotate it
|
||||||
|
@ -221,7 +221,7 @@ void PropertyCurvatureList::SaveDocFile (Base::Writer &writer) const
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyCurvatureList::RestoreDocFile(Base::Reader &reader)
|
void PropertyCurvatureList::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
Base::InputStream str(reader);
|
Base::InputStream str(reader);
|
||||||
uint32_t uCt=0;
|
uint32_t uCt=0;
|
||||||
|
@ -422,7 +422,7 @@ void PropertyMeshKernel::setPyObject(PyObject *value)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (PyList_Check(value)) {
|
else if (PyList_Check(value)) {
|
||||||
// new instance of MeshObject
|
// new instance of MeshObject
|
||||||
Py::List triangles(value);
|
Py::List triangles(value);
|
||||||
MeshObject* mesh = MeshObject::createMeshFromList(triangles);
|
MeshObject* mesh = MeshObject::createMeshFromList(triangles);
|
||||||
setValuePtr(mesh);
|
setValuePtr(mesh);
|
||||||
|
@ -478,7 +478,7 @@ void PropertyMeshKernel::SaveDocFile (Base::Writer &writer) const
|
||||||
_meshObject->save(writer.Stream());
|
_meshObject->save(writer.Stream());
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyMeshKernel::RestoreDocFile(Base::Reader &reader)
|
void PropertyMeshKernel::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
aboutToSetValue();
|
aboutToSetValue();
|
||||||
_meshObject->load(reader);
|
_meshObject->load(reader);
|
||||||
|
@ -500,4 +500,4 @@ void PropertyMeshKernel::Paste(const App::Property &from)
|
||||||
const PropertyMeshKernel& prop = dynamic_cast<const PropertyMeshKernel&>(from);
|
const PropertyMeshKernel& prop = dynamic_cast<const PropertyMeshKernel&>(from);
|
||||||
*(this->_meshObject) = *(prop._meshObject);
|
*(this->_meshObject) = *(prop._meshObject);
|
||||||
hasSetValue();
|
hasSetValue();
|
||||||
}
|
}
|
||||||
|
|
|
@ -107,7 +107,7 @@ public:
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
/** @name Python interface */
|
/** @name Python interface */
|
||||||
//@{
|
//@{
|
||||||
|
@ -205,7 +205,7 @@ public:
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
App::Property *Copy(void) const;
|
App::Property *Copy(void) const;
|
||||||
void Paste(const App::Property &from);
|
void Paste(const App::Property &from);
|
||||||
|
|
|
@ -261,8 +261,8 @@ void PropertyPartShape::SaveDocFile (Base::Writer &writer) const
|
||||||
const TopoDS_Shape& myShape = copy.Shape();
|
const TopoDS_Shape& myShape = copy.Shape();
|
||||||
BRepTools::Clean(myShape); // remove triangulation
|
BRepTools::Clean(myShape); // remove triangulation
|
||||||
|
|
||||||
// create a temporary file and copy the content to the zip stream
|
// create a temporary file and copy the content to the zip stream
|
||||||
// once the tmp. filename is known use always the same because otherwise
|
// once the tmp. filename is known use always the same because otherwise
|
||||||
// we may run into some problems on the Linux platform
|
// we may run into some problems on the Linux platform
|
||||||
static Base::FileInfo fi(Base::FileInfo::getTempFileName());
|
static Base::FileInfo fi(Base::FileInfo::getTempFileName());
|
||||||
|
|
||||||
|
@ -304,7 +304,7 @@ void PropertyPartShape::SaveDocFile (Base::Writer &writer) const
|
||||||
fi.deleteFile();
|
fi.deleteFile();
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyPartShape::RestoreDocFile(Base::Reader &reader)
|
void PropertyPartShape::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
BRep_Builder builder;
|
BRep_Builder builder;
|
||||||
|
|
||||||
|
@ -397,7 +397,7 @@ void PropertyShapeHistory::SaveDocFile (Base::Writer &writer) const
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyShapeHistory::RestoreDocFile(Base::Reader &reader)
|
void PropertyShapeHistory::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -505,7 +505,7 @@ void PropertyFilletEdges::SaveDocFile (Base::Writer &writer) const
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyFilletEdges::RestoreDocFile(Base::Reader &reader)
|
void PropertyFilletEdges::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
Base::InputStream str(reader);
|
Base::InputStream str(reader);
|
||||||
uint32_t uCt=0;
|
uint32_t uCt=0;
|
||||||
|
|
|
@ -87,7 +87,7 @@ public:
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
App::Property *Copy(void) const;
|
App::Property *Copy(void) const;
|
||||||
void Paste(const App::Property &from);
|
void Paste(const App::Property &from);
|
||||||
|
@ -138,7 +138,7 @@ public:
|
||||||
virtual void Restore(Base::XMLReader &reader);
|
virtual void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
virtual void SaveDocFile (Base::Writer &writer) const;
|
virtual void SaveDocFile (Base::Writer &writer) const;
|
||||||
virtual void RestoreDocFile(Base::Reader &reader);
|
virtual void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
virtual Property *Copy(void) const;
|
virtual Property *Copy(void) const;
|
||||||
virtual void Paste(const Property &from);
|
virtual void Paste(const Property &from);
|
||||||
|
@ -191,7 +191,7 @@ public:
|
||||||
virtual void Restore(Base::XMLReader &reader);
|
virtual void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
virtual void SaveDocFile (Base::Writer &writer) const;
|
virtual void SaveDocFile (Base::Writer &writer) const;
|
||||||
virtual void RestoreDocFile(Base::Reader &reader);
|
virtual void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
|
|
||||||
virtual Property *Copy(void) const;
|
virtual Property *Copy(void) const;
|
||||||
virtual void Paste(const Property &from);
|
virtual void Paste(const Property &from);
|
||||||
|
|
|
@ -939,7 +939,7 @@ void TopoShape::SaveDocFile (Base::Writer &writer) const
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
void TopoShape::RestoreDocFile(Base::Reader &reader)
|
void TopoShape::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -111,7 +111,7 @@ public:
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
unsigned int getMemSize (void) const;
|
unsigned int getMemSize (void) const;
|
||||||
//@}
|
//@}
|
||||||
|
|
||||||
|
|
|
@ -134,7 +134,7 @@ void PointKernel::Restore(Base::XMLReader &reader)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PointKernel::RestoreDocFile(Base::Reader &reader)
|
void PointKernel::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
Base::InputStream str(reader);
|
Base::InputStream str(reader);
|
||||||
uint32_t uCt = 0;
|
uint32_t uCt = 0;
|
||||||
|
|
|
@ -90,7 +90,7 @@ public:
|
||||||
void Save (Base::Writer &writer) const;
|
void Save (Base::Writer &writer) const;
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
void save(const char* file) const;
|
void save(const char* file) const;
|
||||||
void save(std::ostream&) const;
|
void save(std::ostream&) const;
|
||||||
void load(const char* file);
|
void load(const char* file);
|
||||||
|
|
|
@ -64,10 +64,10 @@ void Feature::Restore(Base::XMLReader &reader)
|
||||||
GeoFeature::Restore(reader);
|
GeoFeature::Restore(reader);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Feature::RestoreDocFile(Base::Reader &reader)
|
void Feature::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
// This gets only invoked if a points file has been added from Restore()
|
// This gets only invoked if a points file has been added from Restore()
|
||||||
Points.RestoreDocFile(reader);
|
Points.RestoreDocFile(reader, DocumentSchema);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Feature::onChanged(const App::Property* prop)
|
void Feature::onChanged(const App::Property* prop)
|
||||||
|
|
|
@ -60,7 +60,7 @@ public:
|
||||||
/** @name methods overide Feature */
|
/** @name methods overide Feature */
|
||||||
//@{
|
//@{
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
/// recalculate the Feature
|
/// recalculate the Feature
|
||||||
virtual App::DocumentObjectExecReturn *execute(void);
|
virtual App::DocumentObjectExecReturn *execute(void);
|
||||||
/// returns the type name of the ViewProvider
|
/// returns the type name of the ViewProvider
|
||||||
|
|
|
@ -291,7 +291,7 @@ void PropertyCurvatureList::SaveDocFile (Base::Writer &writer) const
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyCurvatureList::RestoreDocFile(Base::Reader &reader)
|
void PropertyCurvatureList::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
Base::InputStream str(reader);
|
Base::InputStream str(reader);
|
||||||
uint32_t uCt=0;
|
uint32_t uCt=0;
|
||||||
|
|
|
@ -141,7 +141,7 @@ public:
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
|
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
//@}
|
//@}
|
||||||
|
|
||||||
/** @name Undo/Redo */
|
/** @name Undo/Redo */
|
||||||
|
|
|
@ -134,10 +134,10 @@ void PropertyPointKernel::SaveDocFile (Base::Writer &writer) const
|
||||||
// does nothing
|
// does nothing
|
||||||
}
|
}
|
||||||
|
|
||||||
void PropertyPointKernel::RestoreDocFile(Base::Reader &reader)
|
void PropertyPointKernel::RestoreDocFile(Base::Reader &reader, const int DocumentSchema)
|
||||||
{
|
{
|
||||||
aboutToSetValue();
|
aboutToSetValue();
|
||||||
_cPoints->RestoreDocFile(reader);
|
_cPoints->RestoreDocFile(reader, DocumentSchema);
|
||||||
hasSetValue();
|
hasSetValue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -78,7 +78,7 @@ public:
|
||||||
void Save (Base::Writer &writer) const;
|
void Save (Base::Writer &writer) const;
|
||||||
void Restore(Base::XMLReader &reader);
|
void Restore(Base::XMLReader &reader);
|
||||||
void SaveDocFile (Base::Writer &writer) const;
|
void SaveDocFile (Base::Writer &writer) const;
|
||||||
void RestoreDocFile(Base::Reader &reader);
|
void RestoreDocFile(Base::Reader &reader, const int DocumentSchema);
|
||||||
//@}
|
//@}
|
||||||
|
|
||||||
/** @name Modification */
|
/** @name Modification */
|
||||||
|
|
Loading…
Reference in New Issue
Block a user