=============================== Hypothese de refonte de l'API de SMDS n'utiliser que vtkUnstructuredGrid, ne pas avor d'objets SMDS_MeshElement mais seulement des index de vtkUnstructuredGrid. 2987 usages de SMDS_MeshNodes 810 SMDS_MeshElement ... ==> en dernier ressort, lourd ================================================================================ Essai a API SMDS a peu pres constante ===================================== SMDS_Mesh static vector _meshList; --> retrouver un SMDS_Mesh vtkUnstructuredGrid* myGrid; vector myNodes; --> meme index que dans le pointSet de myGrid vector myCells; --> index = ID client, pas le meme index que dans le cellTypes de myGrid (ID vtk) SMDS_MeshElement int myID; --> index dans la structure geree par SMDS_Mesh int myMeshId; --> pour retrouver SMDS_Mesh* dans _meshList int myShapeId; --> pour retrouver la subShape SMDS_MeshNode: SMDS_MeshElement SMDS_PositionPtr myPosition; --> A REVOIR : objet position dans la shape geom ##vector myInverseElements; --> SUPPRIME : pour retrouver les elements, vtkCellLinks SMDS_MeshCell: SMDS_MeshElement --> generique pour tous les elements (cells) int myVtkID --> A SUPPRIMER SMDS_MeshVolume: SMDS_MeshCell SMDS_VolumeOfNodes: SMDS_MeshVolume --> Garder temporairement, utilisation dans StdMesher et SMDS_VolumeTool const SMDS_MeshNode **myNodes; --> Couteux int myNbNodes; --> "" SMDS_VolumeVtkNodes: SMDS_MeshVolume --> Utiliser systematiquement dans SMDS, --> IMPLEMENTER. SMDS_MeshElementIDFactory: SMDS_MeshNodeIDFactory vector myIDElements; // index = ID client, value = ID vtk --> A SUPPRIMER, ne sert que dans SMDS_MeshElementIDFactory vector myVtkIndex; // index = ID vtk, value = ID client --> A REPORTER dans SMDS_Mesh ========= TODO ============ enlever vtkId de SMDS_MeshCell, utiliser SMDS_MeshElementIDFactory. ajouter ID dans SMDS_Mesh::createTriangle verifier ID dans SMDS_Mesh::Find*OrCreate ======================== occupation memoire cube 100*100*100 sans affichage Ubuntu 9.10 64 bits 15/12/2009 /home/prascle/projets/SALOME/SMESH/BR_SMDS_MEMIMP/SMESH_SRC/src/SMESH/SMESH_Gen.cxx:143 in use bytes = 32843200 /home/prascle/projets/SALOME/SMESH/BR_SMDS_MEMIMP/SMESH_SRC/src/SMESH/SMESH_Gen.cxx [294] : VSR - SMESH_Gen::Compute() finished, OK = 1 in use bytes = 498773760 delta = 460 Mo (45 Mo de plus que sur Sarge 64 bits ?) Debian Sarge 64 bits in use bytes = 17076352 in use bytes = 431600032 delta = 415 Mo