]> OCCT Git - occt-copy.git/commitdiff
0028315: Data Exchange - Import/Export GD&Ts without semantic
authorika <ika@opencascade.com>
Wed, 28 Dec 2016 11:05:01 +0000 (14:05 +0300)
committeraba <aba@opencascade.com>
Tue, 10 Jan 2017 14:31:28 +0000 (17:31 +0300)
Implement import/export of Dimensions without semantic.
Add new type of dimension for GDTs with presentation and connecting to shapes.
Update test cases.

48 files changed:
src/RWStepAP214/RWStepAP214_GeneralModule.cxx
src/RWStepAP214/RWStepAP214_ReadWriteModule.cxx
src/RWStepVisual/FILES
src/RWStepVisual/RWStepVisual_RWAnnotationFillArea.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWAnnotationFillArea.hxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWAnnotationFillAreaOccurrence.cxx [new file with mode: 0644]
src/RWStepVisual/RWStepVisual_RWAnnotationFillAreaOccurrence.hxx [new file with mode: 0644]
src/STEPCAFControl/STEPCAFControl_Reader.cxx
src/STEPCAFControl/STEPCAFControl_Writer.cxx
src/StepAP214/StepAP214_Protocol.cxx
src/StepVisual/FILES
src/StepVisual/StepVisual_AnnotationCurveOccurrence.cxx
src/StepVisual/StepVisual_AnnotationCurveOccurrence.hxx
src/StepVisual/StepVisual_AnnotationFillArea.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_AnnotationFillArea.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_AnnotationFillAreaOccurrence.cxx [new file with mode: 0644]
src/StepVisual/StepVisual_AnnotationFillAreaOccurrence.hxx [new file with mode: 0644]
src/StepVisual/StepVisual_DraughtingCalloutElement.cxx
src/StepVisual/StepVisual_DraughtingCalloutElement.hxx
src/XCAFDimTolObjects/XCAFDimTolObjects_DimensionType.hxx
tests/gdt/export/A1
tests/gdt/export/A4
tests/gdt/export/A6
tests/gdt/export/A7
tests/gdt/export/A8
tests/gdt/export/A9
tests/gdt/export/B1
tests/gdt/export/B2
tests/gdt/export/B3
tests/gdt/export/B4
tests/gdt/export/B5
tests/gdt/export/B7 [new file with mode: 0644]
tests/gdt/export/B8 [new file with mode: 0644]
tests/gdt/import/A1
tests/gdt/import/A4
tests/gdt/presentation/A1
tests/gdt/presentation/A3
tests/gdt/presentation/A5
tests/gdt/presentation/A6
tests/gdt/presentation/A7
tests/gdt/presentation/A8
tests/gdt/presentation/A9
tests/gdt/presentation/B1
tests/gdt/presentation/B2
tests/gdt/presentation/B3
tests/gdt/presentation/B4
tests/gdt/presentation/B6 [new file with mode: 0644]
tests/gdt/presentation/B7 [new file with mode: 0644]

index 7cdb5cdd9a6cc0bbe7f52ae56941bad1dbbd8f18..7ddad401cb0453aad0243d34f34ecd6af7eb86c9 100644 (file)
@@ -1359,6 +1359,10 @@ IMPLEMENT_STANDARD_RTTIEXT(RWStepAP214_GeneralModule,StepData_GeneralModule)
 #include <RWStepRepr_RWCharacterizedRepresentation.hxx>
 #include <StepVisual_CharacterizedObjectAndCharacterizedRepresentationAndDraughtingModelAndRepresentation.hxx>
 #include <RWStepVisual_RWCharacterizedObjectAndCharacterizedRepresentationAndDraughtingModelAndRepresentation.hxx>
+#include <StepVisual_AnnotationFillArea.hxx>
+#include <StepVisual_AnnotationFillAreaOccurrence.hxx>
+#include <RWStepVisual_RWAnnotationFillArea.hxx>
+#include <RWStepVisual_RWAnnotationFillAreaOccurrence.hxx>
 
 static Standard_Integer catsh,catdr,catstr,catdsc,cataux;
 
@@ -1442,6 +1446,20 @@ void RWStepAP214_GeneralModule::FillSharedCase(const Standard_Integer CN,
        tool.Share(anent,iter);
       }
       break;
