1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

0026827: Position and orientation for GD&T frames

Implementation of graphical annotations of the PMI read from STEP
This commit is contained in:
gka
2016-01-18 19:32:22 +03:00
committed by abv
parent cb72870231
commit 5df609e75d
77 changed files with 4037 additions and 40 deletions

View File

@@ -1,5 +1,11 @@
StepVisual_AnnotationCurveOccurrence.cxx
StepVisual_AnnotationCurveOccurrence.hxx
StepVisual_AnnotationOccurrence.cxx
StepVisual_AnnotationOccurrence.hxx
StepVisual_AnnotationPlane.cxx
StepVisual_AnnotationPlane.hxx
StepVisual_AnnotationPlaneElement.cxx
StepVisual_AnnotationPlaneElement.hxx
StepVisual_AnnotationText.cxx
StepVisual_AnnotationText.hxx
StepVisual_AnnotationTextOccurrence.cxx
@@ -8,9 +14,11 @@ StepVisual_AreaInSet.cxx
StepVisual_AreaInSet.hxx
StepVisual_AreaOrView.cxx
StepVisual_AreaOrView.hxx
StepVisual_Array1OfAnnotationPlaneElement.hxx
StepVisual_Array1OfBoxCharacteristicSelect.hxx
StepVisual_Array1OfCurveStyleFontPattern.hxx
StepVisual_Array1OfDirectionCountSelect.hxx
StepVisual_Array1OfDraughtingCalloutElement.hxx
StepVisual_Array1OfFillStyleSelect.hxx
StepVisual_Array1OfInvisibleItem.hxx
StepVisual_Array1OfLayeredItem.hxx
@@ -64,6 +72,10 @@ StepVisual_DirectionCountSelect.cxx
StepVisual_DirectionCountSelect.hxx
StepVisual_DraughtingAnnotationOccurrence.cxx
StepVisual_DraughtingAnnotationOccurrence.hxx
StepVisual_DraughtingCallout.cxx
StepVisual_DraughtingCallout.hxx
StepVisual_DraughtingCalloutElement.cxx
StepVisual_DraughtingCalloutElement.hxx
StepVisual_DraughtingModel.cxx
StepVisual_DraughtingModel.hxx
StepVisual_DraughtingPreDefinedColour.cxx
@@ -82,9 +94,11 @@ StepVisual_FillStyleSelect.cxx
StepVisual_FillStyleSelect.hxx
StepVisual_FontSelect.cxx
StepVisual_FontSelect.hxx
StepVisual_HArray1OfAnnotationPlaneElement.hxx
StepVisual_HArray1OfBoxCharacteristicSelect.hxx
StepVisual_HArray1OfCurveStyleFontPattern.hxx
StepVisual_HArray1OfDirectionCountSelect.hxx
StepVisual_HArray1OfDraughtingCalloutElement.hxx
StepVisual_HArray1OfFillStyleSelect.hxx
StepVisual_HArray1OfInvisibleItem.hxx
StepVisual_HArray1OfLayeredItem.hxx
@@ -194,3 +208,13 @@ StepVisual_TextStyleWithBoxCharacteristics.cxx
StepVisual_TextStyleWithBoxCharacteristics.hxx
StepVisual_ViewVolume.cxx
StepVisual_ViewVolume.hxx
StepVisual_TessellatedAnnotationOccurrence.hxx
StepVisual_TessellatedAnnotationOccurrence.cxx
StepVisual_TessellatedItem.hxx
StepVisual_TessellatedItem.cxx
StepVisual_TessellatedGeometricSet.hxx
StepVisual_TessellatedGeometricSet.cxx
StepVisual_TessellatedCurveSet.hxx
StepVisual_TessellatedCurveSet.cxx
StepVisual_CoordinatesList.hxx
StepVisual_CoordinatesList.cxx

View File

@@ -0,0 +1,21 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_AnnotationCurveOccurrence.hxx>
IMPLEMENT_STANDARD_RTTIEXT(StepVisual_AnnotationCurveOccurrence,StepVisual_StyledItem)
StepVisual_AnnotationCurveOccurrence::StepVisual_AnnotationCurveOccurrence () {}

View File

