X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH%2FSMESH_2D_Algo.cxx;h=a2a18202a4ab57903116e98b2ea7a504f9ac1a08;hb=c63ee099ad2b149bd70136839c973e8910137bc5;hp=f42d78a6b6d457d892c15ed594ca3ef255f2fafa;hpb=8b4ba0cdff7660465a9ea7b26ef0df0757afed97;p=modules%2Fsmesh.git diff --git a/src/SMESH/SMESH_2D_Algo.cxx b/src/SMESH/SMESH_2D_Algo.cxx index f42d78a6b..a2a18202a 100644 --- a/src/SMESH/SMESH_2D_Algo.cxx +++ b/src/SMESH/SMESH_2D_Algo.cxx @@ -1,16 +1,35 @@ -using namespace std; -//============================================================================= -// File : SMESH_2D_Algo.cxx -// Created : sam mai 18 09:23:44 CEST 2002 -// Author : Paul RASCLE, EDF -// Project : SALOME -// Copyright : EDF 2002 -// $Header$ -//============================================================================= -using namespace std; +// SMESH SMESH : implementaion of SMESH idl descriptions +// +// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// +// +// +// File : SMESH_2D_Algo.cxx +// Author : Paul RASCLE, EDF +// Module : SMESH +// $Header$ +using namespace std; #include "SMESH_2D_Algo.hxx" #include "SMESH_Gen.hxx" +#include #include "utilities.h" @@ -44,50 +63,6 @@ SMESH_2D_Algo::~SMESH_2D_Algo() */ //============================================================================= -ostream & SMESH_2D_Algo::SaveTo(ostream & save) -{ - return save << this; -} - -//============================================================================= -/*! - * - */ -//============================================================================= - -istream & SMESH_2D_Algo::LoadFrom(istream & load) -{ - return load >> (*this); -} - -//============================================================================= -/*! - * - */ -//============================================================================= - -ostream& operator << (ostream & save, SMESH_2D_Algo & hyp) -{ - return save; -} - -//============================================================================= -/*! - * - */ -//============================================================================= - -istream& operator >> (istream & load, SMESH_2D_Algo & hyp) -{ - return load; -} - -//============================================================================= -/*! - * - */ -//============================================================================= - int SMESH_2D_Algo::NumberOfWires(const TopoDS_Shape& S) { int i = 0; @@ -105,13 +80,14 @@ int SMESH_2D_Algo::NumberOfWires(const TopoDS_Shape& S) int SMESH_2D_Algo::NumberOfPoints(SMESH_Mesh& aMesh, const TopoDS_Wire& W) { int nbPoints = 0; - for (TopExp_Explorer exp(W,TopAbs_EDGE); exp.More(); exp.Next()) - { - const TopoDS_Edge& E = TopoDS::Edge(exp.Current()); - int nb = aMesh.GetSubMesh(E)->GetSubMeshDS()->NbNodes(); - //SCRUTE(nb); - nbPoints += nb +1; // internal points plus 1 vertex of 2 (last point ?) - } - //SCRUTE(nbPoints); + for (TopExp_Explorer exp(W,TopAbs_EDGE); exp.More(); exp.Next()) { + const TopoDS_Edge& E = TopoDS::Edge(exp.Current()); + int nb = aMesh.GetSubMesh(E)->GetSubMeshDS()->NbNodes(); + if(_quadraticMesh) + nb = nb/2; + nbPoints += nb + 1; // internal points plus 1 vertex of 2 (last point ?) + } return nbPoints; } + +