X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=idl%2FSMESH_Measurements.idl;h=53a744e51dbc100479a7f5b2f612e07abe9e5f8d;hp=becc67547d64e4d0e1f69bc439201e387a9e1a0c;hb=499f29d24922cec66e41b41a0039a954993bc6df;hpb=bd8f1aee7c78f7d2eb82bd4fec5e08c9e3d280ce diff --git a/idl/SMESH_Measurements.idl b/idl/SMESH_Measurements.idl index becc67547..53a744e51 100644 --- a/idl/SMESH_Measurements.idl +++ b/idl/SMESH_Measurements.idl @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2022 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -6,7 +6,7 @@ // 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. +// version 2.1 of the License, or (at your option) any later version. // // This library is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -28,18 +28,18 @@ #include "SALOME_GenericObj.idl" #include "SMESH_Mesh.idl" +#include "SMESH_smIdType.idl" module SMESH { - /* * Measure component */ struct Measure { double minX, minY, minZ; double maxX, maxY, maxZ; - long node1, node2; - long elem1, elem2; + smIdType node1, node2; + smIdType elem1, elem2; double value; }; @@ -55,7 +55,32 @@ module SMESH * common bounding box of entities */ Measure BoundingBox(in ListOfIDSources sources); + + /*! + * sum of length of 1D elements of the source + */ + double Length(in SMESH_IDSource source); + + /*! + * sum of area of 2D elements of the source + */ + double Area(in SMESH_IDSource source); + + /*! + * sum of volume of 3D elements of the source + */ + double Volume(in SMESH_IDSource source); + + /*! + * gravity center of the source + */ + PointStruct GravityCenter(in SMESH_IDSource source); + + /*! + * angle in radians defined by 3 points <(p1,p2,p3) + */ + double Angle(in PointStruct p1, in PointStruct p2, in PointStruct p3 ); }; -}; +}; #endif