+    case 5:
+    {
+      DeclareAndCast(StepVisual_AnnotationFillArea, anent, ent);
+      RWStepVisual_RWAnnotationFillArea tool;
+      tool.Share(anent, iter);
+    }
+    break;
+    case 6:
+    {
+      DeclareAndCast(StepVisual_AnnotationFillAreaOccurrence, anent, ent);
+      RWStepVisual_RWAnnotationFillAreaOccurrence tool;
+      tool.Share(anent, iter);
+    }
+    break;
     case 7:
       {
        DeclareAndCast(StepVisual_AnnotationOccurrence,anent,ent);
@@ -5274,6 +5292,12 @@ Standard_Boolean RWStepAP214_GeneralModule::NewVoid
   case 4 : 
     ent = new StepVisual_AnnotationCurveOccurrence;
     break;
+  case 5:
+    ent = new StepVisual_AnnotationFillArea;
+  break;
+  case 6:
+    ent = new StepVisual_AnnotationFillAreaOccurrence;
+  break;
   case 7 : 
     ent = new StepVisual_AnnotationOccurrence;
     break;
index 7b8bde6d4a1bbf891c78e7c968695e61a6ff86c2..0d3edcba7af02e92cf0699adbb2976c453e07d91 100644 (file)
@@ -1394,6 +1394,10 @@ Handle(atype) result = Handle(atype)::DownCast (start)
 #include <RWStepRepr_RWConstructiveGeometryRepresentationRelationship.hxx>
 #include <StepVisual_CharacterizedObjectAndCharacterizedRepresentationAndDraughtingModelAndRepresentation.hxx>
 #include <RWStepVisual_RWCharacterizedObjectAndCharacterizedRepresentationAndDraughtingModelAndRepresentation.hxx>
+#include <StepVisual_AnnotationFillArea.hxx>
+#include <StepVisual_AnnotationFillAreaOccurrence.hxx>
+#include <RWStepVisual_RWAnnotationFillArea.hxx>
+#include <RWStepVisual_RWAnnotationFillAreaOccurrence.hxx>
 
 
 // -- General Declarations (Recognize, StepType) ---
@@ -4880,6 +4884,20 @@ void RWStepAP214_ReadWriteModule::ReadStep(const Standard_Integer CN,
       tool.ReadStep (data,num,ach,anent);
     }
     break;
+  case 5:
+  {
+    DeclareAndCast(StepVisual_AnnotationFillArea, anent, ent);
+    RWStepVisual_RWAnnotationFillArea tool;
+    tool.ReadStep(data, num, ach, anent);
+  }
+    break;
+  case 6:
+  {
+    DeclareAndCast(StepVisual_AnnotationFillAreaOccurrence, anent, ent);
+    RWStepVisual_RWAnnotationFillAreaOccurrence tool;
+    tool.ReadStep(data, num, ach, anent);
+  }
+    break;
   case 7 : 
     {
       DeclareAndCast(StepVisual_AnnotationOccurrence, anent, ent);
@@ -9418,6 +9436,20 @@ void RWStepAP214_ReadWriteModule::WriteStep(const Standard_Integer CN,
       tool.WriteStep (SW,anent);
     }
     break;
+  case 5:
+  {
+    DeclareAndCast(StepVisual_AnnotationFillArea, anent, ent);
+    RWStepVisual_RWAnnotationFillArea tool;
+    tool.WriteStep(SW, anent);
+  }
+    break;
+  case 6:
+  {
+    DeclareAndCast(StepVisual_AnnotationFillAreaOccurrence, anent, ent);
+    RWStepVisual_RWAnnotationFillAreaOccurrence tool;
+    tool.WriteStep(SW, anent);
+  }
+    break;
   case 7 : 
     {
       DeclareAndCast(StepVisual_AnnotationOccurrence, anent, ent);
index 059401d1a1d5a474c5561ecaec7d9841057ee986..f6f964ded403559eabcd08b7b460f0fd2bb6971e 100644 (file)
@@ -1,5 +1,9 @@
 RWStepVisual_RWAnnotationCurveOccurrence.cxx
 RWStepVisual_RWAnnotationCurveOccurrence.hxx
+RWStepVisual_RWAnnotationFillArea.cxx
+RWStepVisual_RWAnnotationFillArea.hxx
+RWStepVisual_RWAnnotationFillAreaOccurrence.cxx
+RWStepVisual_RWAnnotationFillAreaOccurrence.hxx
 RWStepVisual_RWAnnotationOccurrence.cxx
 RWStepVisual_RWAnnotationOccurrence.hxx
 RWStepVisual_RWAnnotationPlane.cxx
diff --git a/src/RWStepVisual/RWStepVisual_RWAnnotationFillArea.cxx b/src/RWStepVisual/RWStepVisual_RWAnnotationFillArea.cxx
new file mode 100644 (file)
index 0000000..fb85f8c
--- /dev/null
@@ -0,0 +1,98 @@
+// Created on: 2016-12-28
+// Created by: Irina KRYLOVA
+// Copyright (c) 2016 OPEN CASCADE SAS
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+
+#include <Interface_Check.hxx>
+#include <Interface_EntityIterator.hxx>
+#include <RWStepVisual_RWAnnotationFillArea.hxx>
+#include <StepData_StepReaderData.hxx>
+#include <StepData_StepWriter.hxx>
+#include <StepVisual_AnnotationFillArea.hxx>
+#include <StepShape_GeometricSetSelect.hxx>
+#include <StepShape_HArray1OfGeometricSetSelect.hxx>
+
+//=======================================================================
+//function : RWStepVisual_RWAnnotationFillArea
+//purpose  : 
+//=======================================================================
+RWStepVisual_RWAnnotationFillArea::RWStepVisual_RWAnnotationFillArea () {}
+
+//=======================================================================
+//function : ReadStep
+//purpose  : 
+//=======================================================================
+void RWStepVisual_RWAnnotationFillArea::ReadStep
+(const Handle(StepData_StepReaderData)& data,
+const Standard_Integer num,
+Handle(Interface_Check)& ach,
+const Handle(StepVisual_AnnotationFillArea)& ent) const
+{
+  // Number of Parameter Control
+  if (!data->CheckNbParams(num, 2, ach, "annotation_fill_area"))
+    return;
+
+  // Inherited field : name
+
+  Handle(TCollection_HAsciiString) aName;
+  data->ReadString(num, 1, "name", ach, aName);
+
+  // Own field : boundaries
+  Handle(StepShape_HArray1OfGeometricSetSelect) aElements;
+  StepShape_GeometricSetSelect aElementsItem;
+  Standard_Integer nsub;
+  if (data->ReadSubList(num, 2, "boundaries", ach, nsub)) {
+    Standard_Integer nb = data->NbParams(nsub);
+    aElements = new StepShape_HArray1OfGeometricSetSelect(1, nb);
+    for (Standard_Integer i = 1; i <= nb; i++) {
+      if (data->ReadEntity(nsub, i, "boundaries", ach, aElementsItem))
+        aElements->SetValue(i, aElementsItem);
+    }
+  }
+
+  //Initialization of the read entity
+  ent->Init(aName, aElements);
+}
+
+//=======================================================================
+//function : WriteStep
+//purpose  : 
+//=======================================================================
+void RWStepVisual_RWAnnotationFillArea::WriteStep
+(StepData_StepWriter& SW,
+const Handle(StepVisual_AnnotationFillArea)& ent) const
+{
+  // Inherited field : name
+  SW.Send(ent->Name());
+
+  // Own field : elements
+  SW.OpenSub();
+  for (Standard_Integer i = 1; i <= ent->NbElements(); i++) {
+    SW.Send(ent->ElementsValue(i).Value());
+  }
+  SW.CloseSub();
+}
+
+//=======================================================================
+//function : Share
+//purpose  : 
+//=======================================================================
+void RWStepVisual_RWAnnotationFillArea::Share(const Handle(StepVisual_AnnotationFillArea)& ent, Interface_EntityIterator& iter) const
+{
+  Standard_Integer nbBound = ent->NbElements();
+  for (Standard_Integer i = 1; i <= nbBound; i++) {
+    iter.GetOneItem(ent->ElementsValue(i).Value());
+  }
+}
+
diff --git a/src/RWStepVisual/RWStepVisual_RWAnnotationFillArea.hxx b/src/RWStepVisual/RWStepVisual_RWAnnotationFillArea.hxx
new file mode 100644 (file)
index 0000000..d360bea
--- /dev/null
@@ -0,0 +1,49 @@
+// Created on: 2016-12-28
+// Created by: Irina KRYLOVA
+// Copyright (c) 2016 OPEN CASCADE SAS
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#ifndef _RWStepVisual_RWAnnotationFillArea_HeaderFile
+#define _RWStepVisual_RWAnnotationFillArea_HeaderFile
+
+#include <Standard.hxx>
+#include <Standard_DefineAlloc.hxx>
+#include <Standard_Handle.hxx>
+
+#include <Standard_Integer.hxx>
+class StepData_StepReaderData;
+class Interface_Check;
+class StepVisual_AnnotationFillArea;
+class StepData_StepWriter;
+class Interface_EntityIterator;
+
+
+//! Read & Write Module for AnnotationFillArea
+class RWStepVisual_RWAnnotationFillArea 
+{
+public:
+
+  DEFINE_STANDARD_ALLOC
+
+  
+  Standard_EXPORT RWStepVisual_RWAnnotationFillArea();
+  
+  Standard_EXPORT void ReadStep (const Handle(StepData_StepReaderData)& data, const Standard_Integer num, Handle(Interface_Check)& ach, const Handle(StepVisual_AnnotationFillArea)& ent) const;
+  
+  Standard_EXPORT void WriteStep (StepData_StepWriter& SW, const Handle(StepVisual_AnnotationFillArea)& ent) const;
+  
+  Standard_EXPORT void Share (const Handle(StepVisual_AnnotationFillArea)& ent, Interface_EntityIterator& iter) const;
+
+};
+
+#endif // _RWStepVisual_RWAnnotationFillArea_HeaderFile
diff --git a/src/RWStepVisual/RWStepVisual_RWAnnotationFillAreaOccurrence.cxx b/src/RWStepVisual/RWStepVisual_RWAnnotationFillAreaOccurrence.cxx
new file mode 100644 (file)
index 0000000..a2c0ba7
--- /dev/null
@@ -0,0 +1,113 @@
+// Created on: 2016-12-28
+// Created by: Irina KRYLOVA
+// Copyright (c) 2016 OPEN CASCADE SAS
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+
+#include <Interface_Check.hxx>
+#include <Interface_EntityIterator.hxx>
+#include <RWStepVisual_RWAnnotationFillAreaOccurrence.hxx>
+#include <StepData_StepReaderData.hxx>
+#include <StepData_StepWriter.hxx>
+#include <StepGeom_GeometricRepresentationItem.hxx>
+#include <StepVisual_HArray1OfPresentationStyleAssignment.hxx>
+#include <StepVisual_PresentationStyleAssignment.hxx>
+#include <StepVisual_AnnotationFillAreaOccurrence.hxx>
+
+//=======================================================================
+//function : RWStepVisual_RWAnnotationFillAreaOccurrence
+//purpose  : 
+//=======================================================================
+RWStepVisual_RWAnnotationFillAreaOccurrence::RWStepVisual_RWAnnotationFillAreaOccurrence () {}
+
+//=======================================================================
+//function : ReadStep
+//purpose  : 
+//=======================================================================
+void RWStepVisual_RWAnnotationFillAreaOccurrence::ReadStep
+(const Handle(StepData_StepReaderData)& data,
+const Standard_Integer num,
+Handle(Interface_Check)& ach,
+const Handle(StepVisual_AnnotationFillAreaOccurrence)& ent) const
+{
+  // Number of Parameter Control
+  if (!data->CheckNbParams(num, 4, ach, "annotation_fill_area_occurrence")) return;
+
+  // Inherited field : name
+  Handle(TCollection_HAsciiString) aName;
+  data->ReadString(num, 1, "name", ach, aName);
+
+  // Inherited field : styles
+  Handle(StepVisual_HArray1OfPresentationStyleAssignment) aStyles;
+  Handle(StepVisual_PresentationStyleAssignment) anent;
+  Standard_Integer nsub;
+  if (data->ReadSubList(num, 2, "styles", ach, nsub)) {
+    Standard_Integer nb = data->NbParams(nsub);
+    aStyles = new StepVisual_HArray1OfPresentationStyleAssignment(1, nb);
+    for (Standard_Integer i = 1; i <= nb; i++) {
+      if (data->ReadEntity(nsub, i, "presentation_style_assignment", ach,
+        STANDARD_TYPE(StepVisual_PresentationStyleAssignment), anent))
+        aStyles->SetValue(i, anent);
+    }
+  }
+
+  // Inherited field : item
+  Handle(MMgt_TShared) aItem;
+  data->ReadEntity(num, 3, "item", ach, STANDARD_TYPE(MMgt_TShared), aItem);
+
+  // Own field : fill_style_target
+  Handle(StepGeom_GeometricRepresentationItem) aFillStyleTarget;
+  data->ReadEntity(num, 4, "item", ach, STANDARD_TYPE(StepGeom_GeometricRepresentationItem), aFillStyleTarget);
+
+  // Initialisation of the read entity
+  ent->Init(aName, aStyles, aItem, aFillStyleTarget);
+}
+
+//=======================================================================
+//function : WriteStep
+//purpose  : 
+//=======================================================================
+void RWStepVisual_RWAnnotationFillAreaOccurrence::WriteStep
+(StepData_StepWriter& SW,
+const Handle(StepVisual_AnnotationFillAreaOccurrence)& ent) const
+{
+  // Inherited field : name
+  SW.Send(ent->Name());
+
+  // Inherited field : styles
+  SW.OpenSub();
+  for (Standard_Integer i = 1; i <= ent->NbStyles(); i++) {
+    SW.Send(ent->StylesValue(i));
+  }
+  SW.CloseSub();
+
+  // Inherited field : item
+  SW.Send(ent->Item());
+
+  // Own field: fill_area_target
+  SW.Send(ent->FillStyleTarget());
+}
+
+//=======================================================================
+//function : Share
+//purpose  : 
+//=======================================================================
+void RWStepVisual_RWAnnotationFillAreaOccurrence::Share(const Handle(StepVisual_AnnotationFillAreaOccurrence)& ent, Interface_EntityIterator& iter) const
+{
+  Standard_Integer nbElem1 = ent->NbStyles();
+  for (Standard_Integer i = 1; i <= nbElem1; i++) {
+    iter.GetOneItem(ent->StylesValue(i));
+  }
+  iter.GetOneItem(ent->Item());
+  iter.GetOneItem(ent->FillStyleTarget());
+}
diff --git a/src/RWStepVisual/RWStepVisual_RWAnnotationFillAreaOccurrence.hxx b/src/RWStepVisual/RWStepVisual_RWAnnotationFillAreaOccurrence.hxx
new file mode 100644 (file)
index 0000000..50c20df
--- /dev/null
@@ -0,0 +1,45 @@
+// Created on: 2016-12-28
+// Created by: Irina KRYLOVA
+// Copyright (c) 2016 OPEN CASCADE SAS
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#ifndef _RWStepVisual_RWAnnotationFillAreaOccurrence_HeaderFile
+#define _RWStepVisual_RWAnnotationFillAreaOccurrence_HeaderFile
+
+#include <Standard.hxx>
+#include <Standard_DefineAlloc.hxx>
+#include <Standard_Handle.hxx>
+
+#include <Standard_Integer.hxx>
+class StepData_StepReaderData;
+class Interface_Check;
+class StepVisual_AnnotationFillAreaOccurrence;
+class StepData_StepWriter;
+class Interface_EntityIterator;
+
+//! Read & Write Module for AnnotationFillAreaOccurrence
+class RWStepVisual_RWAnnotationFillAreaOccurrence 
+{
+public:
+
+  DEFINE_STANDARD_ALLOC
+  
+  Standard_EXPORT RWStepVisual_RWAnnotationFillAreaOccurrence();
+  
+  Standard_EXPORT void ReadStep (const Handle(StepData_StepReaderData)& data, const Standard_Integer num, Handle(Interface_Check)& ach, const Handle(StepVisual_AnnotationFillAreaOccurrence)& ent) const;
+  
+  Standard_EXPORT void WriteStep (StepData_StepWriter& SW, const Handle(StepVisual_AnnotationFillAreaOccurrence)& ent) const;
+  
+  Standard_EXPORT void Share (const Handle(StepVisual_AnnotationFillAreaOccurrence)& ent, Interface_EntityIterator& iter) const;
+};
+#endif // _RWStepVisual_RWAnnotationFillAreaOccurrence_HeaderFile
index 5bbf3de260b2c8415a9ce85ad035796357f312f4..22e700784e1ad821a3b2c5c3b2c5f6e6a86cb2be 100644 (file)
 #include <StepShape_Vertex.hxx>
 #include <StepToGeom.hxx>
 #include <StepVisual_AnnotationCurveOccurrence.hxx>
+#include <StepVisual_AnnotationFillArea.hxx>
 #include <StepVisual_AnnotationPlane.hxx>
 #include <StepVisual_DraughtingCallout.hxx>
 #include <StepVisual_DraughtingCalloutElement.hxx>
@@ -1396,6 +1397,8 @@ Standard_Boolean STEPCAFControl_Reader::ReadLayers (const Handle(XSControl_WorkS
     if ( ! enti->IsKind ( tSVPLA ) ) continue;
     Handle(StepVisual_PresentationLayerAssignment) SVPLA = 
       Handle(StepVisual_PresentationLayerAssignment)::DownCast(enti);
+    if (SVPLA->AssignedItems().IsNull())
+      continue;
     
     Handle(TCollection_HAsciiString) descr = SVPLA->Description();
     Handle(TCollection_HAsciiString) hName = SVPLA->Name();
@@ -1767,6 +1770,7 @@ static Standard_Boolean GetMassConversionFactor(Handle(StepBasic_NamedUnit)& NU,
   }
   return Standard_True;
 }
+
 //=======================================================================
 //function : readPMIPresentation
 //purpose  : read polyline or tessellated presentation for 
@@ -1782,25 +1786,25 @@ Standard_Boolean readPMIPresentation(const Handle(Standard_Transient)& thePresen
   if (thePresentEntity.IsNull())
     return Standard_False;
   Handle(Transfer_TransientProcess) aTP = theTR->TransientProcess();
-  Handle(StepVisual_AnnotationCurveOccurrence) anACO;
+  Handle(StepVisual_AnnotationOccurrence) anAO;
   NCollection_Vector<Handle(StepVisual_StyledItem)> anAnnotations;
-  if (thePresentEntity->IsKind(STANDARD_TYPE(StepVisual_AnnotationCurveOccurrence)))
+  if (thePresentEntity->IsKind(STANDARD_TYPE(StepVisual_AnnotationOccurrence)))
   {
-    anACO = Handle(StepVisual_AnnotationCurveOccurrence)::DownCast(thePresentEntity);
-    thePresentName = anACO->Name();
-    if (!anACO.IsNull())
-      anAnnotations.Append(anACO);
+    anAO = Handle(StepVisual_AnnotationOccurrence)::DownCast(thePresentEntity);
+    thePresentName = anAO->Name();
+    if (!anAO.IsNull())
+      anAnnotations.Append(anAO);
   }
   else if (thePresentEntity->IsKind(STANDARD_TYPE(StepVisual_DraughtingCallout)))
   {
     Handle(StepVisual_DraughtingCallout) aDCallout =
       Handle(StepVisual_DraughtingCallout)::DownCast(thePresentEntity);
     thePresentName = aDCallout->Name();
-    for (Standard_Integer i = 1; i <= aDCallout->NbContents() && anACO.IsNull(); i++) {
-      anACO = aDCallout->ContentsValue(i).AnnotationCurveOccurrence();
-      if (!anACO.IsNull())
+    for (Standard_Integer i = 1; i <= aDCallout->NbContents() && anAO.IsNull(); i++) {
+      anAO = Handle(StepVisual_AnnotationOccurrence)::DownCast(aDCallout->ContentsValue(i).Value());
+      if (!anAO.IsNull())
       {
-        anAnnotations.Append(anACO);
+        anAnnotations.Append(anAO);
         continue;
       }
       Handle(StepVisual_TessellatedAnnotationOccurrence) aTesselation =
@@ -1824,11 +1828,11 @@ Standard_Boolean readPMIPresentation(const Handle(Standard_Transient)& thePresen
   for (; i < anAnnotations.Length(); i++)
   {
     Handle(StepVisual_StyledItem) anItem = anAnnotations(i);
-    anACO = Handle(StepVisual_AnnotationCurveOccurrence)::DownCast(anItem);
+    anAO = Handle(StepVisual_AnnotationOccurrence)::DownCast(anItem);
     TopoDS_Shape anAnnotationShape;
-    if (!anACO.IsNull())
+    if (!anAO.IsNull())
     {
-      Handle(StepRepr_RepresentationItem) aCurveItem = anACO->Item();
+      Handle(StepRepr_RepresentationItem) aCurveItem = anAO->Item();
       anAnnotationShape = STEPConstruct::FindShape(aTP, aCurveItem);
       if (anAnnotationShape.IsNull())
       {
@@ -3814,51 +3818,123 @@ Standard_Boolean STEPCAFControl_Reader::ReadGDTs(const Handle(XSControl_WorkSess
       }
     }
     else if (anEnt->IsKind(STANDARD_TYPE(StepVisual_DraughtingCallout)) ||
-      anEnt->IsKind(STANDARD_TYPE(StepVisual_AnnotationCurveOccurrence)))
+      anEnt->IsKind(STANDARD_TYPE(StepVisual_AnnotationOccurrence)))
     {
-      // read common PMIs: presentation, which is not connected to any PMI.
-      Handle(StepVisual_AnnotationPlane) anAnPlane;
-      Handle(StepAP242_DraughtingModelItemAssociation) aDMIA;
-      Standard_Boolean isCommonLabel = Standard_True;
-      for (Interface_EntityIterator anIter = aGraph.Sharings(anEnt); anIter.More(); anIter.Next())
-      {
-        if (anIter.Value()->IsKind(STANDARD_TYPE(StepVisual_AnnotationPlane)))
-          anAnPlane = Handle(StepVisual_AnnotationPlane)::DownCast(anIter.Value());
-        else
-          isCommonLabel = Standard_False;
+      // Protection against import presentation twice
+      Handle(StepVisual_DraughtingCallout) aDC;
+      for (Interface_EntityIterator anIter = aGraph.Sharings(anEnt); anIter.More() && aDC.IsNull(); anIter.Next()) {
+        aDC = Handle(StepVisual_DraughtingCallout)::DownCast(anIter.Value());
       }
-      if (!isCommonLabel)
+      if (!aDC.IsNull())
         continue;
-      // create empty Dimension
-      TDF_Label aGDTL = aDGTTool->AddDimension();
-      Handle(XCAFDoc_Dimension) aDim = XCAFDoc_Dimension::Set(aGDTL);
-      TCollection_AsciiString aStr("DGT:Common_label");
-      TDataStd_Name::Set(aGDTL, aStr);
-      TDF_LabelSequence anEmptySeq1, anEmptySeq2;
-      aDGTTool->SetDimension(anEmptySeq1, anEmptySeq2, aGDTL);
-      Handle(XCAFDimTolObjects_DimensionObject) aDimObj = new XCAFDimTolObjects_DimensionObject();
-      // read annotations
-      Standard_Real aFact = 1.0;
-      if (!anAnPlane.IsNull())
-      {
-        Handle(StepVisual_DraughtingModel) aDModel;
-        for (Interface_EntityIterator anIter = aGraph.Sharings(anAnPlane); anIter.More() && aDModel.IsNull(); anIter.Next())
-        {
-          if (anIter.Value()->IsKind(STANDARD_TYPE(StepVisual_DraughtingModel)))
-            aDModel = Handle(StepVisual_DraughtingModel)::DownCast(anIter.Value());
+      // Read presentations for PMIs without semantic data.
+      Handle(StepAP242_DraughtingModelItemAssociation) aDMIA;
+      TDF_LabelSequence aShapesL;
+      for (Interface_EntityIterator anIter = aGraph.Sharings(anEnt); anIter.More() && aDMIA.IsNull(); anIter.Next()) {
+        aDMIA = Handle(StepAP242_DraughtingModelItemAssociation)::DownCast(anIter.Value());
+      }
+      if (!aDMIA.IsNull()) {
+        // Check entity, skip all, attached to GDTs
+        Handle(StepRepr_ShapeAspect) aDefinition = aDMIA->Definition().ShapeAspect();
+        if (!aDefinition.IsNull()) {
+          Standard_Boolean isConnectedToGDT = Standard_False;
+          // Skip if definition is a datum
+          if (aDefinition->IsKind(STANDARD_TYPE(StepDimTol_Datum)) ||
+            aDefinition->IsKind(STANDARD_TYPE(StepDimTol_DatumTarget)) ||
+            aDefinition->IsKind(STANDARD_TYPE(StepDimTol_DatumFeature)) ||
+            aDefinition->IsKind(STANDARD_TYPE(StepRepr_CompShAspAndDatumFeatAndShAsp))) {
+            isConnectedToGDT = Standard_True;
+          }
+          // Skip if any GDT is applied to definition
+          for (Interface_EntityIterator anIter = aGraph.Sharings(aDefinition); anIter.More() && !isConnectedToGDT; anIter.Next()) {
+            if (anIter.Value()->IsKind(STANDARD_TYPE(StepShape_DimensionalSize)) ||
+              anIter.Value()->IsKind(STANDARD_TYPE(StepShape_DimensionalLocation)) ||
+              anIter.Value()->IsKind(STANDARD_TYPE(StepDimTol_GeometricTolerance))) {
+              isConnectedToGDT = Standard_True;
+              continue;
+            }
+            Handle(StepRepr_ShapeAspectRelationship) aSAR = Handle(StepRepr_ShapeAspectRelationship)::DownCast(anIter.Value());
+            if (!aSAR.IsNull()) {
+              Handle(StepRepr_ShapeAspect) aSA = aSAR->RelatedShapeAspect();
+              if (!aSA.IsNull()) {
+                if (aSA->IsKind(STANDARD_TYPE(StepDimTol_Datum)) ||
+                  aSA->IsKind(STANDARD_TYPE(StepDimTol_DatumTarget)) ||
+                  aSA->IsKind(STANDARD_TYPE(StepDimTol_DatumFeature)) ||
+                  aSA->IsKind(STANDARD_TYPE(StepRepr_CompShAspAndDatumFeatAndShAsp))) {
+                  isConnectedToGDT = Standard_True;
+                }
+                for (Interface_EntityIterator aDimIter = aGraph.Sharings(aSA); aDimIter.More() && !isConnectedToGDT; aDimIter.Next()) {
+                  if (aDimIter.Value()->IsKind(STANDARD_TYPE(StepShape_DimensionalSize)) ||
+                    aDimIter.Value()->IsKind(STANDARD_TYPE(StepShape_DimensionalLocation)) ||
+                    aDimIter.Value()->IsKind(STANDARD_TYPE(StepDimTol_GeometricTolerance))) {
+                    isConnectedToGDT = Standard_True;
+                    continue;
+                  }
+                }
+              }
+            }
+          }
+          if (isConnectedToGDT)
+            continue;
+        }
+        else if (aDMIA->Definition().PropertyDefinition().IsNull())
+          continue;
+
+        // Get shapes
+        NCollection_Sequence<Handle(StepRepr_ShapeAspect)> aSAs;
+        collectShapeAspect(aDefinition, theWS, aSAs);
+        for (Standard_Integer aSAIt = 1; aSAIt <= aSAs.Length(); aSAIt++) {
+          Handle(StepAP242_GeometricItemSpecificUsage) aGISU;
+          for (Interface_EntityIterator anIter = aGraph.Sharings(aSAs.Value(aSAIt)); anIter.More() && aGISU.IsNull(); anIter.Next())
+            aGISU = Handle(StepAP242_GeometricItemSpecificUsage)::DownCast(anIter.Value());
+          if (aGISU.IsNull())
+            continue;
+          for (Standard_Integer anItemIt = 1; anItemIt <= aGISU->NbIdentifiedItem(); anItemIt++) {
+            TDF_Label aLabel = getShapeLabel(aGISU->IdentifiedItemValue(anItemIt), theWS, XCAFDoc_DocumentTool::ShapeTool(theDoc->Main()));
+            if (!aLabel.IsNull())
+              aShapesL.Append(aLabel);
+          }
         }
-        if (!aDModel.IsNull())
-          GetLengthConversionFactorFromContext(aDModel->ContextOfItems(), aFact);
       }
-      gp_Ax2 aPlaneAxes;
-      readAnnotationPlane(anAnPlane, aFact, aPlaneAxes);
+      Standard_Boolean isCommonLabel = (aShapesL.Length() == 0);
+
+      // Calculate unit
+      Standard_Real aFact = 1.0;
+      if (!aDMIA.IsNull() && !aDMIA->UsedRepresentation().IsNull())
+        GetLengthConversionFactorFromContext(aDMIA->UsedRepresentation()->ContextOfItems(), aFact);
+
+      // Presentation
       TopoDS_Shape aPresentation;
       Handle(TCollection_HAsciiString) aPresentName;
       Bnd_Box aBox;
-      readPMIPresentation(anEnt, aTR, aFact, aPresentation, aPresentName, aBox);
-      // populate Dimension
-      aDimObj->SetType(XCAFDimTolObjects_DimensionType_CommonLabel);
-      aDimObj->SetPlane(aPlaneAxes);
+      if (!readPMIPresentation(anEnt, aTR, aFact, aPresentation, aPresentName, aBox))
+        continue;
+      // Annotation plane
+      Handle(StepVisual_AnnotationPlane) anAnPlane;
+      for (Interface_EntityIterator anIter = aGraph.Sharings(anEnt); anIter.More() && anAnPlane.IsNull(); anIter.Next())
+        anAnPlane = Handle(StepVisual_AnnotationPlane)::DownCast(anIter.Value());
+      
+      // Set object to XCAF
+      TDF_Label aGDTL = aDGTTool->AddDimension();
+      Handle(XCAFDimTolObjects_DimensionObject) aDimObj = new XCAFDimTolObjects_DimensionObject();
+      Handle(XCAFDoc_Dimension) aDim = XCAFDoc_Dimension::Set(aGDTL);
+      TCollection_AsciiString aStr("DGT:");
+      if (isCommonLabel) {
+        aStr.AssignCat("Common_label");
+        aDimObj->SetType(XCAFDimTolObjects_DimensionType_CommonLabel);
+      }
+      else {
+        aStr.AssignCat("Dimension");
+        aDimObj->SetType(XCAFDimTolObjects_DimensionType_DimensionPresentation);
+      }
+      TDataStd_Name::Set(aGDTL, aStr);
+      TDF_LabelSequence anEmptySeq2;
+      aDGTTool->SetDimension(aShapesL, anEmptySeq2, aGDTL);
+      gp_Ax2 aPlaneAxes;
+      if (!anAnPlane.IsNull()) {
+        if (readAnnotationPlane(anAnPlane, aFact, aPlaneAxes))
+          aDimObj->SetPlane(aPlaneAxes);
+      }
       aDimObj->SetPresentation(aPresentation, aPresentName);
       aDim->SetObject(aDimObj);
     }
index cd134fea30a2aaf335c9e790614c5b25140f5e43..f952aa49f94d228f324fbbadb63d23c99382cb39 100644 (file)
 #include <XSControl_TransferWriter.hxx>
 #include <XSControl_WorkSession.hxx>
 
-static NCollection_Vector<Handle(StepVisual_AnnotationPlane)> gdtAnnotationPlanes;
+static NCollection_Vector<Handle(StepRepr_RepresentationItem)> gdtAnnotations;
 static Handle(StepVisual_DraughtingModel) gdtPresentationDM;
 static Handle(StepVisual_HArray1OfPresentationStyleAssignment) gdtPrsCurveStyle;
 static Handle(StepRepr_ProductDefinitionShape) gdtCommonPDS;
@@ -2360,11 +2360,13 @@ static Handle(StepRepr_ShapeAspect) WriteShapeAspect (const Handle(XSControl_Wor
 //purpose  : auxiliary (write annotation plane and presentation)
 //======================================================================
 static void WritePresentation(const Handle(XSControl_WorkSession) &WS,
-                              const TopoDS_Shape thePresentation,
-                              const Handle(TCollection_HAsciiString)& thePrsName,
-                              const gp_Ax2 theAnnotationPlane,
-                              const gp_Pnt theTextPosition,
-                              const Handle(Standard_Transient) theDimension)
+  const TopoDS_Shape thePresentation,
+  const Handle(TCollection_HAsciiString)& thePrsName,
+  const Standard_Boolean hasSemantic,
+  const Standard_Boolean hasPlane,
+  const gp_Ax2 theAnnotationPlane,
+  const gp_Pnt theTextPosition,
+  const Handle(Standard_Transient) theDimension)
 {
   if (thePresentation.IsNull())
     return;
@@ -2384,14 +2386,22 @@ static void WritePresentation(const Handle(XSControl_WorkSession) &WS,
   aDCallout->Init(aPrsName, aTAOs);
   Handle(StepRepr_HArray1OfRepresentationItem) aDCsForDMIA = new StepRepr_HArray1OfRepresentationItem(1, 1);
   aDCsForDMIA->SetValue(1, aDCallout);
+  gdtAnnotations.Append(aDCallout);
   StepAP242_ItemIdentifiedRepresentationUsageDefinition aDimension;
   aDimension.SetValue(theDimension);
+  Handle(TCollection_HAsciiString) aDMIAName;
+  if (hasSemantic)
+    aDMIAName = new TCollection_HAsciiString("PMI representation to presentation link");
+  else
+    aDMIAName = new TCollection_HAsciiString();
   Handle(StepAP242_DraughtingModelItemAssociation) aDMIA =
     new StepAP242_DraughtingModelItemAssociation();
-  aDMIA->Init(new TCollection_HAsciiString("PMI representation to presentation link"),
-      new TCollection_HAsciiString(), aDimension, gdtPresentationDM, aDCsForDMIA);
+  aDMIA->Init(aDMIAName, new TCollection_HAsciiString(), aDimension, gdtPresentationDM, aDCsForDMIA);
   aModel->AddWithRefs(aDMIA);
 
+  if (!hasPlane)
+    return;
+
   // Annotation plane
   // Presentation Style
   Handle(StepVisual_NullStyleMember) aNullStyle = new StepVisual_NullStyleMember();
@@ -2402,7 +2412,7 @@ static void WritePresentation(const Handle(XSControl_WorkSession) &WS,
   aStyles->SetValue(1, aStyleItem);
   Handle(StepVisual_PresentationStyleAssignment) aPrsStyle = new StepVisual_PresentationStyleAssignment();
   aPrsStyle->Init(aStyles);
-  Handle(StepVisual_HArray1OfPresentationStyleAssignment) aPrsStyles = 
+  Handle(StepVisual_HArray1OfPresentationStyleAssignment) aPrsStyles =
     new StepVisual_HArray1OfPresentationStyleAssignment(1, 1);
   aPrsStyles->SetValue(1, aPrsStyle);
   // Plane
@@ -2424,63 +2434,7 @@ static void WritePresentation(const Handle(XSControl_WorkSession) &WS,
   // Init AnnotationPlane entity
   Handle(StepVisual_AnnotationPlane) anAnnPlane = new StepVisual_AnnotationPlane();
   anAnnPlane->Init(new TCollection_HAsciiString(), aPrsStyles, aPlane, aDCsForAnnPln);
-  gdtAnnotationPlanes.Append(anAnnPlane);
-  aModel->AddWithRefs(anAnnPlane);
-}
-
-//======================================================================
-//function : WritePresentation
-//purpose  : auxiliary (write annotation plane and presentation for common labels)
-//======================================================================
-static void WritePresentation(const Handle(XSControl_WorkSession) &WS,
-                              const TopoDS_Shape thePresentation,
-                              const Handle(TCollection_HAsciiString)& thePrsName,
-                              const gp_Ax2 theAnnotationPlane)
-{
-  if (thePresentation.IsNull())
-    return;
-  // Get working data
-  const Handle(Interface_InterfaceModel) &aModel = WS->Model();
-
-  // Presentation
-  Handle(StepVisual_TessellatedGeometricSet) aGeomSet = STEPCAFControl_GDTProperty::GetTessellation(thePresentation);
-  Handle(StepVisual_TessellatedAnnotationOccurrence) aTAO = new StepVisual_TessellatedAnnotationOccurrence();
-  aTAO->Init(new TCollection_HAsciiString(), gdtPrsCurveStyle, aGeomSet);
-  StepVisual_DraughtingCalloutElement aDCElement;
-  aDCElement.SetValue(aTAO);
-  Handle(StepVisual_HArray1OfDraughtingCalloutElement) aTAOs = new StepVisual_HArray1OfDraughtingCalloutElement(1, 1);
-  aTAOs->SetValue(1, aDCElement);
-  Handle(StepVisual_DraughtingCallout) aDCallout = new StepVisual_DraughtingCallout();
-  Handle(TCollection_HAsciiString) aPrsName = thePrsName.IsNull() ? new TCollection_HAsciiString() : thePrsName;
-  aDCallout->Init(aPrsName, aTAOs);
-  aModel->AddWithRefs(aDCallout);
-
-  // Annotation plane
-  // Presentation Style
-  Handle(StepVisual_NullStyleMember) aNullStyle = new StepVisual_NullStyleMember();
-  aNullStyle->SetEnumText(0, ".NULL.");
-  StepVisual_PresentationStyleSelect aStyleItem;
-  aStyleItem.SetValue(aNullStyle);
-  Handle(StepVisual_HArray1OfPresentationStyleSelect) aStyles = new StepVisual_HArray1OfPresentationStyleSelect(1, 1);
-  aStyles->SetValue(1, aStyleItem);
-  Handle(StepVisual_PresentationStyleAssignment) aPrsStyle = new StepVisual_PresentationStyleAssignment();
-  aPrsStyle->Init(aStyles);
-  Handle(StepVisual_HArray1OfPresentationStyleAssignment) aPrsStyles =
-    new StepVisual_HArray1OfPresentationStyleAssignment(1, 1);
-  aPrsStyles->SetValue(1, aPrsStyle);
-  // Plane
-  Handle(StepGeom_Plane) aPlane = new StepGeom_Plane();
-  Handle(StepGeom_Axis2Placement3d) anAxis = STEPCAFControl_GDTProperty::GetAxis2Placement3D(theAnnotationPlane);
-  aPlane->Init(new TCollection_HAsciiString(), anAxis);
-  // Annotation plane element
-  StepVisual_AnnotationPlaneElement aPlaneElement;
-  aPlaneElement.SetValue(aDCallout);
-  Handle(StepVisual_HArray1OfAnnotationPlaneElement) aDCsForAnnPln = new StepVisual_HArray1OfAnnotationPlaneElement(1, 1);
-  aDCsForAnnPln->SetValue(1, aPlaneElement);
-  // Init AnnotationPlane entity
-  Handle(StepVisual_AnnotationPlane) anAnnPlane = new StepVisual_AnnotationPlane();
-  anAnnPlane->Init(new TCollection_HAsciiString(), aPrsStyles, aPlane, aDCsForAnnPln);
-  gdtAnnotationPlanes.Append(anAnnPlane);
+  gdtAnnotations.Append(anAnnPlane);
   aModel->AddWithRefs(anAnnPlane);
 }
 
@@ -2719,7 +2673,8 @@ static Handle(StepDimTol_Datum) WriteDatumAP242(const Handle(XSControl_WorkSessi
   }
 
   //Annotation plane and Presentation
-  WritePresentation(WS, anObject->GetPresentation(), anObject->GetPresentationName(), anObject->GetPlane(), anObject->GetPointTextAttach(), aSA);
+  WritePresentation(WS, anObject->GetPresentation(), anObject->GetPresentationName(), Standard_True, anObject->HasPlane(),
+    anObject->GetPlane(), anObject->GetPointTextAttach(), aSA);
 
   return aDatum;
 }
@@ -3385,7 +3340,8 @@ static void WriteGeomTolerance (const Handle(XSControl_WorkSession) &WS,
   Model->AddWithRefs(aGeomTol);
   WriteToleranceZone(WS, anObject, aGeomTol, theRC);
   //Annotation plane and Presentation
-  WritePresentation(WS, anObject->GetPresentation(), anObject->GetPresentationName(), anObject->GetPlane(), anObject->GetPointTextAttach(), aGeomTol);
+  WritePresentation(WS, anObject->GetPresentation(), anObject->GetPresentationName(), Standard_True, anObject->HasPlane(),
+    anObject->GetPlane(), anObject->GetPointTextAttach(), aGeomTol);
 }
 
 //=======================================================================
@@ -3830,7 +3786,11 @@ Standard_Boolean STEPCAFControl_Writer::WriteDGTsAP242 (const Handle(XSControl_W
       continue;
     if (anObject->GetType() == XCAFDimTolObjects_DimensionType_CommonLabel)
     {
-      WritePresentation(WS, anObject->GetPresentation(), anObject->GetPresentationName(), anObject->GetPlane());
+      Handle(StepRepr_ShapeAspect) aSA = new StepRepr_ShapeAspect();
+      aSA->Init(new TCollection_HAsciiString(), new TCollection_HAsciiString(), gdtCommonPDS, StepData_LTrue);
+      aModel->AddWithRefs(aSA);
+      WritePresentation(WS, anObject->GetPresentation(), anObject->GetPresentationName(), anObject->HasPlane(),
+        Standard_False, anObject->GetPlane(), anObject->GetPointTextAttach(), aSA);
     }
 
     if (!DGTTool->GetRefShapeLabel(aDimensionL, aFirstShapeL, aSecondShapeL))
@@ -3889,6 +3849,13 @@ Standard_Boolean STEPCAFControl_Writer::WriteDGTsAP242 (const Handle(XSControl_W
       aSecondSA = aCSA;
     }
 
+    if (anObject->GetType() == XCAFDimTolObjects_DimensionType_DimensionPresentation)
+    {
+      WritePresentation(WS, anObject->GetPresentation(), anObject->GetPresentationName(), anObject->HasPlane(),
+        Standard_False, anObject->GetPlane(), anObject->GetPointTextAttach(), aFirstSA);
+      continue;
+    }
+
     // Write dimensions
     StepShape_DimensionalCharacteristic aDimension;
     if (anObject->HasPoint() || anObject->HasPoint2())
@@ -3958,7 +3925,8 @@ Standard_Boolean STEPCAFControl_Writer::WriteDGTsAP242 (const Handle(XSControl_W
     // Write values
     WriteDimValues(WS, anObject, aRC, aDimension);
     //Annotation plane and Presentation
-    WritePresentation(WS, anObject->GetPresentation(), anObject->GetPresentationName(), anObject->GetPlane(), anObject->GetPointTextAttach(), aDimension.Value());
+    WritePresentation(WS, anObject->GetPresentation(), anObject->GetPresentationName(), Standard_True, anObject->HasPlane(),
+      anObject->GetPlane(), anObject->GetPointTextAttach(), aDimension.Value());
   }
   // Write Derived geometry
   if (aConnectionPnts.Length() > 0) {
@@ -3989,13 +3957,13 @@ Standard_Boolean STEPCAFControl_Writer::WriteDGTsAP242 (const Handle(XSControl_W
   }
 
   // Write Draughting model for Annotation Planes
-  if (gdtAnnotationPlanes.Length() == 0)
+  if (gdtAnnotations.Length() == 0)
     return Standard_True;
 
   Handle(StepRepr_HArray1OfRepresentationItem) aItems =
-    new StepRepr_HArray1OfRepresentationItem(1, gdtAnnotationPlanes.Length());
+    new StepRepr_HArray1OfRepresentationItem(1, gdtAnnotations.Length());
   for (Standard_Integer i = 1; i <= aItems->Length(); i++) {
-    aItems->SetValue(i, gdtAnnotationPlanes.Value(i - 1));
+    aItems->SetValue(i, gdtAnnotations.Value(i - 1));
   }
   gdtPresentationDM->Init(new TCollection_HAsciiString(), aItems, aRC);
   aModel->AddWithRefs(gdtPresentationDM);
index da1074cac42a68861ee8310bda5d7b3040cb475d..df010c12e34da39831f74756efe474ca1b17cc55 100644 (file)
@@ -743,6 +743,8 @@ static Standard_CString schemaAP242DIS = "AP242_MANAGED_MODEL_BASED_3D_ENGINEERI
 #include <StepRepr_ConstructiveGeometryRepresentation.hxx>
 #include <StepRepr_ConstructiveGeometryRepresentationRelationship.hxx>
 #include <StepVisual_CharacterizedObjectAndCharacterizedRepresentationAndDraughtingModelAndRepresentation.hxx>
+#include <StepVisual_AnnotationFillArea.hxx>
+#include <StepVisual_AnnotationFillAreaOccurrence.hxx>
 
 static int init = 0;
 static Interface_DataMapOfTransientInteger types(800);
@@ -761,8 +763,8 @@ StepAP214_Protocol::StepAP214_Protocol ()
   types.Bind (STANDARD_TYPE(StepShape_AdvancedBrepShapeRepresentation), 2);
   types.Bind (STANDARD_TYPE(StepShape_AdvancedFace), 3);
   types.Bind (STANDARD_TYPE(StepVisual_AnnotationCurveOccurrence), 4);
-//  types.Bind (STANDARD_TYPE(StepVisual_AnnotationFillArea), 5);
-//  types.Bind (STANDARD_TYPE(StepVisual_AnnotationFillAreaOccurrence), 6);
+  types.Bind (STANDARD_TYPE(StepVisual_AnnotationFillArea), 5);
+  types.Bind (STANDARD_TYPE(StepVisual_AnnotationFillAreaOccurrence), 6);
   types.Bind (STANDARD_TYPE(StepVisual_AnnotationOccurrence), 7);
 //  types.Bind (STANDARD_TYPE(StepVisual_AnnotationSubfigureOccurrence), 8);
 //  types.Bind (STANDARD_TYPE(StepVisual_AnnotationSymbol), 9);
index 9de42462ec41e23af84c3cbcc1812ee2301d5ffb..641d3fcbfeb03574792febc9e848bd990c0dc44b 100644 (file)
@@ -1,5 +1,9 @@
 StepVisual_AnnotationCurveOccurrence.cxx
 StepVisual_AnnotationCurveOccurrence.hxx
+StepVisual_AnnotationFillArea.cxx
+StepVisual_AnnotationFillArea.hxx
+StepVisual_AnnotationFillAreaOccurrence.cxx
+StepVisual_AnnotationFillAreaOccurrence.hxx
 StepVisual_AnnotationOccurrence.cxx
 StepVisual_AnnotationOccurrence.hxx
 StepVisual_AnnotationPlane.cxx
index 79428a82ad660e74bd18f567a167af36a7a144d2..b4a61da53121c6d1e821bbf3f7dad23515694012 100644 (file)
@@ -16,6 +16,6 @@
 #include <Standard_Type.hxx>
 #include <StepVisual_AnnotationCurveOccurrence.hxx>
 
-IMPLEMENT_STANDARD_RTTIEXT(StepVisual_AnnotationCurveOccurrence,StepVisual_StyledItem)
+IMPLEMENT_STANDARD_RTTIEXT(StepVisual_AnnotationCurveOccurrence,StepVisual_AnnotationOccurrence)
 
 StepVisual_AnnotationCurveOccurrence::StepVisual_AnnotationCurveOccurrence ()  {}
index 3223156076ae46bbbcf29893e3c74a4761afca51..2cf5f86d78248adb8afdffb0e40b0b241a74d972 100644 (file)
 #include <Standard.hxx>
 #include <Standard_Type.hxx>
 
-#include <StepVisual_StyledItem.hxx>
+#include <StepVisual_AnnotationOccurrence.hxx>
 
 class StepVisual_AnnotationCurveOccurrence;
-DEFINE_STANDARD_HANDLE(StepVisual_AnnotationCurveOccurrence, StepVisual_StyledItem)
+DEFINE_STANDARD_HANDLE(StepVisual_AnnotationCurveOccurrence, StepVisual_AnnotationOccurrence)
 
-class StepVisual_AnnotationCurveOccurrence : public StepVisual_StyledItem
+class StepVisual_AnnotationCurveOccurrence : public StepVisual_AnnotationOccurrence
 {
 public:
 
   //! Returns a AnnotationCurveOccurrence
   Standard_EXPORT StepVisual_AnnotationCurveOccurrence();
 
-  DEFINE_STANDARD_RTTIEXT(StepVisual_AnnotationCurveOccurrence,StepVisual_StyledItem)
+  DEFINE_STANDARD_RTTIEXT(StepVisual_AnnotationCurveOccurrence,StepVisual_AnnotationOccurrence)
 };
 #endif // _StepVisual_AnnotationCurveOccurrence_HeaderFile
diff --git a/src/StepVisual/StepVisual_AnnotationFillArea.cxx b/src/StepVisual/StepVisual_AnnotationFillArea.cxx
new file mode 100644 (file)
index 0000000..c325d3a
--- /dev/null
@@ -0,0 +1,26 @@
+// Created on: 2016-12-28
+// Created by: Irina KRYLOVA
+// Copyright (c) 2016 OPEN CASCADE SAS
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+
+#include <Standard_Type.hxx>
+#include <StepVisual_AnnotationFillArea.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(StepVisual_AnnotationFillArea, StepShape_GeometricCurveSet)
+
+//=======================================================================
+//function : StepVisual_AnnotationFillArea
+//purpose  : 
+//=======================================================================
+StepVisual_AnnotationFillArea::StepVisual_AnnotationFillArea ()  {}
diff --git a/src/StepVisual/StepVisual_AnnotationFillArea.hxx b/src/StepVisual/StepVisual_AnnotationFillArea.hxx
new file mode 100644 (file)
index 0000000..2b770da
--- /dev/null
@@ -0,0 +1,40 @@
+// Created on: 2016-12-28
+// Created by: Irina KRYLOVA
+// Copyright (c) 2016 OPEN CASCADE SAS
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#ifndef _StepVisual_AnnotationFillArea_HeaderFile
+#define _StepVisual_AnnotationFillArea_HeaderFile
+
+#include <Standard.hxx>
+#include <Standard_Type.hxx>
+
+#include <StepRepr_HArray1OfRepresentationItem.hxx>
+#include <StepShape_GeometricCurveSet.hxx>
+#include <Standard_Integer.hxx>
+class TCollection_HAsciiString;
+
+class StepVisual_AnnotationFillArea;
+DEFINE_STANDARD_HANDLE(StepVisual_AnnotationFillArea, StepShape_GeometricCurveSet)
+
+
+class StepVisual_AnnotationFillArea : public StepShape_GeometricCurveSet
+{
+
+public:  
+  //! Returns a AnnotationFillArea
+  Standard_EXPORT StepVisual_AnnotationFillArea();
+
+  DEFINE_STANDARD_RTTIEXT(StepVisual_AnnotationFillArea, StepShape_GeometricCurveSet)
+};
+#endif // _StepVisual_AnnotationFillArea_HeaderFile
diff --git a/src/StepVisual/StepVisual_AnnotationFillAreaOccurrence.cxx b/src/StepVisual/StepVisual_AnnotationFillAreaOccurrence.cxx
new file mode 100644 (file)
index 0000000..7703719
--- /dev/null
@@ -0,0 +1,38 @@
+// Created on: 2016-12-28
+// Created by: Irina KRYLOVA
+// Copyright (c) 2016 OPEN CASCADE SAS
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#include <Standard_Type.hxx>
+#include <StepVisual_AnnotationFillAreaOccurrence.hxx>
+
+IMPLEMENT_STANDARD_RTTIEXT(StepVisual_AnnotationFillAreaOccurrence, StepVisual_AnnotationOccurrence)
+
+//=======================================================================
+//function : StepVisual_AnnotationFillAreaOccurrence
+//purpose  : 
+//=======================================================================
+StepVisual_AnnotationFillAreaOccurrence::StepVisual_AnnotationFillAreaOccurrence ()  {}
+
+//=======================================================================
+//function : Init
+//purpose  : 
+//=======================================================================
+void StepVisual_AnnotationFillAreaOccurrence::Init(const Handle(TCollection_HAsciiString)& theName,
+  const Handle(StepVisual_HArray1OfPresentationStyleAssignment)& theStyles,
+  const Handle(MMgt_TShared)& theItem,
+  const Handle(StepGeom_GeometricRepresentationItem)& theFillStyleTarget)
+{
+  StepVisual_AnnotationOccurrence::Init(theName, theStyles, theItem);
+  myFillStyleTarget = theFillStyleTarget;
+}
diff --git a/src/StepVisual/StepVisual_AnnotationFillAreaOccurrence.hxx b/src/StepVisual/StepVisual_AnnotationFillAreaOccurrence.hxx
new file mode 100644 (file)
index 0000000..46bed0d
--- /dev/null
@@ -0,0 +1,57 @@
+// Created on: 2016-12-28
+// Created by: Irina KRYLOVA
+// Copyright (c) 2016 OPEN CASCADE SAS
+//
+// This file is part of Open CASCADE Technology software library.
+//
+// This library is free software; you can redistribute it and/or modify it under
+// the terms of the GNU Lesser General Public License version 2.1 as published
+// by the Free Software Foundation, with special exception defined in the file
+// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+// distribution for complete text of the license and disclaimer of any warranty.
+//
+// Alternatively, this file may be used under the terms of Open CASCADE
+// commercial license or contractual agreement.
+
+#ifndef _StepVisual_AnnotationFillAreaOccurrence_HeaderFile
+#define _StepVisual_AnnotationFillAreaOccurrence_HeaderFile
+
+#include <Standard.hxx>
+#include <Standard_Type.hxx>
+
+#include <StepVisual_AnnotationOccurrence.hxx>
+
+class StepVisual_AnnotationFillAreaOccurrence;
+DEFINE_STANDARD_HANDLE(StepVisual_AnnotationFillAreaOccurrence, StepVisual_AnnotationOccurrence)
+
+class StepVisual_AnnotationFillAreaOccurrence : public StepVisual_AnnotationOccurrence
+{
+public:
+
+  //! Returns a AnnotationFillAreaOccurrence
+  Standard_EXPORT StepVisual_AnnotationFillAreaOccurrence();
+  
+  //! Initialize all fields (own and inherited)
+  Standard_EXPORT void Init (const Handle(TCollection_HAsciiString)& theName,
+                             const Handle(StepVisual_HArray1OfPresentationStyleAssignment)& theStyles,
+                             const Handle(MMgt_TShared)& theItem,
+                             const Handle(StepGeom_GeometricRepresentationItem)& theFillStyleTarget);
+  
+  //! Returns field fill_style_target
+  Standard_EXPORT Handle(StepGeom_GeometricRepresentationItem) FillStyleTarget() const
+  {
+    return myFillStyleTarget;
+  }
+  
+  //! Set field fill_style_target
+  Standard_EXPORT void SetFillStyleTarget (const Handle(StepGeom_GeometricRepresentationItem)& theTarget)
+  {
+    myFillStyleTarget = theTarget;
+  }
+
+  DEFINE_STANDARD_RTTIEXT(StepVisual_AnnotationFillAreaOccurrence, StepVisual_AnnotationOccurrence)
+  
+private:
+  Handle(StepGeom_GeometricRepresentationItem) myFillStyleTarget;
+};
+#endif // _StepVisual_AnnotationFillAreaOccurrence_HeaderFile
index 23aebbe398e6ee4811d354aa38082f09cba3875d..e7f8c2ca89c51161ba757540d0473244aa0c191c 100644 (file)
@@ -16,6 +16,7 @@
 #include <StepVisual_DraughtingCalloutElement.hxx>
 #include <Interface_Macros.hxx>
 #include <StepVisual_AnnotationCurveOccurrence.hxx>
+#include <StepVisual_AnnotationFillAreaOccurrence.hxx>
 #include <StepVisual_AnnotationTextOccurrence.hxx>
 #include <StepVisual_TessellatedAnnotationOccurrence.hxx>
 
@@ -37,6 +38,7 @@ Standard_Integer StepVisual_DraughtingCalloutElement::CaseNum(const Handle(Stand
   if (ent->IsKind(STANDARD_TYPE(StepVisual_AnnotationCurveOccurrence))) return 1;
   if (ent->IsKind(STANDARD_TYPE(StepVisual_AnnotationTextOccurrence))) return 2;
   if (ent->IsKind(STANDARD_TYPE(StepVisual_TessellatedAnnotationOccurrence))) return 3;
+  if (ent->IsKind(STANDARD_TYPE(StepVisual_AnnotationFillAreaOccurrence))) return 4;
   return 0;
 }
 
@@ -47,4 +49,7 @@ Handle(StepVisual_TessellatedAnnotationOccurrence) StepVisual_DraughtingCalloutE
 {  return GetCasted(StepVisual_TessellatedAnnotationOccurrence,Value()); } 
 
 Handle(StepVisual_AnnotationTextOccurrence) StepVisual_DraughtingCalloutElement::AnnotationTextOccurrence()  const
-{  return GetCasted(StepVisual_AnnotationTextOccurrence, Value()); } 
+{  return GetCasted(StepVisual_AnnotationTextOccurrence, Value()); }
+
+Handle(StepVisual_AnnotationFillAreaOccurrence) StepVisual_DraughtingCalloutElement::AnnotationFillAreaOccurrence()  const
+{ return GetCasted(StepVisual_AnnotationFillAreaOccurrence, Value()); }
index d3eb98162244d96bb670f9785426a637ccb594a3..56c9d5799a6d87ec70f3e8813db55245065939ca 100644 (file)
@@ -24,6 +24,7 @@
 #include <Standard_Integer.hxx>
 class Standard_Transient;
 class StepVisual_AnnotationCurveOccurrence;
+class StepVisual_AnnotationFillAreaOccurrence;
 class StepVisual_AnnotationTextOccurrence;
 class StepVisual_TessellatedAnnotationOccurrence;
 
@@ -40,6 +41,7 @@ public:
   //! 1 -> AnnotationCurveOccurrence
   //! 2 -> AnnotationTextOccurrence
   //! 3 -> TessellatedAnnotationOccurrence
+  //! 4 -> AnnotationFillAreaOccurrence
   //! 0 else
   Standard_EXPORT Standard_Integer CaseNum (const Handle(Standard_Transient)& ent)  const;
   
@@ -51,5 +53,8 @@ public:
 
   //! returns Value as a TessellatedAnnotationOccurrence
   Standard_EXPORT Handle(StepVisual_TessellatedAnnotationOccurrence) TessellatedAnnotationOccurrence()  const;
+
+  //! returns Value as a AnnotationFillAreaOccurrence
+  Standard_EXPORT Handle(StepVisual_AnnotationFillAreaOccurrence) AnnotationFillAreaOccurrence()  const;
 };
 #endif // StepVisual_DraughtingCalloutElement
index e4eae4485653cbe73b5a81e71a1be50ae3ede865..1e0889c302ae75b66fdfb0bf51b45dd11478fc28 100644 (file)
@@ -50,7 +50,8 @@ XCAFDimTolObjects_DimensionType_Size_ToroidalLowMajorRadius,
 XCAFDimTolObjects_DimensionType_Size_Thickness,
 XCAFDimTolObjects_DimensionType_Size_Angular,
 XCAFDimTolObjects_DimensionType_Size_WithPath,
-XCAFDimTolObjects_DimensionType_CommonLabel
+XCAFDimTolObjects_DimensionType_CommonLabel,
+XCAFDimTolObjects_DimensionType_DimensionPresentation
 };
 
 #endif // _XCAFDimTolObjects_DimensionType_HeaderFile
index 37856f2308daa367bf7452d01b5c8f59dfb8ff71..96406badb3e06f93850768cb24880b5765d3bc11 100644 (file)
@@ -3,12 +3,12 @@ set filename bug26689_nist_ctc_01_asme1_ap242.stp
 
 set ref_data {
 
- NbOfDimensions          : 8
+ NbOfDimensions          : 12
   NbOfDimensionalSize    : 7
   NbOfDimensionalLocation: 1
   NbOfAngular            : 1
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 2
  NbOfTolerances          : 6
   NbOfGTWithModifiers    : 0
   NbOfGTWithMaxTolerance : 0
index 929b8a7b2deb30253e9207671348f39773026558..a84cb9fd9233f792476e06f539e7e6aeab68565c 100644 (file)
@@ -3,12 +3,12 @@ set filename bug26689_nist_ctc_04_asme1_ap242.stp
 
 set ref_data {
 
- NbOfDimensions          : 9
+ NbOfDimensions          : 12
   NbOfDimensionalSize    : 6
   NbOfDimensionalLocation: 3
   NbOfAngular            : 1
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 3
  NbOfTolerances          : 6
   NbOfGTWithModifiers    : 0
   NbOfGTWithMaxTolerance : 0
index d1fd5d0028eaf5f8e28fd028eaf6275bb0be2dda..49d3cf8a5a8547f724d8d7dc4cd9ed46cc38e54c 100644 (file)
@@ -3,12 +3,12 @@ set filename bug27645_nist_ftc_06_asme1_cr3000_rd.prt.stp
 
 set ref_data {
 
- NbOfDimensions          : 21
+ NbOfDimensions          : 24
   NbOfDimensionalSize    : 19
   NbOfDimensionalLocation: 2
   NbOfAngular            : 0
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 2
  NbOfTolerances          : 27
   NbOfGTWithModifiers    : 4
   NbOfGTWithMaxTolerance : 0
index d083a036d465f8abb95f0ae11505822fc33c19a5..0f03c6a874292d4f49b418354060ebdca986c892 100644 (file)
@@ -3,12 +3,12 @@ set filename bug27808_nist_ftc_06_asme1_ct5240_rd.stp
 
 set ref_data {
 
- NbOfDimensions          : 22
+ NbOfDimensions          : 25
   NbOfDimensionalSize    : 12
   NbOfDimensionalLocation: 10
   NbOfAngular            : 0
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 2
  NbOfTolerances          : 27
   NbOfGTWithModifiers    : 4
   NbOfGTWithMaxTolerance : 0
index 078d2bdf258ea8f509fb6c8abd8a46e9739a8ab5..b0c12d540da22f2a6e3a6a5bff0a81fc317178a1 100644 (file)
@@ -3,12 +3,12 @@ set filename bug27645_nist_ftc_06_asme1_ct5240_rd-1.stp
 
 set ref_data {
 
- NbOfDimensions          : 22
+ NbOfDimensions          : 24
   NbOfDimensionalSize    : 14
   NbOfDimensionalLocation: 8
   NbOfAngular            : 0
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 1
  NbOfTolerances          : 27
   NbOfGTWithModifiers    : 4
   NbOfGTWithMaxTolerance : 0
index 30869f567c2396af861cb017adfad83bcc51cff1..41213bdb46abe2f866bda198d84dd840027f70b7 100644 (file)
@@ -3,12 +3,12 @@ set filename bug27645_nist_ftc_08_asme1_cr3000_rc.prt.stp
 
 set ref_data {
 
- NbOfDimensions          : 10
+ NbOfDimensions          : 13
   NbOfDimensionalSize    : 10
   NbOfDimensionalLocation: 0
   NbOfAngular            : 0
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 1
  NbOfTolerances          : 30
   NbOfGTWithModifiers    : 14
   NbOfGTWithMaxTolerance : 0
index 330f0df80a4a03e5cbad591a774f245e0dc5be49..23183b6d9fc1caa2ac48658fecfc7aa486b4fa18 100644 (file)
@@ -3,12 +3,12 @@ set filename bug27808_nist_ftc_08_asme1_ct5240_rc.stp
 
 set ref_data {
 
- NbOfDimensions          : 10
+ NbOfDimensions          : 14
   NbOfDimensionalSize    : 9
   NbOfDimensionalLocation: 1
   NbOfAngular            : 0
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 2
  NbOfTolerances          : 33
   NbOfGTWithModifiers    : 17
   NbOfGTWithMaxTolerance : 0
index 62df7f0ad481e476fdec103ffd622c873df2fac0..e9c34a25e6dc58a0a85c179f24b434453ae3c002 100644 (file)
@@ -3,12 +3,12 @@ set filename bug27645_nist_ftc_08_asme1_ct5240_rc-1.stp
 
 set ref_data {
 
- NbOfDimensions          : 10
+ NbOfDimensions          : 13
   NbOfDimensionalSize    : 9
   NbOfDimensionalLocation: 1
   NbOfAngular            : 0
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 1
  NbOfTolerances          : 33
   NbOfGTWithModifiers    : 17
   NbOfGTWithMaxTolerance : 0
index 04fcce1c30320ba6cf4bca176a3ca62f2831b443..49eea9e831ab364d11da0544b18575beef09c304 100644 (file)
@@ -3,12 +3,12 @@ set filename bug27645_nist_ftc_09_asme1_cr3000_rd.prt.stp
 
 set ref_data {
 
- NbOfDimensions          : 21
+ NbOfDimensions          : 27
   NbOfDimensionalSize    : 19
   NbOfDimensionalLocation: 2
   NbOfAngular            : 0
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 1
  NbOfTolerances          : 29
   NbOfGTWithModifiers    : 6
   NbOfGTWithMaxTolerance : 0
index 0dbf18d5f763cf51ae810e863d928ea57b35e6af..298f0020c0b4f111efd06c8c3fc3a6867cc90dbd 100644 (file)
@@ -3,12 +3,12 @@ set filename bug27808_nist_ftc_09_asme1_ct5240_rd.stp
 
 set ref_data {
 
- NbOfDimensions          : 23
+ NbOfDimensions          : 27
   NbOfDimensionalSize    : 16
   NbOfDimensionalLocation: 7
   NbOfAngular            : 0
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 1
  NbOfTolerances          : 31
   NbOfGTWithModifiers    : 6
   NbOfGTWithMaxTolerance : 0
index 0ba40d239aa6a22e2fdf2486a01d0b4785c27b53..4810100f017c876fea71023469bbd241d6f46399 100644 (file)
@@ -3,12 +3,12 @@ set filename bug27645_nist_ftc_09_asme1_ct5240_rd-1.stp
 
 set ref_data {
 
- NbOfDimensions          : 23
+ NbOfDimensions          : 27
   NbOfDimensionalSize    : 16
   NbOfDimensionalLocation: 7
   NbOfAngular            : 0
   NbOfWithPath           : 0
-  NbOfCommonLabels       : 0
+  NbOfCommonLabels       : 1
  NbOfTolerances          : 31
   NbOfGTWithModifiers    : 6
   NbOfGTWithMaxTolerance : 0
diff --git a/tests/gdt/export/B7 b/tests/gdt/export/B7
new file mode 100644 (file)
index 0000000..9858cd4
--- /dev/null
@@ -0,0 +1,19 @@
+# !!!! This file is generated automatically, do not edit manually! See end script
+set filename bug28315_PART_STEP-PMI.STP
+
+set ref_data {
+
+ NbOfDimensions          : 13
+  NbOfDimensionalSize    : 0
+  NbOfDimensionalLocation: 0
+  NbOfAngular            : 0
+  NbOfWithPath           : 0
+  NbOfCommonLabels       : 3
+ NbOfTolerances          : 0
+  NbOfGTWithModifiers    : 0
+  NbOfGTWithMaxTolerance : 0
+  NbOfGTWithDatums       : 0
+ NbOfDatumFeature        : 0
+ NbOfAttachedDatum       : 0
+ NbOfDatumTarget         : 0
+}
diff --git a/tests/gdt/export/B8 b/tests/gdt/export/B8
new file mode 100644 (file)
index 0000000..27e1890
--- /dev/null
@@ -0,0 +1,19 @@
+# !!!! This file is generated automatically, do not edit manually! See end script
+set filename bug28315_rev_part_neu_01_AP214_IS.stp
+
+set ref_data {
+
+ NbOfDimensions          : 51
+  NbOfDimensionalSize    : 0
+  NbOfDimensionalLocation: 0
+  NbOfAngular            : 0
+  NbOfWithPath           : 0
+  NbOfCommonLabels       : 39
+ NbOfTolerances          : 0
+  NbOfGTWithModifiers    : 0
+  NbOfGTWithMaxTolerance : 0
+  NbOfGTWithDatums       : 0
+ NbOfDatumFeature        : 0
+ NbOfAttachedDatum       : 0
+ NbOfDatumTarget         : 0
+}
index c3ff6185276a3ea2f5a1b980f5e5a386eaebadfc..a7b9cae79072ae0f75a5c1ff10faf4ae16c01f67 100644 (file)
@@ -3,7 +3,7 @@ set filename bug26689_nist_ctc_01_asme1_ap242.stp
 
 set ref_data {
 
- NbOfDimensions          : 8
+ NbOfDimensions          : 12
  NbOfTolerances          : 6
  NbOfDatumFeature        : 5
  NbOfAttachedDatum       : 17
@@ -94,4 +94,8 @@ set ref_data {
         0:1:4:25 Dimension.30.1 ( T 15, V 25, VL 0.14999999999999999, VU 0.14999999999999999, P 0 )
  0:1:1:1:30 Shape.31
         0:1:4:25 Dimension.31.1 ( T 15, V 25, VL 0.14999999999999999, VU 0.14999999999999999, P 0 )
+ 0:1:1:1:31 Shape.32
+        0:1:4:28 Dimension.32.1 ( T 31, V 0, P 0 )
+ 0:1:1:1:32 Shape.33
+        0:1:4:29 Dimension.33.1 ( T 31, V 0, P 0 )
 }
index b529dfaa40ef9b395fa1b991cf20be5503eebddd..121d8ef74e4e37c39bd99f1749c304e58b5503c4 100644 (file)
@@ -3,14 +3,14 @@ set filename bug26689_nist_ctc_04_asme1_ap242.stp
 
 set ref_data {
 
- NbOfDimensions          : 9
+ NbOfDimensions          : 12
  NbOfTolerances          : 6
  NbOfDatumFeature        : 10
  NbOfAttachedDatum       : 19
  NbOfDatumTarget         : 0
 
  0:1:1:2:1 Shape.4
-        0:1:4:22 Dimension.4.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.4.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.4.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.4.1.1 ( )
                 0:1:4:3 Datum.4.1.2 ( )
@@ -19,7 +19,7 @@ set ref_data {
                 0:1:4:6 Datum.4.2.1 ( )
                 0:1:4:7 Datum.4.2.2 ( )
  0:1:1:2:2 Shape.5
-        0:1:4:22 Dimension.5.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.5.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.5.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.5.1.1 ( )
                 0:1:4:3 Datum.5.1.2 ( )
@@ -28,7 +28,7 @@ set ref_data {
                 0:1:4:6 Datum.5.2.1 ( )
                 0:1:4:7 Datum.5.2.2 ( )
  0:1:1:2:3 Shape.6
-        0:1:4:22 Dimension.6.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.6.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.6.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.6.1.1 ( )
                 0:1:4:3 Datum.6.1.2 ( )
@@ -37,7 +37,7 @@ set ref_data {
                 0:1:4:6 Datum.6.2.1 ( )
                 0:1:4:7 Datum.6.2.2 ( )
  0:1:1:2:4 Shape.7
-        0:1:4:22 Dimension.7.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.7.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.7.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.7.1.1 ( )
                 0:1:4:3 Datum.7.1.2 ( )
@@ -46,7 +46,7 @@ set ref_data {
                 0:1:4:6 Datum.7.2.1 ( )
                 0:1:4:7 Datum.7.2.2 ( )
  0:1:1:2:5 Shape.8
-        0:1:4:22 Dimension.8.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.8.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.8.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.8.1.1 ( )
                 0:1:4:3 Datum.8.1.2 ( )
@@ -55,7 +55,7 @@ set ref_data {
                 0:1:4:6 Datum.8.2.1 ( )
                 0:1:4:7 Datum.8.2.2 ( )
  0:1:1:2:6 Shape.9
-        0:1:4:22 Dimension.9.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.9.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.9.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.9.1.1 ( )
                 0:1:4:3 Datum.9.1.2 ( )
@@ -64,7 +64,7 @@ set ref_data {
                 0:1:4:6 Datum.9.2.1 ( )
                 0:1:4:7 Datum.9.2.2 ( )
  0:1:1:2:7 Shape.10
-        0:1:4:22 Dimension.10.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.10.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.10.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.10.1.1 ( )
                 0:1:4:3 Datum.10.1.2 ( )
@@ -73,7 +73,7 @@ set ref_data {
                 0:1:4:6 Datum.10.2.1 ( )
                 0:1:4:7 Datum.10.2.2 ( )
  0:1:1:2:8 Shape.11
-        0:1:4:22 Dimension.11.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.11.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.11.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.11.1.1 ( )
                 0:1:4:3 Datum.11.1.2 ( )
@@ -82,7 +82,7 @@ set ref_data {
                 0:1:4:6 Datum.11.2.1 ( )
                 0:1:4:7 Datum.11.2.2 ( )
  0:1:1:2:9 Shape.12
-        0:1:4:22 Dimension.12.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.12.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.12.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.12.1.1 ( )
                 0:1:4:3 Datum.12.1.2 ( )
@@ -91,7 +91,7 @@ set ref_data {
                 0:1:4:6 Datum.12.2.1 ( )
                 0:1:4:7 Datum.12.2.2 ( )
  0:1:1:2:10 Shape.13
-        0:1:4:22 Dimension.13.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.13.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.13.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.13.1.1 ( )
                 0:1:4:3 Datum.13.1.2 ( )
@@ -100,7 +100,7 @@ set ref_data {
                 0:1:4:6 Datum.13.2.1 ( )
                 0:1:4:7 Datum.13.2.2 ( )
  0:1:1:2:11 Shape.14
-        0:1:4:22 Dimension.14.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.14.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.14.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.14.1.1 ( )
                 0:1:4:3 Datum.14.1.2 ( )
@@ -109,7 +109,7 @@ set ref_data {
                 0:1:4:6 Datum.14.2.1 ( )
                 0:1:4:7 Datum.14.2.2 ( )
  0:1:1:2:12 Shape.15
-        0:1:4:22 Dimension.15.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
+        0:1:4:24 Dimension.15.1 ( T 15, V 6.6500000000000004, VL 0.12, VU 0.12, P 0 )
         0:1:4:1 GeomTolerance.15.1 ( T 10 TV 1, V 1.5 )
                 0:1:4:2 Datum.15.1.1 ( )
                 0:1:4:3 Datum.15.1.2 ( )
@@ -118,308 +118,308 @@ set ref_data {
                 0:1:4:6 Datum.15.2.1 ( )
                 0:1:4:7 Datum.15.2.2 ( )
  0:1:1:2:16 Shape.19
-        0:1:4:23 Dimension.19.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
-        0:1:4:8 GeomTolerance.19.1 ( T 10 TV 1, V 0.34999999999999998 )
-                0:1:4:9 Datum.19.1.1 ( )
-                0:1:4:10 Datum.19.1.2 ( )
-                0:1:4:11 Datum.19.1.3 ( )
+        0:1:4:25 Dimension.19.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:9 GeomTolerance.19.1 ( T 10 TV 1, V 0.34999999999999998 )
+                0:1:4:10 Datum.19.1.1 ( )
+                0:1:4:11 Datum.19.1.2 ( )
+                0:1:4:12 Datum.19.1.3 ( )
  0:1:1:2:17 Shape.20
-        0:1:4:23 Dimension.20.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
-        0:1:4:8 GeomTolerance.20.1 ( T 10 TV 1, V 0.34999999999999998 )
-                0:1:4:9 Datum.20.1.1 ( )
-                0:1:4:10 Datum.20.1.2 ( )
-                0:1:4:11 Datum.20.1.3 ( )
+        0:1:4:25 Dimension.20.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:9 GeomTolerance.20.1 ( T 10 TV 1, V 0.34999999999999998 )
+                0:1:4:10 Datum.20.1.1 ( )
+                0:1:4:11 Datum.20.1.2 ( )
+                0:1:4:12 Datum.20.1.3 ( )
  0:1:1:2:23 Shape.26
-        0:1:4:12 GeomTolerance.26.1 ( T 12 TV 0, V 2 )
-                0:1:4:13 Datum.26.1.1 ( )
-                0:1:4:14 Datum.26.1.2 ( )
-                0:1:4:15 Datum.26.1.3 ( )
-        0:1:4:16 GeomTolerance.26.2 ( T 12 TV 0, V 0.20000000000000001 )
-                0:1:4:17 Datum.26.2.1 ( )
+        0:1:4:13 GeomTolerance.26.1 ( T 12 TV 0, V 2 )
+                0:1:4:14 Datum.26.1.1 ( )
+                0:1:4:15 Datum.26.1.2 ( )
+                0:1:4:16 Datum.26.1.3 ( )
+        0:1:4:17 GeomTolerance.26.2 ( T 12 TV 0, V 0.20000000000000001 )
+                0:1:4:18 Datum.26.2.1 ( )
  0:1:1:2:24 Shape.27
-        0:1:4:12 GeomTolerance.27.1 ( T 12 TV 0, V 2 )
-                0:1:4:13 Datum.27.1.1 ( )
-                0:1:4:14 Datum.27.1.2 ( )
-                0:1:4:15 Datum.27.1.3 ( )
-        0:1:4:16 GeomTolerance.27.2 ( T 12 TV 0, V 0.20000000000000001 )
-                0:1:4:17 Datum.27.2.1 ( )
+        0:1:4:13 GeomTolerance.27.1 ( T 12 TV 0, V 2 )
+                0:1:4:14 Datum.27.1.1 ( )
+                0:1:4:15 Datum.27.1.2 ( )
+                0:1:4:16 Datum.27.1.3 ( )
+        0:1:4:17 GeomTolerance.27.2 ( T 12 TV 0, V 0.20000000000000001 )
+                0:1:4:18 Datum.27.2.1 ( )
  0:1:1:2:27 Shape.30
-        0:1:4:18 GeomTolerance.30.1 ( T 12 TV 0, V 0.5 )
-                0:1:4:19 Datum.30.1.1 ( )
-                0:1:4:20 Datum.30.1.2 ( )
-                0:1:4:21 Datum.30.1.3 ( )
+        0:1:4:19 GeomTolerance.30.1 ( T 12 TV 0, V 0.5 )
+                0:1:4:20 Datum.30.1.1 ( )
+                0:1:4:21 Datum.30.1.2 ( )
+                0:1:4:22 Datum.30.1.3 ( )
  0:1:1:2:28 Shape.31
-        0:1:4:23 Dimension.31.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.31.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:29 Shape.32
-        0:1:4:23 Dimension.32.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.32.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:30 Shape.33
-        0:1:4:23 Dimension.33.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.33.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:31 Shape.34
-        0:1:4:23 Dimension.34.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.34.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:32 Shape.35
-        0:1:4:23 Dimension.35.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.35.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:33 Shape.36
-        0:1:4:23 Dimension.36.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.36.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:34 Shape.37
-        0:1:4:23 Dimension.37.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.37.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:35 Shape.38
-        0:1:4:23 Dimension.38.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.38.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:36 Shape.39
-        0:1:4:23 Dimension.39.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.39.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:37 Shape.40
-        0:1:4:23 Dimension.40.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.40.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:38 Shape.41
-        0:1:4:23 Dimension.41.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.41.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:39 Shape.42
-        0:1:4:23 Dimension.42.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.42.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:40 Shape.43
-        0:1:4:23 Dimension.43.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
-        0:1:4:25 Dimension.43.2 ( T 2, V 75, P 0 )
+        0:1:4:25 Dimension.43.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:27 Dimension.43.2 ( T 2, V 75, P 0 )
  0:1:1:2:41 Shape.44
-        0:1:4:23 Dimension.44.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
-        0:1:4:25 Dimension.44.2 ( T 2, V 75, P 0 )
+        0:1:4:25 Dimension.44.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:27 Dimension.44.2 ( T 2, V 75, P 0 )
  0:1:1:2:42 Shape.45
-        0:1:4:23 Dimension.45.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
-        0:1:4:25 Dimension.45.2 ( T 2, V 75, P 0 )
+        0:1:4:25 Dimension.45.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:27 Dimension.45.2 ( T 2, V 75, P 0 )
  0:1:1:2:43 Shape.46
-        0:1:4:23 Dimension.46.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
-        0:1:4:25 Dimension.46.2 ( T 2, V 75, P 0 )
+        0:1:4:25 Dimension.46.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:27 Dimension.46.2 ( T 2, V 75, P 0 )
  0:1:1:2:44 Shape.47
-        0:1:4:23 Dimension.47.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.47.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:45 Shape.48
-        0:1:4:23 Dimension.48.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.48.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:46 Shape.49
-        0:1:4:23 Dimension.49.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.49.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:47 Shape.50
-        0:1:4:23 Dimension.50.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.50.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:48 Shape.51
-        0:1:4:23 Dimension.51.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.51.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:49 Shape.52
-        0:1:4:23 Dimension.52.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.52.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:50 Shape.53
-        0:1:4:23 Dimension.53.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.53.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:51 Shape.54
-        0:1:4:23 Dimension.54.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.54.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:52 Shape.55
-        0:1:4:23 Dimension.55.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.55.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:53 Shape.56
-        0:1:4:23 Dimension.56.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.56.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:54 Shape.57
-        0:1:4:23 Dimension.57.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.57.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:55 Shape.58
-        0:1:4:23 Dimension.58.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.58.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:56 Shape.59
-        0:1:4:23 Dimension.59.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.59.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:57 Shape.60
-        0:1:4:23 Dimension.60.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.60.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:58 Shape.61
-        0:1:4:23 Dimension.61.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.61.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:59 Shape.62
-        0:1:4:23 Dimension.62.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.62.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:60 Shape.63
-        0:1:4:23 Dimension.63.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.63.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:61 Shape.64
-        0:1:4:23 Dimension.64.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.64.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:62 Shape.65
-        0:1:4:23 Dimension.65.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.65.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:63 Shape.66
-        0:1:4:23 Dimension.66.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.66.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:64 Shape.67
-        0:1:4:23 Dimension.67.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.67.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:65 Shape.68
-        0:1:4:23 Dimension.68.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.68.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:66 Shape.69
-        0:1:4:23 Dimension.69.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.69.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:67 Shape.70
-        0:1:4:23 Dimension.70.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.70.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:68 Shape.71
-        0:1:4:23 Dimension.71.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.71.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:69 Shape.72
-        0:1:4:23 Dimension.72.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.72.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:70 Shape.73
-        0:1:4:23 Dimension.73.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.73.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:71 Shape.74
-        0:1:4:23 Dimension.74.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.74.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:72 Shape.75
-        0:1:4:23 Dimension.75.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.75.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:73 Shape.76
-        0:1:4:23 Dimension.76.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.76.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:74 Shape.77
-        0:1:4:23 Dimension.77.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.77.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:75 Shape.78
-        0:1:4:23 Dimension.78.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.78.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:76 Shape.79
-        0:1:4:23 Dimension.79.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.79.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:77 Shape.80
-        0:1:4:23 Dimension.80.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.80.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:78 Shape.81
-        0:1:4:23 Dimension.81.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.81.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:79 Shape.82
-        0:1:4:23 Dimension.82.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.82.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:80 Shape.83
-        0:1:4:23 Dimension.83.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.83.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:81 Shape.84
-        0:1:4:23 Dimension.84.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.84.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:82 Shape.85
-        0:1:4:23 Dimension.85.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.85.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:83 Shape.86
-        0:1:4:23 Dimension.86.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.86.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:84 Shape.87
-        0:1:4:23 Dimension.87.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.87.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:85 Shape.88
-        0:1:4:23 Dimension.88.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
+        0:1:4:25 Dimension.88.1 ( T 15, V 14, VL 0.10000000000000001, VU 0.10000000000000001, P 0 )
  0:1:1:2:86 Shape.89
-        0:1:4:24 Dimension.89.1 ( T 15, V 10, P 0 )
+        0:1:4:26 Dimension.89.1 ( T 15, V 10, P 0 )
  0:1:1:2:87 Shape.90
-        0:1:4:24 Dimension.90.1 ( T 15, V 10, P 0 )
+        0:1:4:26 Dimension.90.1 ( T 15, V 10, P 0 )
  0:1:1:2:88 Shape.91
-        0:1:4:26 Dimension.91.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:29 Dimension.91.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:89 Shape.92
-        0:1:4:26 Dimension.92.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:29 Dimension.92.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:90 Shape.93
-        0:1:4:26 Dimension.93.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:29 Dimension.93.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:91 Shape.94
-        0:1:4:26 Dimension.94.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:29 Dimension.94.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:92 Shape.95
-        0:1:4:26 Dimension.95.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:29 Dimension.95.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:93 Shape.96
-        0:1:4:26 Dimension.96.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:29 Dimension.96.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:94 Shape.97
-        0:1:4:26 Dimension.97.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:29 Dimension.97.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:95 Shape.98
-        0:1:4:26 Dimension.98.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:29 Dimension.98.1 ( T 15, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:96 Shape.99
-        0:1:4:27 Dimension.99.1 ( T 2, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:30 Dimension.99.1 ( T 2, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:97 Shape.100
-        0:1:4:28 Dimension.100.1 ( T 14, V 25, VL 0.25, VU 0.25, P 0 )
-        0:1:4:27 Dimension.100.2 ( T 2, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
+        0:1:4:31 Dimension.100.1 ( T 14, V 25, VL 0.25, VU 0.25, P 0 )
+        0:1:4:30 Dimension.100.2 ( T 2, V 20, VL 0.20000000000000001, VU 0.20000000000000001, P 0 )
  0:1:1:2:98 Shape.101
-        0:1:4:29 Dimension.101.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.101.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:99 Shape.102
-        0:1:4:29 Dimension.102.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.102.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:100 Shape.103
-        0:1:4:29 Dimension.103.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.103.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:101 Shape.104
-        0:1:4:29 Dimension.104.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.104.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:102 Shape.105
-        0:1:4:29 Dimension.105.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.105.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:103 Shape.106
-        0:1:4:29 Dimension.106.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.106.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:104 Shape.107
-        0:1:4:29 Dimension.107.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.107.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:105 Shape.108
-        0:1:4:29 Dimension.108.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.108.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:106 Shape.109
-        0:1:4:29 Dimension.109.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.109.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:107 Shape.110
-        0:1:4:29 Dimension.110.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.110.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:108 Shape.111
-        0:1:4:29 Dimension.111.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.111.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:109 Shape.112
-        0:1:4:29 Dimension.112.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.112.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:110 Shape.113
-        0:1:4:29 Dimension.113.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.113.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:111 Shape.114
-        0:1:4:29 Dimension.114.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.114.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:112 Shape.115
-        0:1:4:29 Dimension.115.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.115.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:113 Shape.116
-        0:1:4:29 Dimension.116.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.116.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:114 Shape.117
-        0:1:4:29 Dimension.117.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.117.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:115 Shape.118
-        0:1:4:29 Dimension.118.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.118.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:116 Shape.119
-        0:1:4:29 Dimension.119.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.119.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:117 Shape.120
-        0:1:4:29 Dimension.120.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.120.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:118 Shape.121
-        0:1:4:29 Dimension.121.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.121.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:119 Shape.122
-        0:1:4:29 Dimension.122.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.122.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:120 Shape.123
-        0:1:4:29 Dimension.123.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.123.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:121 Shape.124
-        0:1:4:29 Dimension.124.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.124.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:122 Shape.125
-        0:1:4:29 Dimension.125.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.125.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:123 Shape.126
-        0:1:4:29 Dimension.126.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.126.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:124 Shape.127
-        0:1:4:29 Dimension.127.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.127.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:125 Shape.128
-        0:1:4:29 Dimension.128.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.128.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:126 Shape.129
-        0:1:4:29 Dimension.129.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.129.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:127 Shape.130
-        0:1:4:29 Dimension.130.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.130.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:128 Shape.131
-        0:1:4:29 Dimension.131.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.131.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:129 Shape.132
-        0:1:4:29 Dimension.132.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.132.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:130 Shape.133
-        0:1:4:29 Dimension.133.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.133.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:131 Shape.134
-        0:1:4:29 Dimension.134.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.134.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:132 Shape.135
-        0:1:4:29 Dimension.135.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.135.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:133 Shape.136
-        0:1:4:29 Dimension.136.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.136.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:134 Shape.137
-        0:1:4:29 Dimension.137.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.137.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:135 Shape.138
-        0:1:4:29 Dimension.138.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.138.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:136 Shape.139
-        0:1:4:29 Dimension.139.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.139.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:137 Shape.140
-        0:1:4:29 Dimension.140.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.140.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:138 Shape.141
-        0:1:4:29 Dimension.141.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.141.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:139 Shape.142
-        0:1:4:29 Dimension.142.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.142.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:140 Shape.143
-        0:1:4:29 Dimension.143.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.143.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:141 Shape.144
-        0:1:4:29 Dimension.144.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.144.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:142 Shape.145
-        0:1:4:29 Dimension.145.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.145.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:143 Shape.146
-        0:1:4:29 Dimension.146.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.146.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:144 Shape.147
-        0:1:4:29 Dimension.147.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.147.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:145 Shape.148
-        0:1:4:29 Dimension.148.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.148.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:146 Shape.149
-        0:1:4:29 Dimension.149.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.149.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:147 Shape.150
-        0:1:4:29 Dimension.150.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.150.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:148 Shape.151
-        0:1:4:29 Dimension.151.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.151.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:149 Shape.152
-        0:1:4:29 Dimension.152.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.152.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:150 Shape.153
-        0:1:4:29 Dimension.153.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.153.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:151 Shape.154
-        0:1:4:29 Dimension.154.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.154.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:152 Shape.155
-        0:1:4:29 Dimension.155.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.155.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:153 Shape.156
-        0:1:4:29 Dimension.156.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.156.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:154 Shape.157
-        0:1:4:29 Dimension.157.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.157.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:155 Shape.158
-        0:1:4:29 Dimension.158.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.158.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:156 Shape.159
-        0:1:4:29 Dimension.159.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.159.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:157 Shape.160
-        0:1:4:29 Dimension.160.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
+        0:1:4:32 Dimension.160.1 ( T 15, V 20, VL 0.29999999999999999, VU 0.29999999999999999, P 0 )
  0:1:1:2:158 Shape.161
-        0:1:4:30 Dimension.161.1 ( T 11, V 89.999999999776747, VL 1, VU 1, Q 3, P 0 )
+        0:1:4:33 Dimension.161.1 ( T 11, V 89.999999999776747, VL 1, VU 1, Q 3, P 0 )
  0:1:1:2:159 Shape.162
-        0:1:4:30 Dimension.162.1 ( T 11, V 89.999999999776747, VL 1, VU 1, Q 3, P 0 )
+        0:1:4:33 Dimension.162.1 ( T 11, V 89.999999999776747, VL 1, VU 1, Q 3, P 0 )
  0:1:1:3:1 Shape.163
-        0:1:4:18 GeomTolerance.163.1 ( T 12 TV 0, V 0.5 )
-                0:1:4:19 Datum.163.1.1 ( )
-                0:1:4:20 Datum.163.1.2 ( )
-                0:1:4:21 Datum.163.1.3 ( )
+        0:1:4:19 GeomTolerance.163.1 ( T 12 TV 0, V 0.5 )
+                0:1:4:20 Datum.163.1.1 ( )
+                0:1:4:21 Datum.163.1.2 ( )
+                0:1:4:22 Datum.163.1.3 ( )
 }
index b89fc1893eae5251a26427687d53ae7929b68419..3173b4857548ce7852e14f5bc82e389982a08ac3 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug26689_nist_ctc_01_asme1_ap242.stp
 
 set ref_data {
-Centre of mass: 29.546801037335253 -82.783066220874005 -19.99554027028211
-Mass: 13738.80582018411
+Centre of mass: 56.624452876720184 -79.756321087256879 -19.453607025633545
+Mass: 15180.104935593114
 
 }
index d8546f9f23d6f4ad22f2d110fd9ec89890ff22ee..f6e1d72efa45caf6826347a87cbfac50491c12c2 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug26689_nist_ctc_04_asme1_ap242.stp
 
 set ref_data {
-Centre of mass: -24.252221154276793 414.27122809865392 -67.499648752527435
-Mass: 16181.056829161265
+Centre of mass: -38.158786810985518 394.05735693263932 -73.721980763012184
+Mass: 18090.902430013277
 
 }
index 4b1dc0dae652a49d39fd8b3dc0678199929452a2..b5692d723d9f4dee83c9764eb15e525df06c4933 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug27645_nist_ftc_06_asme1_cr3000_rd.prt.stp
 
 set ref_data {
-Centre of mass: 353.0342262077636 2195.7131569185326 -1984.1595092335315
-Mass: 652240.08849643217
+Centre of mass: 117582.80050896495 404113.50809473585 -141.38021108117269
+Mass: 9543968.3389828727
 
 }
index 149d988ac9d9b9552d2469d09499a93c050b351e..a584ff9bde3d7748d65a9b1471b10aa978ba95e1 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug27808_nist_ftc_06_asme1_ct5240_rd.stp
 
 set ref_data {
-Centre of mass: -0.74274946098869621 58.97231577066983 -68.214139931277799
-Mass: 27143.62735625666
+Centre of mass: 27.008960295654042 68.408288943978818 -34.710916438175147
+Mass: 32252.329299725821
 
 }
index 49c6bc35a6221fff0551d1b6bd9994bd002aa39c..60c8e45b34c376a6808f52e756c88c8d5b3f9e47 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug27645_nist_ftc_06_asme1_ct5240_rd-1.stp
 
 set ref_data {
-Centre of mass: -18.865504732887754 1497.8967671908645 -1732.6395748131215
-Mass: 689448.13901608682
+Centre of mass: 648.39775917026395 1736.2007258497454 -916.83469970653425
+Mass: 813710.40605434508
 
 }
index 300486bfbc0cf3a89fba895c509e1cc5612b75fb..ef213f840b23bba3026edafa18b4596e8dec8588 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug27645_nist_ftc_08_asme1_cr3000_rc.prt.stp
 
 set ref_data {
-Centre of mass: 1104.9937982009856 239.05520712068363 1053.1493316328786
-Mass: 707651.56598301406
+Centre of mass: 78193.389530004177 353724.772080219 57.599844680013724
+Mass: 13014345.200333809
 
 }
index 141b7e45ef6c4fa3034f9b5dfbfbeeed61916230..3670f7153cfb5d9f21956a08f4052375d73744fe 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug27808_nist_ftc_08_asme1_ct5240_rc.stp
 
 set ref_data {
-Centre of mass: 45.592058840520288 57.746342213198673 29.009867037491144
-Mass: 27993.933359111707
+Centre of mass: 1.3071106775992589 73.040263297460385 21.248083630291937
+Mass: 33665.714280575579
 
 }
index 10d9ed0cf249283890c5d33872a702c7c501fdeb..8495dfd3cdc68b28b395ace487c09f457b64a0e9 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug27645_nist_ftc_08_asme1_ct5240_rc-1.stp
 
 set ref_data {
-Centre of mass: 1158.0392758487928 1466.7572922614359 736.8506424687256
-Mass: 711045.84939578606
+Centre of mass: 71.521755715858959 1840.0456646995601 546.24924167276765
+Mass: 849591.18184121803
 
 }
index 2dd959746d66f08d04e1ce1e8ee5d977cbf029c0..3baffc9170ce85bba780f14a1ec0e6aa3d640fc3 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug27645_nist_ftc_09_asme1_cr3000_rd.prt.stp
 
 set ref_data {
-Centre of mass: 502.07157406480525 128.63296443659232 -279.83117556867592
-Mass: 480992.45347041014
+Centre of mass: 62898.392879497689 391979.2269043132 -17.451724752730449
+Mass: 10257920.98641446
 
 }
index e8724d62569f82eb8f78c099c1548de563688acd..d2dd868a732c9ee92b4d0103a57c5f730bdbf543 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug27808_nist_ftc_09_asme1_ct5240_rd.stp
 
 set ref_data {
-Centre of mass: -36.599786468681039 7.7614827642946826 1.7474609105557635
-Mass: 29481.508138690682
+Centre of mass: -40.148168442038951 12.662743709548829 -20.675422904248919
+Mass: 33730.842652736828
 
 }
index 0c41ca1abaff6144d24ccb0bf3bdd61b45ad4936..1e968e62a45b7261d32106c1e1d765ec3dffc36a 100644 (file)
@@ -2,7 +2,7 @@
 set filename bug27645_nist_ftc_09_asme1_ct5240_rd-1.stp
 
 set ref_data {
-Centre of mass: -929.63433298181099 197.14165173802976 44.385591909492049
-Mass: 748830.1046596528
+Centre of mass: -1019.7633667828792 321.63378807296516 -525.15615589604056
+Mass: 856763.26313637081
 
 }
diff --git a/tests/gdt/presentation/B6 b/tests/gdt/presentation/B6
new file mode 100644 (file)
index 0000000..92edbdd
--- /dev/null
@@ -0,0 +1,8 @@
+# !!!! This file is generated automatically, do not edit manually! See end script
+set filename bug28315_PART_STEP-PMI.STP
+
+set ref_data {
+Centre of mass: -32.061608109140749 -17.085829657462373 4.1559554100512006
+Mass: 2012.3193680858712
+
+}
diff --git a/tests/gdt/presentation/B7 b/tests/gdt/presentation/B7
new file mode 100644 (file)
index 0000000..813304a
--- /dev/null
@@ -0,0 +1,8 @@
+# !!!! This file is generated automatically, do not edit manually! See end script
+set filename bug28315_rev_part_neu_01_AP214_IS.stp
+
+set ref_data {
+Centre of mass: 86.52519717047501 308.35080213107915 -1.7796634256195836
+Mass: 49812.246382466234
+
+}