@@ -0,0 +1,36 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_AnnotationCurveOccurrence_HeaderFile
#define _StepVisual_AnnotationCurveOccurrence_HeaderFile
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <StepVisual_StyledItem.hxx>
class StepVisual_AnnotationCurveOccurrence;
DEFINE_STANDARD_HANDLE(StepVisual_AnnotationCurveOccurrence, StepVisual_StyledItem)
class StepVisual_AnnotationCurveOccurrence : public StepVisual_StyledItem
{
public:
//! Returns a AnnotationCurveOccurrence
Standard_EXPORT StepVisual_AnnotationCurveOccurrence();
DEFINE_STANDARD_RTTIEXT(StepVisual_AnnotationCurveOccurrence,StepVisual_StyledItem)
};
#endif // _StepVisual_AnnotationCurveOccurrence_HeaderFile

View File

@@ -19,3 +19,5 @@ IMPLEMENT_STANDARD_RTTIEXT(StepVisual_AnnotationOccurrence,StepVisual_StyledItem
StepVisual_AnnotationOccurrence::StepVisual_AnnotationOccurrence () {}

View File

@@ -38,7 +38,6 @@ public:
DEFINE_STANDARD_RTTIEXT(StepVisual_AnnotationOccurrence,StepVisual_StyledItem)
protected:

View File

@@ -0,0 +1,38 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_AnnotationPlane.hxx>
IMPLEMENT_STANDARD_RTTIEXT(StepVisual_AnnotationPlane,StepVisual_AnnotationOccurrence)
//=======================================================================
//function : StepVisual_AnnotationPlane
//purpose :
//=======================================================================
StepVisual_AnnotationPlane::StepVisual_AnnotationPlane () {}
//=======================================================================
//function : Init
//purpose :
//=======================================================================
void StepVisual_AnnotationPlane::Init (const Handle(TCollection_HAsciiString)& theName,
const Handle(StepVisual_HArray1OfPresentationStyleAssignment)& theStyles,
const Handle(StepRepr_RepresentationItem)& theItem,
const Handle(StepVisual_HArray1OfAnnotationPlaneElement)& theElements)
{
StepVisual_AnnotationOccurrence::Init(theName, theStyles, theItem);
myElements = theElements;
}

View File

@@ -0,0 +1,76 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_AnnotationPlane_HeaderFile
#define _StepVisual_AnnotationPlane_HeaderFile
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <StepVisual_AnnotationOccurrence.hxx>
#include <StepVisual_HArray1OfAnnotationPlaneElement.hxx>
class StepVisual_AnnotationPlane;
DEFINE_STANDARD_HANDLE(StepVisual_AnnotationPlane, StepVisual_AnnotationOccurrence)
class StepVisual_AnnotationPlane : public StepVisual_AnnotationOccurrence
{
public:
//! Returns a AnnotationPlane
Standard_EXPORT StepVisual_AnnotationPlane();
Standard_EXPORT void Init (const Handle(TCollection_HAsciiString)& theName,
const Handle(StepVisual_HArray1OfPresentationStyleAssignment)& theStyles,
const Handle(StepRepr_RepresentationItem)& theItem,
const Handle(StepVisual_HArray1OfAnnotationPlaneElement)& theElements);
//! Returns field Elements
inline Handle(StepVisual_HArray1OfAnnotationPlaneElement) Elements () const
{
return myElements;
}
//! Set field Elements
inline void SetElements (const Handle(StepVisual_HArray1OfAnnotationPlaneElement) &theElements)
{
myElements = theElements;
}
//! Returns number of Elements
inline Standard_Integer NbElements () const
{
return (myElements.IsNull() ? 0 : myElements->Length());
}
//! Returns Elements with the given number
inline StepVisual_AnnotationPlaneElement ElementsValue(const Standard_Integer theNum) const
{
return myElements->Value(theNum);
}
//! Sets Elements with given number
inline void SetElementsValue(const Standard_Integer theNum, const StepVisual_AnnotationPlaneElement& theItem)
{
myElements->SetValue (theNum, theItem);
}
DEFINE_STANDARD_RTTIEXT(StepVisual_AnnotationPlane,StepVisual_AnnotationOccurrence)
private:
Handle(StepVisual_HArray1OfAnnotationPlaneElement) myElements;
};
#endif // _StepVisual_AnnotationPlane_HeaderFile

View File

@@ -0,0 +1,45 @@
// Created on: 2015-07-10
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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 <StepVisual_AnnotationPlaneElement.hxx>
#include <Interface_Macros.hxx>
#include <StepVisual_DraughtingCallout.hxx>
#include <StepVisual_StyledItem.hxx>
//=======================================================================
//function : StepVisual_AnnotationPlaneElement
//purpose :
//=======================================================================
StepVisual_AnnotationPlaneElement::StepVisual_AnnotationPlaneElement () { }
//=======================================================================
//function : CaseNum
//purpose :
//=======================================================================
Standard_Integer StepVisual_AnnotationPlaneElement::CaseNum(const Handle(Standard_Transient)& ent) const
{
if (ent.IsNull()) return 0;
if (ent->IsKind(STANDARD_TYPE(StepVisual_DraughtingCallout))) return 1;
if (ent->IsKind(STANDARD_TYPE(StepVisual_StyledItem))) return 2;
return 0;
}
Handle(StepVisual_DraughtingCallout) StepVisual_AnnotationPlaneElement::DraughtingCallout() const
{ return GetCasted(StepVisual_DraughtingCallout,Value()); }
Handle(StepVisual_StyledItem) StepVisual_AnnotationPlaneElement::StyledItem() const
{ return GetCasted(StepVisual_StyledItem,Value()); }

View File

@@ -0,0 +1,50 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_AnnotationPlaneElement_HeaderFile
#define _StepVisual_AnnotationPlaneElement_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <StepData_SelectType.hxx>
#include <Standard_Integer.hxx>
class Standard_Transient;
class StepVisual_DraughtingCallout;
class StepVisual_StyledItem;
class StepVisual_AnnotationPlaneElement : public StepData_SelectType
{
public:
DEFINE_STANDARD_ALLOC
//! Returns a AnnotationPlaneElement select type
Standard_EXPORT StepVisual_AnnotationPlaneElement();
//! Recognizes a IdAttributeSelect Kind Entity that is :
//! 1 -> DraughtingCallout
//! 2 -> StyledItem
//! 0 else
Standard_EXPORT Standard_Integer CaseNum (const Handle(Standard_Transient)& ent) const;
//! returns Value as a DraughtingCallout (Null if another type)
Standard_EXPORT Handle(StepVisual_DraughtingCallout) DraughtingCallout() const;
//! returns Value as a StyledItem (Null if another type)
Standard_EXPORT Handle(StepVisual_StyledItem) StyledItem() const;
};
#endif // StepVisual_AnnotationPlaneElement

View File

@@ -0,0 +1,23 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_Array1OfAnnotationPlaneElement_HeaderFile
#define _StepVisual_Array1OfAnnotationPlaneElement_HeaderFile
#include <StepVisual_AnnotationPlaneElement.hxx>
#include <NCollection_Array1.hxx>
typedef NCollection_Array1<StepVisual_AnnotationPlaneElement> StepVisual_Array1OfAnnotationPlaneElement;
#endif // _StepVisual_Array1OfAnnotationPlaneElement_HeaderFile

View File

@@ -0,0 +1,23 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_Array1OfDraughtingCalloutElement_HeaderFile
#define _StepVisual_Array1OfDraughtingCalloutElement_HeaderFile
#include <StepVisual_DraughtingCalloutElement.hxx>
#include <NCollection_Array1.hxx>
typedef NCollection_Array1<StepVisual_DraughtingCalloutElement> StepVisual_Array1OfDraughtingCalloutElement;
#endif // _StepVisual_Array1OfDraughtingCalloutElement_HeaderFile

View File

@@ -0,0 +1,31 @@
// Copyright (c) 1999-2014 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_CoordinatesList.hxx>
#include <StepVisual_TessellatedItem.hxx>
IMPLEMENT_STANDARD_RTTIEXT(StepVisual_CoordinatesList,StepGeom_TessellatedItem)
StepVisual_CoordinatesList::StepVisual_CoordinatesList () {}
void StepVisual_CoordinatesList::Init(const Handle(TCollection_HAsciiString)& theName,const Handle(TColgp_HArray1OfXYZ)& thePoints)
{
StepRepr_RepresentationItem::Init(theName);
myPoints = thePoints;
}
Handle(TColgp_HArray1OfXYZ) StepVisual_CoordinatesList::Points() const
{
return myPoints;
}

View File

@@ -0,0 +1,45 @@
// Created on: 2015-10-29
// Created by: Galina Kulikova
// Copyright (c) 2015 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_CoordinatesList_HeaderFile
#define _StepVisual_CoordinatesList_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <TColgp_HArray1OfXYZ.hxx>
#include <StepVisual_TessellatedItem.hxx>
class Standard_Transient;
DEFINE_STANDARD_HANDLE(StepVisual_CoordinatesList,StepVisual_TessellatedItem)
class StepVisual_CoordinatesList : public StepVisual_TessellatedItem
{
public:
DEFINE_STANDARD_ALLOC
//! Returns a coordinate list
Standard_EXPORT StepVisual_CoordinatesList();
Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName, const Handle(TColgp_HArray1OfXYZ)& thePoints);
Standard_EXPORT Handle(TColgp_HArray1OfXYZ) Points() const;
DEFINE_STANDARD_RTTIEXT(StepVisual_CoordinatesList,StepVisual_TessellatedItem);
private:
Handle(TColgp_HArray1OfXYZ) myPoints;
};
#endif // StepVisual_CoordinatesList

