0020982: EDF 1547 SMESH: Creation of non-conformal quadratic pyramids
- if ( !subMeshId )
+ if ( !subMeshId && ! _impl->GetMeshDS()->IsGroupOfSubShapes( myLocSubShape ))
THROW_SALOME_CORBA_EXCEPTION("not sub-shape of the main shape", SALOME::BAD_PARAM);
0020982: EDF 1547 SMESH: Creation of non-conformal quadratic pyramids
Fix fillAncestorsMap(theShape) for the case if a sub-shape of
theShape is not in _mapAncestors
0020982: EDF 1547 SMESH: Creation of non-conformal quadratic pyramids
Move all checks of shape validity from AddCompoundSubmesh() to IsGroupOfSubShapes()
0020982: EDF 1547 SMESH: Creation of non-conformal quadratic pyramids
bool IsLinked (const SMDS_MeshNode* theNode1,
const SMDS_MeshNode* theNode2,
+ const bool theIgnoreMediumNodes=false) const;
// Return true if theNode1 is linked with theNode2.
+ // If theIgnoreMediumNodes then corner nodes of quadratic cell are considered linked as well
0020876: EDF 1246 SMESH: DoubleNodes fonctions available in the GUI
No need in new commands in smeshDC.py, so DoubleNodeXXXNew() is replaced by DoubleNodeXXX()
## Finds groups of ajacent nodes within Tolerance.
# @param Tolerance the value of tolerance
# @param SubMeshOrGroup SubMesh or Group
+ # @param exceptNodes list of either SubMeshes, Groups or node IDs to exclude from search
# @return the list of groups of nodes
# @ingroup l2_modif_trsf
- def FindCoincidentNodesOnPart (self, SubMeshOrGroup, Tolerance):
+ def FindCoincidentNodesOnPart (self, SubMeshOrGroup, Tolerance, exceptNodes=[]):
+ void FindCoincidentNodesOnPartBut (in SMESH_IDSource SubMeshOrGroup,
+ in double Tolerance,
+ out array_of_long_array GroupsOfNodes,
+ in ListOfIDSources ExceptSubMeshOrGroups);
+
+ void FindCoincidentNodesOnPartBut (in SMESH_IDSource SubMeshOrGroup,
+ in double Tolerance,
+ out array_of_long_array GroupsOfNodes,
+ in ListOfIDSources ExceptSubMeshOrGroups);
+
0020968: EDF1545 SMESH: Problem in de creation of a mesh group on geometry
Detect not computed sub-shapes in case if algo computes many
submeshes at once
bool SMESH_HypoFilter::IsMoreLocalThanPredicate::IsOk(const SMESH_Hypothesis* aHyp,
const TopoDS_Shape& aShape) const
{
+ // issue 0020963
+ // if aShape is COMPOUND (i.e. most probably a GEOM group) then
+ // it is more local if it contains shapes of less dimension than _shapeType
+ ...
eap [Thu, 19 Aug 2010 13:28:02 +0000 (13:28 +0000)]
Fix for SIGSEGV on Mandriva2008 in optimize mode only
==21300== Invalid read of size 4
==21300== at 0x1445EA23: StdMeshers_Penta_3D::MakeVolumeMesh() (StdMeshers_Penta_3D.cxx:681)
while (aItNodes->more()) {
It seems to be an error of optimization, aItNodes.px becomes invalid
before aItNodes->more() returns false but after the loop code is
performed for the last time.
eap [Wed, 4 Aug 2010 12:02:49 +0000 (12:02 +0000)]
0020951: EDF 1501 SMESH: Conversion linear/quadratic with medium nodes on geometry fails with GHS3D
* Fix for usecase: open the atached study, convert Mesh_1 from
quadratic, unassign GHS3D algo -> SIGSEGV. Reason is that the same
SMDS_SpacePosition is shared by all nodes in different solids.
0020951: EDF 1501 SMESH: Conversion linear/quadratic with medium nodes on geometry fails with GHS3D
* Fix GetNodeUV() for a node on seam edge: enable projection of node in face
* Fix GetMediumNode(): set a node in volume #1 as well
* Fix QFace::GetLinkChain(), case of triangles
vsr [Wed, 23 Jun 2010 13:19:50 +0000 (13:19 +0000)]
Bug IPAL21801: preferences for SMESH: color of Group name text should be added
EDF 703 SMESH VISU : Display Mesh Groups names in viewer (as a caption)
Additional fix: add preferences for the names groups color
vsr [Mon, 21 Jun 2010 07:29:04 +0000 (07:29 +0000)]
Fix bug of NodeSearcher: search fails if point is outside the mesh on the distance more than octree node precision value. Version 2 with improved performance.
eap [Tue, 8 Jun 2010 11:33:26 +0000 (11:33 +0000)]
0020676: EDF 1212 GEOM: Partition operation creates vertices which causes mesh computation to fail with netgen
* In GetFaceWires(), create a separate wire for each internal edge
eap [Thu, 13 May 2010 06:24:13 +0000 (06:24 +0000)]
0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
## Computes the mesh and returns the status of the computation
+ # @param discardModifs if True and the mesh has been edited since
+ # a last total re-compute and that may prevent successful partial re-compute,
+ # then the mesh is cleaned before Compute()
# @return True or False
# @ingroup l2_construct
- def Compute(self, geom=0):
+ def Compute(self, geom=0, discardModifs=False):
eap [Thu, 13 May 2010 06:22:26 +0000 (06:22 +0000)]
0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
* save/restore _isModified attribute of the mesh
eap [Thu, 13 May 2010 06:20:02 +0000 (06:20 +0000)]
0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
+ <source>FULL_RECOMPUTE_QUESTION</source>
+ <translation>
+The mesh has been edited since a last total re-compute
+that may prevent successful computation.
+Do you wish to re-compute the mesh totally to discard the modifications?
+ </translation>
+ </message>
+ <message>
eap [Thu, 13 May 2010 06:18:57 +0000 (06:18 +0000)]
0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
+ /*!
+ * Return true if the mesh has been edited since a total re-compute
+ * and those modifications may prevent successful partial re-compute
+ */
+ boolean HasModificationsToDiscard()
+ raises (SALOME::SALOME_Exception);
eap [Thu, 13 May 2010 06:18:02 +0000 (06:18 +0000)]
0020693: EDF 1288 SMESH: Problem to recompute a mesh with a sub-mesh and a conversion linear-quadratic
+ void SetIsModified(bool isModified);
+ bool GetIsModified() const { return _isModified; }
+ bool HasModificationsToDiscard() const;
+ bool _isModified; //!< modified since last total re-compute, issue 0020693