Update environment of windows version:

- products;
- projects.

Porting current version of BR_Dev_For_4_0 branch on Windows.
First stable Windows version of BR_Dev_For_4_0  branch.
This commit is contained in:
abd 2007-06-20 14:23:54 +00:00
parent 06221800da
commit 72f9438f91
10 changed files with 71 additions and 55 deletions

View File

@ -475,7 +475,7 @@ void aptrte( Z nutysu, R aretmx,
if( ierr != 0 ) goto ERREUR; if( ierr != 0 ) goto ERREUR;
//qualites de la triangulation actuelle //qualites de la triangulation actuelle
qualitetrte_( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr, qualitetrte( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr,
nbt, quamoy, quamin ); nbt, quamoy, quamin );
// boucle sur les aretes internes (non sur une ligne de la frontiere) // boucle sur les aretes internes (non sur une ligne de la frontiere)
@ -494,7 +494,7 @@ void aptrte( Z nutysu, R aretmx,
<< d << " secondes"); << d << " secondes");
//qualites de la triangulation actuelle //qualites de la triangulation actuelle
qualitetrte_( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr, qualitetrte( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr,
nbt, quamoy, quamin ); nbt, quamoy, quamin );
// detection des aretes frontalieres initiales perdues // detection des aretes frontalieres initiales perdues
@ -529,7 +529,7 @@ void aptrte( Z nutysu, R aretmx,
if( ierr != 0 ) goto ERREUR; if( ierr != 0 ) goto ERREUR;
//qualites de la triangulation actuelle //qualites de la triangulation actuelle
qualitetrte_( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr, qualitetrte( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr,
nbt, quamoy, quamin ); nbt, quamoy, quamin );
// fin de la triangulation avec respect des aretes initiales frontalieres // fin de la triangulation avec respect des aretes initiales frontalieres
@ -570,7 +570,7 @@ void aptrte( Z nutysu, R aretmx,
if( ierr != 0 ) goto ERREUR; if( ierr != 0 ) goto ERREUR;
//qualites de la triangulation actuelle //qualites de la triangulation actuelle
qualitetrte_( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr, qualitetrte( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr,
nbt, quamoy, quamin ); nbt, quamoy, quamin );
// amelioration de la qualite de la triangulation par // amelioration de la qualite de la triangulation par
@ -585,7 +585,7 @@ void aptrte( Z nutysu, R aretmx,
cout << "aptrte: MC saturee mnarcf3=" << mnarcf3 << endl; cout << "aptrte: MC saturee mnarcf3=" << mnarcf3 << endl;
goto ERREUR; goto ERREUR;
} }
teamqt_( nutysu, aretmx, airemx, teamqt( nutysu, aretmx, airemx,
mnarst, mosoar, mxsoar, n1soar, mnsoar, mnarst, mosoar, mxsoar, n1soar, mnsoar,
moartr, mxartr, n1artr, mnartr, moartr, mxartr, n1artr, mnartr,
mxarcf, mnarcf2, mnarcf3, mxarcf, mnarcf2, mnarcf3,
@ -605,7 +605,7 @@ void aptrte( Z nutysu, R aretmx,
if( ierr != 0 ) goto ERREUR; if( ierr != 0 ) goto ERREUR;
//qualites de la triangulation finale //qualites de la triangulation finale
qualitetrte_( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr, qualitetrte( mnpxyd, mosoar, mxsoar, mnsoar, moartr, mxartr, mnartr,
nbt, quamoy, quamin ); nbt, quamoy, quamin );
// renumerotation des sommets internes: mnarst(i)=numero final du sommet // renumerotation des sommets internes: mnarst(i)=numero final du sommet
@ -734,9 +734,11 @@ void aptrte( Z nutysu, R aretmx,
goto NETTOYAGE; goto NETTOYAGE;
} }
} }
void
#ifdef WIN32
void qualitetrte_( R3 *mnpxyd, __stdcall
#endif
qualitetrte( R3 *mnpxyd,
Z & mosoar, Z & mxsoar, Z *mnsoar, Z & mosoar, Z & mxsoar, Z *mnsoar,
Z & moartr, Z & mxartr, Z *mnartr, Z & moartr, Z & mxartr, Z *mnartr,
Z & nbtria, R & quamoy, R & quamin ) Z & nbtria, R & quamoy, R & quamin )
@ -831,7 +833,7 @@ void qualitetrte_( R3 *mnpxyd,
if( quamin<0.3 ) if( quamin<0.3 )
{ {
//le numero des 3 sommets du triangle ntqmin de qualite minimale //le numero des 3 sommets du triangle ntqmin de qualite minimale
nusotr_( ntqmin, mosoar, mnsoar, moartr, mnartr, nosotr ); nusotr(ntqmin, mosoar, mnsoar, moartr, mnartr, nosotr );
MESSAGE("Triangle de qualite minimale "<<quamin<<" de sommets:" MESSAGE("Triangle de qualite minimale "<<quamin<<" de sommets:"
<<nosotr[0]<<" "<<nosotr[1]<<" "<<nosotr[2]<<" "); <<nosotr[0]<<" "<<nosotr[1]<<" "<<nosotr[2]<<" ");
for (int i=0;i<3;i++) for (int i=0;i<3;i++)

View File

@ -58,40 +58,6 @@
#define MEFISTO2D_EXPORT #define MEFISTO2D_EXPORT
#endif #endif
extern "C" {
void qualitetrte_( R3 *mnpxyd,
Z & mosoar, Z & mxsoar, Z *mnsoar,
Z & moartr, Z & mxartr, Z *mnartr,
Z & nbtria, R & quamoy, R & quamin ); }
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// but : calculer la qualite moyenne et minimale de la triangulation
// ----- actuelle definie par les tableaux nosoar et noartr
// entrees:
// --------
// mnpxyd : tableau des coordonnees 2d des points
// par point : x y distance_souhaitee
// mosoar : nombre maximal d'entiers par arete et
// indice dans nosoar de l'arete suivante dans le hachage
// mxsoar : nombre maximal d'aretes stockables dans le tableau nosoar
// attention: mxsoar>3*mxsomm obligatoire!
// nosoar : numero des 2 sommets , no ligne, 2 triangles de l'arete,
// chainage des aretes frontalieres, chainage du hachage des aretes
// hachage des aretes = nosoar(1)+nosoar(2)*2
// avec mxsoar>=3*mxsomm
// une arete i de nosoar est vide <=> nosoar(1,i)=0 et
// nosoar(2,arete vide)=l'arete vide qui precede
// nosoar(3,arete vide)=l'arete vide qui suit
// moartr : nombre maximal d'entiers par arete du tableau noartr
// mxartr : nombre maximal de triangles declarables
// noartr : les 3 aretes des triangles +-arete1, +-arete2, +-arete3
// arete1 = 0 si triangle vide => arete2 = triangle vide suivant
// sorties:
// --------
// nbtria : nombre de triangles internes au domaine
// quamoy : qualite moyenne des triangles actuels
// quamin : qualite minimale des triangles actuels
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
MEFISTO2D_EXPORT MEFISTO2D_EXPORT
void aptrte( Z nutysu, R aretmx, void aptrte( Z nutysu, R aretmx,
@ -160,6 +126,7 @@ MEFISTO2D_EXPORT
#define nusotr NUSOTR #define nusotr NUSOTR
#define qutr2d QUTR2D #define qutr2d QUTR2D
#define surtd2 SURTD2 #define surtd2 SURTD2
#define qualitetrte QUALITETRTE
#define areteideale ARETEIDEALE #define areteideale ARETEIDEALE
@ -180,12 +147,50 @@ MEFISTO2D_EXPORT
#define nusotr nusotr_ #define nusotr nusotr_
#define qutr2d qutr2d_ #define qutr2d qutr2d_
#define surtd2 surtd2_ #define surtd2 surtd2_
#define qualitetrte qualitetrte_
#define areteideale areteideale_ #define areteideale areteideale_
#endif #endif
extern "C" { void
#ifdef WIN32
__stdcall
#endif
qualitetrte( R3 *mnpxyd,
Z & mosoar, Z & mxsoar, Z *mnsoar,
Z & moartr, Z & mxartr, Z *mnartr,
Z & nbtria, R & quamoy, R & quamin ); }
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// but : calculer la qualite moyenne et minimale de la triangulation
// ----- actuelle definie par les tableaux nosoar et noartr
// entrees:
// --------
// mnpxyd : tableau des coordonnees 2d des points
// par point : x y distance_souhaitee
// mosoar : nombre maximal d'entiers par arete et
// indice dans nosoar de l'arete suivante dans le hachage
// mxsoar : nombre maximal d'aretes stockables dans le tableau nosoar
// attention: mxsoar>3*mxsomm obligatoire!
// nosoar : numero des 2 sommets , no ligne, 2 triangles de l'arete,
// chainage des aretes frontalieres, chainage du hachage des aretes
// hachage des aretes = nosoar(1)+nosoar(2)*2
// avec mxsoar>=3*mxsomm
// une arete i de nosoar est vide <=> nosoar(1,i)=0 et
// nosoar(2,arete vide)=l'arete vide qui precede
// nosoar(3,arete vide)=l'arete vide qui suit
// moartr : nombre maximal d'entiers par arete du tableau noartr
// mxartr : nombre maximal de triangles declarables
// noartr : les 3 aretes des triangles +-arete1, +-arete2, +-arete3
// arete1 = 0 si triangle vide => arete2 = triangle vide suivant
// sorties:
// --------
// nbtria : nombre de triangles internes au domaine
// quamoy : qualite moyenne des triangles actuels
// quamin : qualite minimale des triangles actuels
// +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
extern "C" { void extern "C" { void
#ifdef WIN32 #ifdef WIN32
__stdcall __stdcall

View File

@ -28,14 +28,14 @@
///Abstract class for iterators ///Abstract class for iterators
///@author Jerome Robert ///@author Jerome Robert
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
template<typename VALUE> class SMDS_EXPORT SMDS_Iterator template<typename VALUE> class SMDS_Iterator
{ {
public: public:
/// Return true if and only if there are other object in this iterator /// Return true if and only if there are other object in this iterator
virtual bool more()=0; virtual bool more()=0;
/// Return the current object and step to the next one /// Return the current object and step to the next one
virtual VALUE next()=0; virtual VALUE next()=0;
/// Delete the current element and step to the next one /// Delete the current element and step to the next one
virtual void remove(){} virtual void remove(){}

View File

@ -28,9 +28,11 @@
#ifndef _SMESH_0D_ALGO_HXX_ #ifndef _SMESH_0D_ALGO_HXX_
#define _SMESH_0D_ALGO_HXX_ #define _SMESH_0D_ALGO_HXX_
#include "SMESH_SMESH.hxx"
#include "SMESH_Algo.hxx" #include "SMESH_Algo.hxx"
class SMESH_0D_Algo: public SMESH_Algo class SMESH_EXPORT SMESH_0D_Algo: public SMESH_Algo
{ {
public: public:
SMESH_0D_Algo(int hypId, int studyId, SMESH_Gen* gen); SMESH_0D_Algo(int hypId, int studyId, SMESH_Gen* gen);

View File

@ -28,6 +28,8 @@
#ifndef _SMESH_0D_ALGO_I_HXX_ #ifndef _SMESH_0D_ALGO_I_HXX_
#define _SMESH_0D_ALGO_I_HXX_ #define _SMESH_0D_ALGO_I_HXX_
#include "SMESH.hxx"
#include <SALOMEconfig.h> #include <SALOMEconfig.h>
#include CORBA_SERVER_HEADER(SMESH_Hypothesis) #include CORBA_SERVER_HEADER(SMESH_Hypothesis)
@ -36,7 +38,7 @@
// ====================================================== // ======================================================
// Generic 0D algorithm // Generic 0D algorithm
// ====================================================== // ======================================================
class SMESH_0D_Algo_i: class SMESH_I_EXPORT SMESH_0D_Algo_i:
public virtual POA_SMESH::SMESH_0D_Algo, public virtual POA_SMESH::SMESH_0D_Algo,
public virtual SMESH_Algo_i public virtual SMESH_Algo_i
{ {

View File

@ -1835,7 +1835,7 @@ void SMESH_MeshEditor_i::FindCoincidentNodesOnPart(SMESH::SMESH_IDSource_ptr
for ( CORBA::Long i = 0; llIt != aListOfListOfNodes.end(); llIt++, i++ ) { for ( CORBA::Long i = 0; llIt != aListOfListOfNodes.end(); llIt++, i++ ) {
list< const SMDS_MeshNode* >& aListOfNodes = *llIt; list< const SMDS_MeshNode* >& aListOfNodes = *llIt;
list< const SMDS_MeshNode* >::iterator lIt = aListOfNodes.begin();; list< const SMDS_MeshNode* >::iterator lIt = aListOfNodes.begin();;
SMESH::long_array& aGroup = GroupsOfNodes[ i ]; SMESH::long_array& aGroup = (*GroupsOfNodes)[i];
aGroup.length( aListOfNodes.size() ); aGroup.length( aListOfNodes.size() );
for ( int j = 0; lIt != aListOfNodes.end(); lIt++, j++ ) for ( int j = 0; lIt != aListOfNodes.end(); lIt++, j++ )
aGroup[ j ] = (*lIt)->GetID(); aGroup[ j ] = (*lIt)->GetID();
@ -1917,7 +1917,7 @@ void SMESH_MeshEditor_i::FindEqualElements(SMESH::SMESH_IDSource_ptr theObj
::SMESH_MeshEditor::TListOfListOfElementsID::iterator arraysIt = aListOfListOfElementsID.begin(); ::SMESH_MeshEditor::TListOfListOfElementsID::iterator arraysIt = aListOfListOfElementsID.begin();
for (CORBA::Long j = 0; arraysIt != aListOfListOfElementsID.end(); ++arraysIt, ++j) { for (CORBA::Long j = 0; arraysIt != aListOfListOfElementsID.end(); ++arraysIt, ++j) {
SMESH::long_array& aGroup = GroupsOfElementsID[ j ]; SMESH::long_array& aGroup = (*GroupsOfElementsID)[ j ];
TListOfIDs& listOfIDs = *arraysIt; TListOfIDs& listOfIDs = *arraysIt;
aGroup.length( listOfIDs.size() ); aGroup.length( listOfIDs.size() );
TListOfIDs::iterator idIt = listOfIDs.begin(); TListOfIDs::iterator idIt = listOfIDs.begin();

View File

@ -29,6 +29,7 @@
#define _SMESH_CompositeSegment_1D_HXX_ #define _SMESH_CompositeSegment_1D_HXX_
#include "StdMeshers_Regular_1D.hxx" #include "StdMeshers_Regular_1D.hxx"
#include "SMESH_StdMeshers.hxx"
class SMESH_subMeshEventListener; class SMESH_subMeshEventListener;
class SMESH_Mesh; class SMESH_Mesh;
@ -36,7 +37,7 @@ class StdMeshers_FaceSide;
class TopoDS_Edge; class TopoDS_Edge;
class TopoDS_Face; class TopoDS_Face;
class StdMeshers_CompositeSegment_1D: public StdMeshers_Regular_1D class STDMESHERS_EXPORT StdMeshers_CompositeSegment_1D: public StdMeshers_Regular_1D
{ {
public: public:
StdMeshers_CompositeSegment_1D(int hypId, int studyId, SMESH_Gen* gen); StdMeshers_CompositeSegment_1D(int hypId, int studyId, SMESH_Gen* gen);

View File

@ -54,7 +54,7 @@ namespace {
/*! /*!
* \brief Return an edge from which hypotheses are propagated from * \brief Return an edge from which hypotheses are propagated from
*/ */
static TopoDS_Edge GetSource(SMESH_subMesh * submesh); static TopoDS_Edge GetSource(SMESH_subMesh * submesh) { return TopoDS_Edge(); };
/*! /*!
* \brief Does it's main job * \brief Does it's main job
*/ */

View File

@ -27,13 +27,15 @@
#ifndef _SMESH_SegmentAroundVertex_0D_HXX_ #ifndef _SMESH_SegmentAroundVertex_0D_HXX_
#define _SMESH_SegmentAroundVertex_0D_HXX_ #define _SMESH_SegmentAroundVertex_0D_HXX_
#include "SMESH_StdMeshers.hxx"
#include "SMESH_0D_Algo.hxx" #include "SMESH_0D_Algo.hxx"
/*! /*!
* \brief Algorithm existing in order just to enable assignation of * \brief Algorithm existing in order just to enable assignation of
* StdMeshers_SegmentLengthAroundVertex hypothesis * StdMeshers_SegmentLengthAroundVertex hypothesis
*/ */
class StdMeshers_SegmentAroundVertex_0D: public SMESH_0D_Algo class STDMESHERS_EXPORT StdMeshers_SegmentAroundVertex_0D: public SMESH_0D_Algo
{ {
public: public:
StdMeshers_SegmentAroundVertex_0D(int hypId, int studyId, SMESH_Gen* gen); StdMeshers_SegmentAroundVertex_0D(int hypId, int studyId, SMESH_Gen* gen);

View File

@ -29,6 +29,8 @@
#ifndef _SMESH_SegmentLengthAroundVertex_HXX_ #ifndef _SMESH_SegmentLengthAroundVertex_HXX_
#define _SMESH_SegmentLengthAroundVertex_HXX_ #define _SMESH_SegmentLengthAroundVertex_HXX_
#include "SMESH_StdMeshers.hxx"
#include "SMESH_Hypothesis.hxx" #include "SMESH_Hypothesis.hxx"
#include "Utils_SALOME_Exception.hxx" #include "Utils_SALOME_Exception.hxx"
@ -36,7 +38,7 @@
* \brief This hypothesis specifies length of segments adjacent to the vertex the * \brief This hypothesis specifies length of segments adjacent to the vertex the
* hypothesis is assigned to * hypothesis is assigned to
*/ */
class StdMeshers_SegmentLengthAroundVertex:public SMESH_Hypothesis class STDMESHERS_EXPORT StdMeshers_SegmentLengthAroundVertex:public SMESH_Hypothesis
{ {
public: public:
StdMeshers_SegmentLengthAroundVertex(int hypId, int studyId, SMESH_Gen * gen); StdMeshers_SegmentLengthAroundVertex(int hypId, int studyId, SMESH_Gen * gen);