View File

@@ -0,0 +1,36 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_DraughtingCallout.hxx>
IMPLEMENT_STANDARD_RTTIEXT(StepVisual_DraughtingCallout,StepGeom_GeometricRepresentationItem)
//=======================================================================
//function : StepVisual_DraughtingCallout
//purpose :
//=======================================================================
StepVisual_DraughtingCallout::StepVisual_DraughtingCallout () {}
//=======================================================================
//function : Init
//purpose :
//=======================================================================
void StepVisual_DraughtingCallout::Init (const Handle(TCollection_HAsciiString)& theName,
const Handle(StepVisual_HArray1OfDraughtingCalloutElement)& theContents)
{
StepGeom_GeometricRepresentationItem::Init(theName);
myContents = theContents;
}

View File

@@ -0,0 +1,77 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_DraughtingCallout_HeaderFile
#define _StepVisual_DraughtingCallout_HeaderFile
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <StepGeom_GeometricRepresentationItem.hxx>
#include <StepVisual_HArray1OfDraughtingCalloutElement.hxx>
class StepVisual_DraughtingCallout;
DEFINE_STANDARD_HANDLE(StepVisual_DraughtingCallout, StepGeom_GeometricRepresentationItem)
class StepVisual_DraughtingCallout : public StepGeom_GeometricRepresentationItem
{
public:
//! Returns a DraughtingCallout
Standard_EXPORT StepVisual_DraughtingCallout();
//! Init
Standard_EXPORT void Init (const Handle(TCollection_HAsciiString)& theName,
const Handle(StepVisual_HArray1OfDraughtingCalloutElement)& theContents);
//! Returns field Contents
inline Handle(StepVisual_HArray1OfDraughtingCalloutElement) Contents () const
{
return myContents;
}
//! Set field Contents
inline void SetContents (const Handle(StepVisual_HArray1OfDraughtingCalloutElement) &theContents)
{
myContents = theContents;
}
//! Returns number of Contents
inline Standard_Integer NbContents () const
{
return (myContents.IsNull() ? 0 : myContents->Length());
}
//! Returns Contents with the given number
inline StepVisual_DraughtingCalloutElement ContentsValue(const Standard_Integer theNum) const
{
return myContents->Value(theNum);
}
//! Sets Contents with given number
inline void SetContentsValue(const Standard_Integer theNum, const StepVisual_DraughtingCalloutElement& theItem)
{
myContents->SetValue (theNum, theItem);
}
DEFINE_STANDARD_RTTIEXT(StepVisual_DraughtingCallout,StepGeom_GeometricRepresentationItem)
private:
Handle(StepVisual_HArray1OfDraughtingCalloutElement) myContents;
};
#endif // _StepVisual_DraughtingCallout_HeaderFile

