- if (aList[0] == "B" && (aList[1] == "C" || aList[1] == "P" || aList[1] == "N"))
- {
- HYDROGUI_CurveBlock aCurveBlockInfo;
- if (aList[1] == "C")
- aCurveBlockInfo.myType = 1;
- else if (aList[1] == "P")
- aCurveBlockInfo.myType = 2;
- else if (aList[1] == "N")
- aCurveBlockInfo.myType = 2;
-
- if (aList.size() == 9)
- {
- for (int j = 2; j < 8; j++)
- aCurveBlockInfo.myRefCoords.push_back(aList[j].toDouble());
- aCurveBlockInfo.myRefRatio = aList[8].toDouble();
- }
-
- QString Name;
- do
- {
- aBLine = theFile.readLine().simplified();
- aBList = aBLine.split( ' ', QString::SkipEmptyParts );
-
- if (aBList[0] == "CP")
- {
- if (aBList.size() == 2 && (aBList[1] == "0" || aBList[1] == "1" || aBList[1] == "2"))
- aCurveBlockInfo.myCurvePlane = aBList[1].toInt();
- else if (aBList.size() == 3 && (aBList[1] == "0" || aBList[1] == "1") && (aBList[2] == "0" || aBList[2] == "1"))
- {
- aCurveBlockInfo.myIsClosed = aBList[1].toInt();
- aCurveBlockInfo.myIsClosed = aBList[2].toInt();
- }
- else
- {
- for (int j = 1; j < aBList.size(); j++)
- aCurveBlockInfo.myAdditionalCurveInfo.push_back(aBList[j].toDouble());
- }
- }
- if (aBList[0] == "CN")
- {
- for (int i = 1; i < aBList.size(); i++)
- Name += aBList[i] + "_";
- Name.remove(Name.size() - 1, 1);
- aCurveBlockInfo.myName = Name;
- }
- } while (!theFile.atEnd() && aBLine[0] == 'C' );
-
- bool aStat;
- aTotStat = true;
- do
- {
- if (aBList.size() >= 3 && aBLine[0] != 'B' && aBLine[0] != 'C') {
- gp_XYZ anXYZ;
- anXYZ.SetX (aBList[0].toDouble(&aStat));
- aTotStat = aTotStat && aStat;
- anXYZ.SetY (aBList[1].toDouble(&aStat));
- aTotStat = aTotStat && aStat;
- anXYZ.SetZ (aBList[2].toDouble(&aStat));
- aTotStat = aTotStat && aStat;
-
- aCurveBlockInfo.myXYZPoints.push_back(anXYZ);
-
- aBLine = theFile.readLine().simplified();
- aBList = aBLine.split( ' ', QString::SkipEmptyParts );
- }
- else
- break;
-
- } while (!theFile.atEnd()/* && aBLine[0] == 'B'*/ );
- if (aTotStat)
- myCurveBlocks.push_back(aCurveBlockInfo);
-
- }
- else
- {
- aLine = theFile.readLine().simplified();
- aList = aLine.split( ' ', QString::SkipEmptyParts );
- }
-