- bool anIsOperation = myIsOperation;
- if ( !anIsOperation )
- startOperation();
-
- bool aRes = true;
-
- int anAfterPnt = theIPnt;
-
- CurveCreator::Coordinates::const_iterator aBegIter = theCoords.begin();
- CurveCreator::Coordinates::const_iterator anEndIter = theCoords.end();
- while ( aBegIter != anEndIter )
- {
- const CurveCreator::TypeCoord& aCoordX = *aBegIter++;
- if ( aBegIter == anEndIter )
- break;
-
- const CurveCreator::TypeCoord& aCoordY = *aBegIter++;
-
- aRes = addPoint( aCoordX, aCoordY, theISection, anAfterPnt ) && aRes;
-
- if ( anAfterPnt != -1 )
- ++anAfterPnt;
- }
-
- if ( !anIsOperation )
- commitOperation();
-
- return aRes;