View File

@@ -0,0 +1,49 @@
// Created on: 2015-07-10
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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 <StepVisual_DraughtingCalloutElement.hxx>
#include <Interface_Macros.hxx>
#include <StepVisual_AnnotationCurveOccurrence.hxx>
#include <StepVisual_TessellatedAnnotationOccurrence.hxx>
//=======================================================================
//function : StepVisual_DraughtingCalloutElement
//purpose :
//=======================================================================
StepVisual_DraughtingCalloutElement::StepVisual_DraughtingCalloutElement () { }
//=======================================================================
//function : CaseNum
//purpose :
//=======================================================================
Standard_Integer StepVisual_DraughtingCalloutElement::CaseNum(const Handle(Standard_Transient)& ent) const
{
if (ent.IsNull()) return 0;
if (ent->IsKind(STANDARD_TYPE(StepVisual_AnnotationCurveOccurrence))) return 1;
else if (ent->IsKind(STANDARD_TYPE(StepVisual_TessellatedAnnotationOccurrence))) return 2;
return 0;
}
Handle(StepVisual_AnnotationCurveOccurrence) StepVisual_DraughtingCalloutElement::AnnotationCurveOccurrence() const
{ return GetCasted(StepVisual_AnnotationCurveOccurrence,Value()); }
Handle(StepVisual_TessellatedAnnotationOccurrence) StepVisual_DraughtingCalloutElement::TessellatedAnnotationOccurrence() const
{ return GetCasted(StepVisual_TessellatedAnnotationOccurrence,Value()); }

