mirror of
https://git.salome-platform.org/gitpub/modules/geom.git
synced 2024-11-11 16:19:17 +05:00
Bos #19916: EDF 21881 - CAD with field can't be exported
This commit is contained in:
parent
665d9f4816
commit
bbdad62780
@ -136,6 +136,9 @@ bool XAOPlugin_IOperations::exportGroups( std::list<Handle(GEOM_Object)> groupLi
|
|||||||
XAO::Dimension dim = shapeEnumToDimension(shapeGroup);
|
XAO::Dimension dim = shapeEnumToDimension(shapeGroup);
|
||||||
XAO::Group* group = xaoObject->addGroup(dim, currGroup->GetName().ToCString());
|
XAO::Group* group = xaoObject->addGroup(dim, currGroup->GetName().ToCString());
|
||||||
|
|
||||||
|
// Group can be empty
|
||||||
|
if (groupIds.IsNull()) continue;
|
||||||
|
|
||||||
switch (shapeGroup)
|
switch (shapeGroup)
|
||||||
{
|
{
|
||||||
case TopAbs_VERTEX:
|
case TopAbs_VERTEX:
|
||||||
@ -531,14 +534,20 @@ bool XAOPlugin_IOperations::ImportXAO( const char* fileName,
|
|||||||
|
|
||||||
// build an array with the indexes of the sub shapes
|
// build an array with the indexes of the sub shapes
|
||||||
int nbElt = xaoGroup->count();
|
int nbElt = xaoGroup->count();
|
||||||
Handle(TColStd_HArray1OfInteger) array = new TColStd_HArray1OfInteger(1, nbElt);
|
Handle(TColStd_HArray1OfInteger) array;
|
||||||
|
if (nbElt > 0) {
|
||||||
|
array = new TColStd_HArray1OfInteger(1, nbElt);
|
||||||
int j = 0;
|
int j = 0;
|
||||||
for (std::set<int>::iterator it = xaoGroup->begin(); it != xaoGroup->end(); ++it)
|
for (std::set<int>::iterator it = xaoGroup->begin(); it != xaoGroup->end(); ++it) {
|
||||||
{
|
|
||||||
int index = (*it);
|
int index = (*it);
|
||||||
std::string ref = xaoGeometry->getElementReference(xaoGroup->getDimension(), index);
|
std::string ref = xaoGeometry->getElementReference(xaoGroup->getDimension(), index);
|
||||||
array->SetValue(++j, XAO::XaoUtils::stringToInt(ref));
|
array->SetValue(++j, XAO::XaoUtils::stringToInt(ref));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
else { // empty group
|
||||||
|
array = new TColStd_HArray1OfInteger(1, 1);
|
||||||
|
array->SetValue(1, -1);
|
||||||
|
}
|
||||||
|
|
||||||
// create the group with the array of sub shapes indexes
|
// create the group with the array of sub shapes indexes
|
||||||
Handle(GEOM_Object) group = GetEngine()->AddSubShape(shape, array);
|
Handle(GEOM_Object) group = GetEngine()->AddSubShape(shape, array);
|
||||||
|
Loading…
Reference in New Issue
Block a user