コード例 #1
0
ファイル: PView.cpp プロジェクト: kevinr2763/gmsh
PView::~PView()
{
  deleteVertexArrays();
  if(normals) delete normals;
  if(_options) delete _options;

  std::vector<PView*>::iterator it = std::find(list.begin(), list.end(), this);
  if(it != list.end()) list.erase(it);
  for(unsigned int i = 0; i < list.size(); i++) list[i]->setIndex(i);

  if(!_data) return;

  // do not delete if another view is an alias of this one
  for(unsigned int i = 0; i < list.size(); i++)
    if(list[i]->getAliasOf() == _tag)
      return;

  // do not delete if this view is an alias and 1) if the original
  // still exists, or 2) if there are other aliases to the same view
  if(_aliasOf >= 0)
    for(unsigned int i = 0; i < list.size(); i++)
      if(list[i]->getTag() == _aliasOf || list[i]->getAliasOf() == _aliasOf)
        return;

  Msg::Debug("Deleting data in View[%d] (tag = %d)", _index, _tag);
  delete _data;
}
コード例 #2
0
ファイル: GEdge.cpp プロジェクト: fmach/agros2d
void GEdge::deleteMesh()
{
  for(unsigned int i = 0; i < mesh_vertices.size(); i++) delete mesh_vertices[i];
  mesh_vertices.clear();
  for(unsigned int i = 0; i < lines.size(); i++) delete lines[i];
  lines.clear();
  _normals.clear();
  deleteVertexArrays();
  model()->destroyMeshCaches();
}
コード例 #3
0
ファイル: GRegion.cpp プロジェクト: fmach/agros2d
void GRegion::deleteMesh()
{
  for(unsigned int i = 0; i < mesh_vertices.size(); i++) delete mesh_vertices[i];
  mesh_vertices.clear();
  transfinite_vertices.clear();
  for(unsigned int i = 0; i < tetrahedra.size(); i++) delete tetrahedra[i];
  tetrahedra.clear();
  for(unsigned int i = 0; i < hexahedra.size(); i++) delete hexahedra[i];
  hexahedra.clear();
  for(unsigned int i = 0; i < prisms.size(); i++) delete prisms[i];
  prisms.clear();
  for(unsigned int i = 0; i < pyramids.size(); i++) delete pyramids[i];
  pyramids.clear();
  for(unsigned int i = 0; i < polyhedra.size(); i++) delete polyhedra[i];
  polyhedra.clear();
  deleteVertexArrays();
  model()->destroyMeshCaches();
}
コード例 #4
0
ファイル: OpenGLAPI.hpp プロジェクト: ngzHappy/OpenGL45Book
inline void deleteAny(const NamedVertexArrayObject & v ){
    deleteVertexArrays(1,&v);
}