View File

@@ -0,0 +1,49 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_DraughtingCalloutElement_HeaderFile
#define _StepVisual_DraughtingCalloutElement_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <StepData_SelectType.hxx>
#include <Standard_Integer.hxx>
class Standard_Transient;
class StepVisual_AnnotationCurveOccurrence;
class StepVisual_TessellatedAnnotationOccurrence;
class StepVisual_DraughtingCalloutElement : public StepData_SelectType
{
public:
DEFINE_STANDARD_ALLOC
//! Returns a DraughtingCalloutElement select type
Standard_EXPORT StepVisual_DraughtingCalloutElement();
//! Recognizes a IdAttributeSelect Kind Entity that is :
//! 1 -> AnnotationCurveOccurrence
//! 0 else
Standard_EXPORT Standard_Integer CaseNum (const Handle(Standard_Transient)& ent) const;
//! returns Value as a AnnotationCurveOccurrence (Null if another type)
Standard_EXPORT Handle(StepVisual_AnnotationCurveOccurrence) AnnotationCurveOccurrence() const;
//! returns Value as a AnnotationOccurrence for Tesselated Anotation Occurence
Standard_EXPORT Handle(StepVisual_TessellatedAnnotationOccurrence) TessellatedAnnotationOccurrence() const;
};
#endif // StepVisual_DraughtingCalloutElement

View File

@@ -0,0 +1,24 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_HArray1OfAnnotationPlaneElement_HeaderFile
#define _StepVisual_HArray1OfAnnotationPlaneElement_HeaderFile
#include <StepVisual_AnnotationPlaneElement.hxx>
#include <StepVisual_Array1OfAnnotationPlaneElement.hxx>
#include <NCollection_DefineHArray1.hxx>
DEFINE_HARRAY1(StepVisual_HArray1OfAnnotationPlaneElement, StepVisual_Array1OfAnnotationPlaneElement)
#endif // _StepVisual_HArray1OfAnnotationPlaneElement_HeaderFile

View File

@@ -0,0 +1,24 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_HArray1OfDraughtingCalloutElement_HeaderFile
#define _StepVisual_HArray1OfDraughtingCalloutElement_HeaderFile
#include <StepVisual_DraughtingCalloutElement.hxx>
#include <StepVisual_Array1OfDraughtingCalloutElement.hxx>
#include <NCollection_DefineHArray1.hxx>
DEFINE_HARRAY1(StepVisual_HArray1OfDraughtingCalloutElement, StepVisual_Array1OfDraughtingCalloutElement)
#endif // _StepVisual_HArray1OfDraughtingCalloutElement_HeaderFile

