1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-09 13:22:24 +03:00

0026371: Implementation of new entities for GD&T

Implement entities:
- DatumReferenceCompartment,
- DatumReferenceElement,
- DatumReferenceModifierWithValue,
- DatumSystem,
- GeneralDatumReference,

- ValueFormatTypeQualifier,

- NonUniformZoneDefinition,
- ProjectedZoneDefinition,
- RunoutZoneDefinition,
- RunoutZoneOrientation,
- ToleranceZone,
- ToleranceZoneDefinition,
- ToleranceZoneForm,
- ToleranceZoneTarget,

- GeometricToleranceWithDefinedAreaUnit,
- GeometricToleranceWithDefinedUnit,
- GeometricToleranceWithMaximumTolerance,
- GeometricToleranceWithModifiers,
- UnequallyDisposedGeometricTolerance,

- GeometricItemSpecificUsage,
- IdAttribute,
- IdAttributeSelect,
- ItemIdentifiedRepresentationUsage,
- ItemIdentifiedRepresentationUsageDefinition,

- Apex,
- CentreOfSymmetry,
- GeometricAlignment,
- ParallelOffset,
- PerpendicularTo,
- Tangent,

- AllAroundShapeAspect,
- BetweenShapeAspect,
- CompositeGroupShapeAspect,
- ContinuosShapeAspect,

- ReprItemAndLengthMeasureWithUnitAndQRI,
- ReprItemAndPlaneAngleMeasureWithUnitAndQRI,
- ReprItemAndPlaneAngleMeasureWithUnit,

- CompGroupShAspAndCompShAspAndDatumFeatAndShAsp,
- CompShAspAndDatumFeatAndShAsp,

- GeoTolAndGeoTolWthDatRef,
- GeoTolAndGeoTolWthDatRefAndGeoTolWthMod,
- GeoTolAndGeoTolWthMod,
- GeoTolAndGeoTolWthDatRefAndUneqDisGeoTol,

- IntegerRepresentationItem,
- ValueRepresentationItem.

Modify entities:
- GeometricTolerance,
- GeometricToleranceWithDatumReference,
- ShapeDimensionRepresentation.

fix compilation error

fix compilation warning
This commit is contained in:
ika
2015-09-24 12:12:47 +03:00
committed by kgv
parent a576c3e54d
commit 28a73c1fe7
261 changed files with 15894 additions and 611 deletions

View File

@@ -15,6 +15,7 @@ StepShape_Array1OfFaceBound.hxx
StepShape_Array1OfGeometricSetSelect.hxx
StepShape_Array1OfOrientedClosedShell.hxx
StepShape_Array1OfOrientedEdge.hxx
StepShape_Array1OfShapeDimensionRepresentationItem.hxx
StepShape_Array1OfShell.hxx
StepShape_Array1OfValueQualifier.hxx
StepShape_Block.cxx
@@ -118,6 +119,7 @@ StepShape_HArray1OfFaceBound.hxx
StepShape_HArray1OfGeometricSetSelect.hxx
StepShape_HArray1OfOrientedClosedShell.hxx
StepShape_HArray1OfOrientedEdge.hxx
StepShape_HArray1OfShapeDimensionRepresentationItem.hxx
StepShape_HArray1OfShell.hxx
StepShape_HArray1OfValueQualifier.hxx
StepShape_LimitsAndFits.cxx
@@ -178,6 +180,8 @@ StepShape_ShapeDefinitionRepresentation.cxx
StepShape_ShapeDefinitionRepresentation.hxx
StepShape_ShapeDimensionRepresentation.cxx
StepShape_ShapeDimensionRepresentation.hxx
StepShape_ShapeDimensionRepresentationItem.cxx
StepShape_ShapeDimensionRepresentationItem.hxx
StepShape_ShapeRepresentation.cxx
StepShape_ShapeRepresentation.hxx
StepShape_ShapeRepresentationWithParameters.cxx
@@ -214,6 +218,8 @@ StepShape_TransitionalShapeRepresentation.cxx
StepShape_TransitionalShapeRepresentation.hxx
StepShape_TypeQualifier.cxx
StepShape_TypeQualifier.hxx
StepShape_ValueFormatTypeQualifier.cxx
StepShape_ValueFormatTypeQualifier.hxx
StepShape_ValueQualifier.cxx
StepShape_ValueQualifier.hxx
StepShape_Vertex.cxx

View File

@@ -0,0 +1,23 @@
// Created on: 2015-07-21
// 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 _StepShape_Array1OfShapeDimensionRepresentationItem_HeaderFile
#define _StepShape_Array1OfShapeDimensionRepresentationItem_HeaderFile
#include <StepShape_ShapeDimensionRepresentationItem.hxx>
#include <NCollection_Array1.hxx>
typedef NCollection_Array1<StepShape_ShapeDimensionRepresentationItem> StepShape_Array1OfShapeDimensionRepresentationItem;
#endif // _StepShape_Array1OfShapeDimensionRepresentationItem_HeaderFile

View File

