-// Copyright (C) 2007-2015 CEA/DEN, EDF R&D
+// Copyright (C) 2007-2016 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
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-// Author : Anthony Geay (CEA/DEN)
+// Author : Anthony Geay (EDF R&D)
#include "MEDCouplingCurveLinearMesh.hxx"
#include "MEDCouplingPointSet.hxx"
{
}
-MEDCouplingCurveLinearMesh::MEDCouplingCurveLinearMesh(const MEDCouplingCurveLinearMesh& other, bool deepCopy):MEDCouplingStructuredMesh(other,deepCopy),_structure(other._structure)
+MEDCouplingCurveLinearMesh::MEDCouplingCurveLinearMesh(const MEDCouplingCurveLinearMesh& other, bool deepCpy):MEDCouplingStructuredMesh(other,deepCpy),_structure(other._structure)
{
- if(deepCopy)
+ if(deepCpy)
{
if((const DataArrayDouble *)other._coords)
_coords=other._coords->deepCopy();
checkConsistencyLight();
}
-int MEDCouplingCurveLinearMesh::getNumberOfCells() const
+std::size_t MEDCouplingCurveLinearMesh::getNumberOfCells() const
{
checkConsistencyLight();
return MEDCouplingStructuredMesh::getNumberOfCells();
double tt=getTime(tmpp1,tmpp2);
ret << "Time attached to the mesh [unit] : " << tt << " [" << getTimeUnit() << "]\n";
ret << "Iteration : " << tmpp1 << " Order : " << tmpp2 << "\n";
- ret << "The nodal stucture of curve linear mesh is : [";
+ ret << "The nodal structure of curve linear mesh is : [";
std::copy(_structure.begin(),_structure.end(),std::ostream_iterator<int>(ret,",")); ret << "]\n";
ret << "The coords array is this : ";
if((const DataArrayDouble *)_coords)
return simpleRepr();
}
+const DataArrayDouble *MEDCouplingCurveLinearMesh::getDirectAccessOfCoordsArrIfInStructure() const
+{
+ return _coords;
+}
+
DataArrayDouble *MEDCouplingCurveLinearMesh::getCoords()
{
return _coords;
}
}
+void MEDCouplingCurveLinearMesh::getCellsContainingPoint(const double *pos, double eps, std::vector<int>& elts) const
+{
+ int ret(getCellContainingPoint(pos,eps));
+ elts.push_back(ret);
+}
+
void MEDCouplingCurveLinearMesh::rotate(const double *center, const double *vector, double angle)
{
if(!((DataArrayDouble *)_coords))
int nbNodes=_coords->getNumberOfTuples();
double *coords=_coords->getPointer();
if(spaceDim==3)
- MEDCouplingPointSet::Rotate3DAlg(center,vector,angle,nbNodes,coords);
+ DataArrayDouble::Rotate3DAlg(center,vector,angle,nbNodes,coords,coords);
else if(spaceDim==2)
- MEDCouplingPointSet::Rotate2DAlg(center,angle,nbNodes,coords);
+ DataArrayDouble::Rotate2DAlg(center,angle,nbNodes,coords,coords);
else
throw INTERP_KERNEL::Exception("MEDCouplingCurveLinearMesh::rotate : invalid space dim for rotation must be 2 or 3");
_coords->declareAsNew();
void MEDCouplingCurveLinearMesh::renumberCells(const int *old2NewBg, bool check)
{
- throw INTERP_KERNEL::Exception("Functionnality of renumbering cell not available for CurveLinear Mesh !");
+ throw INTERP_KERNEL::Exception("Functionality of renumbering cell not available for CurveLinear Mesh !");
}
void MEDCouplingCurveLinearMesh::getTinySerializationInformation(std::vector<double>& tinyInfoD, std::vector<int>& tinyInfo, std::vector<std::string>& littleStrings) const