View File

@@ -0,0 +1,21 @@
// Created on: 2015-10-29
// Created by: Irina KRYLOVA
// Copyright (c) 2015 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_TessellatedAnnotationOccurrence.hxx>
IMPLEMENT_STANDARD_RTTIEXT(StepVisual_TessellatedAnnotationOccurrence,StepVisual_StyledItem);
StepVisual_TessellatedAnnotationOccurrence::StepVisual_TessellatedAnnotationOccurrence () {}

View File

@@ -0,0 +1,36 @@
// Created on: 2015-10-29
// Created by: Galina Kulikova
// Copyright (c) 2015 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_TessellatedAnnotationOccurrence_HeaderFile
#define _StepVisual_TessellatedAnnotationOccurrence_HeaderFile
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <StepVisual_StyledItem.hxx>
class StepVisual_TessellatedAnnotationOccurrence;
DEFINE_STANDARD_HANDLE(StepVisual_TessellatedAnnotationOccurrence, StepVisual_StyledItem)
class StepVisual_TessellatedAnnotationOccurrence : public StepVisual_StyledItem
{
public:
//! Returns a TesselatedAnnotationOccurence
Standard_EXPORT StepVisual_TessellatedAnnotationOccurrence();
DEFINE_STANDARD_RTTIEXT(StepVisual_TessellatedAnnotationOccurrence,StepVisual_StyledItem)
};
#endif // _StepVisual_TesselatedAnnotationOccurrence_HeaderFile

View File

@@ -0,0 +1,42 @@
// Copyright (c) 1999-2014 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_TessellatedCurveSet.hxx>
#include <StepVisual_TessellatedItem.hxx>
IMPLEMENT_STANDARD_RTTIEXT(StepVisual_TessellatedCurveSet,StepVisual_TessellatedItem)
StepVisual_TessellatedCurveSet::StepVisual_TessellatedCurveSet () {}
void StepVisual_TessellatedCurveSet::Init(const Handle(TCollection_HAsciiString)& theName,
const Handle(StepVisual_CoordinatesList)& theCoordList,
const NCollection_Handle<StepVisual_VectorOfHSequenceOfInteger>& theCurves)
{
StepRepr_RepresentationItem::Init(theName);
myCoordList = theCoordList;
myCurves = theCurves;
}
NCollection_Handle<StepVisual_VectorOfHSequenceOfInteger> StepVisual_TessellatedCurveSet::Curves() const
{
return myCurves;
}
Handle(StepVisual_CoordinatesList) StepVisual_TessellatedCurveSet::CoordList() const
{
return myCoordList;
}

View File

@@ -0,0 +1,60 @@
// Created on: 2015-10-29
// Created by: Galina Kulikova
// Copyright (c) 2015 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_TessellatedCurveSet_HeaderFile
#define _StepVisual_TessellatedCurveSet_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <StepVisual_CoordinatesList.hxx>
#include <StepVisual_TessellatedItem.hxx>
#include <NCollection_Vector.hxx>
#include <NCollection_Handle.hxx>
#include <StepVisual_CoordinatesList.hxx>
#include <TColStd_HSequenceOfInteger.hxx>
class Standard_Transient;
typedef NCollection_Vector<Handle(TColStd_HSequenceOfInteger)> StepVisual_VectorOfHSequenceOfInteger;
DEFINE_STANDARD_HANDLE(StepVisual_TessellatedCurveSet, StepVisual_TessellatedItem);
class StepVisual_TessellatedCurveSet : public StepVisual_TessellatedItem
{
public:
DEFINE_STANDARD_ALLOC
//! Returns a DraughtingCalloutElement select type
Standard_EXPORT StepVisual_TessellatedCurveSet();
Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName, const Handle(StepVisual_CoordinatesList)& theCoordList,
const NCollection_Handle<StepVisual_VectorOfHSequenceOfInteger>& theCurves);
Standard_EXPORT Handle(StepVisual_CoordinatesList) CoordList() const;
Standard_EXPORT NCollection_Handle<StepVisual_VectorOfHSequenceOfInteger> Curves() const;
private:
Handle(StepVisual_CoordinatesList) myCoordList;
NCollection_Handle<StepVisual_VectorOfHSequenceOfInteger> myCurves;
public :
DEFINE_STANDARD_RTTIEXT(StepVisual_TessellatedCurveSet,StepVisual_TessellatedItem);
};
#endif // StepVisual_TessellatedCurveSet

