// shared pointers
%shared_ptr(ExchangeAPI_Export)
%shared_ptr(ExchangeAPI_Import)
+%shared_ptr(ExchangeAPI_Import_Image)
// all supported interfaces
%include "ExchangeAPI_Export.h"
if (aCurrentFeature)
thePart->setCurrentFeature(aCurrentFeature, THE_VISIBLE_FEATURE);
}
+
+//-------------------------------------------------------------------------------------------------
+//-------------------------------------------------------------------------------------------------
+
+ExchangeAPI_Import_Image::ExchangeAPI_Import_Image(
+ const std::shared_ptr<ModelAPI_Feature> & theFeature)
+: ModelHighAPI_Interface(theFeature)
+{
+ initialize();
+}
+
+ExchangeAPI_Import_Image::ExchangeAPI_Import_Image(
+ const std::shared_ptr<ModelAPI_Feature> & theFeature,
+ const std::string & theFilePath)
+: ModelHighAPI_Interface(theFeature)
+{
+ if (initialize())
+ setFilePath(theFilePath);
+}
+
+void ExchangeAPI_Import_Image::setFilePath(const std::string & theFilePath)
+{
+ fillAttribute(theFilePath, myfilePath);
+ execute();
+}
+
+ImportImagePtr addImportImage(
+ const std::shared_ptr<ModelAPI_Document> & thePart,
+ const std::string & theFilePath)
+{
+ std::shared_ptr<ModelAPI_Feature> aFeature = thePart->addFeature(ExchangeAPI_Import_Image::ID());
+ return ImportImagePtr(new ExchangeAPI_Import_Image(aFeature, theFilePath));
+}
+
+void ExchangeAPI_Import_Image::dump(ModelHighAPI_Dumper& theDumper) const
+{
+ FeaturePtr aBase = feature();
+ std::string aPartName = theDumper.name(aBase->document());
+
+ std::string aFilePath = aBase->string(ExchangePlugin_Import_ImageFeature::FILE_PATH_ID())->value();
+
+ theDumper << aBase << " = model.addImportImage(" << aPartName << ", \""
+ << aFilePath << "\")" << std::endl;
+
+ // to make import have results
+ theDumper << "model.do()" << std::endl;
+}
+
const ModelHighAPI_Reference & theAfterThis = ModelHighAPI_Reference());
//--------------------------------------------------------------------------------------
+//--------------------------------------------------------------------------------------
+/**\class ExchangeAPI_Import_Image
+ * \ingroup CPPHighAPI
+ * \brief Interface for Import feature
+ */
+class ExchangeAPI_Import_Image : public ModelHighAPI_Interface
+{
+public:
+ /// Constructor without values
+ EXCHANGEAPI_EXPORT
+ explicit ExchangeAPI_Import_Image(const std::shared_ptr<ModelAPI_Feature> & theFeature);
+ /// Constructor with values
+ EXCHANGEAPI_EXPORT
+ ExchangeAPI_Import_Image(const std::shared_ptr<ModelAPI_Feature> & theFeature,
+ const std::string & theFilePath);
+
+ /// Destructor
+ EXCHANGEAPI_EXPORT
+ virtual ~ExchangeAPI_Import_Image() = default;
+
+ INTERFACE_1(ExchangePlugin_Import_ImageFeature::ID(),
+ filePath, ExchangePlugin_Import_ImageFeature::FILE_PATH_ID(),
+ ModelAPI_AttributeString, /** File path */
+ )
+
+ /// Set point values
+ EXCHANGEAPI_EXPORT
+ void setFilePath(const std::string & theFilePath);
+
+ /// Dump wrapped feature
+ EXCHANGEAPI_EXPORT
+ virtual void dump(ModelHighAPI_Dumper& theDumper) const;
+
+};
+
+//! Pointer on Import object
+typedef std::shared_ptr<ExchangeAPI_Import_Image> ImportImagePtr;
+
+
+EXCHANGEAPI_EXPORT
+ImportImagePtr addImportImage(const std::shared_ptr<ModelAPI_Document> & thePart,
+ const std::string & theFilePath);
+
//--------------------------------------------------------------------------------------
#endif /* SRC_EXCHANGEAPI_EXCHANGEAPI_IMPORT_H_ */
"""
from ExchangeAPI import addImport, addImportSTEP, exportToFile, exportToXAO, exportToSTL
-from ExchangeAPI import exportPart, importPart
+from ExchangeAPI import exportPart, importPart, addImportImage
from .tools import *