0028550: Foundation Classes - fix empty message passed to thrown exception
[occt.git] / src / GeomToStep / GeomToStep_MakeCircle.cxx
CommitLineData
b311480e 1// Created on: 1993-06-16
2// Created by: Martine LANGLOIS
3// Copyright (c) 1993-1999 Matra Datavision
973c2be1 4// Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5//
973c2be1 6// This file is part of Open CASCADE Technology software library.
b311480e 7//
d5f74e42 8// This library is free software; you can redistribute it and/or modify it under
9// the terms of the GNU Lesser General Public License version 2.1 as published
973c2be1 10// by the Free Software Foundation, with special exception defined in the file
11// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12// distribution for complete text of the license and disclaimer of any warranty.
b311480e 13//
973c2be1 14// Alternatively, this file may be used under the terms of Open CASCADE
15// commercial license or contractual agreement.
7fd59977 16
42cf5bc1 17
18#include <Geom2d_Circle.hxx>
19#include <Geom_Circle.hxx>
7fd59977 20#include <GeomToStep_MakeAxis2Placement2d.hxx>
42cf5bc1 21#include <GeomToStep_MakeAxis2Placement3d.hxx>
22#include <GeomToStep_MakeCircle.hxx>
7fd59977 23#include <gp_Circ.hxx>
24#include <gp_Circ2d.hxx>
42cf5bc1 25#include <StdFail_NotDone.hxx>
c04c30b3 26#include <StepGeom_Axis2Placement2d.hxx>
27#include <StepGeom_Axis2Placement3d.hxx>
42cf5bc1 28#include <StepGeom_Circle.hxx>
7fd59977 29#include <TCollection_HAsciiString.hxx>
30#include <UnitsMethods.hxx>
31
32//=============================================================================
33// Creation d' un cercle de prostep a partir d' un cercle 3d de gp
34//=============================================================================
7fd59977 35GeomToStep_MakeCircle::GeomToStep_MakeCircle( const gp_Circ& C)
36{
19286d7c 37#include "GeomToStep_MakeCircle_gen.pxx"
7fd59977 38}
39
40
41//=============================================================================
42// Creation d' un cercle de prostep a partir d' un cercle de
43// Geom
44//=============================================================================
45
46GeomToStep_MakeCircle::GeomToStep_MakeCircle( const Handle(Geom_Circle)& Cer)
47{
48 gp_Circ C;
49 C = Cer->Circ();
19286d7c 50#include "GeomToStep_MakeCircle_gen.pxx"
7fd59977 51}
52
53
54//=============================================================================
55// Creation d' un cercle 2d de prostep a partir d' un cercle de
56// Geom2d
57//=============================================================================
58
59GeomToStep_MakeCircle::GeomToStep_MakeCircle( const Handle(Geom2d_Circle)& Cer)
60{
61 gp_Circ2d C2d;
62 C2d = Cer->Circ2d();
63
64 Handle(StepGeom_Circle) CStep = new StepGeom_Circle;
65 StepGeom_Axis2Placement Ax2;
66 Handle(StepGeom_Axis2Placement2d) Ax2Step;
67 Standard_Real Rayon;
68
69 GeomToStep_MakeAxis2Placement2d MkAxis2(C2d.Position());
70 Ax2Step = MkAxis2.Value();
71 Rayon = C2d.Radius();
72 Ax2.SetValue(Ax2Step);
73 Handle(TCollection_HAsciiString) name = new TCollection_HAsciiString("");
74 CStep->Init(name, Ax2, Rayon);
75 theCircle = CStep;
76 done = Standard_True;
77
78}
79
80//=============================================================================
81// renvoi des valeurs
82//=============================================================================
83
84const Handle(StepGeom_Circle) &
85 GeomToStep_MakeCircle::Value() const
86{
2d2b3d53 87 StdFail_NotDone_Raise_if (!done, "GeomToStep_MakeCircle::Value() - no result");
7fd59977 88 return theCircle;
89}