View File

@@ -0,0 +1,33 @@
// Copyright (c) 1999-2014 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_TessellatedGeometricSet.hxx>
IMPLEMENT_STANDARD_RTTIEXT(StepVisual_TessellatedGeometricSet,StepGeom_TessellatedItem)
StepVisual_TessellatedGeometricSet::StepVisual_TessellatedGeometricSet () {}
void StepVisual_TessellatedGeometricSet::Init(const Handle(TCollection_HAsciiString)& theName, const NCollection_Handle<StepVisual_Array1OfTessellaltedItem>& theItems)
{
StepRepr_RepresentationItem::Init(theName);
myItems = theItems;
}
NCollection_Handle<StepVisual_Array1OfTessellaltedItem> StepVisual_TessellatedGeometricSet::Items() const
{
return myItems;
}

View File

@@ -0,0 +1,54 @@
// Created on: 2015-10-29
// Created by: Galina Kulikova
// Copyright (c) 2015 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_TessellatedGeometricSet_HeaderFile
#define _StepVisual_TessellatedGeometricSet_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <StepVisual_TessellatedItem.hxx>
#include <NCollection_Array1.hxx>
//#include <NCollection_DefineHArray1.hxx>
#include <NCollection_Handle.hxx>
class Standard_Transient;
typedef NCollection_Array1<Handle(StepVisual_TessellatedItem)> StepVisual_Array1OfTessellaltedItem;
//typedef NCollection_Handle<StepVisual_Array1OfTessellaltedItem> Handle(StepVisual_Array1OfTessellaltedItem);
//DEFINE_HARRAY1(StepVisual_HArray1OfTessellaltedItem, StepVisual_Array1OfTessellaltedItem)
DEFINE_STANDARD_HANDLE(StepVisual_TessellatedGeometricSet, StepVisual_TessellatedItem)
class StepVisual_TessellatedGeometricSet : public StepVisual_TessellatedItem
{
public:
DEFINE_STANDARD_ALLOC
//! Returns a DraughtingCalloutElement select type
Standard_EXPORT StepVisual_TessellatedGeometricSet();
Standard_EXPORT void Init(const Handle(TCollection_HAsciiString)& theName, const NCollection_Handle<StepVisual_Array1OfTessellaltedItem>& theItems);
Standard_EXPORT NCollection_Handle<StepVisual_Array1OfTessellaltedItem> Items() const;
private:
NCollection_Handle<StepVisual_Array1OfTessellaltedItem> myItems;
public:
DEFINE_STANDARD_RTTIEXT(StepVisual_TessellatedGeometricSet,StepVisual_TessellatedItem)
};
#endif // StepVisual_TessellatedGeometricSet

View File

@@ -0,0 +1,20 @@
// Copyright (c) 1999-2014 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_TessellatedItem.hxx>
IMPLEMENT_STANDARD_RTTIEXT(StepVisual_TessellatedItem,StepGeom_GeometricRepresentationItem)
StepVisual_TessellatedItem::StepVisual_TessellatedItem () {}

View File

@@ -0,0 +1,37 @@
// Created on: 2015-10-29
// Created by: Galina Kulikova
// Copyright (c) 2015 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_TessellatedItem_HeaderFile
#define _StepVisual_TessellatedItem_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <StepGeom_GeometricRepresentationItem.hxx>
class Standard_Transient;
DEFINE_STANDARD_HANDLE(StepVisual_TessellatedItem, StepGeom_GeometricRepresentationItem)
class StepVisual_TessellatedItem : public StepGeom_GeometricRepresentationItem
{
public:
DEFINE_STANDARD_ALLOC
//! Returns a DraughtingCalloutElement select type
Standard_EXPORT StepVisual_TessellatedItem();
DEFINE_STANDARD_RTTIEXT(StepVisual_TessellatedItem,StepGeom_GeometricRepresentationItem);
};
#endif // StepVisual_TessellatedItem