X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHEXABLOCK%2FHexDocument_trans.cxx;h=201351fafaa6fc5189554ab1a604be7c7a319de8;hb=65fe90d82be36b706e2f267441b8e580ead1a802;hp=f63b5f1dd667419311ab3ad7266b977c738ec840;hpb=8681e72f844274a0c2fc2cd64bbf2451bd8db77b;p=modules%2Fhexablock.git diff --git a/src/HEXABLOCK/HexDocument_trans.cxx b/src/HEXABLOCK/HexDocument_trans.cxx index f63b5f1..201351f 100755 --- a/src/HEXABLOCK/HexDocument_trans.cxx +++ b/src/HEXABLOCK/HexDocument_trans.cxx @@ -1,7 +1,7 @@ // C++ : La clase principale de Hexa -// Copyright (C) 2009-2012 CEA/DEN, EDF R&D +// Copyright (C) 2009-2013 CEA/DEN, EDF R&D // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -31,8 +31,6 @@ #include "HexCrossElements.hxx" #include "HexVector.hxx" -#include "HexCylinder.hxx" -#include "HexPipe.hxx" #include "HexMatrix.hxx" #include "HexCloner.hxx" #include "HexPropagation.hxx" @@ -46,55 +44,80 @@ BEGIN_NAMESPACE_HEXA // ========================================================= performTranslation int Document::performTranslation (Elements* elts, Vector* trans) { + DumpStart ("performTranslation", elts << trans); + Matrix matrice; matrice.defTranslation (trans); int ier = elts->transform (&matrice); + + DumpReturn (ier); return ier; } // ==================================================== performScale int Document::performScale (Elements* elts, Vertex* ver, double k) { + DumpStart ("performScale", elts << ver << k); + Matrix matrice; matrice.defScale (ver, k); int ier = elts->transform (&matrice); + + DumpReturn (ier); return ier; } // ==================================================== performRotation int Document::performRotation (Elements* elts, Vertex* ver, Vector* vec, double angle) { + DumpStart ("performRotation", elts << ver << vec << angle); + Matrix matrice; matrice.defRotation (ver, vec, angle); int ier = elts->transform (&matrice); + + DumpReturn (ier); return ier; } // ==================================================== performSymmetryPoint int Document::performSymmetryPoint (Elements* elts, Vertex* ver) { + DumpStart ("performSymmetryPoint", elts << ver); + Matrix matrice; matrice.defSymmetryPoint (ver); int ier = elts->transform (&matrice); + + DumpReturn (ier); return ier; } // ==================================================== performSymmetryPlane int Document::performSymmetryPlane (Elements* elts, Vertex* ver, Vector* vec) { + DumpStart ("performSymmetryPlane", elts << ver << vec); + Matrix matrice; matrice.defSymmetryPlane (ver, vec); int ier = elts->transform (&matrice); + + DumpReturn (ier); return ier; } + // ==================================================== performSymmetryLine int Document::performSymmetryLine (Elements* elts, Vertex* ver, Vector* vec) { + DumpStart ("performSymmetryLine", elts << ver << vec); + Matrix matrice; matrice.defSymmetryLine (ver, vec); int ier = elts->transform (&matrice); + + DumpReturn (ier); return ier; } // -------------------------------------------------------- @@ -113,56 +136,80 @@ Elements* Document::clonerElements (Elements* table, Matrix* matrice) // ========================================================= makeTranslation Elements* Document::makeTranslation (Elements* table, Vector* trans) { + DumpStart ("makeTranslation", table << trans); + Matrix matrice; matrice.defTranslation (trans); Elements* grille = clonerElements (table, &matrice); - return grille; + + DumpReturn (grille); + return grille; } // ========================================================= makeScale Elements* Document::makeScale (Elements* table, Vertex* ver, double k) { + DumpStart ("makeScale", table << ver << k); + Matrix matrice; matrice.defScale (ver, k); Elements* grille = clonerElements (table, &matrice); + + DumpReturn (grille); return grille; } // ========================================================= makeRotation Elements* Document::makeRotation (Elements* table, Vertex* ver, Vector* vec, - double angle) + double angle) { + DumpStart ("makeRotation", table << ver << vec << angle); + Matrix matrice; matrice.defRotation (ver, vec, angle); Elements* grille = clonerElements (table, &matrice); + + DumpReturn (grille); return grille; } // ========================================================= makeSymmetryPoint Elements* Document::makeSymmetryPoint (Elements* table, Vertex* ver) { + DumpStart ("makeSymmetryPoint", table << ver); + Matrix matrice; matrice.defSymmetryPoint (ver); Elements* grille = clonerElements (table, &matrice); + + DumpReturn (grille); return grille; } // ========================================================= makeSymmetryLine Elements* Document::makeSymmetryLine (Elements* table, Vertex* ver, Vector* vec) { + DumpStart ("makeSymmetryLine", table << ver << vec); + Matrix matrice; matrice.defSymmetryLine (ver, vec); Elements* grille = clonerElements (table, &matrice); + + DumpReturn (grille); return grille; } // ========================================================= makeSymmetryPlane Elements* Document::makeSymmetryPlane (Elements* table, Vertex* ver, Vector* vec) { + DumpStart ("makeSymmetryPlane", table << ver << vec); + Matrix matrice; matrice.defSymmetryPlane (ver, vec); Elements* grille = clonerElements (table, &matrice); + + DumpReturn (grille); return grille; } // ---------------------------------------------------------------------- @@ -171,39 +218,63 @@ Elements* Document::makeSymmetryPlane (Elements* table, Vertex* ver, Vector* vec // ========================================================= removeHexa int Document::removeHexa (Hexa* cell) { + DumpStart ("removeHexa", cell); + + int ier = HOK; if (cell==NULL) - return HERR; + ier = HERR; + else + cell->remove (); - cell->remove (); - return HOK; + DumpReturn (ier); + return ier; } // ========================================================= removeQuad int Document::removeQuad (Quad* cell) { + DumpStart ("removeQuad", cell); + + int ier = HOK; if (cell==NULL) - return HERR; + ier = HERR; + else + cell->remove (); - cell->remove (); - return HOK; + DumpReturn (ier); + return ier; } // ========================================================= removeElements int Document::removeElements (Elements* bloc) { + DumpStart ("removeElements", bloc); + + int ier = HOK; + if (bloc==NULL) - return HERR; + ier = HERR; + else + bloc->remove (); - bloc->remove (); - return HOK; + DumpReturn (ier); + return ier; } // ====================================================== removeConnectedHexa int Document::removeConnectedHexa (Hexa* cell) { + DumpStart ("removeConnectedHexa", cell); + + int ier = HOK; + if (cell==NULL) - return HERR; + ier = HERR; + else + { + update (); + cell->removeConnected (); + } - update (); - cell->removeConnected (); - return HOK; + DumpReturn (ier); + return ier; } // ========================================================= dumpPropagation void Document::dumpPropagation () @@ -243,8 +314,6 @@ void Document::dumpPropagation () void Document::reorderFaces () { majReferences (); - Real3 cg, orig, pi, pj, vi, vj, vk; - for (EltBase* elt = doc_first_elt[EL_QUAD]->next (); elt!=NULL; elt = elt->next()) {