@@ -0,0 +1,24 @@
// Created on: 2015-07-21
// 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 _StepShape_HArray1OfShapeDimensionRepresentationItem_HeaderFile
#define _StepShape_HArray1OfShapeDimensionRepresentationItem_HeaderFile
#include <StepShape_ShapeDimensionRepresentationItem.hxx>
#include <StepShape_Array1OfShapeDimensionRepresentationItem.hxx>
#include <NCollection_DefineHArray1.hxx>
DEFINE_HARRAY1(StepShape_HArray1OfShapeDimensionRepresentationItem, StepShape_Array1OfShapeDimensionRepresentationItem)
#endif // _StepShape_HArray1OfShapeDimensionRepresentationItem_HeaderFile

View File

@@ -25,3 +25,47 @@
StepShape_ShapeDimensionRepresentation::StepShape_ShapeDimensionRepresentation ()
{
}
//=======================================================================
//function : Init
//purpose :
//=======================================================================
void StepShape_ShapeDimensionRepresentation::Init (const Handle(TCollection_HAsciiString)& theName,
const Handle(StepRepr_HArray1OfRepresentationItem)& theItems,
const Handle(StepRepr_RepresentationContext)& theContextOfItems)
{
StepRepr_Representation::Init(theName, theItems, theContextOfItems);
}
//=======================================================================
//function : Init
//purpose :
//=======================================================================
void StepShape_ShapeDimensionRepresentation::Init (const Handle(TCollection_HAsciiString)& theName,
const Handle(StepShape_HArray1OfShapeDimensionRepresentationItem)& theItems,
const Handle(StepRepr_RepresentationContext)& theContextOfItems)
{
StepRepr_Representation::Init(theName, NULL, theContextOfItems);
itemsAP242 = theItems;
}
//=======================================================================
//function : Init
//purpose :
//=======================================================================
void StepShape_ShapeDimensionRepresentation::SetItemsAP242 (const Handle(StepShape_HArray1OfShapeDimensionRepresentationItem)& theItems)
{
itemsAP242 = theItems;
}
//=======================================================================
//function : Init
//purpose :
//=======================================================================
Handle(StepShape_HArray1OfShapeDimensionRepresentationItem) StepShape_ShapeDimensionRepresentation::ItemsAP242() const
{
return itemsAP242;
}

View File

@@ -19,6 +19,7 @@
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <StepShape_HArray1OfShapeDimensionRepresentationItem.hxx>
#include <StepShape_ShapeRepresentation.hxx>
@@ -34,28 +35,20 @@ public:
//! Empty constructor
Standard_EXPORT StepShape_ShapeDimensionRepresentation();
//! Initialize all fields AP214
Standard_EXPORT void Init (const Handle(TCollection_HAsciiString)& theName, const Handle(StepRepr_HArray1OfRepresentationItem)& theItems, const Handle(StepRepr_RepresentationContext)& theContextOfItems);
//! Initialize all fields AP242
Standard_EXPORT void Init (const Handle(TCollection_HAsciiString)& theName, const Handle(StepShape_HArray1OfShapeDimensionRepresentationItem)& theItems, const Handle(StepRepr_RepresentationContext)& theContextOfItems);
Standard_EXPORT void SetItemsAP242 (const Handle(StepShape_HArray1OfShapeDimensionRepresentationItem)& theItems);
Standard_EXPORT Handle(StepShape_HArray1OfShapeDimensionRepresentationItem) ItemsAP242() const;
DEFINE_STANDARD_RTTI(StepShape_ShapeDimensionRepresentation,StepShape_ShapeRepresentation)
protected:
private:
Handle(StepShape_HArray1OfShapeDimensionRepresentationItem) itemsAP242;
};
#endif // _StepShape_ShapeDimensionRepresentation_HeaderFile

View File

@@ -0,0 +1,55 @@
// Created on: 2015-07-21
// 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 <StepShape_ShapeDimensionRepresentationItem.hxx>
#include <Interface_Macros.hxx>
#include <StepRepr_CompoundRepresentationItem.hxx>
#include <StepRepr_DescriptiveRepresentationItem.hxx>
#include <StepRepr_MeasureRepresentationItem.hxx>
#include <StepGeom_Placement.hxx>
//=======================================================================
//function : StepShape_ShapeDimensionRepresentationItem
//purpose :
//=======================================================================
StepShape_ShapeDimensionRepresentationItem::StepShape_ShapeDimensionRepresentationItem () { }
//=======================================================================
//function : CaseNum
//purpose :
//=======================================================================
Standard_Integer StepShape_ShapeDimensionRepresentationItem::CaseNum(const Handle(Standard_Transient)& ent) const
{
if (ent.IsNull()) return 0;
if (ent->IsKind(STANDARD_TYPE(StepRepr_CompoundRepresentationItem))) return 1;
if (ent->IsKind(STANDARD_TYPE(StepRepr_DescriptiveRepresentationItem))) return 2;
if (ent->IsKind(STANDARD_TYPE(StepRepr_MeasureRepresentationItem))) return 3;
if (ent->IsKind(STANDARD_TYPE(StepGeom_Placement))) return 4;
return 0;
}
Handle(StepRepr_CompoundRepresentationItem) StepShape_ShapeDimensionRepresentationItem::CompoundRepresentationItem() const
{ return GetCasted(StepRepr_CompoundRepresentationItem,Value()); }
Handle(StepRepr_DescriptiveRepresentationItem) StepShape_ShapeDimensionRepresentationItem::DescriptiveRepresentationItem() const
{ return GetCasted(StepRepr_DescriptiveRepresentationItem,Value()); }
Handle(StepRepr_MeasureRepresentationItem) StepShape_ShapeDimensionRepresentationItem::MeasureRepresentationItem() const
{ return GetCasted(StepRepr_MeasureRepresentationItem,Value()); }
Handle(StepGeom_Placement) StepShape_ShapeDimensionRepresentationItem::Placement() const
{ return GetCasted(StepGeom_Placement,Value()); }

