os.remove(log_file_1)
smeshhomard = smesh.Adaptation("Uniform")
-Case_1 = smeshhomard.CreateCase("MAILL", input_med, working_dir)
-Case_1.SetConfType(0)
+smeshhomard.CreateCase("MAILL", input_med, working_dir)
+smeshhomard.SetConfType(0)
smeshhomard.SetKeepMedOUT(True)
smeshhomard.SetPublishMeshOUT(True)
smeshhomard.SetMeshNameOUT("MAILL_Uniform_R_01")
#smeshhomard = smesh.Adaptation("Uniform")
Boun_1 = smeshhomard.CreateBoundaryCylinder("Boun_1", 0.5, 0.5, 0.5, 0, 0, 1, 0.25)
-Case_1 = smeshhomard.CreateCaseOnMesh("MAILL", MAILL.GetMesh(), working_dir)
-Case_1.SetConfType(0)
-Case_1.AddBoundaryGroup("Boun_1", "BORD_EXT")
-Case_1.AddBoundaryGroup("Boun_1", "MOITIE1")
+smeshhomard.CreateCaseOnMesh("MAILL", MAILL.GetMesh(), working_dir)
+smeshhomard.SetConfType(0)
+smeshhomard.AddBoundaryGroup("Boun_1", "BORD_EXT")
+smeshhomard.AddBoundaryGroup("Boun_1", "MOITIE1")
smeshhomard.SetKeepMedOUT(False)
smeshhomard.SetPublishMeshOUT(True)
smeshhomard.SetMeshNameOUT("MAILL_Uniform_R_02")
void SetDirName(in string NomDir) raises (SALOME::SALOME_Exception);
string GetDirName() raises (SALOME::SALOME_Exception);
- void SetConfType(in long ConfType) raises (SALOME::SALOME_Exception);
- long GetConfType() raises (SALOME::SALOME_Exception);
-
void SetBoundingBox(in extrema LesExtremes) raises (SALOME::SALOME_Exception);
extrema GetBoundingBox() raises (SALOME::SALOME_Exception);
long DeleteCase() raises (SALOME::SALOME_Exception);
void CleanCase() raises (SALOME::SALOME_Exception);
+ void AddBoundaryGroup(in string BoundaryName,
+ in string Group) raises (SALOME::SALOME_Exception);
+
long Compute() raises (SALOME::SALOME_Exception);
string CreateDirNameIter (in string NomDir, in long num)
raises (SALOME::SALOME_Exception);
// Preferences
+ void SetConfType(in long ConfType) raises (SALOME::SALOME_Exception);
void SetKeepMedOUT (in boolean theKeepMedOUT);
void SetPublishMeshOUT (in boolean thePublishMeshOUT);
void SetMeshNameOUT (in string theMeshName) raises (SALOME::SALOME_Exception);
*/
//=============================================================================
HOMARD_Cas::HOMARD_Cas():
- _Name(""), _NomDir("/tmp"), _ConfType(0)
+ _Name(""), _NomDir("/tmp")
{
MESSAGE("HOMARD_Cas");
}
std::string HOMARD_Cas::GetDumpPython() const
{
std::ostringstream aScript;
- //aScript << _Name << ".SetDirName(\"" << _NomDir << "\")\n";
- aScript << _Name << ".SetConfType(" << _ConfType << ")\n";
// Suivi de frontieres
std::list<std::string>::const_iterator it = _ListBoundaryGroup.begin();
while (it != _ListBoundaryGroup.end()) {
- aScript << _Name << ".AddBoundaryGroup(\"" << *it << "\", \"";
+ aScript << "smeshhomard.AddBoundaryGroup(\"" << *it << "\", \"";
it++;
aScript << *it << "\")\n";
it++;
return _NomDir;
}
//
-// Le type de conformite ou non conformite
-//
-//=============================================================================
-void HOMARD_Cas::SetConfType( int Conftype )
-{
- _ConfType = Conftype;
-}
-//=============================================================================
-const int HOMARD_Cas::GetConfType() const
-{
- return _ConfType;
-}
-//
// La boite englobante
//
//=============================================================================
int SetDirName( const char* NomDir );
std::string GetDirName() const;
- void SetConfType( int ConfType );
- const int GetConfType() const;
-
void SetBoundingBox( const std::vector<double>& extremas );
const std::vector<double>& GetBoundingBox() const;
private:
std::string _Name;
std::string _NomDir;
- int _ConfType;
int _Etat;
std::vector<double> _Boite; // cf HomardQTCommun pour structure du vecteur
InitBoundarys();
}
- // Repertoire et type
- myCase->SetConfType(myArgs->RBConforme->isChecked() ? 0 : 1);
-
// Menage des eventuelles frontieres deja enregistrees
myCase->SupprBoundaryGroup();
}
myHomardGen->SetMeshFileOUT(aMeshFileOUT.c_str());
+ // Conformity type
+ myHomardGen->SetConfType(myArgs->RBConforme->isChecked() ? 0 : 1);
+
// Advanced options
myHomardGen->SetVerboseLevel(myAdvOpt->verboseLevelSpin->value());
myHomardGen->SetKeepWorkingFiles(myAdvOpt->keepWorkingFilesCheck->isChecked());
return CORBA::string_dup(myHomardCas->GetDirName().c_str());
}
//=============================================================================
-void HOMARD_Cas_i::SetConfType(CORBA::Long ConfType)
-{
- ASSERT(myHomardCas);
- //VERIFICATION((ConfType>=-2) && (ConfType<=3));
- myHomardCas->SetConfType(ConfType);
-}
-//=============================================================================
-CORBA::Long HOMARD_Cas_i::GetConfType()
-{
- ASSERT(myHomardCas);
- return myHomardCas->GetConfType();
-}
-//=============================================================================
void HOMARD_Cas_i::SetBoundingBox(const SMESHHOMARD::extrema& LesExtrema)
{
ASSERT(myHomardCas);
*/
//=============================================================================
HOMARD_Gen_i::HOMARD_Gen_i() : SALOME::GenericObj_i(SMESH_Gen_i::GetPOA()),
+ _ConfType(0),
_KeepMedOUT(true),
_PublishMeshOUT(false),
_KeepWorkingFiles(false),
}
else {
if (!CORBA::is_nil(myIteration1)) {
- /*
- if (CORBA::is_nil(myIteration0)) {
- SALOME::ExceptionStruct es;
- es.type = SALOME::BAD_PARAM;
- es.text = "Invalid iteration 0";
- throw SALOME::SALOME_Exception(es);
- }
- */
-
// Invalide Iteration
if (myIteration1->GetState() > 0) {
myIteration1->SetState(1);
// D. Les données de l'adaptation HOMARD
// D.1. Le type de conformite
- int ConfType = myCase->GetConfType();
- MESSAGE (". ConfType = " << ConfType);
+ MESSAGE (". ConfType = " << _ConfType);
// D.3. Le maillage de depart
const char* NomMeshParent = myIteration0->GetMeshName();
int iaux = 0;
myDriver->TexteMaillageHOMARD(DirComputePa, siter, iaux);
myDriver->TexteMaillage(NomMeshParent, MeshFileParent, 0);
- myDriver->TexteConfRaffDera(ConfType);
+ myDriver->TexteConfRaffDera(_ConfType);
// E.6. Ajout des options avancees
//myDriver->TexteAdvanced(NivMax, DiamMin, AdapInit, ExtraOutput);
MESSAGE (". Creation of the case");
if (_CaseOnMedFile) {
- pd << "Case_1 = smeshhomard.CreateCase(\"" << myIteration0->GetMeshName();
+ pd << "smeshhomard.CreateCase(\"" << myIteration0->GetMeshName();
pd << "\", \"" << myIteration0->GetMeshFile();
pd << "\", \"" << myCase->GetDirName() << "\")\n";
}
else {
- pd << "Case_1 = smeshhomard.CreateCaseOnMesh(\"" << myIteration0->GetMeshName();
+ pd << "smeshhomard.CreateCaseOnMesh(\"" << myIteration0->GetMeshName();
pd << "\", " << _SmeshMesh;
pd << ".GetMesh(), \"" << myCase->GetDirName() << "\")\n";
}
pd << myCase->GetDumpPython();
// Preferences
+ pd << "smeshhomard.SetConfType(" << _ConfType << ")\n";
pd << "smeshhomard.SetKeepMedOUT(" << (_KeepMedOUT ? "True" : "False") << ")\n";
pd << "smeshhomard.SetPublishMeshOUT(" << (_PublishMeshOUT ? "True" : "False") << ")\n";
pd << "smeshhomard.SetMeshNameOUT(\"" << _MeshNameOUT << "\")\n";
MESSAGE ("End PythonDump");
}
+void HOMARD_Gen_i::AddBoundaryGroup(const char* BoundaryName, const char* Group)
+{
+ MESSAGE("HOMARD_Gen_i::AddBoundaryGroup : BoundaryName = " <<
+ BoundaryName << ", Group = " << Group);
+ if (myCase->_is_nil()) {
+ SALOME::ExceptionStruct es;
+ es.type = SALOME::BAD_PARAM;
+ std::string text = "The input mesh must be defined before boundary group addition";
+ es.text = CORBA::string_dup(text.c_str());
+ throw SALOME::SALOME_Exception(es);
+ }
+ myCase->AddBoundaryGroup(BoundaryName, Group);
+}
+
//===============================================================================
// Preferences
//===============================================================================
+void HOMARD_Gen_i::SetConfType(CORBA::Long theConfType)
+{
+ _ConfType = theConfType;
+}
void HOMARD_Gen_i::SetKeepMedOUT(bool theKeepMedOUT)
{
_KeepMedOUT = theKeepMedOUT;
void SetDirName(const char* NomDir);
char* GetDirName();
- void SetConfType(CORBA::Long ConfType);
- CORBA::Long GetConfType();
-
void SetBoundingBox(const SMESHHOMARD::extrema& LesExtremes);
SMESHHOMARD::extrema* GetBoundingBox();
CORBA::Long DeleteCase();
CORBA::Long DeleteIteration(int numIter);
+ void AddBoundaryGroup(const char* Boundary, const char* Group);
+
void AssociateCaseIter(int numIter, const char* labelIter);
char* CreateDirNameIter(const char* nomrep, CORBA::Long num);
void PythonDump();
// Preferences
- void SetKeepMedOUT(bool theKeepMedOUT);
- void SetPublishMeshOUT(bool thePublishMeshOUT);
+ void SetConfType (CORBA::Long theConfType);
+ void SetKeepMedOUT (bool theKeepMedOUT);
+ void SetPublishMeshOUT (bool thePublishMeshOUT);
void SetMeshNameOUT (const char* theMeshNameOUT);
void SetMeshFileOUT (const char* theMeshFileOUT);
SMESHHOMARD::HOMARD_Cas_var myCase;
// Preferences
+ int _ConfType; // Le type de conformite ou non conformite
bool _KeepMedOUT;
bool _PublishMeshOUT;
bool _KeepWorkingFiles;