View File

@@ -0,0 +1,61 @@
// Created on: 2015-07-21
// 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 _StepShape_ShapeDimensionRepresentationItem_HeaderFile
#define _StepShape_ShapeDimensionRepresentationItem_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
#include <StepData_SelectType.hxx>
#include <Standard_Integer.hxx>
class Standard_Transient;
class StepRepr_CompoundRepresentationItem;
class StepRepr_DescriptiveRepresentationItem;
class StepRepr_MeasureRepresentationItem;
class StepGeom_Placement;
class StepShape_ShapeDimensionRepresentationItem : public StepData_SelectType
{
public:
DEFINE_STANDARD_ALLOC
//! Returns a ShapeDimensionRepresentationItem select type
Standard_EXPORT StepShape_ShapeDimensionRepresentationItem();
//! Recognizes a ShapeDimensionRepresentationItem Kind Entity that is :
//! 1 -> CompoundRepresentationItem
//! 2 -> DescriptiveRepresentationItem
//! 3 -> MeasureRepresentationItem
//! 4 -> Placement
//! 0 else
Standard_EXPORT Standard_Integer CaseNum (const Handle(Standard_Transient)& ent) const;
//! returns Value as a CompoundRepresentationItem (Null if another type)
Standard_EXPORT Handle(StepRepr_CompoundRepresentationItem) CompoundRepresentationItem() const;
//! returns Value as a DescriptiveRepresentationItem (Null if another type)
Standard_EXPORT Handle(StepRepr_DescriptiveRepresentationItem) DescriptiveRepresentationItem() const;
//! returns Value as a MeasureRepresentationItem (Null if another type)
Standard_EXPORT Handle(StepRepr_MeasureRepresentationItem) MeasureRepresentationItem() const;
//! returns Value as a Placement (Null if another type)
Standard_EXPORT Handle(StepGeom_Placement) Placement() const;
};
#endif // _StepShape_ShapeDimensionRepresentationItem_HeaderFile

View File

@@ -0,0 +1,35 @@
// Created on: 2015-07-14
// 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 <StepShape_ValueFormatTypeQualifier.hxx>
//=======================================================================
//function : StepShape_ValueFormatTypeQualifier
//purpose :
//=======================================================================
StepShape_ValueFormatTypeQualifier::StepShape_ValueFormatTypeQualifier () {}
//=======================================================================
//function : Init
//purpose :
//=======================================================================
void StepShape_ValueFormatTypeQualifier::Init(
const Handle(TCollection_HAsciiString)& theFormatType)
{
// --- classe own fields ---
formatType = theFormatType;
}

View File

@@ -0,0 +1,59 @@
// Created on: 2015-07-14
// 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 _StepShape_ValueFormatTypeQualifier_HeaderFile
#define _StepShape_ValueFormatTypeQualifier_HeaderFile
#include <StepShape_ValueFormatTypeQualifier.hxx>
#include <MMgt_TShared.hxx>
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <TCollection_HAsciiString.hxx>
class TCollection_HAsciiString;
class StepShape_ValueFormatTypeQualifier;
DEFINE_STANDARD_HANDLE(StepShape_ValueFormatTypeQualifier, MMgt_TShared)
//! Added for Dimensional Tolerances
class StepShape_ValueFormatTypeQualifier : public MMgt_TShared
{
public:
Standard_EXPORT StepShape_ValueFormatTypeQualifier();
//! Init all field own and inherited
Standard_EXPORT virtual void Init (const Handle(TCollection_HAsciiString)& theFormatType);
//! Returns field FormatType
inline Handle(TCollection_HAsciiString) FormatType()
{
return formatType;
}
//! Set field FormatType
inline void SetFormatType(const Handle(TCollection_HAsciiString) &theFormatType)
{
formatType = theFormatType;
}
DEFINE_STANDARD_RTTI(StepShape_ValueFormatTypeQualifier, MMgt_TShared)
private:
Handle(TCollection_HAsciiString) formatType;
};
#endif // _StepShape_ValueFormatTypeQualifier_HeaderFile