00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #include "PreCompiled.h"
00025
00026 # if defined (_POSIX_C_SOURCE)
00027 # undef _POSIX_C_SOURCE
00028 # endif // (re-)defined in pyconfig.h
00029
00030
00031 #include <Base/Console.h>
00032 #include <Base/PyObjectBase.h>
00033 #include <Base/Handle.h>
00034 #include <Base/Exception.h>
00035 #include <Base/FileInfo.h>
00036 #include <Base/Builder3D.h>
00037 #include <App/Application.h>
00038 #include <App/Document.h>
00039
00040
00041
00042 #include <Mod/Part/App/TopoShape.h>
00043 #include <Mod/Part/App/TopoShapePy.h>
00044
00045
00046 #include <Mod/Mesh/App/Core/MeshKernel.h>
00047 #include <Mod/Mesh/App/Core/TopoAlgorithm.h>
00048 #include <Mod/Mesh/App/Core/Iterator.h>
00049 #include <Mod/Mesh/App/Core/Builder.h>
00050 #include <Mod/Mesh/App/Core/MeshKernel.h>
00051 #include <Mod/Mesh/App/MeshPy.h>
00052 #include <Mod/Mesh/App/Mesh.h>
00053 #include <Mod/Mesh/App/Core/Elements.h>
00054 #include <Mod/Mesh/App/Core/Evaluation.h>
00055 #include <Mod/Mesh/App/Core/Triangulation.h>
00056
00057
00058 #include <Poly_Triangulation.hxx>
00059 #include <BRepOffsetAPI_MakeOffsetShape.hxx>
00060 #include <BRepAlgoAPI_Cut.hxx>
00061 #include <BRepAlgoAPI_Section.hxx>
00062 #include <BRepBndLib.hxx>
00063 #include <BRep_Builder.hxx>
00064 #include <BRep_Tool.hxx>
00065 #include <BRepTools.hxx>
00066 #include <BRepBuilderAPI_MakeFace.hxx>
00067 #include <BRepMesh.hxx>
00068 #include <Geom_OffsetSurface.hxx>
00069 #include <GeomAPI_PointsToBSplineSurface.hxx>
00070 #include <TColgp_HArray2OfPnt.hxx>
00071 #include <TColStd_Array1OfReal.hxx>
00072 #include <TColStd_Array1OfInteger.hxx>
00073 #include <BRepGProp.hxx>
00074 #include <IntCurvesFace_ShapeIntersector.hxx>
00075 #include <GProp_PrincipalProps.hxx>
00076 #include <TopExp_Explorer.hxx>
00077 #include <TopoDS.hxx>
00078 #include <TopoDS_Compound.hxx>
00079 #include <BRepPrimAPI_MakeBox.hxx>
00080 #include <BRepAdaptor_Surface.hxx>
00081 #include <Geom_BSplineSurface.hxx>
00082 #include <Handle_Geom_Plane.hxx>
00083 #include <Geom_Plane.hxx>
00084 #include <Geom2d_Curve.hxx>
00085 #include <gp_Lin.hxx>
00086 #include <gp_Dir.hxx>
00087
00088
00089 #include "Approx.h"
00090 #include "ConvertDyna.h"
00091 #include "cutting_tools.h"
00092 #include "best_fit.h"
00093 #include "SpringbackCorrection.h"
00094
00095
00096
00097
00098
00099 using namespace Part;
00100 using namespace Mesh;
00101 using namespace std;
00102 using MeshCore::MeshKernel;
00103
00104
00105
00106 static PyObject *
00107 open(PyObject *self, PyObject *args)
00108 {
00109 const char* Name;
00110 if (! PyArg_ParseTuple(args, "s",&Name))
00111 return NULL;
00112
00113 PY_TRY
00114 {
00115
00116
00117 } PY_CATCH;
00118
00119 Py_Return;
00120 }
00121
00122
00123
00124 static PyObject * insert(PyObject *self, PyObject *args)
00125 {
00126 const char* Name;
00127 const char* DocName;
00128 if (! PyArg_ParseTuple(args, "ss",&Name,&DocName))
00129 return NULL;
00130
00131 PY_TRY
00132 {
00133
00134 } PY_CATCH;
00135
00136 Py_Return;
00137 }
00138
00139
00140 static PyObject * read(PyObject *self, PyObject *args)
00141 {
00142 const char* Name;
00143 if (! PyArg_ParseTuple(args, "s",&Name))
00144 return NULL;
00145 PY_TRY
00146 {
00147
00148 } PY_CATCH;
00149 Py_Return;
00150 }
00151
00152
00153 static PyObject * tesselateShape(PyObject *self, PyObject *args)
00154 {
00155
00156 PyObject *pcObj;
00157 float aDeflection;
00158
00159 if (!PyArg_ParseTuple(args, "O!f", &(TopoShapePy::Type), &pcObj, &aDeflection))
00160 return NULL;
00161
00162 TopoShapePy *pcShape = static_cast<TopoShapePy*>(pcObj);
00163
00164
00165 Base::Builder3D aBuild;
00166
00167 MeshCore::MeshKernel mesh;
00168 MeshCore::MeshBuilder builder(mesh);
00169 builder.Initialize(1000);
00170 Base::Vector3f Points[3];
00171
00172 PY_TRY
00173 {
00174
00175
00176 TopoDS_Shape aShape = pcShape->getTopoShapePtr()->_Shape;
00177 BRepTools::Clean(aShape);
00178
00179
00180
00181
00182 BRepMesh::Mesh(aShape,aDeflection);
00183 TopExp_Explorer aExpFace;
00184 for (aExpFace.Init(aShape,TopAbs_FACE);aExpFace.More();aExpFace.Next())
00185 {
00186 TopoDS_Face aFace = TopoDS::Face(aExpFace.Current());
00187 TopLoc_Location aLocation;
00188
00189 Handle_Poly_Triangulation aTr = BRep_Tool::Triangulation(aFace,aLocation);
00190 if (!aTr.IsNull())
00191 {
00192
00193 const TColgp_Array1OfPnt& aNodes = aTr->Nodes();
00194
00195 const Poly_Array1OfTriangle& triangles = aTr->Triangles();
00196
00197 TColgp_Array1OfPnt aPoints(1, aNodes.Length());
00198 for ( Standard_Integer i = 1; i < aNodes.Length()+1; i++)
00199 aPoints(i) = aNodes(i).Transformed(aLocation);
00200
00201
00202 Standard_Integer nnn = aTr->NbTriangles();
00203 Standard_Integer nt,n1,n2,n3;
00204 for ( nt = 1 ; nt < nnn+1 ; nt++)
00205 {
00206
00207 triangles(nt).Get(n1,n2,n3);
00208
00209 gp_Pnt aPnt1 = aPoints(n1);
00210 Points[0].Set(float(aPnt1.X()),float(aPnt1.Y()),float(aPnt1.Z()));
00211 gp_Pnt aPnt2 = aPoints(n2);
00212 Points[1].Set(float(aPnt2.X()),float(aPnt2.Y()),float(aPnt2.Z()));
00213 gp_Pnt aPnt3 = aPoints(n3);
00214 Points[2].Set(float(aPnt3.X()),float(aPnt3.Y()),float(aPnt3.Z()));
00215
00216 MeshCore::MeshGeomFacet Face(Points[0],Points[1],Points[2]);
00217 builder.AddFacet(Face);
00218
00219 }
00220
00221 }
00222
00223 else
00224 {
00225 throw Base::Exception("Empty face triangulation\n");
00226 }
00227 }
00228
00229 builder.Finish();
00230
00231 } PY_CATCH;
00232
00233 Py_Return;
00234 }
00235
00236 static PyObject * best_fit_coarse(PyObject *self, PyObject *args)
00237 {
00238 PyObject *pcObj2;
00239
00240 if (!PyArg_ParseTuple(args, "O!; Need one Mesh objects and one toposhape", &(TopoShapePy::Type), &pcObj2))
00241 return NULL;
00242
00243 PY_TRY
00244 {
00245
00246 TopoShapePy *pcShape = static_cast<TopoShapePy*>(pcObj2);
00247 TopoDS_Shape cad = pcShape->getTopoShapePtr()->_Shape;
00248
00249
00250
00251
00252
00253
00254
00255
00256
00257
00258
00259
00260
00261 }PY_CATCH;
00262
00263 Py_Return;
00264 }
00265
00266
00267 #include <GeomAdaptor_Curve.hxx>
00268 #include <GCPnts_QuasiUniformDeflection.hxx>
00269
00270
00271
00274
00275
00276
00277
00278
00279
00280
00281
00282
00284
00285
00286
00287
00288
00289
00290
00291
00292
00293
00294
00295
00296
00297
00298
00299
00300
00301
00302
00303
00304
00305
00306
00307
00308
00309
00310
00311
00312
00313
00314
00315
00316
00317
00318
00319
00320
00321
00322
00323
00324
00325
00326
00327
00328
00329
00330
00331
00332
00333
00334
00335
00336
00337
00338
00339
00340
00341
00342
00343
00344
00345
00346
00347
00348
00349
00350
00351
00352
00353 static PyObject * offset(PyObject *self,PyObject *args)
00354 {
00355 float offset;
00356 PyObject *pcObj;
00357 if (!PyArg_ParseTuple(args, "O!f",&(TopoShapePy::Type), &pcObj,&offset ))
00358 return NULL;
00359
00360 TopoShapePy *pcShape = static_cast<TopoShapePy*>(pcObj);
00361
00362 PY_TRY
00363 {
00364
00365 BRepOffsetAPI_MakeOffsetShape MakeOffsetShape (pcShape->getTopoShapePtr()->_Shape,
00366 offset,0.001,BRepOffset_Skin);
00367 return new TopoShapePy(new TopoShape(MakeOffsetShape.Shape()));
00368
00369
00370 } PY_CATCH;
00371
00372 }
00373
00374
00375
00376
00377
00378
00379
00380
00381
00382
00383
00384
00385
00386
00387
00388
00389
00390
00391
00392
00393
00394
00395
00396
00397
00398
00399
00400
00401
00402
00403
00404
00405
00406
00407
00408
00409
00410
00411
00412
00413
00414
00415
00416
00417
00418
00419
00420
00421
00422
00423
00424
00425
00426
00427
00428
00429
00430
00431
00432
00433
00434
00435
00436
00437
00438
00439
00440
00441
00442
00443
00444
00445
00446
00447
00448
00449
00450
00451
00452
00453
00454
00455
00456
00457
00458
00459
00460 static PyObject * createTestApproximate(PyObject *self, PyObject *args)
00461 {
00462 if (! PyArg_ParseTuple(args, ""))
00463 return NULL;
00464
00465 PY_TRY
00466 {
00467
00469
00470
00472
00473
00474
00475
00476
00477
00478
00479
00480
00481
00482
00483
00484
00485
00486
00487
00488
00489
00490
00491
00492
00493
00494
00495
00496
00497
00498
00499
00500
00501
00502
00503
00504
00505
00506
00507
00508
00509 TColgp_Array2OfPnt Input(1,2,1,3);
00510 Input.SetValue(1,1,gp_Pnt(20,20,0));
00511 Input.SetValue(1,2,gp_Pnt(25,25,0));
00512 Input.SetValue(1,3,gp_Pnt(30,30,0));
00513 Input.SetValue(2,1,gp_Pnt(18,35,0));
00514 Input.SetValue(2,2,gp_Pnt(23,37,-3));
00515 Input.SetValue(2,3,gp_Pnt(40,40,0));
00516
00517
00518
00519
00520
00521 GeomAPI_PointsToBSplineSurface *Approx_Surface = new GeomAPI_PointsToBSplineSurface(Input, 3, 8, GeomAbs_C2,0.001);
00522 Handle(Geom_BSplineSurface) Final_Approx = Approx_Surface->Surface () ;
00523
00524 BRepBuilderAPI_MakeFace Face(Final_Approx);
00525
00526 return new TopoShapePy(new TopoShape(Face.Face()));
00527 } PY_CATCH;
00528 }
00529
00530 static PyObject *
00531 createTestBSPLINE(PyObject *self, PyObject *args)
00532 {
00533
00534 if (! PyArg_ParseTuple(args, ""))
00535 return NULL;
00536
00537 PY_TRY
00538 {
00539 TColgp_Array2OfPnt Poles(1,48,1,48);
00540
00541
00542 Poles.SetValue(1,1,gp_Pnt(-150.004,-150.032,0.000561847));
00543 Poles.SetValue(1,2,gp_Pnt(-150.002,-142.327,-0.00168953));
00544 Poles.SetValue(1,3,gp_Pnt(-150,-126.92,-0.00028435));
00545 Poles.SetValue(1,4,gp_Pnt(-150,-103.831,-0.000519289));
00546 Poles.SetValue(1,5,gp_Pnt(-150,-84.6001,-0.000265669));
00547 Poles.SetValue(1,6,gp_Pnt(-150,-71.1405,-0.00162853));
00548 Poles.SetValue(1,7,gp_Pnt(-150,-63.4497,0.00623225));
00549 Poles.SetValue(1,8,gp_Pnt(-150,-57.6819,-0.00552693));
00550 Poles.SetValue(1,9,gp_Pnt(-150,-51.9139,-0.000608209));
00551 Poles.SetValue(1,10,gp_Pnt(-150.001,-47.107,-0.000761491));
00552 Poles.SetValue(1,11,gp_Pnt(-150.001,-43.2611,-0.000606976));
00553 Poles.SetValue(1,12,gp_Pnt(-150.001,-40.3767,0.000301703));
00554 Poles.SetValue(1,13,gp_Pnt(-150.001,-37.492,0.00136356));
00555 Poles.SetValue(1,14,gp_Pnt(-150.001,-34.6077,-0.000772864));
00556 Poles.SetValue(1,15,gp_Pnt(-150.001,-32.2036,-0.00110298));
00557 Poles.SetValue(1,16,gp_Pnt(-150.001,-30.2806,-0.000821554));
00558 Poles.SetValue(1,17,gp_Pnt(-150.001,-27.3959,-0.000341639));
00559 Poles.SetValue(1,18,gp_Pnt(-150.002,-24.0305,0.00107516));
00560 Poles.SetValue(1,19,gp_Pnt(-150.002,-20.1843,0.000545201));
00561 Poles.SetValue(1,20,gp_Pnt(-150.003,-16.3382,-0.0036344));
00562 Poles.SetValue(1,21,gp_Pnt(-150.003,-12.4921,-0.00133336));
00563 Poles.SetValue(1,22,gp_Pnt(-150.003,-8.64594,0.000602981));
00564 Poles.SetValue(1,23,gp_Pnt(-150.004,-5.76127,0.000740304));
00565 Poles.SetValue(1,24,gp_Pnt(-150.004,-1.91501,-0.000669011));
00566 Poles.SetValue(1,25,gp_Pnt(-150.004,1.93125,0.00331739));
00567 Poles.SetValue(1,26,gp_Pnt(-150.003,5.77745,0.00628266));
00568 Poles.SetValue(1,27,gp_Pnt(-150.003,8.6621,0.00185797));
00569 Poles.SetValue(1,28,gp_Pnt(-150.002,12.5083,0.00117201));
00570 Poles.SetValue(1,29,gp_Pnt(-150.002,16.3543,0.00359695));
00571 Poles.SetValue(1,30,gp_Pnt(-150.001,20.2004,-0.000866218));
00572 Poles.SetValue(1,31,gp_Pnt(-150.001,24.0465,0.0024382));
00573 Poles.SetValue(1,32,gp_Pnt(-150.001,27.4119,0.000782921));
00574 Poles.SetValue(1,33,gp_Pnt(-150.001,30.2965,0.00019153));
00575 Poles.SetValue(1,34,gp_Pnt(-150.001,32.2196,0.000181438));
00576 Poles.SetValue(1,35,gp_Pnt(-150.001,34.6234,-0.00175203));
00577 Poles.SetValue(1,36,gp_Pnt(-150,37.5078,0.00248825));
00578 Poles.SetValue(1,37,gp_Pnt(-150.001,40.3923,0.000162624));
00579 Poles.SetValue(1,38,gp_Pnt(-150.001,43.2767,-0.00043742));
00580 Poles.SetValue(1,39,gp_Pnt(-150.001,47.1224,-0.00243046));
00581 Poles.SetValue(1,40,gp_Pnt(-150,51.9291,0.00271265));
00582 Poles.SetValue(1,41,gp_Pnt(-150,57.6971,-0.00206532));
00583 Poles.SetValue(1,42,gp_Pnt(-150,63.4651,-0.000689487));
00584 Poles.SetValue(1,43,gp_Pnt(-150,71.1557,0.000696594));
00585 Poles.SetValue(1,44,gp_Pnt(-150,84.6148,-0.00159957));
00586 Poles.SetValue(1,45,gp_Pnt(-150,103.843,0.00079398));
00587 Poles.SetValue(1,46,gp_Pnt(-150,126.921,0.00325858));
00588 Poles.SetValue(1,47,gp_Pnt(-150,142.308,-0.00205645));
00589 Poles.SetValue(1,48,gp_Pnt(-150.001,150.002,0.000266785));
00590 Poles.SetValue(2,1,gp_Pnt(-142.31,-150.021,-0.00181926));
00591 Poles.SetValue(2,2,gp_Pnt(-142.309,-142.316,-0.126204));
00592 Poles.SetValue(2,3,gp_Pnt(-142.305,-126.903,-0.0907513));
00593 Poles.SetValue(2,4,gp_Pnt(-142.304,-103.808,-0.172784));
00594 Poles.SetValue(2,5,gp_Pnt(-142.302,-84.571,-0.256387));
00595 Poles.SetValue(2,6,gp_Pnt(-142.298,-71.1085,-0.215109));
00596 Poles.SetValue(2,7,gp_Pnt(-142.301,-63.4178,-0.321454));
00597 Poles.SetValue(2,8,gp_Pnt(-142.302,-57.6491,-0.362883));
00598 Poles.SetValue(2,9,gp_Pnt(-142.304,-51.8812,-0.411528));
00599 Poles.SetValue(2,10,gp_Pnt(-142.305,-47.0752,-0.435599));
00600 Poles.SetValue(2,11,gp_Pnt(-142.305,-43.2302,-0.438131));
00601 Poles.SetValue(2,12,gp_Pnt(-142.305,-40.3466,-0.445607));
00602 Poles.SetValue(2,13,gp_Pnt(-142.305,-37.4617,-0.436859));
00603 Poles.SetValue(2,14,gp_Pnt(-142.305,-34.5771,-0.442155));
00604 Poles.SetValue(2,15,gp_Pnt(-142.304,-32.1727,-0.43872));
00605 Poles.SetValue(2,16,gp_Pnt(-142.305,-30.2502,-0.452521));
00606 Poles.SetValue(2,17,gp_Pnt(-142.307,-27.3666,-0.474689));
00607 Poles.SetValue(2,18,gp_Pnt(-142.311,-24.0038,-0.521193));
00608 Poles.SetValue(2,19,gp_Pnt(-142.314,-20.1589,-0.56475));
00609 Poles.SetValue(2,20,gp_Pnt(-142.319,-16.3146,-0.619306));
00610 Poles.SetValue(2,21,gp_Pnt(-142.321,-12.4685,-0.646119));
00611 Poles.SetValue(2,22,gp_Pnt(-142.321,-8.62227,-0.646118));
00612 Poles.SetValue(2,23,gp_Pnt(-142.321,-5.73782,-0.634708));
00613 Poles.SetValue(2,24,gp_Pnt(-142.317,-1.89155,-0.588682));
00614 Poles.SetValue(2,25,gp_Pnt(-142.316,1.95492,-0.560158));
00615 Poles.SetValue(2,26,gp_Pnt(-142.316,5.80123,-0.547648));
00616 Poles.SetValue(2,27,gp_Pnt(-142.313,8.68585,-0.518341));
00617 Poles.SetValue(2,28,gp_Pnt(-142.312,12.532,-0.500341));
00618 Poles.SetValue(2,29,gp_Pnt(-142.311,16.3777,-0.499537));
00619 Poles.SetValue(2,30,gp_Pnt(-142.307,20.2226,-0.465716));
00620 Poles.SetValue(2,31,gp_Pnt(-142.307,24.0679,-0.460146));
00621 Poles.SetValue(2,32,gp_Pnt(-142.304,27.4314,-0.438242));
00622 Poles.SetValue(2,33,gp_Pnt(-142.304,30.315,-0.433771));
00623 Poles.SetValue(2,34,gp_Pnt(-142.304,32.2374,-0.432231));
00624 Poles.SetValue(2,35,gp_Pnt(-142.306,34.6411,-0.446475));
00625 Poles.SetValue(2,36,gp_Pnt(-142.306,37.525,-0.445412));
00626 Poles.SetValue(2,37,gp_Pnt(-142.307,40.4085,-0.44998));
00627 Poles.SetValue(2,38,gp_Pnt(-142.306,43.2916,-0.431981));
00628 Poles.SetValue(2,39,gp_Pnt(-142.305,47.1355,-0.408878));
00629 Poles.SetValue(2,40,gp_Pnt(-142.303,51.94,-0.366882));
00630 Poles.SetValue(2,41,gp_Pnt(-142.301,57.7052,-0.307906));
00631 Poles.SetValue(2,42,gp_Pnt(-142.301,63.4721,-0.30131));
00632 Poles.SetValue(2,43,gp_Pnt(-142.302,71.1622,-0.256453));
00633 Poles.SetValue(2,44,gp_Pnt(-142.302,84.6149,-0.220375));
00634 Poles.SetValue(2,45,gp_Pnt(-142.31,103.846,-0.23077));
00635 Poles.SetValue(2,46,gp_Pnt(-142.304,126.92,0.0181769));
00636 Poles.SetValue(2,47,gp_Pnt(-142.309,142.309,-0.0738464));
00637 Poles.SetValue(2,48,gp_Pnt(-142.307,150.001,0.000863329));
00638 Poles.SetValue(3,1,gp_Pnt(-126.921,-150,0.00165292));
00639 Poles.SetValue(3,2,gp_Pnt(-126.921,-142.291,-0.108971));
00640 Poles.SetValue(3,3,gp_Pnt(-126.916,-126.875,-0.280815));
00641 Poles.SetValue(3,4,gp_Pnt(-126.912,-103.76,-0.548913));
00642 Poles.SetValue(3,5,gp_Pnt(-126.904,-84.5133,-0.647195));
00643 Poles.SetValue(3,6,gp_Pnt(-126.909,-71.0494,-0.979561));
00644 Poles.SetValue(3,7,gp_Pnt(-126.905,-63.3539,-0.997419));
00645 Poles.SetValue(3,8,gp_Pnt(-126.904,-57.5844,-1.07424));
00646 Poles.SetValue(3,9,gp_Pnt(-126.902,-51.8141,-1.11764));
00647 Poles.SetValue(3,10,gp_Pnt(-126.901,-47.0063,-1.16545));
00648 Poles.SetValue(3,11,gp_Pnt(-126.904,-43.162,-1.23177));
00649 Poles.SetValue(3,12,gp_Pnt(-126.906,-40.2796,-1.27218));
00650 Poles.SetValue(3,13,gp_Pnt(-126.91,-37.3996,-1.3403));
00651 Poles.SetValue(3,14,gp_Pnt(-126.913,-34.5199,-1.37958));
00652 Poles.SetValue(3,15,gp_Pnt(-126.918,-32.1209,-1.42493));
00653 Poles.SetValue(3,16,gp_Pnt(-126.919,-30.1996,-1.43471));
00654 Poles.SetValue(3,17,gp_Pnt(-126.92,-27.3171,-1.44871));
00655 Poles.SetValue(3,18,gp_Pnt(-126.916,-23.9503,-1.43521));
00656 Poles.SetValue(3,19,gp_Pnt(-126.915,-20.1051,-1.43151));
00657 Poles.SetValue(3,20,gp_Pnt(-126.906,-16.2565,-1.38855));
00658 Poles.SetValue(3,21,gp_Pnt(-126.903,-12.4114,-1.40876));
00659 Poles.SetValue(3,22,gp_Pnt(-126.9,-8.56614,-1.41947));
00660 Poles.SetValue(3,23,gp_Pnt(-126.897,-5.68165,-1.41744));
00661 Poles.SetValue(3,24,gp_Pnt(-126.899,-1.83662,-1.46074));
00662 Poles.SetValue(3,25,gp_Pnt(-126.896,2.00777,-1.45305));
00663 Poles.SetValue(3,26,gp_Pnt(-126.895,5.85236,-1.4119));
00664 Poles.SetValue(3,27,gp_Pnt(-126.9,8.73579,-1.42133));
00665 Poles.SetValue(3,28,gp_Pnt(-126.903,12.58,-1.39958));
00666 Poles.SetValue(3,29,gp_Pnt(-126.905,16.4245,-1.35132));
00667 Poles.SetValue(3,30,gp_Pnt(-126.914,20.2695,-1.36455));
00668 Poles.SetValue(3,31,gp_Pnt(-126.911,24.1114,-1.3157));
00669 Poles.SetValue(3,32,gp_Pnt(-126.913,27.4746,-1.29886));
00670 Poles.SetValue(3,33,gp_Pnt(-126.911,30.3549,-1.2689));
00671 Poles.SetValue(3,34,gp_Pnt(-126.909,32.275,-1.24747));
00672 Poles.SetValue(3,35,gp_Pnt(-126.904,34.6731,-1.20445));
00673 Poles.SetValue(3,36,gp_Pnt(-126.901,37.5522,-1.17054));
00674 Poles.SetValue(3,37,gp_Pnt(-126.898,40.4322,-1.14411));
00675 Poles.SetValue(3,38,gp_Pnt(-126.898,43.3131,-1.12165));
00676 Poles.SetValue(3,39,gp_Pnt(-126.899,47.1552,-1.1049));
00677 Poles.SetValue(3,40,gp_Pnt(-126.903,51.9593,-1.08453));
00678 Poles.SetValue(3,41,gp_Pnt(-126.906,57.7251,-1.02902));
00679 Poles.SetValue(3,42,gp_Pnt(-126.909,63.4889,-0.984029));
00680 Poles.SetValue(3,43,gp_Pnt(-126.912,71.1726,-0.939984));
00681 Poles.SetValue(3,44,gp_Pnt(-126.916,84.6287,-0.75009));
00682 Poles.SetValue(3,45,gp_Pnt(-126.914,103.84,-0.446948));
00683 Poles.SetValue(3,46,gp_Pnt(-126.922,126.917,-0.208932));
00684 Poles.SetValue(3,47,gp_Pnt(-126.919,142.304,-0.0369009));
00685 Poles.SetValue(3,48,gp_Pnt(-126.921,150,-0.00113251));
00686 Poles.SetValue(4,1,gp_Pnt(-103.843,-150,-0.0010153));
00687 Poles.SetValue(4,2,gp_Pnt(-103.841,-142.278,-0.149614));
00688 Poles.SetValue(4,3,gp_Pnt(-103.841,-126.835,-0.557018));
00689 Poles.SetValue(4,4,gp_Pnt(-103.832,-103.697,-1.04331));
00690 Poles.SetValue(4,5,gp_Pnt(-103.825,-84.4296,-1.51248));
00691 Poles.SetValue(4,6,gp_Pnt(-103.814,-70.9483,-1.71721));
00692 Poles.SetValue(4,7,gp_Pnt(-103.81,-63.2492,-1.91447));
00693 Poles.SetValue(4,8,gp_Pnt(-103.805,-57.475,-2.0133));
00694 Poles.SetValue(4,9,gp_Pnt(-103.802,-51.7032,-2.17279));
00695 Poles.SetValue(4,10,gp_Pnt(-103.796,-46.8927,-2.30177));
00696 Poles.SetValue(4,11,gp_Pnt(-103.786,-43.0402,-2.38814));
00697 Poles.SetValue(4,12,gp_Pnt(-103.778,-40.152,-2.44243));
00698 Poles.SetValue(4,13,gp_Pnt(-103.765,-37.2574,-2.50059));
00699 Poles.SetValue(4,14,gp_Pnt(-103.753,-34.3676,-2.54694));
00700 Poles.SetValue(4,15,gp_Pnt(-103.741,-31.9551,-2.60633));
00701 Poles.SetValue(4,16,gp_Pnt(-103.734,-30.0306,-2.65752));
00702 Poles.SetValue(4,17,gp_Pnt(-103.725,-27.1449,-2.73151));
00703 Poles.SetValue(4,18,gp_Pnt(-103.722,-23.7866,-2.82704));
00704 Poles.SetValue(4,19,gp_Pnt(-103.716,-19.9474,-2.91344));
00705 Poles.SetValue(4,20,gp_Pnt(-103.726,-16.1157,-3.04938));
00706 Poles.SetValue(4,21,gp_Pnt(-103.727,-12.2811,-3.06216));
00707 Poles.SetValue(4,22,gp_Pnt(-103.73,-8.44811,-3.0722));
00708 Poles.SetValue(4,23,gp_Pnt(-103.734,-5.57452,-3.08626));
00709 Poles.SetValue(4,24,gp_Pnt(-103.733,-1.74218,-3.02862));
00710 Poles.SetValue(4,25,gp_Pnt(-103.739,2.09027,-3.04208));
00711 Poles.SetValue(4,26,gp_Pnt(-103.743,5.92168,-3.09969));
00712 Poles.SetValue(4,27,gp_Pnt(-103.739,8.795,-3.08108));
00713 Poles.SetValue(4,28,gp_Pnt(-103.737,12.6264,-3.09153));
00714 Poles.SetValue(4,29,gp_Pnt(-103.739,16.4571,-3.11293));
00715 Poles.SetValue(4,30,gp_Pnt(-103.733,20.2881,-3.01659));
00716 Poles.SetValue(4,31,gp_Pnt(-103.744,24.1243,-2.98515));
00717 Poles.SetValue(4,32,gp_Pnt(-103.749,27.4798,-2.90047));
00718 Poles.SetValue(4,33,gp_Pnt(-103.759,30.3609,-2.8434));
00719 Poles.SetValue(4,34,gp_Pnt(-103.766,32.282,-2.80723));
00720 Poles.SetValue(4,35,gp_Pnt(-103.781,34.6883,-2.77627));
00721 Poles.SetValue(4,36,gp_Pnt(-103.792,37.5714,-2.73126));
00722 Poles.SetValue(4,37,gp_Pnt(-103.803,40.4561,-2.66247));
00723 Poles.SetValue(4,38,gp_Pnt(-103.811,43.3376,-2.62498));
00724 Poles.SetValue(4,39,gp_Pnt(-103.819,47.1799,-2.53849));
00725 Poles.SetValue(4,40,gp_Pnt(-103.824,51.9789,-2.42499));
00726 Poles.SetValue(4,41,gp_Pnt(-103.828,57.7369,-2.30022));
00727 Poles.SetValue(4,42,gp_Pnt(-103.83,63.4966,-2.12922));
00728 Poles.SetValue(4,43,gp_Pnt(-103.832,71.1786,-1.8623));
00729 Poles.SetValue(4,44,gp_Pnt(-103.837,84.6178,-1.53092));
00730 Poles.SetValue(4,45,gp_Pnt(-103.85,103.844,-1.13325));
00731 Poles.SetValue(4,46,gp_Pnt(-103.848,126.916,-0.481826));
00732 Poles.SetValue(4,47,gp_Pnt(-103.846,142.306,-0.137169));
00733 Poles.SetValue(4,48,gp_Pnt(-103.844,150,0.000586788));
00734 Poles.SetValue(5,1,gp_Pnt(-84.614,-150,0.000270488));
00735 Poles.SetValue(5,2,gp_Pnt(-84.6141,-142.269,-0.159149));
00736 Poles.SetValue(5,3,gp_Pnt(-84.6159,-126.815,-0.660259));
00737 Poles.SetValue(5,4,gp_Pnt(-84.6086,-103.651,-1.4185));
00738 Poles.SetValue(5,5,gp_Pnt(-84.5935,-84.3582,-2.06391));
00739 Poles.SetValue(5,6,gp_Pnt(-84.5714,-70.8586,-2.4464));
00740 Poles.SetValue(5,7,gp_Pnt(-84.5628,-63.1503,-2.67335));
00741 Poles.SetValue(5,8,gp_Pnt(-84.5613,-57.3748,-2.91676));
00742 Poles.SetValue(5,9,gp_Pnt(-84.5613,-51.6011,-3.07405));
00743 Poles.SetValue(5,10,gp_Pnt(-84.5691,-46.7952,-3.20612));
00744 Poles.SetValue(5,11,gp_Pnt(-84.5837,-42.9554,-3.33601));
00745 Poles.SetValue(5,12,gp_Pnt(-84.5994,-40.0793,-3.44324));
00746 Poles.SetValue(5,13,gp_Pnt(-84.6194,-37.2057,-3.54474));
00747 Poles.SetValue(5,14,gp_Pnt(-84.6441,-34.3358,-3.66032));
00748 Poles.SetValue(5,15,gp_Pnt(-84.6655,-31.9433,-3.73538));
00749 Poles.SetValue(5,16,gp_Pnt(-84.6811,-30.0273,-3.78877));
00750 Poles.SetValue(5,17,gp_Pnt(-84.704,-27.1526,-3.87363));
00751 Poles.SetValue(5,18,gp_Pnt(-84.7235,-23.7921,-3.94992));
00752 Poles.SetValue(5,19,gp_Pnt(-84.7453,-19.953,-4.04994));
00753 Poles.SetValue(5,20,gp_Pnt(-84.7487,-16.1062,-4.06117));
00754 Poles.SetValue(5,21,gp_Pnt(-84.761,-12.2635,-4.21439));
00755 Poles.SetValue(5,22,gp_Pnt(-84.7646,-8.4186,-4.30051));
00756 Poles.SetValue(5,23,gp_Pnt(-84.7638,-5.53345,-4.32728));
00757 Poles.SetValue(5,24,gp_Pnt(-84.7694,-1.6881,-4.45068));
00758 Poles.SetValue(5,25,gp_Pnt(-84.762,2.15614,-4.45867));
00759 Poles.SetValue(5,26,gp_Pnt(-84.7563,6.00003,-4.40673));
00760 Poles.SetValue(5,27,gp_Pnt(-84.7609,8.88229,-4.44703));
00761 Poles.SetValue(5,28,gp_Pnt(-84.7604,12.7235,-4.42816));
00762 Poles.SetValue(5,29,gp_Pnt(-84.7534,16.563,-4.35447));
00763 Poles.SetValue(5,30,gp_Pnt(-84.754,20.3999,-4.39459));
00764 Poles.SetValue(5,31,gp_Pnt(-84.7327,24.2293,-4.30122));
00765 Poles.SetValue(5,32,gp_Pnt(-84.7173,27.5803,-4.27802));
00766 Poles.SetValue(5,33,gp_Pnt(-84.6977,30.4479,-4.21241));
00767 Poles.SetValue(5,34,gp_Pnt(-84.6843,32.3595,-4.16497));
00768 Poles.SetValue(5,35,gp_Pnt(-84.6617,34.7453,-4.05325));
00769 Poles.SetValue(5,36,gp_Pnt(-84.642,37.6106,-3.97243));
00770 Poles.SetValue(5,37,gp_Pnt(-84.626,40.4793,-3.88558));
00771 Poles.SetValue(5,38,gp_Pnt(-84.613,43.3488,-3.76512));
00772 Poles.SetValue(5,39,gp_Pnt(-84.602,47.1786,-3.6382));
00773 Poles.SetValue(5,40,gp_Pnt(-84.5979,51.9706,-3.48883));
00774 Poles.SetValue(5,41,gp_Pnt(-84.5955,57.7241,-3.24621));
00775 Poles.SetValue(5,42,gp_Pnt(-84.5981,63.4805,-3.0356));
00776 Poles.SetValue(5,43,gp_Pnt(-84.6055,71.1595,-2.79784));
00777 Poles.SetValue(5,44,gp_Pnt(-84.622,84.6125,-2.27334));
00778 Poles.SetValue(5,45,gp_Pnt(-84.632,103.829,-1.5763));
00779 Poles.SetValue(5,46,gp_Pnt(-84.6319,126.911,-0.827433));
00780 Poles.SetValue(5,47,gp_Pnt(-84.6202,142.302,-0.277168));
00781 Poles.SetValue(5,48,gp_Pnt(-84.616,150,-0.00084759));
00782 Poles.SetValue(6,1,gp_Pnt(-71.1545,-150,0.000818217));
00783 Poles.SetValue(6,2,gp_Pnt(-71.1559,-142.265,-0.171988));
00784 Poles.SetValue(6,3,gp_Pnt(-71.1636,-126.808,-0.877511));
00785 Poles.SetValue(6,4,gp_Pnt(-71.156,-103.621,-1.6021));
00786 Poles.SetValue(6,5,gp_Pnt(-71.1356,-84.3088,-2.3871));
00787 Poles.SetValue(6,6,gp_Pnt(-71.1082,-70.796,-2.8955));
00788 Poles.SetValue(6,7,gp_Pnt(-71.0937,-63.0781,-3.24057));
00789 Poles.SetValue(6,8,gp_Pnt(-71.0799,-57.2886,-3.46587));
00790 Poles.SetValue(6,9,gp_Pnt(-71.0655,-51.499,-3.70299));
00791 Poles.SetValue(6,10,gp_Pnt(-71.0546,-46.6771,-3.94985));
00792 Poles.SetValue(6,11,gp_Pnt(-71.0462,-42.8205,-4.15299));
00793 Poles.SetValue(6,12,gp_Pnt(-71.0381,-39.9275,-4.28235));
00794 Poles.SetValue(6,13,gp_Pnt(-71.0329,-37.0353,-4.43768));
00795 Poles.SetValue(6,14,gp_Pnt(-71.026,-34.1434,-4.56256));
00796 Poles.SetValue(6,15,gp_Pnt(-71.0223,-31.7352,-4.68719));
00797 Poles.SetValue(6,16,gp_Pnt(-71.0206,-29.8116,-4.79297));
00798 Poles.SetValue(6,17,gp_Pnt(-71.0187,-26.9274,-4.95523));
00799 Poles.SetValue(6,18,gp_Pnt(-71.0182,-23.5685,-5.15222));
00800 Poles.SetValue(6,19,gp_Pnt(-71.0127,-19.7304,-5.35227));
00801 Poles.SetValue(6,20,gp_Pnt(-71.0136,-15.8989,-5.56506));
00802 Poles.SetValue(6,21,gp_Pnt(-71.0096,-12.0712,-5.68795));
00803 Poles.SetValue(6,22,gp_Pnt(-71.0107,-8.25242,-5.79463));
00804 Poles.SetValue(6,23,gp_Pnt(-71.0139,-5.39299,-5.88817));
00805 Poles.SetValue(6,24,gp_Pnt(-71.0145,-1.5833,-5.93167));
00806 Poles.SetValue(6,25,gp_Pnt(-71.0292,2.22315,-5.99844));
00807 Poles.SetValue(6,26,gp_Pnt(-71.0411,6.02965,-6.03414));
00808 Poles.SetValue(6,27,gp_Pnt(-71.0445,8.88553,-5.98762));
00809 Poles.SetValue(6,28,gp_Pnt(-71.0538,12.6963,-5.9483));
00810 Poles.SetValue(6,29,gp_Pnt(-71.0673,16.5105,-5.90522));
00811 Poles.SetValue(6,30,gp_Pnt(-71.0725,20.328,-5.76435));
00812 Poles.SetValue(6,31,gp_Pnt(-71.0851,24.1504,-5.66147));
00813 Poles.SetValue(6,32,gp_Pnt(-71.0875,27.4934,-5.51298));
00814 Poles.SetValue(6,33,gp_Pnt(-71.0908,30.364,-5.39372));
00815 Poles.SetValue(6,34,gp_Pnt(-71.0932,32.2778,-5.31749));
00816 Poles.SetValue(6,35,gp_Pnt(-71.0997,34.6747,-5.24058));
00817 Poles.SetValue(6,36,gp_Pnt(-71.1085,37.552,-5.1317));
00818 Poles.SetValue(6,37,gp_Pnt(-71.1096,40.4266,-4.95936));
00819 Poles.SetValue(6,38,gp_Pnt(-71.1188,43.3052,-4.8684));
00820 Poles.SetValue(6,39,gp_Pnt(-71.1247,47.1418,-4.66742));
00821 Poles.SetValue(6,40,gp_Pnt(-71.1323,51.9393,-4.41857));
00822 Poles.SetValue(6,41,gp_Pnt(-71.1417,57.6996,-4.12519));
00823 Poles.SetValue(6,42,gp_Pnt(-71.1508,63.4613,-3.8404));
00824 Poles.SetValue(6,43,gp_Pnt(-71.162,71.1459,-3.46491));
00825 Poles.SetValue(6,44,gp_Pnt(-71.1789,84.5949,-2.84945));
00826 Poles.SetValue(6,45,gp_Pnt(-71.191,103.827,-1.9693));
00827 Poles.SetValue(6,46,gp_Pnt(-71.1797,126.907,-0.936212));
00828 Poles.SetValue(6,47,gp_Pnt(-71.1648,142.304,-0.336438));
00829 Poles.SetValue(6,48,gp_Pnt(-71.1568,150,-0.000475897));
00830 Poles.SetValue(7,1,gp_Pnt(-63.4635,-150,0.000362352));
00831 Poles.SetValue(7,2,gp_Pnt(-63.4667,-142.266,-0.270865));
00832 Poles.SetValue(7,3,gp_Pnt(-63.4754,-126.801,-0.886325));
00833 Poles.SetValue(7,4,gp_Pnt(-63.4707,-103.604,-1.70578));
00834 Poles.SetValue(7,5,gp_Pnt(-63.4505,-84.2857,-2.5768));
00835 Poles.SetValue(7,6,gp_Pnt(-63.4181,-70.7632,-3.20272));
00836 Poles.SetValue(7,7,gp_Pnt(-63.3948,-63.0341,-3.53045));
00837 Poles.SetValue(7,8,gp_Pnt(-63.3767,-57.2389,-3.80851));
00838 Poles.SetValue(7,9,gp_Pnt(-63.3583,-51.4454,-4.13513));
00839 Poles.SetValue(7,10,gp_Pnt(-63.338,-46.6134,-4.37957));
00840 Poles.SetValue(7,11,gp_Pnt(-63.319,-42.7455,-4.60555));
00841 Poles.SetValue(7,12,gp_Pnt(-63.3044,-39.8447,-4.78324));
00842 Poles.SetValue(7,13,gp_Pnt(-63.2827,-36.9396,-4.96843));
00843 Poles.SetValue(7,14,gp_Pnt(-63.2624,-34.0396,-5.18158));
00844 Poles.SetValue(7,15,gp_Pnt(-63.2386,-31.6189,-5.33987));
00845 Poles.SetValue(7,16,gp_Pnt(-63.221,-29.6882,-5.45269));
00846 Poles.SetValue(7,17,gp_Pnt(-63.1927,-26.7909,-5.60579));
00847 Poles.SetValue(7,18,gp_Pnt(-63.1645,-23.4252,-5.7359));
00848 Poles.SetValue(7,19,gp_Pnt(-63.1509,-19.5935,-5.838));
00849 Poles.SetValue(7,20,gp_Pnt(-63.1439,-15.77,-5.92716));
00850 Poles.SetValue(7,21,gp_Pnt(-63.1534,-11.9628,-6.05663));
00851 Poles.SetValue(7,22,gp_Pnt(-63.1624,-8.16097,-6.16538));
00852 Poles.SetValue(7,23,gp_Pnt(-63.1713,-5.31206,-6.20947));
00853 Poles.SetValue(7,24,gp_Pnt(-63.193,-1.51882,-6.33325));
00854 Poles.SetValue(7,25,gp_Pnt(-63.1982,2.26931,-6.42672));
00855 Poles.SetValue(7,26,gp_Pnt(-63.2064,6.05752,-6.45684));
00856 Poles.SetValue(7,27,gp_Pnt(-63.2158,8.89967,-6.49216));
00857 Poles.SetValue(7,28,gp_Pnt(-63.2266,12.6896,-6.5197));
00858 Poles.SetValue(7,29,gp_Pnt(-63.2272,16.4827,-6.46308));
00859 Poles.SetValue(7,30,gp_Pnt(-63.2514,20.2851,-6.51582));
00860 Poles.SetValue(7,31,gp_Pnt(-63.2665,24.0915,-6.41687));
00861 Poles.SetValue(7,32,gp_Pnt(-63.3025,27.4349,-6.36479));
00862 Poles.SetValue(7,33,gp_Pnt(-63.3303,30.3117,-6.22694));
00863 Poles.SetValue(7,34,gp_Pnt(-63.3488,32.2305,-6.13272));
00864 Poles.SetValue(7,35,gp_Pnt(-63.366,34.6316,-5.97585));
00865 Poles.SetValue(7,36,gp_Pnt(-63.3837,37.5115,-5.82491));
00866 Poles.SetValue(7,37,gp_Pnt(-63.4034,40.3963,-5.69285));
00867 Poles.SetValue(7,38,gp_Pnt(-63.4132,43.2758,-5.49842));
00868 Poles.SetValue(7,39,gp_Pnt(-63.4263,47.1169,-5.25128));
00869 Poles.SetValue(7,40,gp_Pnt(-63.4394,51.9183,-4.95511));
00870 Poles.SetValue(7,41,gp_Pnt(-63.4539,57.6817,-4.64148));
00871 Poles.SetValue(7,42,gp_Pnt(-63.4684,63.4475,-4.3285));
00872 Poles.SetValue(7,43,gp_Pnt(-63.4802,71.1311,-3.82751));
00873 Poles.SetValue(7,44,gp_Pnt(-63.499,84.589,-3.10785));
00874 Poles.SetValue(7,45,gp_Pnt(-63.5115,103.821,-2.17125));
00875 Poles.SetValue(7,46,gp_Pnt(-63.4944,126.908,-1.06963));
00876 Poles.SetValue(7,47,gp_Pnt(-63.4761,142.304,-0.392153));
00877 Poles.SetValue(7,48,gp_Pnt(-63.4659,150,0.000947448));
00878 Poles.SetValue(8,1,gp_Pnt(-57.6952,-150,-0.00314282));
00879 Poles.SetValue(8,2,gp_Pnt(-57.6995,-142.266,-0.311295));
00880 Poles.SetValue(8,3,gp_Pnt(-57.7097,-126.797,-0.921112));
00881 Poles.SetValue(8,4,gp_Pnt(-57.7066,-103.591,-1.73366));
00882 Poles.SetValue(8,5,gp_Pnt(-57.6899,-84.2722,-2.7131));
00883 Poles.SetValue(8,6,gp_Pnt(-57.6482,-70.7348,-3.36076));
00884 Poles.SetValue(8,7,gp_Pnt(-57.6215,-63.0007,-3.76313));
00885 Poles.SetValue(8,8,gp_Pnt(-57.5991,-57.2001,-4.08499));
00886 Poles.SetValue(8,9,gp_Pnt(-57.5756,-51.4007,-4.39273));
00887 Poles.SetValue(8,10,gp_Pnt(-57.554,-46.5664,-4.69516));
00888 Poles.SetValue(8,11,gp_Pnt(-57.5322,-42.6946,-4.96155));
00889 Poles.SetValue(8,12,gp_Pnt(-57.5132,-39.7891,-5.21994));
00890 Poles.SetValue(8,13,gp_Pnt(-57.4836,-36.8743,-5.38283));
00891 Poles.SetValue(8,14,gp_Pnt(-57.4423,-33.9556,-5.4932));
00892 Poles.SetValue(8,15,gp_Pnt(-57.402,-31.5272,-5.53467));
00893 Poles.SetValue(8,16,gp_Pnt(-57.3861,-29.5989,-5.60063));
00894 Poles.SetValue(8,17,gp_Pnt(-57.3688,-26.7132,-5.72085));
00895 Poles.SetValue(8,18,gp_Pnt(-57.398,-23.3843,-5.9876));
00896 Poles.SetValue(8,19,gp_Pnt(-57.4294,-19.5722,-6.26213));
00897 Poles.SetValue(8,20,gp_Pnt(-57.5035,-15.7794,-6.68012));
00898 Poles.SetValue(8,21,gp_Pnt(-57.5719,-11.9809,-7.06297));
00899 Poles.SetValue(8,22,gp_Pnt(-57.6221,-8.1767,-7.32819));
00900 Poles.SetValue(8,23,gp_Pnt(-57.6505,-5.32072,-7.50978));
00901 Poles.SetValue(8,24,gp_Pnt(-57.6777,-1.51151,-7.67969));
00902 Poles.SetValue(8,25,gp_Pnt(-57.7106,2.29043,-7.79385));
00903 Poles.SetValue(8,26,gp_Pnt(-57.6789,6.09212,-7.72725));
00904 Poles.SetValue(8,27,gp_Pnt(-57.6575,8.94134,-7.67509));
00905 Poles.SetValue(8,28,gp_Pnt(-57.6107,12.7342,-7.50788));
00906 Poles.SetValue(8,29,gp_Pnt(-57.5593,16.5215,-7.2957));
00907 Poles.SetValue(8,30,gp_Pnt(-57.5083,20.3002,-7.009));
00908 Poles.SetValue(8,31,gp_Pnt(-57.4814,24.0877,-6.79325));
00909 Poles.SetValue(8,32,gp_Pnt(-57.4846,27.4081,-6.67069));
00910 Poles.SetValue(8,33,gp_Pnt(-57.5135,30.2753,-6.61361));
00911 Poles.SetValue(8,34,gp_Pnt(-57.5328,32.1869,-6.57093));
00912 Poles.SetValue(8,35,gp_Pnt(-57.5743,34.5945,-6.55824));
00913 Poles.SetValue(8,36,gp_Pnt(-57.6121,37.4882,-6.44634));
00914 Poles.SetValue(8,37,gp_Pnt(-57.628,40.3737,-6.21298));
00915 Poles.SetValue(8,38,gp_Pnt(-57.6442,43.2575,-6.00935));
00916 Poles.SetValue(8,39,gp_Pnt(-57.6633,47.1029,-5.76432));
00917 Poles.SetValue(8,40,gp_Pnt(-57.6718,51.9,-5.37064));
00918 Poles.SetValue(8,41,gp_Pnt(-57.6883,57.6662,-5.02319));
00919 Poles.SetValue(8,42,gp_Pnt(-57.7048,63.4336,-4.65762));
00920 Poles.SetValue(8,43,gp_Pnt(-57.7185,71.1203,-4.08762));
00921 Poles.SetValue(8,44,gp_Pnt(-57.7448,84.5871,-3.3533));
00922 Poles.SetValue(8,45,gp_Pnt(-57.7511,103.816,-2.29786));
00923 Poles.SetValue(8,46,gp_Pnt(-57.7309,126.907,-1.1419));
00924 Poles.SetValue(8,47,gp_Pnt(-57.7091,142.303,-0.384611));
00925 Poles.SetValue(8,48,gp_Pnt(-57.6978,150,-0.00163315));
00926 Poles.SetValue(9,1,gp_Pnt(-51.9266,-150,-0.000170689));
00927 Poles.SetValue(9,2,gp_Pnt(-51.9325,-142.265,-0.308476));
00928 Poles.SetValue(9,3,gp_Pnt(-51.9437,-126.792,-0.954312));
00929 Poles.SetValue(9,4,gp_Pnt(-51.9434,-103.579,-1.79846));
00930 Poles.SetValue(9,5,gp_Pnt(-51.9339,-84.2654,-2.84979));
00931 Poles.SetValue(9,6,gp_Pnt(-51.8762,-70.7033,-3.47842));
00932 Poles.SetValue(9,7,gp_Pnt(-51.8492,-62.9676,-3.99915));
00933 Poles.SetValue(9,8,gp_Pnt(-51.8239,-57.1623,-4.34605));
00934 Poles.SetValue(9,9,gp_Pnt(-51.7903,-51.3504,-4.69053));
00935 Poles.SetValue(9,10,gp_Pnt(-51.7729,-46.5189,-5.09883));
00936 Poles.SetValue(9,11,gp_Pnt(-51.757,-42.6481,-5.27347));
00937 Poles.SetValue(9,12,gp_Pnt(-51.7513,-39.7469,-5.30536));
00938 Poles.SetValue(9,13,gp_Pnt(-51.7401,-36.8465,-5.38604));
00939 Poles.SetValue(9,14,gp_Pnt(-51.7694,-33.9846,-5.66624));
00940 Poles.SetValue(9,15,gp_Pnt(-51.7798,-31.5914,-5.96847));
00941 Poles.SetValue(9,16,gp_Pnt(-51.8152,-29.6949,-6.3184));
00942 Poles.SetValue(9,17,gp_Pnt(-51.8773,-26.8541,-6.90413));
00943 Poles.SetValue(9,18,gp_Pnt(-51.9335,-23.5242,-7.53269));
00944 Poles.SetValue(9,19,gp_Pnt(-52.0359,-19.7223,-8.2157));
00945 Poles.SetValue(9,20,gp_Pnt(-52.1308,-15.9092,-8.84603));
00946 Poles.SetValue(9,21,gp_Pnt(-52.2346,-12.094,-9.39748));
00947 Poles.SetValue(9,22,gp_Pnt(-52.3068,-8.26388,-9.81203));
00948 Poles.SetValue(9,23,gp_Pnt(-52.3488,-5.38726,-10.0427));
00949 Poles.SetValue(9,24,gp_Pnt(-52.391,-1.54826,-10.2726));
00950 Poles.SetValue(9,25,gp_Pnt(-52.4088,2.29184,-10.382));
00951 Poles.SetValue(9,26,gp_Pnt(-52.3622,6.12771,-10.2589));
00952 Poles.SetValue(9,27,gp_Pnt(-52.3201,8.99991,-10.0938));
00953 Poles.SetValue(9,28,gp_Pnt(-52.2783,12.8262,-9.86285));
00954 Poles.SetValue(9,29,gp_Pnt(-52.1925,16.6338,-9.442));
00955 Poles.SetValue(9,30,gp_Pnt(-52.1187,20.4371,-8.97308));
00956 Poles.SetValue(9,31,gp_Pnt(-52.0376,24.2289,-8.44813));
00957 Poles.SetValue(9,32,gp_Pnt(-51.9688,27.5366,-7.90192));
00958 Poles.SetValue(9,33,gp_Pnt(-51.9242,30.3704,-7.47434));
00959 Poles.SetValue(9,34,gp_Pnt(-51.9019,32.2644,-7.22041));
00960 Poles.SetValue(9,35,gp_Pnt(-51.8684,34.6208,-6.88143));
00961 Poles.SetValue(9,36,gp_Pnt(-51.8535,37.4738,-6.68843));
00962 Poles.SetValue(9,37,gp_Pnt(-51.8792,40.3596,-6.69292));
00963 Poles.SetValue(9,38,gp_Pnt(-51.8924,43.2452,-6.61057));
00964 Poles.SetValue(9,39,gp_Pnt(-51.8939,47.0764,-6.26774));
00965 Poles.SetValue(9,40,gp_Pnt(-51.9082,51.8812,-5.88782));
00966 Poles.SetValue(9,41,gp_Pnt(-51.9297,57.653,-5.46697));
00967 Poles.SetValue(9,42,gp_Pnt(-51.9428,63.4193,-5.00425));
00968 Poles.SetValue(9,43,gp_Pnt(-51.9613,71.113,-4.45556));
00969 Poles.SetValue(9,44,gp_Pnt(-51.9912,84.5843,-3.48722));
00970 Poles.SetValue(9,45,gp_Pnt(-51.9934,103.813,-2.50034));
00971 Poles.SetValue(9,46,gp_Pnt(-51.9654,126.903,-1.154));
00972 Poles.SetValue(9,47,gp_Pnt(-51.9437,142.306,-0.456106));
00973 Poles.SetValue(9,48,gp_Pnt(-51.9293,150,0.00113058));
00974 Poles.SetValue(10,1,gp_Pnt(-46.1581,-150.001,-0.000638257));
00975 Poles.SetValue(10,2,gp_Pnt(-46.1658,-142.266,-0.338908));
00976 Poles.SetValue(10,3,gp_Pnt(-46.1771,-126.787,-0.982666));
00977 Poles.SetValue(10,4,gp_Pnt(-46.1819,-103.569,-1.90958));
00978 Poles.SetValue(10,5,gp_Pnt(-46.1784,-84.261,-2.93134));
00979 Poles.SetValue(10,6,gp_Pnt(-46.1093,-70.6785,-3.69831));
00980 Poles.SetValue(10,7,gp_Pnt(-46.0739,-62.928,-4.17581));
00981 Poles.SetValue(10,8,gp_Pnt(-46.047,-57.1203,-4.57934));
00982 Poles.SetValue(10,9,gp_Pnt(-46.0154,-51.3116,-5.03379));
00983 Poles.SetValue(10,10,gp_Pnt(-45.9925,-46.4699,-5.18556));
00984 Poles.SetValue(10,11,gp_Pnt(-46.012,-42.6314,-5.32418));
00985 Poles.SetValue(10,12,gp_Pnt(-46.0662,-39.7925,-5.76494));
00986 Poles.SetValue(10,13,gp_Pnt(-46.1808,-37.0074,-6.4582));
00987 Poles.SetValue(10,14,gp_Pnt(-46.2627,-34.1775,-7.11737));
00988 Poles.SetValue(10,15,gp_Pnt(-46.3521,-31.8361,-7.6892));
00989 Poles.SetValue(10,16,gp_Pnt(-46.4119,-29.9436,-8.15917));
00990 Poles.SetValue(10,17,gp_Pnt(-46.4974,-27.1051,-8.83871));
00991 Poles.SetValue(10,18,gp_Pnt(-46.6385,-23.7928,-9.76221));
00992 Poles.SetValue(10,19,gp_Pnt(-46.7404,-19.9549,-10.6246));
00993 Poles.SetValue(10,20,gp_Pnt(-46.8688,-16.1204,-11.4653));
00994 Poles.SetValue(10,21,gp_Pnt(-46.9478,-12.2561,-12.113));
00995 Poles.SetValue(10,22,gp_Pnt(-47.0023,-8.38515,-12.5828));
00996 Poles.SetValue(10,23,gp_Pnt(-47.0269,-5.4785,-12.8456));
00997 Poles.SetValue(10,24,gp_Pnt(-47.0386,-1.60018,-13.0705));
00998 Poles.SetValue(10,25,gp_Pnt(-47.0287,2.2868,-13.1044));
00999 Poles.SetValue(10,26,gp_Pnt(-47.034,6.16793,-13.0276));
01000 Poles.SetValue(10,27,gp_Pnt(-47.0114,9.0735,-12.8621));
01001 Poles.SetValue(10,28,gp_Pnt(-46.9836,12.9397,-12.5471));
01002 Poles.SetValue(10,29,gp_Pnt(-46.9389,16.7984,-12.1024));
01003 Poles.SetValue(10,30,gp_Pnt(-46.8056,20.6199,-11.386));
01004 Poles.SetValue(10,31,gp_Pnt(-46.729,24.4527,-10.7291));
01005 Poles.SetValue(10,32,gp_Pnt(-46.5805,27.7429,-9.92361));
01006 Poles.SetValue(10,33,gp_Pnt(-46.5017,30.5752,-9.34857));
01007 Poles.SetValue(10,34,gp_Pnt(-46.4461,32.4597,-8.95609));
01008 Poles.SetValue(10,35,gp_Pnt(-46.3462,34.7849,-8.34287));
01009 Poles.SetValue(10,36,gp_Pnt(-46.2837,37.6128,-7.82045));
01010 Poles.SetValue(10,37,gp_Pnt(-46.162,40.3806,-7.10571));
01011 Poles.SetValue(10,38,gp_Pnt(-46.1171,43.2098,-6.73439));
01012 Poles.SetValue(10,39,gp_Pnt(-46.1366,47.0603,-6.75792));
01013 Poles.SetValue(10,40,gp_Pnt(-46.1512,51.8648,-6.41774));
01014 Poles.SetValue(10,41,gp_Pnt(-46.1664,57.632,-5.86914));
01015 Poles.SetValue(10,42,gp_Pnt(-46.1871,63.4077,-5.41307));
01016 Poles.SetValue(10,43,gp_Pnt(-46.2021,71.1,-4.72497));
01017 Poles.SetValue(10,44,gp_Pnt(-46.2443,84.5899,-3.70014));
01018 Poles.SetValue(10,45,gp_Pnt(-46.2336,103.804,-2.61154));
01019 Poles.SetValue(10,46,gp_Pnt(-46.2013,126.902,-1.24637));
01020 Poles.SetValue(10,47,gp_Pnt(-46.1774,142.306,-0.449946));
01021 Poles.SetValue(10,48,gp_Pnt(-46.1611,150.001,-0.00144769));
01022 Poles.SetValue(11,1,gp_Pnt(-41.3506,-150.001,0.000129401));
01023 Poles.SetValue(11,2,gp_Pnt(-41.3604,-142.268,-0.369782));
01024 Poles.SetValue(11,3,gp_Pnt(-41.3715,-126.784,-1.01965));
01025 Poles.SetValue(11,4,gp_Pnt(-41.381,-103.559,-1.98585));
01026 Poles.SetValue(11,5,gp_Pnt(-41.3846,-84.2649,-3.02478));
01027 Poles.SetValue(11,6,gp_Pnt(-41.3076,-70.6584,-3.82604));
01028 Poles.SetValue(11,7,gp_Pnt(-41.2583,-62.8898,-4.34596));
01029 Poles.SetValue(11,8,gp_Pnt(-41.2301,-57.0807,-4.77554));
01030 Poles.SetValue(11,9,gp_Pnt(-41.208,-51.2838,-5.08544));
01031 Poles.SetValue(11,10,gp_Pnt(-41.2328,-46.4935,-5.34778));
01032 Poles.SetValue(11,11,gp_Pnt(-41.3268,-42.7488,-6.24075));
01033 Poles.SetValue(11,12,gp_Pnt(-41.4109,-39.9421,-6.96341));
01034 Poles.SetValue(11,13,gp_Pnt(-41.4934,-37.1246,-7.70505));
01035 Poles.SetValue(11,14,gp_Pnt(-41.6366,-34.3514,-8.60427));
01036 Poles.SetValue(11,15,gp_Pnt(-41.7592,-32.0314,-9.39254));
01037 Poles.SetValue(11,16,gp_Pnt(-41.866,-30.171,-10.027));
01038 Poles.SetValue(11,17,gp_Pnt(-42.007,-27.3579,-10.9448));
01039 Poles.SetValue(11,18,gp_Pnt(-42.1295,-24.0111,-11.8554));
01040 Poles.SetValue(11,19,gp_Pnt(-42.2841,-20.1843,-12.84));
01041 Poles.SetValue(11,20,gp_Pnt(-42.4397,-16.3348,-13.7597));
01042 Poles.SetValue(11,21,gp_Pnt(-42.6184,-12.4706,-14.5978));
01043 Poles.SetValue(11,22,gp_Pnt(-42.7575,-8.5647,-15.2417));
01044 Poles.SetValue(11,23,gp_Pnt(-42.8491,-5.62091,-15.6293));
01045 Poles.SetValue(11,24,gp_Pnt(-42.8914,-1.67076,-15.914));
01046 Poles.SetValue(11,25,gp_Pnt(-42.8577,2.29453,-15.9201));
01047 Poles.SetValue(11,26,gp_Pnt(-42.8099,6.24375,-15.7308));
01048 Poles.SetValue(11,27,gp_Pnt(-42.7438,9.19033,-15.4664));
01049 Poles.SetValue(11,28,gp_Pnt(-42.6546,13.1006,-15.0329));
01050 Poles.SetValue(11,29,gp_Pnt(-42.4397,16.9381,-14.2592));
01051 Poles.SetValue(11,30,gp_Pnt(-42.3321,20.793,-13.586));
01052 Poles.SetValue(11,31,gp_Pnt(-42.202,24.6193,-12.7928));
01053 Poles.SetValue(11,32,gp_Pnt(-42.0702,27.9455,-11.976));
01054 Poles.SetValue(11,33,gp_Pnt(-41.926,30.743,-11.1473));
01055 Poles.SetValue(11,34,gp_Pnt(-41.8424,32.617,-10.6229));
01056 Poles.SetValue(11,35,gp_Pnt(-41.7499,34.9475,-9.97304));
01057 Poles.SetValue(11,36,gp_Pnt(-41.6445,37.7479,-9.23094));
01058 Poles.SetValue(11,37,gp_Pnt(-41.557,40.5517,-8.47969));
01059 Poles.SetValue(11,38,gp_Pnt(-41.4664,43.3478,-7.79497));
01060 Poles.SetValue(11,39,gp_Pnt(-41.3421,47.0459,-6.80636));
01061 Poles.SetValue(11,40,gp_Pnt(-41.3394,51.8371,-6.68123));
01062 Poles.SetValue(11,41,gp_Pnt(-41.3706,57.6167,-6.22193));
01063 Poles.SetValue(11,42,gp_Pnt(-41.3831,63.3849,-5.68374));
01064 Poles.SetValue(11,43,gp_Pnt(-41.4131,71.0964,-4.98988));
01065 Poles.SetValue(11,44,gp_Pnt(-41.4553,84.5966,-3.8597));
01066 Poles.SetValue(11,45,gp_Pnt(-41.4358,103.797,-2.69226));
01067 Poles.SetValue(11,46,gp_Pnt(-41.396,126.901,-1.33321));
01068 Poles.SetValue(11,47,gp_Pnt(-41.3733,142.306,-0.423026));
01069 Poles.SetValue(11,48,gp_Pnt(-41.3535,150.001,0.000856916));
01070 Poles.SetValue(12,1,gp_Pnt(-37.5046,-150.002,-0.000990159));
01071 Poles.SetValue(12,2,gp_Pnt(-37.5158,-142.268,-0.362104));
01072 Poles.SetValue(12,3,gp_Pnt(-37.5275,-126.781,-1.04216));
01073 Poles.SetValue(12,4,gp_Pnt(-37.54,-103.548,-2.02727));
01074 Poles.SetValue(12,5,gp_Pnt(-37.5516,-84.2718,-3.08919));
01075 Poles.SetValue(12,6,gp_Pnt(-37.4692,-70.645,-3.92736));
01076 Poles.SetValue(12,7,gp_Pnt(-37.4034,-62.8516,-4.46926));
01077 Poles.SetValue(12,8,gp_Pnt(-37.3656,-57.0305,-4.90814));
01078 Poles.SetValue(12,9,gp_Pnt(-37.38,-51.2739,-5.03776));
01079 Poles.SetValue(12,10,gp_Pnt(-37.4847,-46.6009,-5.98182));
01080 Poles.SetValue(12,11,gp_Pnt(-37.5865,-42.8757,-7.03982));
01081 Poles.SetValue(12,12,gp_Pnt(-37.6857,-40.0925,-7.9519));
01082 Poles.SetValue(12,13,gp_Pnt(-37.8317,-37.3448,-9.00586));
01083 Poles.SetValue(12,14,gp_Pnt(-38.0147,-34.6055,-10.1344));
01084 Poles.SetValue(12,15,gp_Pnt(-38.1289,-32.2759,-10.9655));
01085 Poles.SetValue(12,16,gp_Pnt(-38.2014,-30.3789,-11.5644));
01086 Poles.SetValue(12,17,gp_Pnt(-38.3098,-27.5372,-12.4577));
01087 Poles.SetValue(12,18,gp_Pnt(-38.5591,-24.2661,-13.6428));
01088 Poles.SetValue(12,19,gp_Pnt(-38.8481,-20.4819,-14.8886));
01089 Poles.SetValue(12,20,gp_Pnt(-39.176,-16.67,-16.0722));
01090 Poles.SetValue(12,21,gp_Pnt(-39.431,-12.7582,-16.9903));
01091 Poles.SetValue(12,22,gp_Pnt(-39.6338,-8.78775,-17.6581));
01092 Poles.SetValue(12,23,gp_Pnt(-39.7083,-5.77365,-17.9709));
01093 Poles.SetValue(12,24,gp_Pnt(-39.7945,-1.73776,-18.2789));
01094 Poles.SetValue(12,25,gp_Pnt(-39.7792,2.31582,-18.3108));
01095 Poles.SetValue(12,26,gp_Pnt(-39.7111,6.3468,-18.1589));
01096 Poles.SetValue(12,27,gp_Pnt(-39.6071,9.34647,-17.8966));
01097 Poles.SetValue(12,28,gp_Pnt(-39.4225,13.3136,-17.3697));
01098 Poles.SetValue(12,29,gp_Pnt(-39.1565,17.2006,-16.5688));
01099 Poles.SetValue(12,30,gp_Pnt(-38.8412,21.0139,-15.5401));
01100 Poles.SetValue(12,31,gp_Pnt(-38.5614,24.7878,-14.4514));
01101 Poles.SetValue(12,32,gp_Pnt(-38.3865,28.1004,-13.5309));
01102 Poles.SetValue(12,33,gp_Pnt(-38.2837,30.935,-12.7238));
01103 Poles.SetValue(12,34,gp_Pnt(-38.1998,32.81,-12.1537));
01104 Poles.SetValue(12,35,gp_Pnt(-38.0919,35.1348,-11.3864));
01105 Poles.SetValue(12,36,gp_Pnt(-37.9482,37.9015,-10.4242));
01106 Poles.SetValue(12,37,gp_Pnt(-37.8069,40.6462,-9.43281));
01107 Poles.SetValue(12,38,gp_Pnt(-37.7142,43.4352,-8.61957));
01108 Poles.SetValue(12,39,gp_Pnt(-37.5907,47.134,-7.52689));
01109 Poles.SetValue(12,40,gp_Pnt(-37.5157,51.8377,-6.80127));
01110 Poles.SetValue(12,41,gp_Pnt(-37.5183,57.5848,-6.49516));
01111 Poles.SetValue(12,42,gp_Pnt(-37.5412,63.3635,-5.90827));
01112 Poles.SetValue(12,43,gp_Pnt(-37.5834,71.0941,-5.20371));
01113 Poles.SetValue(12,44,gp_Pnt(-37.6269,84.6055,-3.9813));
01114 Poles.SetValue(12,45,gp_Pnt(-37.5971,103.791,-2.77693));
01115 Poles.SetValue(12,46,gp_Pnt(-37.5523,126.898,-1.36182));
01116 Poles.SetValue(12,47,gp_Pnt(-37.5291,142.307,-0.42845));
01117 Poles.SetValue(12,48,gp_Pnt(-37.5076,150.002,0.00471985));
01118 Poles.SetValue(13,1,gp_Pnt(-34.62,-150.003,-0.0023316));
01119 Poles.SetValue(13,2,gp_Pnt(-34.632,-142.268,-0.349958));
01120 Poles.SetValue(13,3,gp_Pnt(-34.645,-126.78,-1.05185));
01121 Poles.SetValue(13,4,gp_Pnt(-34.6586,-103.539,-2.05983));
01122 Poles.SetValue(13,5,gp_Pnt(-34.6791,-84.2792,-3.11805));
01123 Poles.SetValue(13,6,gp_Pnt(-34.591,-70.6351,-4.00171));
01124 Poles.SetValue(13,7,gp_Pnt(-34.5131,-62.8198,-4.56575));
01125 Poles.SetValue(13,8,gp_Pnt(-34.4669,-56.9824,-4.92811));
01126 Poles.SetValue(13,9,gp_Pnt(-34.5266,-51.29,-5.24163));
01127 Poles.SetValue(13,10,gp_Pnt(-34.6876,-46.7104,-6.52793));
01128 Poles.SetValue(13,11,gp_Pnt(-34.8026,-43.0114,-7.78986));
01129 Poles.SetValue(13,12,gp_Pnt(-34.9344,-40.2726,-8.89694));
01130 Poles.SetValue(13,13,gp_Pnt(-35.0891,-37.5373,-10.0435));
01131 Poles.SetValue(13,14,gp_Pnt(-35.2348,-34.7597,-11.1199));
01132 Poles.SetValue(13,15,gp_Pnt(-35.3211,-32.4067,-11.9429));
01133 Poles.SetValue(13,16,gp_Pnt(-35.4497,-30.5606,-12.6961));
01134 Poles.SetValue(13,17,gp_Pnt(-35.614,-27.7584,-13.7623));
01135 Poles.SetValue(13,18,gp_Pnt(-35.9962,-24.5678,-15.2273));
01136 Poles.SetValue(13,19,gp_Pnt(-36.363,-20.7882,-16.5677));
01137 Poles.SetValue(13,20,gp_Pnt(-36.6904,-16.9282,-17.7055));
01138 Poles.SetValue(13,21,gp_Pnt(-36.8578,-12.9306,-18.3233));
01139 Poles.SetValue(13,22,gp_Pnt(-36.9527,-8.88561,-18.7197));
01140 Poles.SetValue(13,23,gp_Pnt(-36.9967,-5.83477,-18.8948));
01141 Poles.SetValue(13,24,gp_Pnt(-37.0318,-1.75551,-19.0735));
01142 Poles.SetValue(13,25,gp_Pnt(-37.0313,2.32873,-19.1232));
01143 Poles.SetValue(13,26,gp_Pnt(-37.0175,6.39695,-19.1615));
01144 Poles.SetValue(13,27,gp_Pnt(-36.9594,9.43212,-19.0345));
01145 Poles.SetValue(13,28,gp_Pnt(-36.8675,13.4561,-18.7867));
01146 Poles.SetValue(13,29,gp_Pnt(-36.6616,17.4137,-18.1833));
01147 Poles.SetValue(13,30,gp_Pnt(-36.3331,21.2595,-17.2008));
01148 Poles.SetValue(13,31,gp_Pnt(-35.995,25.041,-16.0204));
01149 Poles.SetValue(13,32,gp_Pnt(-35.6555,28.2725,-14.7687));
01150 Poles.SetValue(13,33,gp_Pnt(-35.5108,31.0696,-13.8117));
01151 Poles.SetValue(13,34,gp_Pnt(-35.4456,32.9642,-13.2402));
01152 Poles.SetValue(13,35,gp_Pnt(-35.3492,35.2949,-12.4616));
01153 Poles.SetValue(13,36,gp_Pnt(-35.189,38.0465,-11.4098));
01154 Poles.SetValue(13,37,gp_Pnt(-35.0275,40.7699,-10.3096));
01155 Poles.SetValue(13,38,gp_Pnt(-34.9073,43.5243,-9.30737));
01156 Poles.SetValue(13,39,gp_Pnt(-34.7987,47.2339,-8.14392));
01157 Poles.SetValue(13,40,gp_Pnt(-34.651,51.8373,-6.91992));
01158 Poles.SetValue(13,41,gp_Pnt(-34.6284,57.5527,-6.63443));
01159 Poles.SetValue(13,42,gp_Pnt(-34.659,63.3436,-6.09258));
01160 Poles.SetValue(13,43,gp_Pnt(-34.7102,71.0895,-5.31871));
01161 Poles.SetValue(13,44,gp_Pnt(-34.7584,84.6162,-4.09984));
01162 Poles.SetValue(13,45,gp_Pnt(-34.7172,103.784,-2.82096));
01163 Poles.SetValue(13,46,gp_Pnt(-34.6703,126.897,-1.3891));
01164 Poles.SetValue(13,47,gp_Pnt(-34.6455,142.308,-0.431219));
01165 Poles.SetValue(13,48,gp_Pnt(-34.6232,150.002,0.00496173));
01166 Poles.SetValue(14,1,gp_Pnt(-31.7352,-150.003,-0.00154848));
01167 Poles.SetValue(14,2,gp_Pnt(-31.7482,-142.267,-0.331617));
01168 Poles.SetValue(14,3,gp_Pnt(-31.763,-126.779,-1.063));
01169 Poles.SetValue(14,4,gp_Pnt(-31.7766,-103.527,-2.07596));
01170 Poles.SetValue(14,5,gp_Pnt(-31.8089,-84.2907,-3.17444));
01171 Poles.SetValue(14,6,gp_Pnt(-31.7122,-70.6219,-4.03525));
01172 Poles.SetValue(14,7,gp_Pnt(-31.6249,-62.7848,-4.66387));
01173 Poles.SetValue(14,8,gp_Pnt(-31.5769,-56.9282,-4.89998));
01174 Poles.SetValue(14,9,gp_Pnt(-31.6802,-51.3146,-5.53692));
01175 Poles.SetValue(14,10,gp_Pnt(-31.8745,-46.8081,-7.10223));
01176 Poles.SetValue(14,11,gp_Pnt(-32.018,-43.1597,-8.56607));
01177 Poles.SetValue(14,12,gp_Pnt(-32.1638,-40.4524,-9.81769));
01178 Poles.SetValue(14,13,gp_Pnt(-32.3073,-37.7124,-11.0081));
01179 Poles.SetValue(14,14,gp_Pnt(-32.4358,-34.9155,-12.0817));
01180 Poles.SetValue(14,15,gp_Pnt(-32.5926,-32.6407,-13.1205));
01181 Poles.SetValue(14,16,gp_Pnt(-32.7344,-30.7964,-13.9191));
01182 Poles.SetValue(14,17,gp_Pnt(-33.0143,-28.0979,-15.252));
01183 Poles.SetValue(14,18,gp_Pnt(-33.4113,-24.8923,-16.747));
01184 Poles.SetValue(14,19,gp_Pnt(-33.7395,-21.0593,-17.9381));
01185 Poles.SetValue(14,20,gp_Pnt(-33.9529,-17.0987,-18.7264));
01186 Poles.SetValue(14,21,gp_Pnt(-34.0517,-13.0389,-19.0923));
01187 Poles.SetValue(14,22,gp_Pnt(-34.0927,-8.94344,-19.1565));
01188 Poles.SetValue(14,23,gp_Pnt(-34.1148,-5.86615,-19.2346));
01189 Poles.SetValue(14,24,gp_Pnt(-34.1342,-1.75859,-19.3087));
01190 Poles.SetValue(14,25,gp_Pnt(-34.1496,2.34806,-19.3815));
01191 Poles.SetValue(14,26,gp_Pnt(-34.1479,6.43942,-19.5269));
01192 Poles.SetValue(14,27,gp_Pnt(-34.1348,9.49773,-19.5973));
01193 Poles.SetValue(14,28,gp_Pnt(-34.086,13.5579,-19.6271));
01194 Poles.SetValue(14,29,gp_Pnt(-33.9618,17.5747,-19.3248));
01195 Poles.SetValue(14,30,gp_Pnt(-33.7384,21.5045,-18.634));
01196 Poles.SetValue(14,31,gp_Pnt(-33.4066,25.3178,-17.5646));
01197 Poles.SetValue(14,32,gp_Pnt(-33.0544,28.5653,-16.2703));
01198 Poles.SetValue(14,33,gp_Pnt(-32.8588,31.3256,-15.1565));
01199 Poles.SetValue(14,34,gp_Pnt(-32.6532,33.099,-14.2631));
01200 Poles.SetValue(14,35,gp_Pnt(-32.5381,35.4039,-13.3772));
01201 Poles.SetValue(14,36,gp_Pnt(-32.393,38.1751,-12.3245));
01202 Poles.SetValue(14,37,gp_Pnt(-32.231,40.8861,-11.1505));
01203 Poles.SetValue(14,38,gp_Pnt(-32.1223,43.6538,-10.1046));
01204 Poles.SetValue(14,39,gp_Pnt(-31.9975,47.3317,-8.76792));
01205 Poles.SetValue(14,40,gp_Pnt(-31.8214,51.8667,-7.32186));
01206 Poles.SetValue(14,41,gp_Pnt(-31.7377,57.5022,-6.67478));
01207 Poles.SetValue(14,42,gp_Pnt(-31.7779,63.3209,-6.2713));
01208 Poles.SetValue(14,43,gp_Pnt(-31.838,71.0853,-5.43635));
01209 Poles.SetValue(14,44,gp_Pnt(-31.8903,84.6268,-4.19797));
01210 Poles.SetValue(14,45,gp_Pnt(-31.8372,103.777,-2.86658));
01211 Poles.SetValue(14,46,gp_Pnt(-31.7884,126.895,-1.40853));
01212 Poles.SetValue(14,47,gp_Pnt(-31.7622,142.309,-0.438532));
01213 Poles.SetValue(14,48,gp_Pnt(-31.7384,150.003,0.00199423));
01214 Poles.SetValue(15,1,gp_Pnt(-28.8504,-150.003,-0.000296043));
01215 Poles.SetValue(15,2,gp_Pnt(-28.8644,-142.267,-0.326339));
01216 Poles.SetValue(15,3,gp_Pnt(-28.8809,-126.778,-1.04463));
01217 Poles.SetValue(15,4,gp_Pnt(-28.8954,-103.518,-2.13061));
01218 Poles.SetValue(15,5,gp_Pnt(-28.9393,-84.3,-3.15907));
01219 Poles.SetValue(15,6,gp_Pnt(-28.837,-70.6117,-4.10819));
01220 Poles.SetValue(15,7,gp_Pnt(-28.7434,-62.7489,-4.72495));
01221 Poles.SetValue(15,8,gp_Pnt(-28.708,-56.8994,-4.89063));
01222 Poles.SetValue(15,9,gp_Pnt(-28.8485,-51.3762,-6.00024));
01223 Poles.SetValue(15,10,gp_Pnt(-29.054,-46.9121,-7.70424));
01224 Poles.SetValue(15,11,gp_Pnt(-29.2298,-43.3343,-9.40211));
01225 Poles.SetValue(15,12,gp_Pnt(-29.3671,-40.6219,-10.6912));
01226 Poles.SetValue(15,13,gp_Pnt(-29.4868,-37.8621,-11.8917));
01227 Poles.SetValue(15,14,gp_Pnt(-29.653,-35.1193,-13.1207));
01228 Poles.SetValue(15,15,gp_Pnt(-29.8374,-32.8838,-14.2764));
01229 Poles.SetValue(15,16,gp_Pnt(-30.0554,-31.1218,-15.2551));
01230 Poles.SetValue(15,17,gp_Pnt(-30.3616,-28.4511,-16.6604));
01231 Poles.SetValue(15,18,gp_Pnt(-30.7128,-25.1891,-18.0319));
01232 Poles.SetValue(15,19,gp_Pnt(-30.8848,-21.2184,-18.7039));
01233 Poles.SetValue(15,20,gp_Pnt(-31.0171,-17.1843,-19.1198));
01234 Poles.SetValue(15,21,gp_Pnt(-31.0697,-13.0808,-19.0549));
01235 Poles.SetValue(15,22,gp_Pnt(-31.0917,-8.96259,-19.0617));
01236 Poles.SetValue(15,23,gp_Pnt(-31.1082,-5.8717,-19.0769));
01237 Poles.SetValue(15,24,gp_Pnt(-31.1282,-1.74971,-19.1218));
01238 Poles.SetValue(15,25,gp_Pnt(-31.1451,2.36805,-19.2344));
01239 Poles.SetValue(15,26,gp_Pnt(-31.1463,6.47208,-19.4017));
01240 Poles.SetValue(15,27,gp_Pnt(-31.1369,9.5398,-19.563));
01241 Poles.SetValue(15,28,gp_Pnt(-31.125,13.624,-19.676));
01242 Poles.SetValue(15,29,gp_Pnt(-31.0629,17.6731,-19.8221));
01243 Poles.SetValue(15,30,gp_Pnt(-30.9394,21.6753,-19.5784));
01244 Poles.SetValue(15,31,gp_Pnt(-30.7208,25.5796,-18.8941));
01245 Poles.SetValue(15,32,gp_Pnt(-30.429,28.8939,-17.7437));
01246 Poles.SetValue(15,33,gp_Pnt(-30.1355,31.5716,-16.4029));
01247 Poles.SetValue(15,34,gp_Pnt(-30.004,33.4123,-15.6337));
01248 Poles.SetValue(15,35,gp_Pnt(-29.7454,35.5561,-14.3595));
01249 Poles.SetValue(15,36,gp_Pnt(-29.5827,38.3004,-13.2055));
01250 Poles.SetValue(15,37,gp_Pnt(-29.4071,40.9896,-11.9148));
01251 Poles.SetValue(15,38,gp_Pnt(-29.3087,43.7647,-10.8315));
01252 Poles.SetValue(15,39,gp_Pnt(-29.1671,47.4036,-9.29662));
01253 Poles.SetValue(15,40,gp_Pnt(-28.9805,51.9045,-7.68659));
01254 Poles.SetValue(15,41,gp_Pnt(-28.8656,57.4635,-6.70615));
01255 Poles.SetValue(15,42,gp_Pnt(-28.899,63.2886,-6.3862));
01256 Poles.SetValue(15,43,gp_Pnt(-28.9679,71.0817,-5.5474));
01257 Poles.SetValue(15,44,gp_Pnt(-29.0236,84.6395,-4.29974));
01258 Poles.SetValue(15,45,gp_Pnt(-28.9571,103.767,-2.89536));
01259 Poles.SetValue(15,46,gp_Pnt(-28.9071,126.895,-1.43175));
01260 Poles.SetValue(15,47,gp_Pnt(-28.8786,142.31,-0.451004));
01261 Poles.SetValue(15,48,gp_Pnt(-28.8536,150.003,-0.000328798));
01262 Poles.SetValue(16,1,gp_Pnt(-25.9656,-150.004,0.00137713));
01263 Poles.SetValue(16,2,gp_Pnt(-25.9803,-142.267,-0.325925));
01264 Poles.SetValue(16,3,gp_Pnt(-25.9991,-126.777,-1.02412));
01265 Poles.SetValue(16,4,gp_Pnt(-26.0145,-103.507,-2.17811));
01266 Poles.SetValue(16,5,gp_Pnt(-26.071,-84.312,-3.15724));
01267 Poles.SetValue(16,6,gp_Pnt(-25.9635,-70.5999,-4.17961));
01268 Poles.SetValue(16,7,gp_Pnt(-25.8703,-62.7171,-4.72997));
01269 Poles.SetValue(16,8,gp_Pnt(-25.8574,-56.9015,-4.98549));
01270 Poles.SetValue(16,9,gp_Pnt(-26.0153,-51.4433,-6.4689));
01271 Poles.SetValue(16,10,gp_Pnt(-26.2167,-47.0041,-8.31462));
01272 Poles.SetValue(16,11,gp_Pnt(-26.414,-43.4866,-10.1773));
01273 Poles.SetValue(16,12,gp_Pnt(-26.5319,-40.7572,-11.4557));
01274 Poles.SetValue(16,13,gp_Pnt(-26.6786,-38.0475,-12.8017));
01275 Poles.SetValue(16,14,gp_Pnt(-26.9109,-35.41,-14.2563));
01276 Poles.SetValue(16,15,gp_Pnt(-27.1481,-33.2466,-15.577));
01277 Poles.SetValue(16,16,gp_Pnt(-27.3362,-31.4586,-16.4821));
01278 Poles.SetValue(16,17,gp_Pnt(-27.6323,-28.7816,-17.8543));
01279 Poles.SetValue(16,18,gp_Pnt(-27.8191,-25.3474,-18.6862));
01280 Poles.SetValue(16,19,gp_Pnt(-27.9266,-21.3202,-19.0118));
01281 Poles.SetValue(16,20,gp_Pnt(-27.9944,-17.2306,-19.0069));
01282 Poles.SetValue(16,21,gp_Pnt(-28.0229,-13.1072,-18.9149));
01283 Poles.SetValue(16,22,gp_Pnt(-28.0429,-8.9775,-18.9805));
01284 Poles.SetValue(16,23,gp_Pnt(-28.0561,-5.87853,-19.0437));
01285 Poles.SetValue(16,24,gp_Pnt(-28.0792,-1.74655,-19.1248));
01286 Poles.SetValue(16,25,gp_Pnt(-28.0969,2.38173,-19.2133));
01287 Poles.SetValue(16,26,gp_Pnt(-28.121,6.50036,-19.3792));
01288 Poles.SetValue(16,27,gp_Pnt(-28.1339,9.58285,-19.5254));
01289 Poles.SetValue(16,28,gp_Pnt(-28.1071,13.6792,-19.5675));
01290 Poles.SetValue(16,29,gp_Pnt(-28.0705,17.7504,-19.8531));
01291 Poles.SetValue(16,30,gp_Pnt(-28.0003,21.791,-19.912));
01292 Poles.SetValue(16,31,gp_Pnt(-27.911,25.7842,-19.8198));
01293 Poles.SetValue(16,32,gp_Pnt(-27.6949,29.1933,-18.9987));
01294 Poles.SetValue(16,33,gp_Pnt(-27.4332,31.8849,-17.6989));
01295 Poles.SetValue(16,34,gp_Pnt(-27.2196,33.6394,-16.7355));
01296 Poles.SetValue(16,35,gp_Pnt(-26.9796,35.7881,-15.4254));
01297 Poles.SetValue(16,36,gp_Pnt(-26.7348,38.4053,-13.9907));
01298 Poles.SetValue(16,37,gp_Pnt(-26.6103,41.1531,-12.7843));
01299 Poles.SetValue(16,38,gp_Pnt(-26.4815,43.872,-11.5302));
01300 Poles.SetValue(16,39,gp_Pnt(-26.3471,47.5059,-9.95418));
01301 Poles.SetValue(16,40,gp_Pnt(-26.1542,51.9566,-8.16439));
01302 Poles.SetValue(16,41,gp_Pnt(-26.0013,57.4301,-6.7748));
01303 Poles.SetValue(16,42,gp_Pnt(-26.0309,63.2656,-6.51026));
01304 Poles.SetValue(16,43,gp_Pnt(-26.0987,71.0753,-5.64577));
01305 Poles.SetValue(16,44,gp_Pnt(-26.1566,84.652,-4.37635));
01306 Poles.SetValue(16,45,gp_Pnt(-26.0777,103.757,-2.92071));
01307 Poles.SetValue(16,46,gp_Pnt(-26.0262,126.895,-1.44846));
01308 Poles.SetValue(16,47,gp_Pnt(-25.9946,142.312,-0.475798));
01309 Poles.SetValue(16,48,gp_Pnt(-25.9691,150.004,0.000603631));
01310 Poles.SetValue(17,1,gp_Pnt(-23.0806,-150.004,0.0019641));
01311 Poles.SetValue(17,2,gp_Pnt(-23.0964,-142.267,-0.330405));
01312 Poles.SetValue(17,3,gp_Pnt(-23.1173,-126.777,-0.994297));
01313 Poles.SetValue(17,4,gp_Pnt(-23.1339,-103.497,-2.23784));
01314 Poles.SetValue(17,5,gp_Pnt(-23.203,-84.3232,-3.12651));
01315 Poles.SetValue(17,6,gp_Pnt(-23.0914,-70.5857,-4.25051));
01316 Poles.SetValue(17,7,gp_Pnt(-23.0079,-62.6967,-4.71921));
01317 Poles.SetValue(17,8,gp_Pnt(-23.0207,-56.9337,-5.11304));
01318 Poles.SetValue(17,9,gp_Pnt(-23.1812,-51.5274,-6.94389));
01319 Poles.SetValue(17,10,gp_Pnt(-23.3792,-47.1212,-8.95957));
01320 Poles.SetValue(17,11,gp_Pnt(-23.5592,-43.5991,-10.8437));
01321 Poles.SetValue(17,12,gp_Pnt(-23.6823,-40.8919,-12.1796));
01322 Poles.SetValue(17,13,gp_Pnt(-23.8673,-38.2715,-13.717));
01323 Poles.SetValue(17,14,gp_Pnt(-24.1096,-35.6834,-15.2627));
01324 Poles.SetValue(17,15,gp_Pnt(-24.3579,-33.557,-16.646));
01325 Poles.SetValue(17,16,gp_Pnt(-24.5176,-31.7432,-17.4483));
01326 Poles.SetValue(17,17,gp_Pnt(-24.7308,-28.9759,-18.5377));
01327 Poles.SetValue(17,18,gp_Pnt(-24.8179,-25.4266,-18.8272));
01328 Poles.SetValue(17,19,gp_Pnt(-24.8974,-21.3738,-18.951));
01329 Poles.SetValue(17,20,gp_Pnt(-24.9391,-17.2569,-18.7823));
01330 Poles.SetValue(17,21,gp_Pnt(-24.9579,-13.1274,-18.8788));
01331 Poles.SetValue(17,22,gp_Pnt(-24.9753,-8.98927,-18.9409));
01332 Poles.SetValue(17,23,gp_Pnt(-24.9913,-5.88506,-19.0143));
01333 Poles.SetValue(17,24,gp_Pnt(-25.0155,-1.74473,-19.0767));
01334 Poles.SetValue(17,25,gp_Pnt(-25.0387,2.39217,-19.1733));
01335 Poles.SetValue(17,26,gp_Pnt(-25.0554,6.52043,-19.304));
01336 Poles.SetValue(17,27,gp_Pnt(-25.062,9.61116,-19.3704));
01337 Poles.SetValue(17,28,gp_Pnt(-25.0579,13.7179,-19.5885));
01338 Poles.SetValue(17,29,gp_Pnt(-25.0328,17.8051,-19.6948));
01339 Poles.SetValue(17,30,gp_Pnt(-24.9947,21.8711,-19.9465));
01340 Poles.SetValue(17,31,gp_Pnt(-24.9153,25.8755,-20.1336));
01341 Poles.SetValue(17,32,gp_Pnt(-24.8254,29.3978,-19.7884));
01342 Poles.SetValue(17,33,gp_Pnt(-24.5662,32.0898,-18.5604));
01343 Poles.SetValue(17,34,gp_Pnt(-24.4055,33.8853,-17.7436));
01344 Poles.SetValue(17,35,gp_Pnt(-24.178,36.0383,-16.4151));
01345 Poles.SetValue(17,36,gp_Pnt(-23.9261,38.6092,-14.8899));
01346 Poles.SetValue(17,37,gp_Pnt(-23.7426,41.2345,-13.4103));
01347 Poles.SetValue(17,38,gp_Pnt(-23.6547,44.0121,-12.2559));
01348 Poles.SetValue(17,39,gp_Pnt(-23.4902,47.5631,-10.4569));
01349 Poles.SetValue(17,40,gp_Pnt(-23.3099,52.0088,-8.56085));
01350 Poles.SetValue(17,41,gp_Pnt(-23.1561,57.4374,-6.92122));
01351 Poles.SetValue(17,42,gp_Pnt(-23.1683,63.2457,-6.58119));
01352 Poles.SetValue(17,43,gp_Pnt(-23.2319,71.0684,-5.75082));
01353 Poles.SetValue(17,44,gp_Pnt(-23.2881,84.6629,-4.4223));
01354 Poles.SetValue(17,45,gp_Pnt(-23.199,103.747,-2.94621));
01355 Poles.SetValue(17,46,gp_Pnt(-23.1451,126.896,-1.46385));
01356 Poles.SetValue(17,47,gp_Pnt(-23.1109,142.313,-0.498328));
01357 Poles.SetValue(17,48,gp_Pnt(-23.0842,150.004,0.000641323));
01358 Poles.SetValue(18,1,gp_Pnt(-20.1956,-150.004,-0.000939892));
01359 Poles.SetValue(18,2,gp_Pnt(-20.2119,-142.265,-0.324814));
01360 Poles.SetValue(18,3,gp_Pnt(-20.2367,-126.781,-0.99002));
01361 Poles.SetValue(18,4,gp_Pnt(-20.2522,-103.48,-2.25874));
01362 Poles.SetValue(18,5,gp_Pnt(-20.3366,-84.3417,-3.14413));
01363 Poles.SetValue(18,6,gp_Pnt(-20.2198,-70.5658,-4.30028));
01364 Poles.SetValue(18,7,gp_Pnt(-20.1558,-62.6899,-4.68856));
01365 Poles.SetValue(18,8,gp_Pnt(-20.1905,-56.9911,-5.31764));
01366 Poles.SetValue(18,9,gp_Pnt(-20.3412,-51.6127,-7.37483));
01367 Poles.SetValue(18,10,gp_Pnt(-20.5364,-47.2541,-9.61034));
01368 Poles.SetValue(18,11,gp_Pnt(-20.6972,-43.7208,-11.486));
01369 Poles.SetValue(18,12,gp_Pnt(-20.8365,-41.0734,-12.9256));
01370 Poles.SetValue(18,13,gp_Pnt(-21.037,-38.5159,-14.5838));
01371 Poles.SetValue(18,14,gp_Pnt(-21.299,-36.0127,-16.2371));
01372 Poles.SetValue(18,15,gp_Pnt(-21.5046,-33.834,-17.4931));
01373 Poles.SetValue(18,16,gp_Pnt(-21.6031,-31.945,-18.0503));
01374 Poles.SetValue(18,17,gp_Pnt(-21.7517,-29.0964,-18.8401));
01375 Poles.SetValue(18,18,gp_Pnt(-21.7895,-25.4868,-18.7856));
01376 Poles.SetValue(18,19,gp_Pnt(-21.8447,-21.407,-18.7832));
01377 Poles.SetValue(18,20,gp_Pnt(-21.8724,-17.2831,-18.7158));
01378 Poles.SetValue(18,21,gp_Pnt(-21.8885,-13.1476,-18.8247));
01379 Poles.SetValue(18,22,gp_Pnt(-21.9053,-9.00401,-18.9335));
01380 Poles.SetValue(18,23,gp_Pnt(-21.9203,-5.89434,-19.0031));
01381 Poles.SetValue(18,24,gp_Pnt(-21.9444,-1.74696,-19.0678));
01382 Poles.SetValue(18,25,gp_Pnt(-21.9704,2.39832,-19.1774));
01383 Poles.SetValue(18,26,gp_Pnt(-21.9895,6.53686,-19.2539));
01384 Poles.SetValue(18,27,gp_Pnt(-21.9976,9.63356,-19.3732));
01385 Poles.SetValue(18,28,gp_Pnt(-21.9987,13.7521,-19.5004));
01386 Poles.SetValue(18,29,gp_Pnt(-21.9832,17.8493,-19.6642));
01387 Poles.SetValue(18,30,gp_Pnt(-21.9481,21.9195,-19.8425));
01388 Poles.SetValue(18,31,gp_Pnt(-21.8998,25.958,-20.0751));
01389 Poles.SetValue(18,32,gp_Pnt(-21.8165,29.4779,-20.0877));
01390 Poles.SetValue(18,33,gp_Pnt(-21.6537,32.2814,-19.218));
01391 Poles.SetValue(18,34,gp_Pnt(-21.5332,34.1277,-18.592));
01392 Poles.SetValue(18,35,gp_Pnt(-21.3059,36.244,-17.2119));
01393 Poles.SetValue(18,36,gp_Pnt(-21.0772,38.8004,-15.6898));
01394 Poles.SetValue(18,37,gp_Pnt(-20.8763,41.346,-14.041));
01395 Poles.SetValue(18,38,gp_Pnt(-20.7928,44.1142,-12.8629));
01396 Poles.SetValue(18,39,gp_Pnt(-20.6422,47.6606,-11.0393));
01397 Poles.SetValue(18,40,gp_Pnt(-20.4703,52.0726,-9.0358));
01398 Poles.SetValue(18,41,gp_Pnt(-20.3288,57.4895,-7.14688));
01399 Poles.SetValue(18,42,gp_Pnt(-20.3107,63.2274,-6.59652));
01400 Poles.SetValue(18,43,gp_Pnt(-20.366,71.0607,-5.86066));
01401 Poles.SetValue(18,44,gp_Pnt(-20.4189,84.6755,-4.47339));
01402 Poles.SetValue(18,45,gp_Pnt(-20.32,103.734,-2.95074));
01403 Poles.SetValue(18,46,gp_Pnt(-20.2644,126.899,-1.49374));
01404 Poles.SetValue(18,47,gp_Pnt(-20.227,142.314,-0.508887));
01405 Poles.SetValue(18,48,gp_Pnt(-20.1991,150.004,-0.00112432));
01406 Poles.SetValue(19,1,gp_Pnt(-16.3491,-150.003,0.00439318));
01407 Poles.SetValue(19,2,gp_Pnt(-16.3656,-142.264,-0.34061));
01408 Poles.SetValue(19,3,gp_Pnt(-16.3951,-126.785,-0.955435));
01409 Poles.SetValue(19,4,gp_Pnt(-16.4123,-103.462,-2.32584));
01410 Poles.SetValue(19,5,gp_Pnt(-16.5104,-84.3597,-3.09639));
01411 Poles.SetValue(19,6,gp_Pnt(-16.3944,-70.5334,-4.33957));
01412 Poles.SetValue(19,7,gp_Pnt(-16.3623,-62.6963,-4.6472));
01413 Poles.SetValue(19,8,gp_Pnt(-16.4203,-57.084,-5.58419));
01414 Poles.SetValue(19,9,gp_Pnt(-16.5511,-51.7391,-7.92073));
01415 Poles.SetValue(19,10,gp_Pnt(-16.7137,-47.3952,-10.3398));
01416 Poles.SetValue(19,11,gp_Pnt(-16.8584,-43.8683,-12.2379));
01417 Poles.SetValue(19,12,gp_Pnt(-17.0069,-41.2968,-13.8148));
01418 Poles.SetValue(19,13,gp_Pnt(-17.234,-38.8784,-15.6644));
01419 Poles.SetValue(19,14,gp_Pnt(-17.4559,-36.3846,-17.2802));
01420 Poles.SetValue(19,15,gp_Pnt(-17.5711,-34.0769,-18.2311));
01421 Poles.SetValue(19,16,gp_Pnt(-17.6306,-32.1332,-18.5268));
01422 Poles.SetValue(19,17,gp_Pnt(-17.7058,-29.1815,-18.8298));
01423 Poles.SetValue(19,18,gp_Pnt(-17.7222,-25.5444,-18.565));
01424 Poles.SetValue(19,19,gp_Pnt(-17.755,-21.4437,-18.6143));
01425 Poles.SetValue(19,20,gp_Pnt(-17.7721,-17.3146,-18.6936));
01426 Poles.SetValue(19,21,gp_Pnt(-17.7833,-13.1725,-18.7973));
01427 Poles.SetValue(19,22,gp_Pnt(-17.7956,-9.02146,-18.8982));
01428 Poles.SetValue(19,23,gp_Pnt(-17.8084,-5.90664,-18.9585));
01429 Poles.SetValue(19,24,gp_Pnt(-17.8297,-1.75266,-19.0369));
01430 Poles.SetValue(19,25,gp_Pnt(-17.8562,2.40144,-19.105));
01431 Poles.SetValue(19,26,gp_Pnt(-17.8776,6.54951,-19.2157));
01432 Poles.SetValue(19,27,gp_Pnt(-17.8892,9.65525,-19.2919));
01433 Poles.SetValue(19,28,gp_Pnt(-17.8977,13.7848,-19.4492));
01434 Poles.SetValue(19,29,gp_Pnt(-17.8891,17.8872,-19.6002));
01435 Poles.SetValue(19,30,gp_Pnt(-17.8651,21.9666,-19.7805));
01436 Poles.SetValue(19,31,gp_Pnt(-17.8168,26.0004,-19.778));
01437 Poles.SetValue(19,32,gp_Pnt(-17.7893,29.5844,-20.0714));
01438 Poles.SetValue(19,33,gp_Pnt(-17.6844,32.4681,-19.7048));
01439 Poles.SetValue(19,34,gp_Pnt(-17.6156,34.381,-19.3921));
01440 Poles.SetValue(19,35,gp_Pnt(-17.468,36.5995,-18.2429));
01441 Poles.SetValue(19,36,gp_Pnt(-17.273,39.1443,-16.764));
01442 Poles.SetValue(19,37,gp_Pnt(-17.0603,41.5783,-14.9142));
01443 Poles.SetValue(19,38,gp_Pnt(-16.942,44.2046,-13.5092));
01444 Poles.SetValue(19,39,gp_Pnt(-16.8113,47.7336,-11.6467));
01445 Poles.SetValue(19,40,gp_Pnt(-16.6707,52.1542,-9.5335));
01446 Poles.SetValue(19,41,gp_Pnt(-16.5537,57.549,-7.39217));
01447 Poles.SetValue(19,42,gp_Pnt(-16.5136,63.2221,-6.59968));
01448 Poles.SetValue(19,43,gp_Pnt(-16.5433,71.0421,-5.99115));
01449 Poles.SetValue(19,44,gp_Pnt(-16.5912,84.6886,-4.45254));
01450 Poles.SetValue(19,45,gp_Pnt(-16.4831,103.728,-3.08142));
01451 Poles.SetValue(19,46,gp_Pnt(-16.423,126.896,-1.4405));
01452 Poles.SetValue(19,47,gp_Pnt(-16.3811,142.316,-0.552973));
01453 Poles.SetValue(19,48,gp_Pnt(-16.3527,150.004,0.00512247));
01454 Poles.SetValue(20,1,gp_Pnt(-11.5409,-150.004,0.00117643));
01455 Poles.SetValue(20,2,gp_Pnt(-11.5567,-142.255,-0.323629));
01456 Poles.SetValue(20,3,gp_Pnt(-11.5945,-126.808,-1.00415));
01457 Poles.SetValue(20,4,gp_Pnt(-11.6123,-103.418,-2.2741));
01458 Poles.SetValue(20,5,gp_Pnt(-11.7238,-84.4038,-3.17774));
01459 Poles.SetValue(20,6,gp_Pnt(-11.6216,-70.4805,-4.34939));
01460 Poles.SetValue(20,7,gp_Pnt(-11.6306,-62.7158,-4.61848));
01461 Poles.SetValue(20,8,gp_Pnt(-11.6985,-57.2166,-5.86008));
01462 Poles.SetValue(20,9,gp_Pnt(-11.804,-51.9451,-8.59692));
01463 Poles.SetValue(20,10,gp_Pnt(-11.9017,-47.511,-11.0341));
01464 Poles.SetValue(20,11,gp_Pnt(-12.0348,-44.054,-13.0527));
01465 Poles.SetValue(20,12,gp_Pnt(-12.1892,-41.6494,-14.8698));
01466 Poles.SetValue(20,13,gp_Pnt(-12.3712,-39.2779,-16.7157));
01467 Poles.SetValue(20,14,gp_Pnt(-12.4805,-36.6354,-17.9375));
01468 Poles.SetValue(20,15,gp_Pnt(-12.5363,-34.226,-18.5069));
01469 Poles.SetValue(20,16,gp_Pnt(-12.561,-32.2298,-18.5446));
01470 Poles.SetValue(20,17,gp_Pnt(-12.6007,-29.2245,-18.4861));
01471 Poles.SetValue(20,18,gp_Pnt(-12.6061,-25.5943,-18.4035));
01472 Poles.SetValue(20,19,gp_Pnt(-12.6185,-21.4799,-18.541));
01473 Poles.SetValue(20,20,gp_Pnt(-12.6259,-17.3464,-18.6219));
01474 Poles.SetValue(20,21,gp_Pnt(-12.6294,-13.198,-18.7456));
01475 Poles.SetValue(20,22,gp_Pnt(-12.6383,-9.04337,-18.8541));
01476 Poles.SetValue(20,23,gp_Pnt(-12.6485,-5.92505,-18.9104));
01477 Poles.SetValue(20,24,gp_Pnt(-12.6659,-1.76525,-18.964));
01478 Poles.SetValue(20,25,gp_Pnt(-12.6869,2.39485,-19.067));
01479 Poles.SetValue(20,26,gp_Pnt(-12.7086,6.55182,-19.1737));
01480 Poles.SetValue(20,27,gp_Pnt(-12.7237,9.66537,-19.2438));
01481 Poles.SetValue(20,28,gp_Pnt(-12.7365,13.803,-19.406));
01482 Poles.SetValue(20,29,gp_Pnt(-12.7387,17.9165,-19.5004));
01483 Poles.SetValue(20,30,gp_Pnt(-12.725,21.9984,-19.5481));
01484 Poles.SetValue(20,31,gp_Pnt(-12.7006,26.0496,-19.5971));
01485 Poles.SetValue(20,32,gp_Pnt(-12.6724,29.61,-19.7481));
01486 Poles.SetValue(20,33,gp_Pnt(-12.6172,32.5589,-19.7855));
01487 Poles.SetValue(20,34,gp_Pnt(-12.577,34.5045,-19.6765));
01488 Poles.SetValue(20,35,gp_Pnt(-12.5091,36.8627,-18.9431));
01489 Poles.SetValue(20,36,gp_Pnt(-12.3992,39.4504,-17.717));
01490 Poles.SetValue(20,37,gp_Pnt(-12.2417,41.8732,-15.8993));
01491 Poles.SetValue(20,38,gp_Pnt(-12.1136,44.3374,-14.2229));
01492 Poles.SetValue(20,39,gp_Pnt(-12.0124,47.8838,-12.4053));
01493 Poles.SetValue(20,40,gp_Pnt(-11.9096,52.2497,-10.0193));
01494 Poles.SetValue(20,41,gp_Pnt(-11.8312,57.645,-7.74397));
01495 Poles.SetValue(20,42,gp_Pnt(-11.7795,63.2306,-6.59009));
01496 Poles.SetValue(20,43,gp_Pnt(-11.7676,71.0031,-6.05246));
01497 Poles.SetValue(20,44,gp_Pnt(-11.803,84.7251,-4.53343));
01498 Poles.SetValue(20,45,gp_Pnt(-11.6834,103.69,-3.04429));
01499 Poles.SetValue(20,46,gp_Pnt(-11.6246,126.918,-1.52563));
01500 Poles.SetValue(20,47,gp_Pnt(-11.5716,142.307,-0.515972));
01501 Poles.SetValue(20,48,gp_Pnt(-11.5446,150.004,0.000245205));
01502 Poles.SetValue(21,1,gp_Pnt(-7.21355,-150.004,-0.0025218));
01503 Poles.SetValue(21,2,gp_Pnt(-7.23063,-142.252,-0.331648));
01504 Poles.SetValue(21,3,gp_Pnt(-7.2677,-126.82,-1.02226));
01505 Poles.SetValue(21,4,gp_Pnt(-7.30323,-103.391,-2.23259));
01506 Poles.SetValue(21,5,gp_Pnt(-7.39757,-84.4224,-3.1889));
01507 Poles.SetValue(21,6,gp_Pnt(-7.34772,-70.4538,-4.37072));
01508 Poles.SetValue(21,7,gp_Pnt(-7.3712,-62.7345,-4.5951));
01509 Poles.SetValue(21,8,gp_Pnt(-7.42816,-57.2934,-6.04634));
01510 Poles.SetValue(21,9,gp_Pnt(-7.49535,-52.026,-8.86275));
01511 Poles.SetValue(21,10,gp_Pnt(-7.55838,-47.6033,-11.3943));
01512 Poles.SetValue(21,11,gp_Pnt(-7.65,-44.2056,-13.5286));
01513 Poles.SetValue(21,12,gp_Pnt(-7.75695,-41.8805,-15.4454));
01514 Poles.SetValue(21,13,gp_Pnt(-7.85282,-39.4135,-17.0864));
01515 Poles.SetValue(21,14,gp_Pnt(-7.91823,-36.7399,-18.1659));
01516 Poles.SetValue(21,15,gp_Pnt(-7.94146,-34.2627,-18.4245));
01517 Poles.SetValue(21,16,gp_Pnt(-7.95506,-32.2581,-18.4508));
01518 Poles.SetValue(21,17,gp_Pnt(-7.97185,-29.2355,-18.438));
01519 Poles.SetValue(21,18,gp_Pnt(-7.9724,-25.6227,-18.4383));
01520 Poles.SetValue(21,19,gp_Pnt(-7.97498,-21.5055,-18.5136));
01521 Poles.SetValue(21,20,gp_Pnt(-7.97332,-17.3696,-18.5895));
01522 Poles.SetValue(21,21,gp_Pnt(-7.9724,-13.2197,-18.6677));
01523 Poles.SetValue(21,22,gp_Pnt(-7.97728,-9.06333,-18.7605));
01524 Poles.SetValue(21,23,gp_Pnt(-7.98383,-5.94346,-18.8376));
01525 Poles.SetValue(21,24,gp_Pnt(-7.99613,-1.78048,-18.9102));
01526 Poles.SetValue(21,25,gp_Pnt(-8.0124,2.38413,-18.9749));
01527 Poles.SetValue(21,26,gp_Pnt(-8.03056,6.5435,-19.1002));
01528 Poles.SetValue(21,27,gp_Pnt(-8.04412,9.658,-19.2087));
01529 Poles.SetValue(21,28,gp_Pnt(-8.06164,13.8027,-19.2687));
01530 Poles.SetValue(21,29,gp_Pnt(-8.0717,17.9217,-19.335));
01531 Poles.SetValue(21,30,gp_Pnt(-8.07055,22.0086,-19.4167));
01532 Poles.SetValue(21,31,gp_Pnt(-8.05978,26.0647,-19.4458));
01533 Poles.SetValue(21,32,gp_Pnt(-8.05131,29.6191,-19.5118));
01534 Poles.SetValue(21,33,gp_Pnt(-8.01648,32.5759,-19.5302));
01535 Poles.SetValue(21,34,gp_Pnt(-7.99358,34.5369,-19.5134));
01536 Poles.SetValue(21,35,gp_Pnt(-7.96305,36.995,-19.2659));
01537 Poles.SetValue(21,36,gp_Pnt(-7.89264,39.5831,-18.0731));
01538 Poles.SetValue(21,37,gp_Pnt(-7.80775,42.0631,-16.4261));
01539 Poles.SetValue(21,38,gp_Pnt(-7.72798,44.4322,-14.6014));
01540 Poles.SetValue(21,39,gp_Pnt(-7.66064,47.9074,-12.6609));
01541 Poles.SetValue(21,40,gp_Pnt(-7.60827,52.3383,-10.3218));
01542 Poles.SetValue(21,41,gp_Pnt(-7.5563,57.6762,-7.76823));
01543 Poles.SetValue(21,42,gp_Pnt(-7.51475,63.2251,-6.53953));
01544 Poles.SetValue(21,43,gp_Pnt(-7.4842,70.9764,-6.08044));
01545 Poles.SetValue(21,44,gp_Pnt(-7.47797,84.7397,-4.49862));
01546 Poles.SetValue(21,45,gp_Pnt(-7.3721,103.678,-3.1159));
01547 Poles.SetValue(21,46,gp_Pnt(-7.30045,126.923,-1.49726));
01548 Poles.SetValue(21,47,gp_Pnt(-7.24466,142.305,-0.525039));
01549 Poles.SetValue(21,48,gp_Pnt(-7.21746,150.004,0.00128023));
01550 Poles.SetValue(22,1,gp_Pnt(-4.32857,-150.003,-0.00540373));
01551 Poles.SetValue(22,2,gp_Pnt(-4.34699,-142.25,-0.340193));
01552 Poles.SetValue(22,3,gp_Pnt(-4.38209,-126.827,-1.02934));
01553 Poles.SetValue(22,4,gp_Pnt(-4.43222,-103.375,-2.20818));
01554 Poles.SetValue(22,5,gp_Pnt(-4.51083,-84.4311,-3.19069));
01555 Poles.SetValue(22,6,gp_Pnt(-4.50022,-70.4378,-4.36422));
01556 Poles.SetValue(22,7,gp_Pnt(-4.53329,-62.7487,-4.58414));
01557 Poles.SetValue(22,8,gp_Pnt(-4.57686,-57.3432,-6.16997));
01558 Poles.SetValue(22,9,gp_Pnt(-4.61953,-52.0531,-8.97091));
01559 Poles.SetValue(22,10,gp_Pnt(-4.66076,-47.6551,-11.5891));
01560 Poles.SetValue(22,11,gp_Pnt(-4.71605,-44.2575,-13.7456));
01561 Poles.SetValue(22,12,gp_Pnt(-4.77767,-41.9525,-15.6786));
01562 Poles.SetValue(22,13,gp_Pnt(-4.83539,-39.4972,-17.3021));
01563 Poles.SetValue(22,14,gp_Pnt(-4.8662,-36.7917,-18.2384));
01564 Poles.SetValue(22,15,gp_Pnt(-4.87772,-34.2883,-18.3918));
01565 Poles.SetValue(22,16,gp_Pnt(-4.88127,-32.275,-18.4126));
01566 Poles.SetValue(22,17,gp_Pnt(-4.88815,-29.2471,-18.3654));
01567 Poles.SetValue(22,18,gp_Pnt(-4.88172,-25.6402,-18.4073));
01568 Poles.SetValue(22,19,gp_Pnt(-4.87676,-21.522,-18.4843));
01569 Poles.SetValue(22,20,gp_Pnt(-4.86998,-17.3855,-18.5721));
01570 Poles.SetValue(22,21,gp_Pnt(-4.86604,-13.2345,-18.6261));
01571 Poles.SetValue(22,22,gp_Pnt(-4.868,-9.07675,-18.7038));
01572 Poles.SetValue(22,23,gp_Pnt(-4.87197,-5.95561,-18.7836));
01573 Poles.SetValue(22,24,gp_Pnt(-4.88122,-1.79016,-18.8508));
01574 Poles.SetValue(22,25,gp_Pnt(-4.89416,2.37596,-18.9454));
01575 Poles.SetValue(22,26,gp_Pnt(-4.91129,6.53746,-19.0539));
01576 Poles.SetValue(22,27,gp_Pnt(-4.92518,9.65454,-19.1026));
01577 Poles.SetValue(22,28,gp_Pnt(-4.944,13.8012,-19.1613));
01578 Poles.SetValue(22,29,gp_Pnt(-4.95795,17.9235,-19.2456));
01579 Poles.SetValue(22,30,gp_Pnt(-4.96475,22.0131,-19.3102));
01580 Poles.SetValue(22,31,gp_Pnt(-4.96533,26.0736,-19.3498));
01581 Poles.SetValue(22,32,gp_Pnt(-4.96079,29.6176,-19.4284));
01582 Poles.SetValue(22,33,gp_Pnt(-4.94348,32.5873,-19.466));
01583 Poles.SetValue(22,34,gp_Pnt(-4.93172,34.561,-19.4669));
01584 Poles.SetValue(22,35,gp_Pnt(-4.91254,37.0161,-19.3038));
01585 Poles.SetValue(22,36,gp_Pnt(-4.88212,39.6621,-18.2512));
01586 Poles.SetValue(22,37,gp_Pnt(-4.83796,42.1306,-16.6572));
01587 Poles.SetValue(22,38,gp_Pnt(-4.79279,44.4479,-14.7487));
01588 Poles.SetValue(22,39,gp_Pnt(-4.75792,47.9195,-12.7903));
01589 Poles.SetValue(22,40,gp_Pnt(-4.73201,52.3475,-10.3957));
01590 Poles.SetValue(22,41,gp_Pnt(-4.70638,57.7231,-7.87102));
01591 Poles.SetValue(22,42,gp_Pnt(-4.67107,63.2171,-6.47477));
01592 Poles.SetValue(22,43,gp_Pnt(-4.63073,70.9601,-6.08756));
01593 Poles.SetValue(22,44,gp_Pnt(-4.59233,84.7477,-4.47556));
01594 Poles.SetValue(22,45,gp_Pnt(-4.49985,103.673,-3.18097));
01595 Poles.SetValue(22,46,gp_Pnt(-4.41639,126.923,-1.46262));
01596 Poles.SetValue(22,47,gp_Pnt(-4.36049,142.305,-0.536542));
01597 Poles.SetValue(22,48,gp_Pnt(-4.3327,150.004,0.000952771));
01598 Poles.SetValue(23,1,gp_Pnt(-2.88635,-150.004,-0.00575623));
01599 Poles.SetValue(23,2,gp_Pnt(-2.90517,-142.249,-0.341549));
01600 Poles.SetValue(23,3,gp_Pnt(-2.93974,-126.829,-1.02278));
01601 Poles.SetValue(23,4,gp_Pnt(-2.99795,-103.372,-2.19554));
01602 Poles.SetValue(23,5,gp_Pnt(-3.06615,-84.432,-3.18891));
01603 Poles.SetValue(23,6,gp_Pnt(-3.07817,-70.436,-4.35294));
01604 Poles.SetValue(23,7,gp_Pnt(-3.11358,-62.751,-4.58803));
01605 Poles.SetValue(23,8,gp_Pnt(-3.149,-57.3489,-6.16224));
01606 Poles.SetValue(23,9,gp_Pnt(-3.18087,-52.0832,-9.02443));
01607 Poles.SetValue(23,10,gp_Pnt(-3.20794,-47.6671,-11.6136));
01608 Poles.SetValue(23,11,gp_Pnt(-3.24262,-44.2844,-13.7946));
01609 Poles.SetValue(23,12,gp_Pnt(-3.28123,-41.9804,-15.721));
01610 Poles.SetValue(23,13,gp_Pnt(-3.31573,-39.5144,-17.3255));
01611 Poles.SetValue(23,14,gp_Pnt(-3.33437,-36.7949,-18.2234));
01612 Poles.SetValue(23,15,gp_Pnt(-3.34011,-34.2951,-18.3746));
01613 Poles.SetValue(23,16,gp_Pnt(-3.34154,-32.2808,-18.382));
01614 Poles.SetValue(23,17,gp_Pnt(-3.34327,-29.2512,-18.3471));
01615 Poles.SetValue(23,18,gp_Pnt(-3.33398,-25.6485,-18.3903));
01616 Poles.SetValue(23,19,gp_Pnt(-3.32526,-21.5295,-18.4702));
01617 Poles.SetValue(23,20,gp_Pnt(-3.31575,-17.3931,-18.5594));
01618 Poles.SetValue(23,21,gp_Pnt(-3.30973,-13.2415,-18.6106));
01619 Poles.SetValue(23,22,gp_Pnt(-3.3096,-9.08307,-18.6879));
01620 Poles.SetValue(23,23,gp_Pnt(-3.31238,-5.96107,-18.7525));
01621 Poles.SetValue(23,24,gp_Pnt(-3.31981,-1.7953,-18.8291));
01622 Poles.SetValue(23,25,gp_Pnt(-3.33173,2.3711,-18.9327));
01623 Poles.SetValue(23,26,gp_Pnt(-3.34803,6.53266,-19.0255));
01624 Poles.SetValue(23,27,gp_Pnt(-3.36177,9.6497,-19.0722));
01625 Poles.SetValue(23,28,gp_Pnt(-3.38073,13.796,-19.1329));
01626 Poles.SetValue(23,29,gp_Pnt(-3.39705,17.9191,-19.2008));
01627 Poles.SetValue(23,30,gp_Pnt(-3.40752,22.0091,-19.2675));
01628 Poles.SetValue(23,31,gp_Pnt(-3.41262,26.0715,-19.318));
01629 Poles.SetValue(23,32,gp_Pnt(-3.4138,29.6137,-19.3688));
01630 Poles.SetValue(23,33,gp_Pnt(-3.40248,32.5858,-19.4134));
01631 Poles.SetValue(23,34,gp_Pnt(-3.39479,34.5605,-19.4192));
01632 Poles.SetValue(23,35,gp_Pnt(-3.38139,37.0117,-19.2935));
01633 Poles.SetValue(23,36,gp_Pnt(-3.36593,39.6724,-18.2438));
01634 Poles.SetValue(23,37,gp_Pnt(-3.34268,42.1365,-16.6785));
01635 Poles.SetValue(23,38,gp_Pnt(-3.32014,44.4714,-14.7844));
01636 Poles.SetValue(23,39,gp_Pnt(-3.30336,47.9303,-12.8108));
01637 Poles.SetValue(23,40,gp_Pnt(-3.29238,52.3621,-10.4158));
01638 Poles.SetValue(23,41,gp_Pnt(-3.27781,57.7309,-7.88219));
01639 Poles.SetValue(23,42,gp_Pnt(-3.24892,63.2201,-6.4727));
01640 Poles.SetValue(23,43,gp_Pnt(-3.20448,70.9551,-6.07441));
01641 Poles.SetValue(23,44,gp_Pnt(-3.14808,84.7489,-4.47297));
01642 Poles.SetValue(23,45,gp_Pnt(-3.06369,103.669,-3.15564));
01643 Poles.SetValue(23,46,gp_Pnt(-2.97399,126.928,-1.47488));
01644 Poles.SetValue(23,47,gp_Pnt(-2.9181,142.304,-0.533731));
01645 Poles.SetValue(23,48,gp_Pnt(-2.8902,150.005,-0.00415237));
01646 Poles.SetValue(24,1,gp_Pnt(-0.963346,-150.005,-0.00635749));
01647 Poles.SetValue(24,2,gp_Pnt(-0.982765,-142.248,-0.343803));
01648 Poles.SetValue(24,3,gp_Pnt(-1.01653,-126.833,-1.01474));
01649 Poles.SetValue(24,4,gp_Pnt(-1.0855,-103.368,-2.17966));
01650 Poles.SetValue(24,5,gp_Pnt(-1.14,-84.4332,-3.18535));
01651 Poles.SetValue(24,6,gp_Pnt(-1.18193,-70.4337,-4.33879));
01652 Poles.SetValue(24,7,gp_Pnt(-1.22089,-62.7532,-4.58618));
01653 Poles.SetValue(24,8,gp_Pnt(-1.24557,-57.3605,-6.16284));
01654 Poles.SetValue(24,9,gp_Pnt(-1.26254,-52.1152,-9.08105));
01655 Poles.SetValue(24,10,gp_Pnt(-1.27132,-47.6865,-11.6584));
01656 Poles.SetValue(24,11,gp_Pnt(-1.27992,-44.3077,-13.8385));
01657 Poles.SetValue(24,12,gp_Pnt(-1.28505,-42.028,-15.8032));
01658 Poles.SetValue(24,13,gp_Pnt(-1.29202,-39.5278,-17.3361));
01659 Poles.SetValue(24,14,gp_Pnt(-1.29044,-36.8146,-18.2432));
01660 Poles.SetValue(24,15,gp_Pnt(-1.2914,-34.2976,-18.337));
01661 Poles.SetValue(24,16,gp_Pnt(-1.28862,-32.2873,-18.3422));
01662 Poles.SetValue(24,17,gp_Pnt(-1.28371,-29.2589,-18.3188));
01663 Poles.SetValue(24,18,gp_Pnt(-1.27051,-25.6583,-18.3674));
01664 Poles.SetValue(24,19,gp_Pnt(-1.25674,-21.5399,-18.4519));
01665 Poles.SetValue(24,20,gp_Pnt(-1.24362,-17.4031,-18.5423));
01666 Poles.SetValue(24,21,gp_Pnt(-1.23485,-13.2508,-18.5894));
01667 Poles.SetValue(24,22,gp_Pnt(-1.23205,-9.09139,-18.6638));
01668 Poles.SetValue(24,23,gp_Pnt(-1.23315,-5.96846,-18.7159));
01669 Poles.SetValue(24,24,gp_Pnt(-1.23832,-1.80206,-18.7988));
01670 Poles.SetValue(24,25,gp_Pnt(-1.24872,2.36463,-18.9162));
01671 Poles.SetValue(24,26,gp_Pnt(-1.26403,6.5264,-18.9901));
01672 Poles.SetValue(24,27,gp_Pnt(-1.27763,9.64349,-19.0285));
01673 Poles.SetValue(24,28,gp_Pnt(-1.29677,13.7898,-19.0962));
01674 Poles.SetValue(24,29,gp_Pnt(-1.31634,17.9135,-19.1409));
01675 Poles.SetValue(24,30,gp_Pnt(-1.33161,22.005,-19.2088));
01676 Poles.SetValue(24,31,gp_Pnt(-1.34301,26.0674,-19.2798));
01677 Poles.SetValue(24,32,gp_Pnt(-1.35106,29.6117,-19.2876));
01678 Poles.SetValue(24,33,gp_Pnt(-1.34846,32.5823,-19.3398));
01679 Poles.SetValue(24,34,gp_Pnt(-1.34527,34.5559,-19.385));
01680 Poles.SetValue(24,35,gp_Pnt(-1.34071,37.0193,-19.2612));
01681 Poles.SetValue(24,36,gp_Pnt(-1.34509,39.6789,-18.263));
01682 Poles.SetValue(24,37,gp_Pnt(-1.35008,42.1558,-16.6984));
01683 Poles.SetValue(24,38,gp_Pnt(-1.35773,44.4897,-14.8274));
01684 Poles.SetValue(24,39,gp_Pnt(-1.36444,47.9479,-12.8384));
01685 Poles.SetValue(24,40,gp_Pnt(-1.37307,52.376,-10.4394));
01686 Poles.SetValue(24,41,gp_Pnt(-1.37346,57.7433,-7.89619));
01687 Poles.SetValue(24,42,gp_Pnt(-1.35291,63.2224,-6.46618));
01688 Poles.SetValue(24,43,gp_Pnt(-1.30269,70.9487,-6.0561));
01689 Poles.SetValue(24,44,gp_Pnt(-1.2225,84.7507,-4.47221));
01690 Poles.SetValue(24,45,gp_Pnt(-1.1488,103.665,-3.1278));
01691 Poles.SetValue(24,46,gp_Pnt(-1.05086,126.933,-1.48899));
01692 Poles.SetValue(24,47,gp_Pnt(-0.994938,142.302,-0.530106));
01693 Poles.SetValue(24,48,gp_Pnt(-0.966871,150.006,-0.0110631));
01694 Poles.SetValue(25,1,gp_Pnt(0.959819,-150.003,0.00568631));
01695 Poles.SetValue(25,2,gp_Pnt(0.940055,-142.247,-0.331366));
01696 Poles.SetValue(25,3,gp_Pnt(0.906483,-126.833,-0.995719));
01697 Poles.SetValue(25,4,gp_Pnt(0.827614,-103.361,-2.15145));
01698 Poles.SetValue(25,5,gp_Pnt(0.785273,-84.4342,-3.16894));
01699 Poles.SetValue(25,6,gp_Pnt(0.714392,-70.4325,-4.31753));
01700 Poles.SetValue(25,7,gp_Pnt(0.672237,-62.7537,-4.559));
01701 Poles.SetValue(25,8,gp_Pnt(0.659329,-57.3653,-6.14528));
01702 Poles.SetValue(25,9,gp_Pnt(0.661645,-52.1004,-9.03387));
01703 Poles.SetValue(25,10,gp_Pnt(0.669516,-47.6625,-11.5964));
01704 Poles.SetValue(25,11,gp_Pnt(0.689569,-44.3049,-13.8062));
01705 Poles.SetValue(25,12,gp_Pnt(0.71644,-42.0351,-15.7831));
01706 Poles.SetValue(25,13,gp_Pnt(0.738005,-39.535,-17.3193));
01707 Poles.SetValue(25,14,gp_Pnt(0.754916,-36.82,-18.2146));
01708 Poles.SetValue(25,15,gp_Pnt(0.759797,-34.3048,-18.3011));
01709 Poles.SetValue(25,16,gp_Pnt(0.766913,-32.293,-18.3232));
01710 Poles.SetValue(25,17,gp_Pnt(0.776889,-29.2662,-18.2948));
01711 Poles.SetValue(25,18,gp_Pnt(0.794825,-25.6669,-18.3503));
01712 Poles.SetValue(25,19,gp_Pnt(0.812837,-21.5492,-18.4233));
01713 Poles.SetValue(25,20,gp_Pnt(0.829745,-17.4125,-18.5129));
01714 Poles.SetValue(25,21,gp_Pnt(0.841595,-13.2595,-18.5688));
01715 Poles.SetValue(25,22,gp_Pnt(0.847267,-9.09893,-18.6407));
01716 Poles.SetValue(25,23,gp_Pnt(0.848219,-5.97561,-18.6984));
01717 Poles.SetValue(25,24,gp_Pnt(0.844946,-1.80848,-18.7707));
01718 Poles.SetValue(25,25,gp_Pnt(0.835788,2.35803,-18.8937));
01719 Poles.SetValue(25,26,gp_Pnt(0.820538,6.52081,-18.96));
01720 Poles.SetValue(25,27,gp_Pnt(0.806453,9.63874,-18.9827));
01721 Poles.SetValue(25,28,gp_Pnt(0.786356,13.7858,-19.059));
01722 Poles.SetValue(25,29,gp_Pnt(0.763708,17.9106,-19.0832));
01723 Poles.SetValue(25,30,gp_Pnt(0.743879,22.0023,-19.1557));
01724 Poles.SetValue(25,31,gp_Pnt(0.727329,26.0648,-19.2442));
01725 Poles.SetValue(25,32,gp_Pnt(0.712384,29.6076,-19.2121));
01726 Poles.SetValue(25,33,gp_Pnt(0.709962,32.5804,-19.3472));
01727 Poles.SetValue(25,34,gp_Pnt(0.705581,34.5476,-19.3214));
01728 Poles.SetValue(25,35,gp_Pnt(0.704066,37.0253,-19.2554));
01729 Poles.SetValue(25,36,gp_Pnt(0.68005,39.6706,-18.2118));
01730 Poles.SetValue(25,37,gp_Pnt(0.648205,42.1617,-16.677));
01731 Poles.SetValue(25,38,gp_Pnt(0.61021,44.4849,-14.7789));
01732 Poles.SetValue(25,39,gp_Pnt(0.578672,47.947,-12.7969));
01733 Poles.SetValue(25,40,gp_Pnt(0.549361,52.3609,-10.3659));
01734 Poles.SetValue(25,41,gp_Pnt(0.531102,57.7221,-7.80854));
01735 Poles.SetValue(25,42,gp_Pnt(0.542483,63.2121,-6.41916));
01736 Poles.SetValue(25,43,gp_Pnt(0.600457,70.9445,-6.01981));
01737 Poles.SetValue(25,44,gp_Pnt(0.701564,84.7526,-4.48639));
01738 Poles.SetValue(25,45,gp_Pnt(0.766341,103.657,-3.09192));
01739 Poles.SetValue(25,46,gp_Pnt(0.870496,126.929,-1.44947));
01740 Poles.SetValue(25,47,gp_Pnt(0.927725,142.298,-0.506458));
01741 Poles.SetValue(25,48,gp_Pnt(0.955638,150.002,0.013664));
01742 Poles.SetValue(26,1,gp_Pnt(2.88276,-150.003,0.00510712));
01743 Poles.SetValue(26,2,gp_Pnt(2.86273,-142.249,-0.334571));
01744 Poles.SetValue(26,3,gp_Pnt(2.82941,-126.831,-0.981236));
01745 Poles.SetValue(26,4,gp_Pnt(2.74035,-103.363,-2.14876));
01746 Poles.SetValue(26,5,gp_Pnt(2.71066,-84.4321,-3.14812));
01747 Poles.SetValue(26,6,gp_Pnt(2.61085,-70.4333,-4.28563));
01748 Poles.SetValue(26,7,gp_Pnt(2.56523,-62.7558,-4.53254));
01749 Poles.SetValue(26,8,gp_Pnt(2.56347,-57.3598,-6.10287));
01750 Poles.SetValue(26,9,gp_Pnt(2.58158,-52.1003,-8.99526));
01751 Poles.SetValue(26,10,gp_Pnt(2.60803,-47.6567,-11.5441));
01752 Poles.SetValue(26,11,gp_Pnt(2.65382,-44.2876,-13.7304));
01753 Poles.SetValue(26,12,gp_Pnt(2.71408,-42.0076,-15.6963));
01754 Poles.SetValue(26,13,gp_Pnt(2.7632,-39.5234,-17.2513));
01755 Poles.SetValue(26,14,gp_Pnt(2.80034,-36.8171,-18.1742));
01756 Poles.SetValue(26,15,gp_Pnt(2.81048,-34.3087,-18.2745));
01757 Poles.SetValue(26,16,gp_Pnt(2.82183,-32.2984,-18.2966));
01758 Poles.SetValue(26,17,gp_Pnt(2.83832,-29.2732,-18.2842));
01759 Poles.SetValue(26,18,gp_Pnt(2.8597,-25.6748,-18.3055));
01760 Poles.SetValue(26,19,gp_Pnt(2.88306,-21.5575,-18.3968));
01761 Poles.SetValue(26,20,gp_Pnt(2.9041,-17.4213,-18.4977));
01762 Poles.SetValue(26,21,gp_Pnt(2.91912,-13.2677,-18.5504));
01763 Poles.SetValue(26,22,gp_Pnt(2.92733,-9.10621,-18.6181));
01764 Poles.SetValue(26,23,gp_Pnt(2.9299,-5.98236,-18.6736));
01765 Poles.SetValue(26,24,gp_Pnt(2.92848,-1.81523,-18.7537));
01766 Poles.SetValue(26,25,gp_Pnt(2.92031,2.35123,-18.8647));
01767 Poles.SetValue(26,26,gp_Pnt(2.90582,6.51345,-18.9446));
01768 Poles.SetValue(26,27,gp_Pnt(2.89198,9.63105,-18.9812));
01769 Poles.SetValue(26,28,gp_Pnt(2.87035,13.7782,-19.0068));
01770 Poles.SetValue(26,29,gp_Pnt(2.84585,17.9026,-19.0689));
01771 Poles.SetValue(26,30,gp_Pnt(2.82094,21.9938,-19.1239));
01772 Poles.SetValue(26,31,gp_Pnt(2.79658,26.0594,-19.1547));
01773 Poles.SetValue(26,32,gp_Pnt(2.77809,29.5996,-19.2041));
01774 Poles.SetValue(26,33,gp_Pnt(2.76651,32.5773,-19.2914));
01775 Poles.SetValue(26,34,gp_Pnt(2.75864,34.5628,-19.3306));
01776 Poles.SetValue(26,35,gp_Pnt(2.74443,36.979,-19.1345));
01777 Poles.SetValue(26,36,gp_Pnt(2.70387,39.6961,-18.1971));
01778 Poles.SetValue(26,37,gp_Pnt(2.63982,42.114,-16.5479));
01779 Poles.SetValue(26,38,gp_Pnt(2.5746,44.4902,-14.7277));
01780 Poles.SetValue(26,39,gp_Pnt(2.51798,47.9308,-12.7131));
01781 Poles.SetValue(26,40,gp_Pnt(2.46965,52.3578,-10.3138));
01782 Poles.SetValue(26,41,gp_Pnt(2.43642,57.712,-7.75158));
01783 Poles.SetValue(26,42,gp_Pnt(2.43995,63.2076,-6.38184));
01784 Poles.SetValue(26,43,gp_Pnt(2.50293,70.9438,-5.9876));
01785 Poles.SetValue(26,44,gp_Pnt(2.62733,84.7471,-4.46429));
01786 Poles.SetValue(26,45,gp_Pnt(2.68225,103.665,-3.11603));
01787 Poles.SetValue(26,46,gp_Pnt(2.79269,126.925,-1.43235));
01788 Poles.SetValue(26,47,gp_Pnt(2.85123,142.301,-0.519032));
01789 Poles.SetValue(26,48,gp_Pnt(2.87892,150.003,0.00754219));
01790 Poles.SetValue(27,1,gp_Pnt(4.32494,-150.003,0.00465984));
01791 Poles.SetValue(27,2,gp_Pnt(4.30474,-142.25,-0.336806));
01792 Poles.SetValue(27,3,gp_Pnt(4.2716,-126.829,-0.969986));
01793 Poles.SetValue(27,4,gp_Pnt(4.17478,-103.363,-2.1468));
01794 Poles.SetValue(27,5,gp_Pnt(4.15476,-84.4306,-3.13459));
01795 Poles.SetValue(27,6,gp_Pnt(4.0329,-70.4336,-4.25922));
01796 Poles.SetValue(27,7,gp_Pnt(3.98517,-62.757,-4.50984));
01797 Poles.SetValue(27,8,gp_Pnt(3.9913,-57.3574,-6.07543));
01798 Poles.SetValue(27,9,gp_Pnt(4.02248,-52.0977,-8.96381));
01799 Poles.SetValue(27,10,gp_Pnt(4.06134,-47.6524,-11.5091));
01800 Poles.SetValue(27,11,gp_Pnt(4.12878,-44.273,-13.6756));
01801 Poles.SetValue(27,12,gp_Pnt(4.21141,-41.9866,-15.6295));
01802 Poles.SetValue(27,13,gp_Pnt(4.28353,-39.5132,-17.2059));
01803 Poles.SetValue(27,14,gp_Pnt(4.33348,-36.8179,-18.1432));
01804 Poles.SetValue(27,15,gp_Pnt(4.34938,-34.3123,-18.2685));
01805 Poles.SetValue(27,16,gp_Pnt(4.36331,-32.3022,-18.2773));
01806 Poles.SetValue(27,17,gp_Pnt(4.38418,-29.2798,-18.2738));
01807 Poles.SetValue(27,18,gp_Pnt(4.40847,-25.6802,-18.2617));
01808 Poles.SetValue(27,19,gp_Pnt(4.43585,-21.5644,-18.385));
01809 Poles.SetValue(27,20,gp_Pnt(4.45998,-17.428,-18.4847));
01810 Poles.SetValue(27,21,gp_Pnt(4.47734,-13.274,-18.5362));
01811 Poles.SetValue(27,22,gp_Pnt(4.48745,-9.11172,-18.5999));
01812 Poles.SetValue(27,23,gp_Pnt(4.49128,-5.98756,-18.6581));
01813 Poles.SetValue(27,24,gp_Pnt(4.49121,-1.8203,-18.7405));
01814 Poles.SetValue(27,25,gp_Pnt(4.48385,2.34609,-18.8459));
01815 Poles.SetValue(27,26,gp_Pnt(4.46986,6.50806,-18.9314));
01816 Poles.SetValue(27,27,gp_Pnt(4.45634,9.62519,-18.9867));
01817 Poles.SetValue(27,28,gp_Pnt(4.43334,13.773,-18.962));
01818 Poles.SetValue(27,29,gp_Pnt(4.40783,17.8965,-19.0659));
01819 Poles.SetValue(27,30,gp_Pnt(4.37876,21.9885,-19.0986));
01820 Poles.SetValue(27,31,gp_Pnt(4.34905,26.0539,-19.0891));
01821 Poles.SetValue(27,32,gp_Pnt(4.32668,29.5961,-19.1878));
01822 Poles.SetValue(27,33,gp_Pnt(4.30965,32.5756,-19.2608));
01823 Poles.SetValue(27,34,gp_Pnt(4.29649,34.547,-19.2801));
01824 Poles.SetValue(27,35,gp_Pnt(4.27784,36.9972,-19.1272));
01825 Poles.SetValue(27,36,gp_Pnt(4.21947,39.6638,-18.1139));
01826 Poles.SetValue(27,37,gp_Pnt(4.13554,42.1168,-16.5088));
01827 Poles.SetValue(27,38,gp_Pnt(4.04783,44.4726,-14.6594));
01828 Poles.SetValue(27,39,gp_Pnt(3.97295,47.9284,-12.6694));
01829 Poles.SetValue(27,40,gp_Pnt(3.90975,52.3484,-10.2657));
01830 Poles.SetValue(27,41,gp_Pnt(3.86598,57.7104,-7.72202));
01831 Poles.SetValue(27,42,gp_Pnt(3.86291,63.2023,-6.3517));
01832 Poles.SetValue(27,43,gp_Pnt(3.92956,70.9439,-5.96309));
01833 Poles.SetValue(27,44,gp_Pnt(4.07168,84.743,-4.45222));
01834 Poles.SetValue(27,45,gp_Pnt(4.11915,103.671,-3.13599));
01835 Poles.SetValue(27,46,gp_Pnt(4.23427,126.922,-1.42098));
01836 Poles.SetValue(27,47,gp_Pnt(4.2939,142.303,-0.528462));
01837 Poles.SetValue(27,48,gp_Pnt(4.3214,150.003,0.00181057));
01838 Poles.SetValue(28,1,gp_Pnt(7.20975,-150.003,0.00199379));
01839 Poles.SetValue(28,2,gp_Pnt(7.18882,-142.253,-0.339409));
01840 Poles.SetValue(28,3,gp_Pnt(7.15603,-126.823,-0.960991));
01841 Poles.SetValue(28,4,gp_Pnt(7.04705,-103.378,-2.14121));
01842 Poles.SetValue(28,5,gp_Pnt(7.04011,-84.4152,-3.0599));
01843 Poles.SetValue(28,6,gp_Pnt(6.8827,-70.4519,-4.22491));
01844 Poles.SetValue(28,7,gp_Pnt(6.82633,-62.7416,-4.45356));
01845 Poles.SetValue(28,8,gp_Pnt(6.84632,-57.3274,-5.92928));
01846 Poles.SetValue(28,9,gp_Pnt(6.90313,-52.0603,-8.76894));
01847 Poles.SetValue(28,10,gp_Pnt(6.96541,-47.6191,-11.2651));
01848 Poles.SetValue(28,11,gp_Pnt(7.06713,-44.2153,-13.3835));
01849 Poles.SetValue(28,12,gp_Pnt(7.19512,-41.9163,-15.3266));
01850 Poles.SetValue(28,13,gp_Pnt(7.31552,-39.4707,-16.9917));
01851 Poles.SetValue(28,14,gp_Pnt(7.39349,-36.7863,-18.0229));
01852 Poles.SetValue(28,15,gp_Pnt(7.42239,-34.3003,-18.2325));
01853 Poles.SetValue(28,16,gp_Pnt(7.44451,-32.3001,-18.2769));
01854 Poles.SetValue(28,17,gp_Pnt(7.47675,-29.2865,-18.2652));
01855 Poles.SetValue(28,18,gp_Pnt(7.50629,-25.6849,-18.2576));
01856 Poles.SetValue(28,19,gp_Pnt(7.5408,-21.5692,-18.3235));
01857 Poles.SetValue(28,20,gp_Pnt(7.57163,-17.4339,-18.426));
01858 Poles.SetValue(28,21,gp_Pnt(7.59489,-13.282,-18.5025));
01859 Poles.SetValue(28,22,gp_Pnt(7.60855,-9.11981,-18.5619));
01860 Poles.SetValue(28,23,gp_Pnt(7.61471,-5.99647,-18.6513));
01861 Poles.SetValue(28,24,gp_Pnt(7.6166,-1.8301,-18.7256));
01862 Poles.SetValue(28,25,gp_Pnt(7.61019,2.33523,-18.8123));
01863 Poles.SetValue(28,26,gp_Pnt(7.59637,6.49519,-18.8964));
01864 Poles.SetValue(28,27,gp_Pnt(7.5818,9.61113,-18.9175));
01865 Poles.SetValue(28,28,gp_Pnt(7.55779,13.7559,-18.9587));
01866 Poles.SetValue(28,29,gp_Pnt(7.52587,17.8776,-18.9626));
01867 Poles.SetValue(28,30,gp_Pnt(7.4901,21.9674,-19.0247));
01868 Poles.SetValue(28,31,gp_Pnt(7.45312,26.0294,-19.1257));
01869 Poles.SetValue(28,32,gp_Pnt(7.42514,29.5856,-19.167));
01870 Poles.SetValue(28,33,gp_Pnt(7.39395,32.555,-19.2183));
01871 Poles.SetValue(28,34,gp_Pnt(7.37239,34.5295,-19.2131));
01872 Poles.SetValue(28,35,gp_Pnt(7.33162,36.946,-18.9418));
01873 Poles.SetValue(28,36,gp_Pnt(7.24313,39.6032,-17.8455));
01874 Poles.SetValue(28,37,gp_Pnt(7.11296,42.0514,-16.191));
01875 Poles.SetValue(28,38,gp_Pnt(6.98647,44.4381,-14.3835));
01876 Poles.SetValue(28,39,gp_Pnt(6.88127,47.9054,-12.4221));
01877 Poles.SetValue(28,40,gp_Pnt(6.79154,52.3186,-10.0449));
01878 Poles.SetValue(28,41,gp_Pnt(6.72185,57.6668,-7.53612));
01879 Poles.SetValue(28,42,gp_Pnt(6.71345,63.1976,-6.30207));
01880 Poles.SetValue(28,43,gp_Pnt(6.78803,70.9427,-5.8544));
01881 Poles.SetValue(28,44,gp_Pnt(6.9604,84.7347,-4.44573));
01882 Poles.SetValue(28,45,gp_Pnt(6.99436,103.676,-3.08077));
01883 Poles.SetValue(28,46,gp_Pnt(7.11838,126.92,-1.41297));
01884 Poles.SetValue(28,47,gp_Pnt(7.17835,142.303,-0.517264));
01885 Poles.SetValue(28,48,gp_Pnt(7.20607,150.004,0.000972213));
01886 Poles.SetValue(29,1,gp_Pnt(11.537,-150.004,-0.0019364));
01887 Poles.SetValue(29,2,gp_Pnt(11.5153,-142.257,-0.344646));
01888 Poles.SetValue(29,3,gp_Pnt(11.4814,-126.814,-0.945148));
01889 Poles.SetValue(29,4,gp_Pnt(11.3573,-103.399,-2.13514));
01890 Poles.SetValue(29,5,gp_Pnt(11.367,-84.3943,-2.97324));
01891 Poles.SetValue(29,6,gp_Pnt(11.1587,-70.4767,-4.1361));
01892 Poles.SetValue(29,7,gp_Pnt(11.0926,-62.7343,-4.37369));
01893 Poles.SetValue(29,8,gp_Pnt(11.1242,-57.2568,-5.69537));
01894 Poles.SetValue(29,9,gp_Pnt(11.2126,-51.9572,-8.35841));
01895 Poles.SetValue(29,10,gp_Pnt(11.3271,-47.5822,-10.8942));
01896 Poles.SetValue(29,11,gp_Pnt(11.4644,-44.1049,-12.8681));
01897 Poles.SetValue(29,12,gp_Pnt(11.6405,-41.7204,-14.7153));
01898 Poles.SetValue(29,13,gp_Pnt(11.826,-39.3053,-16.4686));
01899 Poles.SetValue(29,14,gp_Pnt(11.9708,-36.7063,-17.7552));
01900 Poles.SetValue(29,15,gp_Pnt(12.0323,-34.2848,-18.2164));
01901 Poles.SetValue(29,16,gp_Pnt(12.0665,-32.2944,-18.2456));
01902 Poles.SetValue(29,17,gp_Pnt(12.1134,-29.2928,-18.2183));
01903 Poles.SetValue(29,18,gp_Pnt(12.1502,-25.6859,-18.2702));
01904 Poles.SetValue(29,19,gp_Pnt(12.1962,-21.5727,-18.2883));
01905 Poles.SetValue(29,20,gp_Pnt(12.2377,-17.4404,-18.3531));
01906 Poles.SetValue(29,21,gp_Pnt(12.2704,-13.2922,-18.4587));
01907 Poles.SetValue(29,22,gp_Pnt(12.2909,-9.1316,-18.5394));
01908 Poles.SetValue(29,23,gp_Pnt(12.3004,-6.00847,-18.5853));
01909 Poles.SetValue(29,24,gp_Pnt(12.3062,-1.84393,-18.668));
01910 Poles.SetValue(29,25,gp_Pnt(12.3017,2.31872,-18.7656));
01911 Poles.SetValue(29,26,gp_Pnt(12.2867,6.47589,-18.8211));
01912 Poles.SetValue(29,27,gp_Pnt(12.27,9.58913,-18.8432));
01913 Poles.SetValue(29,28,gp_Pnt(12.242,13.7302,-18.8857));
01914 Poles.SetValue(29,29,gp_Pnt(12.2013,17.8471,-18.8567));
01915 Poles.SetValue(29,30,gp_Pnt(12.1551,21.9335,-18.9411));
01916 Poles.SetValue(29,31,gp_Pnt(12.1027,25.9912,-19.0065));
01917 Poles.SetValue(29,32,gp_Pnt(12.0689,29.5626,-19.1079));
01918 Poles.SetValue(29,33,gp_Pnt(12.0248,32.536,-19.2146));
01919 Poles.SetValue(29,34,gp_Pnt(11.9908,34.506,-19.2085));
01920 Poles.SetValue(29,35,gp_Pnt(11.9133,36.8769,-18.6385));
01921 Poles.SetValue(29,36,gp_Pnt(11.7541,39.4633,-17.3418));
01922 Poles.SetValue(29,37,gp_Pnt(11.5496,41.8804,-15.5601));
01923 Poles.SetValue(29,38,gp_Pnt(11.3811,44.3392,-13.8642));
01924 Poles.SetValue(29,39,gp_Pnt(11.2454,47.87,-12.0305));
01925 Poles.SetValue(29,40,gp_Pnt(11.1037,52.2433,-9.63697));
01926 Poles.SetValue(29,41,gp_Pnt(11.0077,57.6157,-7.26995));
01927 Poles.SetValue(29,42,gp_Pnt(10.9873,63.1748,-6.14324));
01928 Poles.SetValue(29,43,gp_Pnt(11.0809,70.9505,-5.75361));
01929 Poles.SetValue(29,44,gp_Pnt(11.2905,84.7164,-4.38829));
01930 Poles.SetValue(29,45,gp_Pnt(11.3097,103.688,-3.03385));
01931 Poles.SetValue(29,46,gp_Pnt(11.443,126.913,-1.36961));
01932 Poles.SetValue(29,47,gp_Pnt(11.5055,142.304,-0.513898));
01933 Poles.SetValue(29,48,gp_Pnt(11.5331,150.004,0.00143569));
01934 Poles.SetValue(30,1,gp_Pnt(16.3445,-150.003,0.00578743));
01935 Poles.SetValue(30,2,gp_Pnt(16.3249,-142.267,-0.370801));
01936 Poles.SetValue(30,3,gp_Pnt(16.2799,-126.795,-0.898163));
01937 Poles.SetValue(30,4,gp_Pnt(16.1574,-103.437,-2.15905));
01938 Poles.SetValue(30,5,gp_Pnt(16.1621,-84.359,-2.81595));
01939 Poles.SetValue(30,6,gp_Pnt(15.9355,-70.522,-4.02929));
01940 Poles.SetValue(30,7,gp_Pnt(15.8353,-62.7113,-4.30109));
01941 Poles.SetValue(30,8,gp_Pnt(15.8592,-57.1301,-5.29219));
01942 Poles.SetValue(30,9,gp_Pnt(15.9885,-51.8279,-7.70639));
01943 Poles.SetValue(30,10,gp_Pnt(16.1458,-47.454,-10.0875));
01944 Poles.SetValue(30,11,gp_Pnt(16.3056,-43.9394,-11.9786));
01945 Poles.SetValue(30,12,gp_Pnt(16.4697,-41.3722,-13.5536));
01946 Poles.SetValue(30,13,gp_Pnt(16.7346,-38.9838,-15.419));
01947 Poles.SetValue(30,14,gp_Pnt(16.9692,-36.4718,-16.9881));
01948 Poles.SetValue(30,15,gp_Pnt(17.0978,-34.1539,-17.8546));
01949 Poles.SetValue(30,16,gp_Pnt(17.1618,-32.2064,-18.1241));
01950 Poles.SetValue(30,17,gp_Pnt(17.2498,-29.2572,-18.3817));
01951 Poles.SetValue(30,18,gp_Pnt(17.2843,-25.6335,-18.1023));
01952 Poles.SetValue(30,19,gp_Pnt(17.349,-21.5427,-18.2505));
01953 Poles.SetValue(30,20,gp_Pnt(17.4018,-17.4207,-18.275));
01954 Poles.SetValue(30,21,gp_Pnt(17.4446,-13.282,-18.3905));
01955 Poles.SetValue(30,22,gp_Pnt(17.4712,-9.12898,-18.4481));
01956 Poles.SetValue(30,23,gp_Pnt(17.484,-6.01145,-18.4793));
01957 Poles.SetValue(30,24,gp_Pnt(17.4931,-1.85495,-18.5611));
01958 Poles.SetValue(30,25,gp_Pnt(17.489,2.29988,-18.6221));
01959 Poles.SetValue(30,26,gp_Pnt(17.4726,6.44817,-18.6907));
01960 Poles.SetValue(30,27,gp_Pnt(17.4549,9.55413,-18.7566));
01961 Poles.SetValue(30,28,gp_Pnt(17.4205,13.6861,-18.7666));
01962 Poles.SetValue(30,29,gp_Pnt(17.3732,17.7936,-18.8446));
01963 Poles.SetValue(30,30,gp_Pnt(17.3181,21.8766,-18.906));
01964 Poles.SetValue(30,31,gp_Pnt(17.2501,25.9253,-18.909));
01965 Poles.SetValue(30,32,gp_Pnt(17.2175,29.502,-19.3082));
01966 Poles.SetValue(30,33,gp_Pnt(17.1165,32.4131,-19.0021));
01967 Poles.SetValue(30,34,gp_Pnt(17.0447,34.3389,-18.7229));
01968 Poles.SetValue(30,35,gp_Pnt(16.8753,36.5819,-17.6749));
01969 Poles.SetValue(30,36,gp_Pnt(16.6444,39.1331,-16.2131));
01970 Poles.SetValue(30,37,gp_Pnt(16.3774,41.5535,-14.3732));
01971 Poles.SetValue(30,38,gp_Pnt(16.2266,44.1917,-12.9771));
01972 Poles.SetValue(30,39,gp_Pnt(16.0512,47.7031,-11.1156));
01973 Poles.SetValue(30,40,gp_Pnt(15.8965,52.1551,-9.02732));
01974 Poles.SetValue(30,41,gp_Pnt(15.7531,57.497,-6.73597));
01975 Poles.SetValue(30,42,gp_Pnt(15.7515,63.1508,-5.99587));
01976 Poles.SetValue(30,43,gp_Pnt(15.8708,70.9704,-5.59492));
01977 Poles.SetValue(30,44,gp_Pnt(16.0904,84.6832,-4.25753));
01978 Poles.SetValue(30,45,gp_Pnt(16.1141,103.717,-3.04271));
01979 Poles.SetValue(30,46,gp_Pnt(16.2429,126.893,-1.24525));
01980 Poles.SetValue(30,47,gp_Pnt(16.3147,142.31,-0.535292));
01981 Poles.SetValue(30,48,gp_Pnt(16.341,150.003,0.00253219));
01982 Poles.SetValue(31,1,gp_Pnt(20.1907,-150.004,-0.000526058));
01983 Poles.SetValue(31,2,gp_Pnt(20.1704,-142.268,-0.331239));
01984 Poles.SetValue(31,3,gp_Pnt(20.122,-126.794,-0.970591));
01985 Poles.SetValue(31,4,gp_Pnt(19.9951,-103.451,-1.9936));
01986 Poles.SetValue(31,5,gp_Pnt(19.9957,-84.3412,-2.79149));
01987 Poles.SetValue(31,6,gp_Pnt(19.7663,-70.5532,-3.8958));
01988 Poles.SetValue(31,7,gp_Pnt(19.6372,-62.6961,-4.24537));
01989 Poles.SetValue(31,8,gp_Pnt(19.6312,-57.0153,-4.8376));
01990 Poles.SetValue(31,9,gp_Pnt(19.8029,-51.7257,-7.12882));
01991 Poles.SetValue(31,10,gp_Pnt(19.9903,-47.3456,-9.33312));
01992 Poles.SetValue(31,11,gp_Pnt(20.1544,-43.7936,-11.1495));
01993 Poles.SetValue(31,12,gp_Pnt(20.3067,-41.1475,-12.5808));
01994 Poles.SetValue(31,13,gp_Pnt(20.5363,-38.6079,-14.2468));
01995 Poles.SetValue(31,14,gp_Pnt(20.84,-36.134,-15.9275));
01996 Poles.SetValue(31,15,gp_Pnt(21.0623,-33.9474,-17.1599));
01997 Poles.SetValue(31,16,gp_Pnt(21.1716,-32.0518,-17.667));
01998 Poles.SetValue(31,17,gp_Pnt(21.3214,-29.179,-18.3673));
01999 Poles.SetValue(31,18,gp_Pnt(21.3793,-25.5812,-18.3124));
02000 Poles.SetValue(31,19,gp_Pnt(21.4548,-21.5049,-18.1853));
02001 Poles.SetValue(31,20,gp_Pnt(21.5142,-17.3922,-18.2366));
02002 Poles.SetValue(31,21,gp_Pnt(21.558,-13.2603,-18.3063));
02003 Poles.SetValue(31,22,gp_Pnt(21.5878,-9.11659,-18.3336));
02004 Poles.SetValue(31,23,gp_Pnt(21.6056,-6.00831,-18.4512));
02005 Poles.SetValue(31,24,gp_Pnt(21.6167,-1.86141,-18.4833));
02006 Poles.SetValue(31,25,gp_Pnt(21.6127,2.2836,-18.5266));
02007 Poles.SetValue(31,26,gp_Pnt(21.5944,6.42098,-18.6074));
02008 Poles.SetValue(31,27,gp_Pnt(21.5727,9.51941,-18.6404));
02009 Poles.SetValue(31,28,gp_Pnt(21.5378,13.6411,-18.7487));
02010 Poles.SetValue(31,29,gp_Pnt(21.4866,17.743,-18.7215));
02011 Poles.SetValue(31,30,gp_Pnt(21.4258,21.8165,-18.8984));
02012 Poles.SetValue(31,31,gp_Pnt(21.3369,25.8371,-19.0188));
02013 Poles.SetValue(31,32,gp_Pnt(21.2862,29.4092,-19.1007));
02014 Poles.SetValue(31,33,gp_Pnt(21.1135,32.2368,-18.3775));
02015 Poles.SetValue(31,34,gp_Pnt(20.9861,34.1014,-17.8358));
02016 Poles.SetValue(31,35,gp_Pnt(20.7501,36.2734,-16.587));
02017 Poles.SetValue(31,36,gp_Pnt(20.4474,38.7816,-15.0031));
02018 Poles.SetValue(31,37,gp_Pnt(20.2219,41.3577,-13.4124));
02019 Poles.SetValue(31,38,gp_Pnt(20.0752,44.046,-12.1119));
02020 Poles.SetValue(31,39,gp_Pnt(19.9,47.6135,-10.3667));
02021 Poles.SetValue(31,40,gp_Pnt(19.7027,52.0328,-8.33553));
02022 Poles.SetValue(31,41,gp_Pnt(19.5529,57.4314,-6.41226));
02023 Poles.SetValue(31,42,gp_Pnt(19.5744,63.1466,-5.88305));
02024 Poles.SetValue(31,43,gp_Pnt(19.7084,70.9809,-5.38238));
02025 Poles.SetValue(31,44,gp_Pnt(19.9269,84.6646,-4.23097));
02026 Poles.SetValue(31,45,gp_Pnt(19.9547,103.723,-2.89651));
02027 Poles.SetValue(31,46,gp_Pnt(20.0869,126.892,-1.26097));
02028 Poles.SetValue(31,47,gp_Pnt(20.16,142.308,-0.498836));
02029 Poles.SetValue(31,48,gp_Pnt(20.1872,150.004,-0.000635283));
02030 Poles.SetValue(32,1,gp_Pnt(23.0753,-150.004,0.00144521));
02031 Poles.SetValue(32,2,gp_Pnt(23.0548,-142.27,-0.337801));
02032 Poles.SetValue(32,3,gp_Pnt(23.0016,-126.788,-0.942781));
02033 Poles.SetValue(32,4,gp_Pnt(22.8773,-103.469,-1.9433));
02034 Poles.SetValue(32,5,gp_Pnt(22.8673,-84.3255,-2.74248));
02035 Poles.SetValue(32,6,gp_Pnt(22.6434,-70.5754,-3.79108));
02036 Poles.SetValue(32,7,gp_Pnt(22.4949,-62.6931,-4.17157));
02037 Poles.SetValue(32,8,gp_Pnt(22.4768,-56.9735,-4.67076));
02038 Poles.SetValue(32,9,gp_Pnt(22.6398,-51.6068,-6.54067));
02039 Poles.SetValue(32,10,gp_Pnt(22.85,-47.2263,-8.64328));
02040 Poles.SetValue(32,11,gp_Pnt(23.0318,-43.6813,-10.4638));
02041 Poles.SetValue(32,12,gp_Pnt(23.1562,-40.9615,-11.764));
02042 Poles.SetValue(32,13,gp_Pnt(23.368,-38.3504,-13.3038));
02043 Poles.SetValue(32,14,gp_Pnt(23.6652,-35.817,-14.919));
02044 Poles.SetValue(32,15,gp_Pnt(23.9354,-33.6785,-16.2623));
02045 Poles.SetValue(32,16,gp_Pnt(24.0927,-31.8451,-17.0162));
02046 Poles.SetValue(32,17,gp_Pnt(24.3261,-29.0715,-18.0603));
02047 Poles.SetValue(32,18,gp_Pnt(24.4211,-25.5163,-18.3534));
02048 Poles.SetValue(32,19,gp_Pnt(24.5253,-21.4717,-18.3276));
02049 Poles.SetValue(32,20,gp_Pnt(24.5868,-17.3628,-18.1811));
02050 Poles.SetValue(32,21,gp_Pnt(24.6337,-13.2388,-18.2382));
02051 Poles.SetValue(32,22,gp_Pnt(24.6633,-9.10443,-18.3301));
02052 Poles.SetValue(32,23,gp_Pnt(24.6763,-6.00141,-18.3329));
02053 Poles.SetValue(32,24,gp_Pnt(24.6883,-1.86447,-18.4));
02054 Poles.SetValue(32,25,gp_Pnt(24.685,2.27094,-18.4513));
02055 Poles.SetValue(32,26,gp_Pnt(24.6679,6.39927,-18.5271));
02056 Poles.SetValue(32,27,gp_Pnt(24.6503,9.49024,-18.6028));
02057 Poles.SetValue(32,28,gp_Pnt(24.6143,13.6057,-18.6066));
02058 Poles.SetValue(32,29,gp_Pnt(24.5631,17.7003,-18.6756));
02059 Poles.SetValue(32,30,gp_Pnt(24.4992,21.766,-18.9712));
02060 Poles.SetValue(32,31,gp_Pnt(24.3992,25.7809,-18.8799));
02061 Poles.SetValue(32,32,gp_Pnt(24.3004,29.3057,-18.7554));
02062 Poles.SetValue(32,33,gp_Pnt(24.037,32.0419,-17.6838));
02063 Poles.SetValue(32,34,gp_Pnt(23.8657,33.8604,-16.9256));
02064 Poles.SetValue(32,35,gp_Pnt(23.5774,35.9803,-15.5713));
02065 Poles.SetValue(32,36,gp_Pnt(23.2968,38.5683,-14.0879));
02066 Poles.SetValue(32,37,gp_Pnt(23.093,41.2165,-12.6479));
02067 Poles.SetValue(32,38,gp_Pnt(22.9531,43.9435,-11.4158));
02068 Poles.SetValue(32,39,gp_Pnt(22.7622,47.5105,-9.68785));
02069 Poles.SetValue(32,40,gp_Pnt(22.5568,51.9527,-7.8039));
02070 Poles.SetValue(32,41,gp_Pnt(22.4004,57.3744,-6.1033));
02071 Poles.SetValue(32,42,gp_Pnt(22.4489,63.1511,-5.80662));
02072 Poles.SetValue(32,43,gp_Pnt(22.5902,70.9891,-5.2305));
02073 Poles.SetValue(32,44,gp_Pnt(22.799,84.6457,-4.15543));
02074 Poles.SetValue(32,45,gp_Pnt(22.8398,103.734,-2.83232));
02075 Poles.SetValue(32,46,gp_Pnt(22.9682,126.889,-1.24771));
02076 Poles.SetValue(32,47,gp_Pnt(23.0442,142.308,-0.479822));
02077 Poles.SetValue(32,48,gp_Pnt(23.072,150.003,-0.00023355));
02078 Poles.SetValue(33,1,gp_Pnt(25.96,-150.004,-0.00107395));
02079 Poles.SetValue(33,2,gp_Pnt(25.9383,-142.271,-0.323802));
02080 Poles.SetValue(33,3,gp_Pnt(25.883,-126.787,-0.940847));
02081 Poles.SetValue(33,4,gp_Pnt(25.7581,-103.481,-1.84472));
02082 Poles.SetValue(33,5,gp_Pnt(25.7408,-84.3172,-2.76066));
02083 Poles.SetValue(33,6,gp_Pnt(25.52,-70.5894,-3.62915));
02084 Poles.SetValue(33,7,gp_Pnt(25.366,-62.7115,-4.17081));
02085 Poles.SetValue(33,8,gp_Pnt(25.3057,-56.9037,-4.30025));
02086 Poles.SetValue(33,9,gp_Pnt(25.4874,-51.5283,-6.03263));
02087 Poles.SetValue(33,10,gp_Pnt(25.6972,-47.1048,-7.91375));
02088 Poles.SetValue(33,11,gp_Pnt(25.8911,-43.5608,-9.71674));
02089 Poles.SetValue(33,12,gp_Pnt(26.0083,-40.8113,-10.9474));
02090 Poles.SetValue(33,13,gp_Pnt(26.1812,-38.1233,-12.3183));
02091 Poles.SetValue(33,14,gp_Pnt(26.4261,-35.4747,-13.7471));
02092 Poles.SetValue(33,15,gp_Pnt(26.7228,-33.3637,-15.1404));
02093 Poles.SetValue(33,16,gp_Pnt(26.9425,-31.5869,-16.0448));
02094 Poles.SetValue(33,17,gp_Pnt(27.2466,-28.8898,-17.3418));
02095 Poles.SetValue(33,18,gp_Pnt(27.4392,-25.4377,-18.079));
02096 Poles.SetValue(33,19,gp_Pnt(27.5703,-21.4197,-18.3425));
02097 Poles.SetValue(33,20,gp_Pnt(27.6524,-17.3331,-18.2754));
02098 Poles.SetValue(33,21,gp_Pnt(27.691,-13.2136,-18.2387));
02099 Poles.SetValue(33,22,gp_Pnt(27.7352,-9.09145,-18.3076));
02100 Poles.SetValue(33,23,gp_Pnt(27.7708,-5.99784,-18.3543));
02101 Poles.SetValue(33,24,gp_Pnt(27.7901,-1.8693,-18.4133));
02102 Poles.SetValue(33,25,gp_Pnt(27.7867,2.25931,-18.461));
02103 Poles.SetValue(33,26,gp_Pnt(27.7597,6.37821,-18.527));
02104 Poles.SetValue(33,27,gp_Pnt(27.7183,9.46104,-18.5728));
02105 Poles.SetValue(33,28,gp_Pnt(27.6728,13.5629,-18.5809));
02106 Poles.SetValue(33,29,gp_Pnt(27.6341,17.6553,-18.7896));
02107 Poles.SetValue(33,30,gp_Pnt(27.5313,21.69,-18.856));
02108 Poles.SetValue(33,31,gp_Pnt(27.4221,25.7022,-18.6912));
02109 Poles.SetValue(33,32,gp_Pnt(27.1858,29.0914,-17.9663));
02110 Poles.SetValue(33,33,gp_Pnt(26.8754,31.7892,-16.6502));
02111 Poles.SetValue(33,34,gp_Pnt(26.6629,33.5795,-15.8008));
02112 Poles.SetValue(33,35,gp_Pnt(26.392,35.7345,-14.5141));
02113 Poles.SetValue(33,36,gp_Pnt(26.1302,38.3859,-13.1359));
02114 Poles.SetValue(33,37,gp_Pnt(25.9577,41.0989,-11.8672));
02115 Poles.SetValue(33,38,gp_Pnt(25.8174,43.84,-10.6733));
02116 Poles.SetValue(33,39,gp_Pnt(25.6131,47.4059,-8.97942));
02117 Poles.SetValue(33,40,gp_Pnt(25.4162,51.8971,-7.31061));
02118 Poles.SetValue(33,41,gp_Pnt(25.2618,57.3518,-5.8554));
02119 Poles.SetValue(33,42,gp_Pnt(25.3309,63.1621,-5.70901));
02120 Poles.SetValue(33,43,gp_Pnt(25.4737,70.9955,-5.07709));
02121 Poles.SetValue(33,44,gp_Pnt(25.6714,84.6291,-4.0924));
02122 Poles.SetValue(33,45,gp_Pnt(25.7247,103.742,-2.75106));
02123 Poles.SetValue(33,46,gp_Pnt(25.8505,126.888,-1.25015));
02124 Poles.SetValue(33,47,gp_Pnt(25.9279,142.307,-0.4543));
02125 Poles.SetValue(33,48,gp_Pnt(25.9567,150.003,1.78031e-006));
02126 Poles.SetValue(34,1,gp_Pnt(28.8443,-150.003,-0.000814414));
02127 Poles.SetValue(34,2,gp_Pnt(28.822,-142.272,-0.314965));
02128 Poles.SetValue(34,3,gp_Pnt(28.7639,-126.784,-0.915393));
02129 Poles.SetValue(34,4,gp_Pnt(28.6408,-103.496,-1.77607));
02130 Poles.SetValue(34,5,gp_Pnt(28.6108,-84.3033,-2.7051));
02131 Poles.SetValue(34,6,gp_Pnt(28.4002,-70.6057,-3.51828));
02132 Poles.SetValue(34,7,gp_Pnt(28.2459,-62.7375,-4.07858));
02133 Poles.SetValue(34,8,gp_Pnt(28.1744,-56.9104,-4.20906));
02134 Poles.SetValue(34,9,gp_Pnt(28.3177,-51.4347,-5.41731));
02135 Poles.SetValue(34,10,gp_Pnt(28.5405,-47,-7.20566));
02136 Poles.SetValue(34,11,gp_Pnt(28.7156,-43.4043,-8.86385));
02137 Poles.SetValue(34,12,gp_Pnt(28.8516,-40.6751,-10.1127));
02138 Poles.SetValue(34,13,gp_Pnt(28.9811,-37.9111,-11.2996));
02139 Poles.SetValue(34,14,gp_Pnt(29.1942,-35.2049,-12.5938));
02140 Poles.SetValue(34,15,gp_Pnt(29.4218,-32.9982,-13.7949));
02141 Poles.SetValue(34,16,gp_Pnt(29.6546,-31.2373,-14.7599));
02142 Poles.SetValue(34,17,gp_Pnt(30.0209,-28.5986,-16.2161));
02143 Poles.SetValue(34,18,gp_Pnt(30.3511,-25.2896,-17.4304));
02144 Poles.SetValue(34,19,gp_Pnt(30.5644,-21.3363,-18.1086));
02145 Poles.SetValue(34,20,gp_Pnt(30.6971,-17.2907,-18.3429));
02146 Poles.SetValue(34,21,gp_Pnt(30.7624,-13.191,-18.3042));
02147 Poles.SetValue(34,22,gp_Pnt(30.7888,-9.07614,-18.2619));
02148 Poles.SetValue(34,23,gp_Pnt(30.7984,-5.98767,-18.2612));
02149 Poles.SetValue(34,24,gp_Pnt(30.8028,-1.86922,-18.3218));
02150 Poles.SetValue(34,25,gp_Pnt(30.8038,2.24578,-18.378));
02151 Poles.SetValue(34,26,gp_Pnt(30.7952,6.35643,-18.4258));
02152 Poles.SetValue(34,27,gp_Pnt(30.783,9.43271,-18.5099));
02153 Poles.SetValue(34,28,gp_Pnt(30.7508,13.5293,-18.5862));
02154 Poles.SetValue(34,29,gp_Pnt(30.6756,17.5933,-18.7948));
02155 Poles.SetValue(34,30,gp_Pnt(30.5377,21.6111,-18.5821));
02156 Poles.SetValue(34,31,gp_Pnt(30.3253,25.5499,-17.9497));
02157 Poles.SetValue(34,32,gp_Pnt(29.9809,28.8453,-16.7757));
02158 Poles.SetValue(34,33,gp_Pnt(29.6116,31.4959,-15.4039));
02159 Poles.SetValue(34,34,gp_Pnt(29.3795,33.2673,-14.4675));
02160 Poles.SetValue(34,35,gp_Pnt(29.1738,35.5112,-13.3894));
02161 Poles.SetValue(34,36,gp_Pnt(28.9461,38.2178,-12.1512));
02162 Poles.SetValue(34,37,gp_Pnt(28.8226,41.0067,-11.0898));
02163 Poles.SetValue(34,38,gp_Pnt(28.6485,43.7085,-9.8326));
02164 Poles.SetValue(34,39,gp_Pnt(28.4613,47.3204,-8.29397));
02165 Poles.SetValue(34,40,gp_Pnt(28.2597,51.8236,-6.71601));
02166 Poles.SetValue(34,41,gp_Pnt(28.1363,57.35,-5.69854));
02167 Poles.SetValue(34,42,gp_Pnt(28.2228,63.1847,-5.58611));
02168 Poles.SetValue(34,43,gp_Pnt(28.3583,70.9987,-4.92408));
02169 Poles.SetValue(34,44,gp_Pnt(28.5449,84.6147,-4.02298));
02170 Poles.SetValue(34,45,gp_Pnt(28.6102,103.75,-2.67549));
02171 Poles.SetValue(34,46,gp_Pnt(28.733,126.887,-1.24976));
02172 Poles.SetValue(34,47,gp_Pnt(28.8119,142.306,-0.431209));
02173 Poles.SetValue(34,48,gp_Pnt(28.8411,150.003,0.000394087));
02174 Poles.SetValue(35,1,gp_Pnt(31.7287,-150.003,-0.00159563));
02175 Poles.SetValue(35,2,gp_Pnt(31.7054,-142.271,-0.292958));
02176 Poles.SetValue(35,3,gp_Pnt(31.6455,-126.784,-0.897779));
02177 Poles.SetValue(35,4,gp_Pnt(31.5244,-103.509,-1.70454));
02178 Poles.SetValue(35,5,gp_Pnt(31.4818,-84.2933,-2.66393));
02179 Poles.SetValue(35,6,gp_Pnt(31.2818,-70.6177,-3.40872));
02180 Poles.SetValue(35,7,gp_Pnt(31.1379,-62.7777,-3.96987));
02181 Poles.SetValue(35,8,gp_Pnt(31.0487,-56.922,-4.10969));
02182 Poles.SetValue(35,9,gp_Pnt(31.1572,-51.3677,-4.89488));
02183 Poles.SetValue(35,10,gp_Pnt(31.3712,-46.8953,-6.51595));
02184 Poles.SetValue(35,11,gp_Pnt(31.5139,-43.2378,-7.96936));
02185 Poles.SetValue(35,12,gp_Pnt(31.6758,-40.5316,-9.22108));
02186 Poles.SetValue(35,13,gp_Pnt(31.8199,-37.7807,-10.3811));
02187 Poles.SetValue(35,14,gp_Pnt(31.9893,-35.0147,-11.5145));
02188 Poles.SetValue(35,15,gp_Pnt(32.1247,-32.7053,-12.464));
02189 Poles.SetValue(35,16,gp_Pnt(32.3218,-30.8986,-13.34));
02190 Poles.SetValue(35,17,gp_Pnt(32.6432,-28.2165,-14.6979));
02191 Poles.SetValue(35,18,gp_Pnt(33.097,-25.0373,-16.1855));
02192 Poles.SetValue(35,19,gp_Pnt(33.4343,-21.1834,-17.345));
02193 Poles.SetValue(35,20,gp_Pnt(33.6567,-17.2197,-18.0405));
02194 Poles.SetValue(35,21,gp_Pnt(33.7429,-13.1456,-18.2543));
02195 Poles.SetValue(35,22,gp_Pnt(33.7947,-9.05496,-18.3306));
02196 Poles.SetValue(35,23,gp_Pnt(33.814,-5.97761,-18.3713));
02197 Poles.SetValue(35,24,gp_Pnt(33.8326,-1.87322,-18.3889));
02198 Poles.SetValue(35,25,gp_Pnt(33.8307,2.23248,-18.5068));
02199 Poles.SetValue(35,26,gp_Pnt(33.8103,6.3285,-18.5284));
02200 Poles.SetValue(35,27,gp_Pnt(33.7859,9.39575,-18.5442));
02201 Poles.SetValue(35,28,gp_Pnt(33.7311,13.4669,-18.5787));
02202 Poles.SetValue(35,29,gp_Pnt(33.6309,17.5149,-18.4035));
02203 Poles.SetValue(35,30,gp_Pnt(33.3631,21.4402,-17.6914));
02204 Poles.SetValue(35,31,gp_Pnt(33.0314,25.2897,-16.6389));
02205 Poles.SetValue(35,32,gp_Pnt(32.5814,28.4766,-15.2398));
02206 Poles.SetValue(35,33,gp_Pnt(32.2879,31.1937,-13.9832));
02207 Poles.SetValue(35,34,gp_Pnt(32.101,33.016,-13.1896));
02208 Poles.SetValue(35,35,gp_Pnt(31.9711,35.3393,-12.3157));
02209 Poles.SetValue(35,36,gp_Pnt(31.762,38.0751,-11.166));
02210 Poles.SetValue(35,37,gp_Pnt(31.6205,40.8468,-10.1215));
02211 Poles.SetValue(35,38,gp_Pnt(31.4569,43.5672,-8.96315));
02212 Poles.SetValue(35,39,gp_Pnt(31.304,47.2348,-7.63002));
02213 Poles.SetValue(35,40,gp_Pnt(31.1056,51.7662,-6.18385));
02214 Poles.SetValue(35,41,gp_Pnt(31.032,57.3778,-5.59198));
02215 Poles.SetValue(35,42,gp_Pnt(31.1183,63.208,-5.41945));
02216 Poles.SetValue(35,43,gp_Pnt(31.2462,71.0036,-4.78942));
02217 Poles.SetValue(35,44,gp_Pnt(31.4185,84.5987,-3.92699));
02218 Poles.SetValue(35,45,gp_Pnt(31.4967,103.758,-2.61174));
02219 Poles.SetValue(35,46,gp_Pnt(31.6157,126.886,-1.24044));
02220 Poles.SetValue(35,47,gp_Pnt(31.6958,142.305,-0.417113));
02221 Poles.SetValue(35,48,gp_Pnt(31.7255,150.002,0.00194988));
02222 Poles.SetValue(36,1,gp_Pnt(34.613,-150.003,-8.84142e-006));
02223 Poles.SetValue(36,2,gp_Pnt(34.5892,-142.271,-0.281898));
02224 Poles.SetValue(36,3,gp_Pnt(34.5259,-126.782,-0.842126));
02225 Poles.SetValue(36,4,gp_Pnt(34.4114,-103.526,-1.69502));
02226 Poles.SetValue(36,5,gp_Pnt(34.3501,-84.279,-2.54815));
02227 Poles.SetValue(36,6,gp_Pnt(34.1678,-70.6326,-3.32282));
02228 Poles.SetValue(36,7,gp_Pnt(34.0367,-62.8161,-3.82536));
02229 Poles.SetValue(36,8,gp_Pnt(33.9563,-56.9857,-4.13682));
02230 Poles.SetValue(36,9,gp_Pnt(34.0087,-51.3335,-4.46806));
02231 Poles.SetValue(36,10,gp_Pnt(34.1924,-46.7917,-5.85857));
02232 Poles.SetValue(36,11,gp_Pnt(34.3026,-43.0822,-7.10693));
02233 Poles.SetValue(36,12,gp_Pnt(34.4437,-40.3441,-8.2133));
02234 Poles.SetValue(36,13,gp_Pnt(34.6249,-37.6272,-9.39894));
02235 Poles.SetValue(36,14,gp_Pnt(34.7778,-34.844,-10.4473));
02236 Poles.SetValue(36,15,gp_Pnt(34.8915,-32.5077,-11.3048));
02237 Poles.SetValue(36,16,gp_Pnt(35.0303,-30.6596,-12.0421));
02238 Poles.SetValue(36,17,gp_Pnt(35.2632,-27.9023,-13.1946));
02239 Poles.SetValue(36,18,gp_Pnt(35.6871,-24.7181,-14.6532));
02240 Poles.SetValue(36,19,gp_Pnt(36.0775,-20.9311,-15.9594));
02241 Poles.SetValue(36,20,gp_Pnt(36.3883,-17.0442,-16.9645));
02242 Poles.SetValue(36,21,gp_Pnt(36.6346,-13.0717,-17.6564));
02243 Poles.SetValue(36,22,gp_Pnt(36.703,-9.00817,-17.8864));
02244 Poles.SetValue(36,23,gp_Pnt(36.753,-5.9561,-18.0651));
02245 Poles.SetValue(36,24,gp_Pnt(36.7617,-1.86876,-18.1671));
02246 Poles.SetValue(36,25,gp_Pnt(36.7651,2.21985,-18.2173));
02247 Poles.SetValue(36,26,gp_Pnt(36.7472,6.29944,-18.1998));
02248 Poles.SetValue(36,27,gp_Pnt(36.7037,9.34658,-18.1186));
02249 Poles.SetValue(36,28,gp_Pnt(36.6083,13.3906,-17.8978));
02250 Poles.SetValue(36,29,gp_Pnt(36.3678,17.3552,-17.2999));
02251 Poles.SetValue(36,30,gp_Pnt(36.0217,21.2169,-16.3136));
02252 Poles.SetValue(36,31,gp_Pnt(35.6137,24.997,-15.0642));
02253 Poles.SetValue(36,32,gp_Pnt(35.226,28.2063,-13.7406));
02254 Poles.SetValue(36,33,gp_Pnt(34.9984,30.9793,-12.6852));
02255 Poles.SetValue(36,34,gp_Pnt(34.8482,32.8226,-11.9616));
02256 Poles.SetValue(36,35,gp_Pnt(34.7496,35.1802,-11.2179));
02257 Poles.SetValue(36,36,gp_Pnt(34.5774,37.9518,-10.2031));
02258 Poles.SetValue(36,37,gp_Pnt(34.4083,40.6991,-9.15684));
02259 Poles.SetValue(36,38,gp_Pnt(34.2536,43.4345,-8.10986));
02260 Poles.SetValue(36,39,gp_Pnt(34.1265,47.141,-6.95245));
02261 Poles.SetValue(36,40,gp_Pnt(33.9694,51.7379,-5.79187));
02262 Poles.SetValue(36,41,gp_Pnt(33.9407,57.4177,-5.51793));
02263 Poles.SetValue(36,42,gp_Pnt(34.0186,63.2307,-5.20171));
02264 Poles.SetValue(36,43,gp_Pnt(34.1362,71.0089,-4.67244));
02265 Poles.SetValue(36,44,gp_Pnt(34.2957,84.5851,-3.80167));
02266 Poles.SetValue(36,45,gp_Pnt(34.383,103.766,-2.5642));
02267 Poles.SetValue(36,46,gp_Pnt(34.4993,126.886,-1.22044));
02268 Poles.SetValue(36,47,gp_Pnt(34.5794,142.304,-0.409319));
02269 Poles.SetValue(36,48,gp_Pnt(34.61,150.002,0.00244459));
02270 Poles.SetValue(37,1,gp_Pnt(37.4972,-150.002,0.000555526));
02271 Poles.SetValue(37,2,gp_Pnt(37.4728,-142.27,-0.265447));
02272 Poles.SetValue(37,3,gp_Pnt(37.4079,-126.783,-0.802161));
02273 Poles.SetValue(37,4,gp_Pnt(37.2967,-103.539,-1.66555));
02274 Poles.SetValue(37,5,gp_Pnt(37.2229,-84.2708,-2.46547));
02275 Poles.SetValue(37,6,gp_Pnt(37.0545,-70.6462,-3.22563));
02276 Poles.SetValue(37,7,gp_Pnt(36.9382,-62.8514,-3.69803));
02277 Poles.SetValue(37,8,gp_Pnt(36.8695,-57.0355,-4.05169));
02278 Poles.SetValue(37,9,gp_Pnt(36.8664,-51.3068,-4.20071));
02279 Poles.SetValue(37,10,gp_Pnt(36.9963,-46.6801,-5.21492));
02280 Poles.SetValue(37,11,gp_Pnt(37.1028,-42.9622,-6.32347));
02281 Poles.SetValue(37,12,gp_Pnt(37.2217,-40.1924,-7.25707));
02282 Poles.SetValue(37,13,gp_Pnt(37.3806,-37.45,-8.32532));
02283 Poles.SetValue(37,14,gp_Pnt(37.5666,-34.6987,-9.40192));
02284 Poles.SetValue(37,15,gp_Pnt(37.6875,-32.3677,-10.2225));
02285 Poles.SetValue(37,16,gp_Pnt(37.7796,-30.4815,-10.8337));
02286 Poles.SetValue(37,17,gp_Pnt(37.8949,-27.6361,-11.7039));
02287 Poles.SetValue(37,18,gp_Pnt(38.1939,-24.3881,-12.9412));
02288 Poles.SetValue(37,19,gp_Pnt(38.5477,-20.6236,-14.2289));
02289 Poles.SetValue(37,20,gp_Pnt(38.9367,-16.8248,-15.4489));
02290 Poles.SetValue(37,21,gp_Pnt(39.2113,-12.9073,-16.3298));
02291 Poles.SetValue(37,22,gp_Pnt(39.4234,-8.92763,-16.959));
02292 Poles.SetValue(37,23,gp_Pnt(39.4867,-5.90171,-17.2202));
02293 Poles.SetValue(37,24,gp_Pnt(39.5456,-1.85585,-17.4489));
02294 Poles.SetValue(37,25,gp_Pnt(39.5315,2.20624,-17.47));
02295 Poles.SetValue(37,26,gp_Pnt(39.4789,6.249,-17.3411));
02296 Poles.SetValue(37,27,gp_Pnt(39.3801,9.26259,-17.0826));
02297 Poles.SetValue(37,28,gp_Pnt(39.1782,13.2421,-16.5416));
02298 Poles.SetValue(37,29,gp_Pnt(38.9025,17.148,-15.7336));
02299 Poles.SetValue(37,30,gp_Pnt(38.4895,20.9378,-14.5637));
02300 Poles.SetValue(37,31,gp_Pnt(38.1479,24.7114,-13.3818));
02301 Poles.SetValue(37,32,gp_Pnt(37.8908,27.991,-12.3161));
02302 Poles.SetValue(37,33,gp_Pnt(37.7444,30.8157,-11.4556));
02303 Poles.SetValue(37,34,gp_Pnt(37.6502,32.7032,-10.8985));
02304 Poles.SetValue(37,35,gp_Pnt(37.5088,35.0224,-10.1));
02305 Poles.SetValue(37,36,gp_Pnt(37.3138,37.7726,-9.07484));
02306 Poles.SetValue(37,37,gp_Pnt(37.1382,40.5101,-8.05559));
02307 Poles.SetValue(37,38,gp_Pnt(37.054,43.3215,-7.31185));
02308 Poles.SetValue(37,39,gp_Pnt(36.9421,47.0468,-6.33184));
02309 Poles.SetValue(37,40,gp_Pnt(36.8379,51.7166,-5.49796));
02310 Poles.SetValue(37,41,gp_Pnt(36.8607,57.4567,-5.443));
02311 Poles.SetValue(37,42,gp_Pnt(36.9222,63.2529,-5.029));
02312 Poles.SetValue(37,43,gp_Pnt(37.0259,71.0129,-4.53609));
02313 Poles.SetValue(37,44,gp_Pnt(37.1745,84.5734,-3.68955));
02314 Poles.SetValue(37,45,gp_Pnt(37.2692,103.772,-2.50735));
02315 Poles.SetValue(37,46,gp_Pnt(37.3831,126.887,-1.20321));
02316 Poles.SetValue(37,47,gp_Pnt(37.4633,142.303,-0.401612));
02317 Poles.SetValue(37,48,gp_Pnt(37.4942,150.002,0.00165959));
02318 Poles.SetValue(38,1,gp_Pnt(41.3427,-150.002,0.000910129));
02319 Poles.SetValue(38,2,gp_Pnt(41.3172,-142.269,-0.250994));
02320 Poles.SetValue(38,3,gp_Pnt(41.252,-126.785,-0.743205));
02321 Poles.SetValue(38,4,gp_Pnt(41.1432,-103.556,-1.64006));
02322 Poles.SetValue(38,5,gp_Pnt(41.0572,-84.2638,-2.33977));
02323 Poles.SetValue(38,6,gp_Pnt(40.9025,-70.662,-3.09061));
02324 Poles.SetValue(38,7,gp_Pnt(40.8094,-62.8944,-3.52967));
02325 Poles.SetValue(38,8,gp_Pnt(40.7531,-57.091,-3.91119));
02326 Poles.SetValue(38,9,gp_Pnt(40.7096,-51.3094,-4.15327));
02327 Poles.SetValue(38,10,gp_Pnt(40.7225,-46.5336,-4.39732));
02328 Poles.SetValue(38,11,gp_Pnt(40.8349,-42.8149,-5.35507));
02329 Poles.SetValue(38,12,gp_Pnt(40.9198,-40.01,-6.07186));
02330 Poles.SetValue(38,13,gp_Pnt(41.039,-37.2275,-6.89946));
02331 Poles.SetValue(38,14,gp_Pnt(41.1807,-34.446,-7.76251));
02332 Poles.SetValue(38,15,gp_Pnt(41.3421,-32.1529,-8.6033));
02333 Poles.SetValue(38,16,gp_Pnt(41.4528,-30.2866,-9.22754));
02334 Poles.SetValue(38,17,gp_Pnt(41.6048,-27.4727,-10.1338));
02335 Poles.SetValue(38,18,gp_Pnt(41.7346,-24.1213,-11.015));
02336 Poles.SetValue(38,19,gp_Pnt(41.93,-20.3071,-12.0361));
02337 Poles.SetValue(38,20,gp_Pnt(42.1256,-16.4709,-12.9787));
02338 Poles.SetValue(38,21,gp_Pnt(42.3664,-12.6243,-13.8833));
02339 Poles.SetValue(38,22,gp_Pnt(42.5253,-8.71352,-14.5112));
02340 Poles.SetValue(38,23,gp_Pnt(42.6203,-5.76323,-14.8691));
02341 Poles.SetValue(38,24,gp_Pnt(42.6798,-1.79912,-15.1424));
02342 Poles.SetValue(38,25,gp_Pnt(42.6737,2.17503,-15.1747));
02343 Poles.SetValue(38,26,gp_Pnt(42.5953,6.13666,-14.9438));
02344 Poles.SetValue(38,27,gp_Pnt(42.5039,9.08523,-14.6485));
02345 Poles.SetValue(38,28,gp_Pnt(42.3376,12.9911,-14.0849));
02346 Poles.SetValue(38,29,gp_Pnt(42.1163,16.8397,-13.292));
02347 Poles.SetValue(38,30,gp_Pnt(41.8966,20.6667,-12.3969));
02348 Poles.SetValue(38,31,gp_Pnt(41.7151,24.4907,-11.5063));
02349 Poles.SetValue(38,32,gp_Pnt(41.5833,27.8377,-10.6892));
02350 Poles.SetValue(38,33,gp_Pnt(41.412,30.6412,-9.8422));
02351 Poles.SetValue(38,34,gp_Pnt(41.2857,32.4975,-9.24392));
02352 Poles.SetValue(38,35,gp_Pnt(41.1281,34.7988,-8.48532));
02353 Poles.SetValue(38,36,gp_Pnt(40.9982,37.5923,-7.7491));
02354 Poles.SetValue(38,37,gp_Pnt(40.9022,40.4018,-7.05478));
02355 Poles.SetValue(38,38,gp_Pnt(40.8045,43.2027,-6.38438));
02356 Poles.SetValue(38,39,gp_Pnt(40.6947,46.9351,-5.51775));
02357 Poles.SetValue(38,40,gp_Pnt(40.6936,51.7133,-5.40542));
02358 Poles.SetValue(38,41,gp_Pnt(40.7465,57.4932,-5.2213));
02359 Poles.SetValue(38,42,gp_Pnt(40.7949,63.2798,-4.80832));
02360 Poles.SetValue(38,43,gp_Pnt(40.8787,71.0181,-4.35466));
02361 Poles.SetValue(38,44,gp_Pnt(41.0184,84.563,-3.55086));
02362 Poles.SetValue(38,45,gp_Pnt(41.1158,103.778,-2.42645));
02363 Poles.SetValue(38,46,gp_Pnt(41.2295,126.889,-1.17679));
02364 Poles.SetValue(38,47,gp_Pnt(41.308,142.302,-0.393553));
02365 Poles.SetValue(38,48,gp_Pnt(41.3397,150.001,-0.000267641));
02366 Poles.SetValue(39,1,gp_Pnt(46.1496,-150.001,0.00111063));
02367 Poles.SetValue(39,2,gp_Pnt(46.1222,-142.268,-0.24987));
02368 Poles.SetValue(39,3,gp_Pnt(46.0591,-126.79,-0.697635));
02369 Poles.SetValue(39,4,gp_Pnt(45.9503,-103.571,-1.56599));
02370 Poles.SetValue(39,5,gp_Pnt(45.856,-84.2638,-2.23446));
02371 Poles.SetValue(39,6,gp_Pnt(45.7158,-70.683,-2.88403));
02372 Poles.SetValue(39,7,gp_Pnt(45.6442,-62.9379,-3.34584));
02373 Poles.SetValue(39,8,gp_Pnt(45.5919,-57.1341,-3.69072));
02374 Poles.SetValue(39,9,gp_Pnt(45.5333,-51.33,-4.08565));
02375 Poles.SetValue(39,10,gp_Pnt(45.4961,-46.5017,-4.13549));
02376 Poles.SetValue(39,11,gp_Pnt(45.5149,-42.6839,-4.33983));
02377 Poles.SetValue(39,12,gp_Pnt(45.5827,-39.8663,-4.80837));
02378 Poles.SetValue(39,13,gp_Pnt(45.6781,-37.0642,-5.3692));
02379 Poles.SetValue(39,14,gp_Pnt(45.8102,-34.2784,-6.16223));
02380 Poles.SetValue(39,15,gp_Pnt(45.8709,-31.9134,-6.65192));
02381 Poles.SetValue(39,16,gp_Pnt(45.9562,-30.039,-7.1593));
02382 Poles.SetValue(39,17,gp_Pnt(46.0717,-27.2191,-7.89044));
02383 Poles.SetValue(39,18,gp_Pnt(46.2519,-23.9199,-8.84437));
02384 Poles.SetValue(39,19,gp_Pnt(46.4143,-20.1034,-9.76693));
02385 Poles.SetValue(39,20,gp_Pnt(46.5429,-16.2588,-10.5643));
02386 Poles.SetValue(39,21,gp_Pnt(46.6217,-12.3944,-11.1733));
02387 Poles.SetValue(39,22,gp_Pnt(46.681,-8.52657,-11.622));
02388 Poles.SetValue(39,23,gp_Pnt(46.7153,-5.61927,-11.8682));
02389 Poles.SetValue(39,24,gp_Pnt(46.7497,-1.73975,-12.0911));
02390 Poles.SetValue(39,25,gp_Pnt(46.7278,2.15162,-12.0955));
02391 Poles.SetValue(39,26,gp_Pnt(46.7066,6.03283,-11.9712));
02392 Poles.SetValue(39,27,gp_Pnt(46.6796,8.93942,-11.7865));
02393 Poles.SetValue(39,28,gp_Pnt(46.6257,12.8059,-11.425));
02394 Poles.SetValue(39,29,gp_Pnt(46.5243,16.6605,-10.8643));
02395 Poles.SetValue(39,30,gp_Pnt(46.3615,20.4856,-10.0971));
02396 Poles.SetValue(39,31,gp_Pnt(46.2089,24.304,-9.28958));
02397 Poles.SetValue(39,32,gp_Pnt(46.0224,27.5938,-8.42989));
02398 Poles.SetValue(39,33,gp_Pnt(45.9077,30.415,-7.785));
02399 Poles.SetValue(39,34,gp_Pnt(45.8414,32.3032,-7.38582));
02400 Poles.SetValue(39,35,gp_Pnt(45.7555,34.647,-6.87832));
02401 Poles.SetValue(39,36,gp_Pnt(45.6756,37.4791,-6.33131));
02402 Poles.SetValue(39,37,gp_Pnt(45.5588,40.2637,-5.71115));
02403 Poles.SetValue(39,38,gp_Pnt(45.4983,43.0898,-5.31195));
02404 Poles.SetValue(39,39,gp_Pnt(45.4876,46.9076,-5.26074));
02405 Poles.SetValue(39,40,gp_Pnt(45.5315,51.7279,-5.25925));
02406 Poles.SetValue(39,41,gp_Pnt(45.5802,57.5155,-4.81316));
02407 Poles.SetValue(39,42,gp_Pnt(45.6332,63.3069,-4.55574));
02408 Poles.SetValue(39,43,gp_Pnt(45.6962,71.0259,-4.09811));
02409 Poles.SetValue(39,44,gp_Pnt(45.8254,84.5537,-3.37827));
02410 Poles.SetValue(39,45,gp_Pnt(45.9243,103.783,-2.3236));
02411 Poles.SetValue(39,46,gp_Pnt(46.0379,126.89,-1.12458));
02412 Poles.SetValue(39,47,gp_Pnt(46.1137,142.301,-0.395727));
02413 Poles.SetValue(39,48,gp_Pnt(46.1465,150.001,0.000996613));
02414 Poles.SetValue(40,1,gp_Pnt(51.9175,-150,-0.000207971));
02415 Poles.SetValue(40,2,gp_Pnt(51.8891,-142.268,-0.241315));
02416 Poles.SetValue(40,3,gp_Pnt(51.8282,-126.796,-0.673804));
02417 Poles.SetValue(40,4,gp_Pnt(51.7199,-103.588,-1.45857));
02418 Poles.SetValue(40,5,gp_Pnt(51.6194,-84.2705,-2.10744));
02419 Poles.SetValue(40,6,gp_Pnt(51.5011,-70.7153,-2.68959));
02420 Poles.SetValue(40,7,gp_Pnt(51.438,-62.979,-3.06884));
02421 Poles.SetValue(40,8,gp_Pnt(51.3917,-57.1815,-3.4528));
02422 Poles.SetValue(40,9,gp_Pnt(51.333,-51.3737,-3.73088));
02423 Poles.SetValue(40,10,gp_Pnt(51.2926,-46.5422,-4.00316));
02424 Poles.SetValue(40,11,gp_Pnt(51.2652,-42.6804,-4.15327));
02425 Poles.SetValue(40,12,gp_Pnt(51.2481,-39.786,-4.14827));
02426 Poles.SetValue(40,13,gp_Pnt(51.2355,-36.9009,-4.17909));
02427 Poles.SetValue(40,14,gp_Pnt(51.269,-34.0518,-4.48805));
02428 Poles.SetValue(40,15,gp_Pnt(51.2999,-31.6825,-4.8317));
02429 Poles.SetValue(40,16,gp_Pnt(51.3423,-29.7917,-5.18954));
02430 Poles.SetValue(40,17,gp_Pnt(51.4157,-26.9599,-5.75758));
02431 Poles.SetValue(40,18,gp_Pnt(51.4915,-23.638,-6.34409));
02432 Poles.SetValue(40,19,gp_Pnt(51.6134,-19.8436,-7.01661));
02433 Poles.SetValue(40,20,gp_Pnt(51.7563,-16.0473,-7.67254));
02434 Poles.SetValue(40,21,gp_Pnt(51.9147,-12.2466,-8.28467));
02435 Poles.SetValue(40,22,gp_Pnt(52.0172,-8.41953,-8.69997));
02436 Poles.SetValue(40,23,gp_Pnt(52.0633,-5.54232,-8.92052));
02437 Poles.SetValue(40,24,gp_Pnt(52.1076,-1.69853,-9.12971));
02438 Poles.SetValue(40,25,gp_Pnt(52.1149,2.14658,-9.19114));
02439 Poles.SetValue(40,26,gp_Pnt(52.0573,5.98803,-9.04481));
02440 Poles.SetValue(40,27,gp_Pnt(52.0106,8.86368,-8.89058));
02441 Poles.SetValue(40,28,gp_Pnt(51.8867,12.6814,-8.51757));
02442 Poles.SetValue(40,29,gp_Pnt(51.7526,16.4859,-8.05187));
02443 Poles.SetValue(40,30,gp_Pnt(51.6058,20.2741,-7.46264));
02444 Poles.SetValue(40,31,gp_Pnt(51.4828,24.0629,-6.88014));
02445 Poles.SetValue(40,32,gp_Pnt(51.4123,27.3832,-6.35298));
02446 Poles.SetValue(40,33,gp_Pnt(51.3431,30.2167,-5.90237));
02447 Poles.SetValue(40,34,gp_Pnt(51.2972,32.1041,-5.6001));
02448 Poles.SetValue(40,35,gp_Pnt(51.2645,34.472,-5.32012));
02449 Poles.SetValue(40,36,gp_Pnt(51.2449,37.3238,-5.1352));
02450 Poles.SetValue(40,37,gp_Pnt(51.2601,40.2033,-5.10074));
02451 Poles.SetValue(40,38,gp_Pnt(51.2747,43.0862,-5.12741));
02452 Poles.SetValue(40,39,gp_Pnt(51.2989,46.9359,-5.04137));
02453 Poles.SetValue(40,40,gp_Pnt(51.3275,51.7504,-4.70088));
02454 Poles.SetValue(40,41,gp_Pnt(51.3841,57.5438,-4.49279));
02455 Poles.SetValue(40,42,gp_Pnt(51.4284,63.3289,-4.20573));
02456 Poles.SetValue(40,43,gp_Pnt(51.4853,71.0399,-3.80369));
02457 Poles.SetValue(40,44,gp_Pnt(51.5952,84.5486,-3.19745));
02458 Poles.SetValue(40,45,gp_Pnt(51.696,103.788,-2.1844));
02459 Poles.SetValue(40,46,gp_Pnt(51.8075,126.892,-1.07015));
02460 Poles.SetValue(40,47,gp_Pnt(51.8814,142.3,-0.382549));
02461 Poles.SetValue(40,48,gp_Pnt(51.9141,150,0.00156463));
02462 Poles.SetValue(41,1,gp_Pnt(57.6856,-150,-0.00138605));
02463 Poles.SetValue(41,2,gp_Pnt(57.6563,-142.267,-0.207898));
02464 Poles.SetValue(41,3,gp_Pnt(57.5975,-126.803,-0.672181));
02465 Poles.SetValue(41,4,gp_Pnt(57.4914,-103.604,-1.36423));
02466 Poles.SetValue(41,5,gp_Pnt(57.3865,-84.2807,-1.92972));
02467 Poles.SetValue(41,6,gp_Pnt(57.2896,-70.7489,-2.50829));
02468 Poles.SetValue(41,7,gp_Pnt(57.2325,-63.0194,-2.86727));
02469 Poles.SetValue(41,8,gp_Pnt(57.1871,-57.2225,-3.14507));
02470 Poles.SetValue(41,9,gp_Pnt(57.1423,-51.4292,-3.42927));
02471 Poles.SetValue(41,10,gp_Pnt(57.1017,-46.5994,-3.67864));
02472 Poles.SetValue(41,11,gp_Pnt(57.0621,-42.7292,-3.85432));
02473 Poles.SetValue(41,12,gp_Pnt(57.03,-39.8239,-4.01388));
02474 Poles.SetValue(41,13,gp_Pnt(56.9862,-36.9115,-4.15465));
02475 Poles.SetValue(41,14,gp_Pnt(56.9332,-33.9994,-4.17982));
02476 Poles.SetValue(41,15,gp_Pnt(56.8867,-31.5805,-4.17145));
02477 Poles.SetValue(41,16,gp_Pnt(56.8715,-29.6623,-4.20861));
02478 Poles.SetValue(41,17,gp_Pnt(56.8491,-26.7863,-4.25366));
02479 Poles.SetValue(41,18,gp_Pnt(56.889,-23.4691,-4.52661));
02480 Poles.SetValue(41,19,gp_Pnt(56.9549,-19.6804,-4.85027));
02481 Poles.SetValue(41,20,gp_Pnt(57.0475,-15.8997,-5.24921));
02482 Poles.SetValue(41,21,gp_Pnt(57.1486,-12.1132,-5.61949));
02483 Poles.SetValue(41,22,gp_Pnt(57.2089,-8.31776,-5.89532));
02484 Poles.SetValue(41,23,gp_Pnt(57.2368,-5.4661,-6.04286));
02485 Poles.SetValue(41,24,gp_Pnt(57.2712,-1.66308,-6.20009));
02486 Poles.SetValue(41,25,gp_Pnt(57.2835,2.13802,-6.25618));
02487 Poles.SetValue(41,26,gp_Pnt(57.2397,5.93802,-6.16615));
02488 Poles.SetValue(41,27,gp_Pnt(57.2064,8.78585,-6.08208));
02489 Poles.SetValue(41,28,gp_Pnt(57.1543,12.5793,-5.9372));
02490 Poles.SetValue(41,29,gp_Pnt(57.0517,16.3584,-5.62801));
02491 Poles.SetValue(41,30,gp_Pnt(56.9666,20.1329,-5.34449));
02492 Poles.SetValue(41,31,gp_Pnt(56.9077,23.9136,-5.10547));
02493 Poles.SetValue(41,32,gp_Pnt(56.8624,27.2205,-4.90474));
02494 Poles.SetValue(41,33,gp_Pnt(56.894,30.0927,-4.90413));
02495 Poles.SetValue(41,34,gp_Pnt(56.9172,32.0097,-4.91734));
02496 Poles.SetValue(41,35,gp_Pnt(56.9647,34.4197,-4.99635));
02497 Poles.SetValue(41,36,gp_Pnt(57.0094,37.3184,-4.96512));
02498 Poles.SetValue(41,37,gp_Pnt(57.0441,40.2167,-4.87499));
02499 Poles.SetValue(41,38,gp_Pnt(57.074,43.1143,-4.7391));
02500 Poles.SetValue(41,39,gp_Pnt(57.107,46.9716,-4.56627));
02501 Poles.SetValue(41,40,gp_Pnt(57.1445,51.7898,-4.39661));
02502 Poles.SetValue(41,41,gp_Pnt(57.1814,57.5667,-4.1162));
02503 Poles.SetValue(41,42,gp_Pnt(57.2214,63.3465,-3.84863));
02504 Poles.SetValue(41,43,gp_Pnt(57.2769,71.057,-3.56972));
02505 Poles.SetValue(41,44,gp_Pnt(57.3669,84.5447,-2.9687));
02506 Poles.SetValue(41,45,gp_Pnt(57.468,103.793,-2.06019));
02507 Poles.SetValue(41,46,gp_Pnt(57.5787,126.894,-1.02905));
02508 Poles.SetValue(41,47,gp_Pnt(57.6483,142.299,-0.34422));
02509 Poles.SetValue(41,48,gp_Pnt(57.682,150,-0.00209716));
02510 Poles.SetValue(42,1,gp_Pnt(63.4538,-150,0.0025406));
02511 Poles.SetValue(42,2,gp_Pnt(63.4247,-142.269,-0.215374));
02512 Poles.SetValue(42,3,gp_Pnt(63.3664,-126.808,-0.616228));
02513 Poles.SetValue(42,4,gp_Pnt(63.2638,-103.618,-1.25801));
02514 Poles.SetValue(42,5,gp_Pnt(63.16,-84.297,-1.79523));
02515 Poles.SetValue(42,6,gp_Pnt(63.0783,-70.7815,-2.3401));
02516 Poles.SetValue(42,7,gp_Pnt(63.027,-63.0578,-2.63615));
02517 Poles.SetValue(42,8,gp_Pnt(62.9884,-57.2671,-2.89533));
02518 Poles.SetValue(42,9,gp_Pnt(62.9474,-51.4766,-3.14791));
02519 Poles.SetValue(42,10,gp_Pnt(62.9083,-46.6481,-3.34003));
02520 Poles.SetValue(42,11,gp_Pnt(62.8727,-42.7819,-3.50126));
02521 Poles.SetValue(42,12,gp_Pnt(62.844,-39.8816,-3.60833));
02522 Poles.SetValue(42,13,gp_Pnt(62.8104,-36.9784,-3.72009));
02523 Poles.SetValue(42,14,gp_Pnt(62.778,-34.08,-3.87178));
02524 Poles.SetValue(42,15,gp_Pnt(62.7431,-31.6622,-3.99896));
02525 Poles.SetValue(42,16,gp_Pnt(62.716,-29.7336,-4.07291));
02526 Poles.SetValue(42,17,gp_Pnt(62.6769,-26.8425,-4.18869));
02527 Poles.SetValue(42,18,gp_Pnt(62.6426,-23.4886,-4.19616));
02528 Poles.SetValue(42,19,gp_Pnt(62.6334,-19.6721,-4.26579));
02529 Poles.SetValue(42,20,gp_Pnt(62.6295,-15.8635,-4.27213));
02530 Poles.SetValue(42,21,gp_Pnt(62.646,-12.069,-4.36676));
02531 Poles.SetValue(42,22,gp_Pnt(62.6617,-8.28186,-4.45874));
02532 Poles.SetValue(42,23,gp_Pnt(62.6691,-5.44261,-4.50132));
02533 Poles.SetValue(42,24,gp_Pnt(62.6758,-1.65987,-4.58196));
02534 Poles.SetValue(42,25,gp_Pnt(62.6653,2.12054,-4.61217));
02535 Poles.SetValue(42,26,gp_Pnt(62.6597,5.90097,-4.63357));
02536 Poles.SetValue(42,27,gp_Pnt(62.6549,8.73683,-4.65964));
02537 Poles.SetValue(42,28,gp_Pnt(62.6418,12.5178,-4.65205));
02538 Poles.SetValue(42,29,gp_Pnt(62.6327,16.3026,-4.65055));
02539 Poles.SetValue(42,30,gp_Pnt(62.6435,20.0986,-4.70703));
02540 Poles.SetValue(42,31,gp_Pnt(62.662,23.9034,-4.72568));
02541 Poles.SetValue(42,32,gp_Pnt(62.7054,27.2507,-4.79821));
02542 Poles.SetValue(42,33,gp_Pnt(62.7415,30.1344,-4.72137));
02543 Poles.SetValue(42,34,gp_Pnt(62.7653,32.0573,-4.65936));
02544 Poles.SetValue(42,35,gp_Pnt(62.7973,34.4696,-4.55886));
02545 Poles.SetValue(42,36,gp_Pnt(62.8292,37.3615,-4.47524));
02546 Poles.SetValue(42,37,gp_Pnt(62.8611,40.2567,-4.4017));
02547 Poles.SetValue(42,38,gp_Pnt(62.885,43.1468,-4.31334));
02548 Poles.SetValue(42,39,gp_Pnt(62.9162,47.0013,-4.18874));
02549 Poles.SetValue(42,40,gp_Pnt(62.9483,51.8154,-4.00002));
02550 Poles.SetValue(42,41,gp_Pnt(62.9852,57.5918,-3.80305));
02551 Poles.SetValue(42,42,gp_Pnt(63.0192,63.3675,-3.57283));
02552 Poles.SetValue(42,43,gp_Pnt(63.0676,71.0714,-3.31891));
02553 Poles.SetValue(42,44,gp_Pnt(63.1421,84.547,-2.75086));
02554 Poles.SetValue(42,45,gp_Pnt(63.2424,103.797,-1.92907));
02555 Poles.SetValue(42,46,gp_Pnt(63.3482,126.895,-0.959019));
02556 Poles.SetValue(42,47,gp_Pnt(63.4166,142.297,-0.27787));
02557 Poles.SetValue(42,48,gp_Pnt(63.4498,150,0.00445876));
02558 Poles.SetValue(43,1,gp_Pnt(71.145,-150,-0.000857612));
02559 Poles.SetValue(43,2,gp_Pnt(71.1162,-142.27,-0.152808));
02560 Poles.SetValue(43,3,gp_Pnt(71.0596,-126.815,-0.587576));
02561 Poles.SetValue(43,4,gp_Pnt(70.9617,-103.636,-1.09496));
02562 Poles.SetValue(43,5,gp_Pnt(70.8648,-84.3248,-1.63803));
02563 Poles.SetValue(43,6,gp_Pnt(70.796,-70.8215,-2.12446));
02564 Poles.SetValue(43,7,gp_Pnt(70.7543,-63.1072,-2.37388));
02565 Poles.SetValue(43,8,gp_Pnt(70.7215,-57.3211,-2.55159));
02566 Poles.SetValue(43,9,gp_Pnt(70.6876,-51.5353,-2.75534));
02567 Poles.SetValue(43,10,gp_Pnt(70.6596,-46.716,-2.93875));
02568 Poles.SetValue(43,11,gp_Pnt(70.638,-42.8622,-3.09314));
02569 Poles.SetValue(43,12,gp_Pnt(70.6204,-39.9716,-3.17812));
02570 Poles.SetValue(43,13,gp_Pnt(70.6043,-37.0819,-3.28977));
02571 Poles.SetValue(43,14,gp_Pnt(70.5873,-34.1932,-3.36653));
02572 Poles.SetValue(43,15,gp_Pnt(70.5748,-31.7872,-3.44513));
02573 Poles.SetValue(43,16,gp_Pnt(70.5669,-29.8663,-3.51303));
02574 Poles.SetValue(43,17,gp_Pnt(70.5542,-26.9849,-3.60722));
02575 Poles.SetValue(43,18,gp_Pnt(70.5428,-23.6313,-3.75743));
02576 Poles.SetValue(43,19,gp_Pnt(70.5216,-19.7991,-3.8651));
02577 Poles.SetValue(43,20,gp_Pnt(70.5074,-15.9743,-4.01435));
02578 Poles.SetValue(43,21,gp_Pnt(70.4895,-12.1568,-4.07719));
02579 Poles.SetValue(43,22,gp_Pnt(70.4779,-8.34932,-4.14211));
02580 Poles.SetValue(43,23,gp_Pnt(70.4743,-5.49851,-4.2144));
02581 Poles.SetValue(43,24,gp_Pnt(70.4711,-1.70019,-4.26983));
02582 Poles.SetValue(43,25,gp_Pnt(70.4772,2.09575,-4.33461));
02583 Poles.SetValue(43,26,gp_Pnt(70.4818,5.8932,-4.36337));
02584 Poles.SetValue(43,27,gp_Pnt(70.4863,8.74296,-4.35931));
02585 Poles.SetValue(43,28,gp_Pnt(70.4965,12.5464,-4.34509));
02586 Poles.SetValue(43,29,gp_Pnt(70.5111,16.3559,-4.34157));
02587 Poles.SetValue(43,30,gp_Pnt(70.5238,20.1732,-4.25483));
02588 Poles.SetValue(43,31,gp_Pnt(70.5444,23.9982,-4.20505));
02589 Poles.SetValue(43,32,gp_Pnt(70.5565,27.3468,-4.1081));
02590 Poles.SetValue(43,33,gp_Pnt(70.5753,30.2247,-4.08653));
02591 Poles.SetValue(43,34,gp_Pnt(70.5877,32.1436,-4.07523));
02592 Poles.SetValue(43,35,gp_Pnt(70.6023,34.545,-4.05073));
02593 Poles.SetValue(43,36,gp_Pnt(70.6195,37.4276,-3.98741));
02594 Poles.SetValue(43,37,gp_Pnt(70.6334,40.3106,-3.90872));
02595 Poles.SetValue(43,38,gp_Pnt(70.6494,43.1951,-3.83));
02596 Poles.SetValue(43,39,gp_Pnt(70.6689,47.0414,-3.71793));
02597 Poles.SetValue(43,40,gp_Pnt(70.6945,51.851,-3.59864));
02598 Poles.SetValue(43,41,gp_Pnt(70.7214,57.6214,-3.39071));
02599 Poles.SetValue(43,42,gp_Pnt(70.7489,63.3924,-3.20505));
02600 Poles.SetValue(43,43,gp_Pnt(70.7842,71.0857,-2.88826));
02601 Poles.SetValue(43,44,gp_Pnt(70.8464,84.5547,-2.43588));
02602 Poles.SetValue(43,45,gp_Pnt(70.9463,103.804,-1.8405));
02603 Poles.SetValue(43,46,gp_Pnt(71.0396,126.896,-0.842595));
02604 Poles.SetValue(43,47,gp_Pnt(71.1097,142.298,-0.284851));
02605 Poles.SetValue(43,48,gp_Pnt(71.1403,150,0.000935964));
02606 Poles.SetValue(44,1,gp_Pnt(84.6054,-150,-0.00110981));
02607 Poles.SetValue(44,2,gp_Pnt(84.578,-142.276,-0.19879));
02608 Poles.SetValue(44,3,gp_Pnt(84.5262,-126.827,-0.428048));
02609 Poles.SetValue(44,4,gp_Pnt(84.4365,-103.667,-0.830318));
02610 Poles.SetValue(44,5,gp_Pnt(84.36,-84.3785,-1.33467));
02611 Poles.SetValue(44,6,gp_Pnt(84.3031,-70.89,-1.70138));
02612 Poles.SetValue(44,7,gp_Pnt(84.275,-63.1861,-1.89652));
02613 Poles.SetValue(44,8,gp_Pnt(84.2584,-57.4138,-2.07504));
02614 Poles.SetValue(44,9,gp_Pnt(84.248,-51.6477,-2.24438));
02615 Poles.SetValue(44,10,gp_Pnt(84.2459,-46.8473,-2.35057));
02616 Poles.SetValue(44,11,gp_Pnt(84.2519,-43.0105,-2.40101));
02617 Poles.SetValue(44,12,gp_Pnt(84.2621,-40.138,-2.47508));
02618 Poles.SetValue(44,13,gp_Pnt(84.2775,-37.2661,-2.50855));
02619 Poles.SetValue(44,14,gp_Pnt(84.2986,-34.4008,-2.62094));
02620 Poles.SetValue(44,15,gp_Pnt(84.3172,-32.0111,-2.66065));
02621 Poles.SetValue(44,16,gp_Pnt(84.3284,-30.0979,-2.70139));
02622 Poles.SetValue(44,17,gp_Pnt(84.3451,-27.2279,-2.76856));
02623 Poles.SetValue(44,18,gp_Pnt(84.3501,-23.8723,-2.78848));
02624 Poles.SetValue(44,19,gp_Pnt(84.3568,-20.039,-2.88096));
02625 Poles.SetValue(44,20,gp_Pnt(84.3439,-16.1977,-2.86279));
02626 Poles.SetValue(44,21,gp_Pnt(84.3401,-12.3571,-2.99929));
02627 Poles.SetValue(44,22,gp_Pnt(84.3364,-8.51254,-3.10404));
02628 Poles.SetValue(44,23,gp_Pnt(84.3307,-5.62646,-3.13212));
02629 Poles.SetValue(44,24,gp_Pnt(84.3261,-1.77822,-3.18231));
02630 Poles.SetValue(44,25,gp_Pnt(84.3219,2.0692,-3.18879));
02631 Poles.SetValue(44,26,gp_Pnt(84.3241,5.91518,-3.18419));
02632 Poles.SetValue(44,27,gp_Pnt(84.3283,8.7991,-3.19732));
02633 Poles.SetValue(44,28,gp_Pnt(84.3322,12.6435,-3.19362));
02634 Poles.SetValue(44,29,gp_Pnt(84.3367,16.4878,-3.15729));
02635 Poles.SetValue(44,30,gp_Pnt(84.3449,20.3298,-3.212));
02636 Poles.SetValue(44,31,gp_Pnt(84.3382,24.1652,-3.18681));
02637 Poles.SetValue(44,32,gp_Pnt(84.3328,27.5176,-3.24238));
02638 Poles.SetValue(44,33,gp_Pnt(84.3137,30.3832,-3.1762));
02639 Poles.SetValue(44,34,gp_Pnt(84.3012,32.2934,-3.13458));
02640 Poles.SetValue(44,35,gp_Pnt(84.2835,34.6788,-3.05639));
02641 Poles.SetValue(44,36,gp_Pnt(84.2688,37.5436,-3.03341));
02642 Poles.SetValue(44,37,gp_Pnt(84.2567,40.4108,-2.97846));
02643 Poles.SetValue(44,38,gp_Pnt(84.2493,43.2807,-2.94203));
02644 Poles.SetValue(44,39,gp_Pnt(84.2426,47.1105,-2.85403));
02645 Poles.SetValue(44,40,gp_Pnt(84.2423,51.9032,-2.73437));
02646 Poles.SetValue(44,41,gp_Pnt(84.2552,57.6633,-2.65697));
02647 Poles.SetValue(44,42,gp_Pnt(84.2707,63.4255,-2.51041));
02648 Poles.SetValue(44,43,gp_Pnt(84.2947,71.1123,-2.33047));
02649 Poles.SetValue(44,44,gp_Pnt(84.3464,84.5727,-1.97042));
02650 Poles.SetValue(44,45,gp_Pnt(84.4215,103.814,-1.51302));
02651 Poles.SetValue(44,46,gp_Pnt(84.5086,126.896,-0.626681));
02652 Poles.SetValue(44,47,gp_Pnt(84.5693,142.301,-0.243958));
02653 Poles.SetValue(44,48,gp_Pnt(84.5995,150,-0.000554027));
02654 Poles.SetValue(45,1,gp_Pnt(103.838,-149.999,0.000693631));
02655 Poles.SetValue(45,2,gp_Pnt(103.817,-142.283,-0.134708));
02656 Poles.SetValue(45,3,gp_Pnt(103.771,-126.851,-0.393149));
02657 Poles.SetValue(45,4,gp_Pnt(103.704,-103.715,-0.554331));
02658 Poles.SetValue(45,5,gp_Pnt(103.653,-84.4538,-0.85582));
02659 Poles.SetValue(45,6,gp_Pnt(103.619,-70.9776,-1.13828));
02660 Poles.SetValue(45,7,gp_Pnt(103.6,-63.2834,-1.26826));
02661 Poles.SetValue(45,8,gp_Pnt(103.585,-57.5128,-1.32722));
02662 Poles.SetValue(45,9,gp_Pnt(103.569,-51.7417,-1.39145));
02663 Poles.SetValue(45,10,gp_Pnt(103.554,-46.933,-1.47713));
02664 Poles.SetValue(45,11,gp_Pnt(103.538,-43.0832,-1.56351));
02665 Poles.SetValue(45,12,gp_Pnt(103.524,-40.1968,-1.61145));
02666 Poles.SetValue(45,13,gp_Pnt(103.505,-37.3056,-1.67968));
02667 Poles.SetValue(45,14,gp_Pnt(103.487,-34.4181,-1.71097));
02668 Poles.SetValue(45,15,gp_Pnt(103.468,-32.0079,-1.76122));
02669 Poles.SetValue(45,16,gp_Pnt(103.458,-30.085,-1.80205));
02670 Poles.SetValue(45,17,gp_Pnt(103.443,-27.2014,-1.86016));
02671 Poles.SetValue(45,18,gp_Pnt(103.436,-23.8458,-1.96204));
02672 Poles.SetValue(45,19,gp_Pnt(103.426,-20.0087,-2.01108));
02673 Poles.SetValue(45,20,gp_Pnt(103.432,-16.1784,-2.11951));
02674 Poles.SetValue(45,21,gp_Pnt(103.429,-12.3464,-2.09847));
02675 Poles.SetValue(45,22,gp_Pnt(103.426,-8.51499,-2.09843));
02676 Poles.SetValue(45,23,gp_Pnt(103.427,-5.64258,-2.13298));
02677 Poles.SetValue(45,24,gp_Pnt(103.428,-1.81239,-2.15552));
02678 Poles.SetValue(45,25,gp_Pnt(103.429,2.01779,-2.2127));
02679 Poles.SetValue(45,26,gp_Pnt(103.425,5.84787,-2.24947));
02680 Poles.SetValue(45,27,gp_Pnt(103.42,8.7205,-2.23377));
02681 Poles.SetValue(45,28,gp_Pnt(103.419,12.5505,-2.2506));
02682 Poles.SetValue(45,29,gp_Pnt(103.418,16.3787,-2.27936));
02683 Poles.SetValue(45,30,gp_Pnt(103.409,20.2066,-2.15004));
02684 Poles.SetValue(45,31,gp_Pnt(103.421,24.0411,-2.1335));
02685 Poles.SetValue(45,32,gp_Pnt(103.43,27.3967,-2.05519));
02686 Poles.SetValue(45,33,gp_Pnt(103.449,30.2805,-2.04635));
02687 Poles.SetValue(45,34,gp_Pnt(103.463,32.2036,-2.0388));
02688 Poles.SetValue(45,35,gp_Pnt(103.484,34.6131,-2.03358));
02689 Poles.SetValue(45,36,gp_Pnt(103.502,37.4987,-2.0062));
02690 Poles.SetValue(45,37,gp_Pnt(103.523,40.3884,-1.97852));
02691 Poles.SetValue(45,38,gp_Pnt(103.537,43.2734,-1.95553));
02692 Poles.SetValue(45,39,gp_Pnt(103.557,47.1221,-1.93252));
02693 Poles.SetValue(45,40,gp_Pnt(103.574,51.9281,-1.89403));
02694 Poles.SetValue(45,41,gp_Pnt(103.584,57.6907,-1.74768));
02695 Poles.SetValue(45,42,gp_Pnt(103.596,63.4551,-1.66735));
02696 Poles.SetValue(45,43,gp_Pnt(103.612,71.1425,-1.54309));
02697 Poles.SetValue(45,44,gp_Pnt(103.644,84.5989,-1.46411));
02698 Poles.SetValue(45,45,gp_Pnt(103.687,103.818,-0.980467));
02699 Poles.SetValue(45,46,gp_Pnt(103.757,126.905,-0.536908));
02700 Poles.SetValue(45,47,gp_Pnt(103.805,142.3,-0.161313));
02701 Poles.SetValue(45,48,gp_Pnt(103.83,150,-0.000163518));
02702 Poles.SetValue(46,1,gp_Pnt(126.927,-150.004,-0.000100752));
02703 Poles.SetValue(46,2,gp_Pnt(126.912,-142.299,-0.130631));
02704 Poles.SetValue(46,3,gp_Pnt(126.883,-126.887,-0.24799));
02705 Poles.SetValue(46,4,gp_Pnt(126.843,-103.777,-0.260883));
02706 Poles.SetValue(46,5,gp_Pnt(126.816,-84.5309,-0.411687));
02707 Poles.SetValue(46,6,gp_Pnt(126.804,-71.0707,-0.543712));
02708 Poles.SetValue(46,7,gp_Pnt(126.796,-63.376,-0.610079));
02709 Poles.SetValue(46,8,gp_Pnt(126.79,-57.6067,-0.646868));
02710 Poles.SetValue(46,9,gp_Pnt(126.783,-51.839,-0.65842));
02711 Poles.SetValue(46,10,gp_Pnt(126.779,-47.033,-0.68082));
02712 Poles.SetValue(46,11,gp_Pnt(126.778,-43.1892,-0.711667));
02713 Poles.SetValue(46,12,gp_Pnt(126.779,-40.3077,-0.742656));
02714 Poles.SetValue(46,13,gp_Pnt(126.782,-37.4269,-0.771362));
02715 Poles.SetValue(46,14,gp_Pnt(126.785,-34.5477,-0.808585));
02716 Poles.SetValue(46,15,gp_Pnt(126.79,-32.1486,-0.836321));
02717 Poles.SetValue(46,16,gp_Pnt(126.79,-30.2277,-0.847354));
02718 Poles.SetValue(46,17,gp_Pnt(126.791,-27.3461,-0.865188));
02719 Poles.SetValue(46,18,gp_Pnt(126.786,-23.9805,-0.850589));
02720 Poles.SetValue(46,19,gp_Pnt(126.785,-20.137,-0.872177));
02721 Poles.SetValue(46,20,gp_Pnt(126.774,-16.2901,-0.841412));
02722 Poles.SetValue(46,21,gp_Pnt(126.771,-12.4455,-0.888617));
02723 Poles.SetValue(46,22,gp_Pnt(126.77,-8.6011,-0.924689));
02724 Poles.SetValue(46,23,gp_Pnt(126.769,-5.71714,-0.928362));
02725 Poles.SetValue(46,24,gp_Pnt(126.767,-1.87221,-0.950812));
02726 Poles.SetValue(46,25,gp_Pnt(126.766,1.97273,-0.93774));
02727 Poles.SetValue(46,26,gp_Pnt(126.768,5.81772,-0.926189));
02728 Poles.SetValue(46,27,gp_Pnt(126.773,8.70129,-0.947427));
02729 Poles.SetValue(46,28,gp_Pnt(126.775,12.5459,-0.942477));
02730 Poles.SetValue(46,29,gp_Pnt(126.78,16.3917,-0.92351));
02731 Poles.SetValue(46,30,gp_Pnt(126.795,20.2388,-1.01431));
02732 Poles.SetValue(46,31,gp_Pnt(126.796,24.0826,-1.01183));
02733 Poles.SetValue(46,32,gp_Pnt(126.802,27.4469,-1.0509));
02734 Poles.SetValue(46,33,gp_Pnt(126.799,30.3276,-1.04049));
02735 Poles.SetValue(46,34,gp_Pnt(126.797,32.2478,-1.03441));
02736 Poles.SetValue(46,35,gp_Pnt(126.793,34.647,-1.02114));
02737 Poles.SetValue(46,36,gp_Pnt(126.79,37.5265,-1.01193));
02738 Poles.SetValue(46,37,gp_Pnt(126.787,40.4072,-0.994831));
02739 Poles.SetValue(46,38,gp_Pnt(126.786,43.2878,-0.961342));
02740 Poles.SetValue(46,39,gp_Pnt(126.783,47.1296,-0.902547));
02741 Poles.SetValue(46,40,gp_Pnt(126.782,51.9326,-0.817673));
02742 Poles.SetValue(46,41,gp_Pnt(126.787,57.6992,-0.788109));
02743 Poles.SetValue(46,42,gp_Pnt(126.789,63.4643,-0.707706));
02744 Poles.SetValue(46,43,gp_Pnt(126.797,71.1523,-0.758598));
02745 Poles.SetValue(46,44,gp_Pnt(126.808,84.6041,-0.552723));
02746 Poles.SetValue(46,45,gp_Pnt(126.827,103.836,-0.468498));
02747 Poles.SetValue(46,46,gp_Pnt(126.872,126.912,-0.205591));
02748 Poles.SetValue(46,47,gp_Pnt(126.901,142.306,-0.0896176));
02749 Poles.SetValue(46,48,gp_Pnt(126.919,150,-0.00186706));
02750 Poles.SetValue(47,1,gp_Pnt(142.331,-150.022,-0.0011824));
02751 Poles.SetValue(47,2,gp_Pnt(142.32,-142.319,-0.0845723));
02752 Poles.SetValue(47,3,gp_Pnt(142.296,-126.912,-0.0348247));
02753 Poles.SetValue(47,4,gp_Pnt(142.281,-103.817,-0.216625));
02754 Poles.SetValue(47,5,gp_Pnt(142.273,-84.5809,-0.194036));
02755 Poles.SetValue(47,6,gp_Pnt(142.264,-71.117,-0.0962207));
02756 Poles.SetValue(47,7,gp_Pnt(142.262,-63.4269,-0.109676));
02757 Poles.SetValue(47,8,gp_Pnt(142.261,-57.6591,-0.134362));
02758 Poles.SetValue(47,9,gp_Pnt(142.261,-51.8912,-0.17447));
02759 Poles.SetValue(47,10,gp_Pnt(142.261,-47.0855,-0.198201));
02760 Poles.SetValue(47,11,gp_Pnt(142.261,-43.2412,-0.213413));
02761 Poles.SetValue(47,12,gp_Pnt(142.261,-40.3577,-0.219481));
02762 Poles.SetValue(47,13,gp_Pnt(142.261,-37.474,-0.231785));
02763 Poles.SetValue(47,14,gp_Pnt(142.261,-34.5899,-0.238239));
02764 Poles.SetValue(47,15,gp_Pnt(142.261,-32.1863,-0.245761));
02765 Poles.SetValue(47,16,gp_Pnt(142.261,-30.264,-0.25701));
02766 Poles.SetValue(47,17,gp_Pnt(142.262,-27.3805,-0.273362));
02767 Poles.SetValue(47,18,gp_Pnt(142.265,-24.0175,-0.308423));
02768 Poles.SetValue(47,19,gp_Pnt(142.266,-20.1723,-0.320574));
02769 Poles.SetValue(47,20,gp_Pnt(142.269,-16.3277,-0.347549));
02770 Poles.SetValue(47,21,gp_Pnt(142.268,-12.4815,-0.333554));
02771 Poles.SetValue(47,22,gp_Pnt(142.267,-8.63539,-0.333702));
02772 Poles.SetValue(47,23,gp_Pnt(142.267,-5.75114,-0.350197));
02773 Poles.SetValue(47,24,gp_Pnt(142.267,-1.9053,-0.361855));
02774 Poles.SetValue(47,25,gp_Pnt(142.269,1.94054,-0.382183));
02775 Poles.SetValue(47,26,gp_Pnt(142.27,5.78645,-0.393577));
02776 Poles.SetValue(47,27,gp_Pnt(142.27,8.67102,-0.385519));
02777 Poles.SetValue(47,28,gp_Pnt(142.271,12.5173,-0.39336));
02778 Poles.SetValue(47,29,gp_Pnt(142.272,16.3631,-0.412844));
02779 Poles.SetValue(47,30,gp_Pnt(142.268,20.2079,-0.378051));
02780 Poles.SetValue(47,31,gp_Pnt(142.268,24.0533,-0.383864));
02781 Poles.SetValue(47,32,gp_Pnt(142.265,27.4171,-0.365288));
02782 Poles.SetValue(47,33,gp_Pnt(142.265,30.301,-0.36621));
02783 Poles.SetValue(47,34,gp_Pnt(142.265,32.2237,-0.366061));
02784 Poles.SetValue(47,35,gp_Pnt(142.266,34.6274,-0.366875));
02785 Poles.SetValue(47,36,gp_Pnt(142.265,37.5114,-0.360017));
02786 Poles.SetValue(47,37,gp_Pnt(142.265,40.395,-0.352827));
02787 Poles.SetValue(47,38,gp_Pnt(142.264,43.2786,-0.337981));
02788 Poles.SetValue(47,39,gp_Pnt(142.264,47.1233,-0.322015));
02789 Poles.SetValue(47,40,gp_Pnt(142.263,51.9292,-0.307379));
02790 Poles.SetValue(47,41,gp_Pnt(142.263,57.6957,-0.274754));
02791 Poles.SetValue(47,42,gp_Pnt(142.265,63.4634,-0.312079));
02792 Poles.SetValue(47,43,gp_Pnt(142.267,71.1535,-0.274627));
02793 Poles.SetValue(47,44,gp_Pnt(142.268,84.6121,-0.229297));
02794 Poles.SetValue(47,45,gp_Pnt(142.275,103.837,-0.124819));
02795 Poles.SetValue(47,46,gp_Pnt(142.29,126.918,-0.114093));
02796 Poles.SetValue(47,47,gp_Pnt(142.315,142.308,0.0555229));
02797 Poles.SetValue(47,48,gp_Pnt(142.328,150.004,0.00172523));
02798 Poles.SetValue(48,1,gp_Pnt(150.034,-150.032,0.000374255));
02799 Poles.SetValue(48,2,gp_Pnt(150.024,-142.329,-0.0018713));
02800 Poles.SetValue(48,3,gp_Pnt(150.004,-126.925,0.00327151));
02801 Poles.SetValue(48,4,gp_Pnt(149.999,-103.837,-0.00371772));
02802 Poles.SetValue(48,5,gp_Pnt(150,-84.6045,0.00227291));
02803 Poles.SetValue(48,6,gp_Pnt(150,-71.1444,-0.00370124));
02804 Poles.SetValue(48,7,gp_Pnt(150,-63.4533,0.00501253));
02805 Poles.SetValue(48,8,gp_Pnt(150,-57.6854,-0.0023337));
02806 Poles.SetValue(48,9,gp_Pnt(150,-51.9177,-0.00081928));
02807 Poles.SetValue(48,10,gp_Pnt(150.001,-47.1109,-0.000992593));
02808 Poles.SetValue(48,11,gp_Pnt(150.001,-43.2652,0.000772656));
02809 Poles.SetValue(48,12,gp_Pnt(150.001,-40.381,-3.16637e-006));
02810 Poles.SetValue(48,13,gp_Pnt(150.001,-37.4966,0.00148961));
02811 Poles.SetValue(48,14,gp_Pnt(150.001,-34.6123,0.00149543));
02812 Poles.SetValue(48,15,gp_Pnt(150.001,-32.2086,-0.000131478));
02813 Poles.SetValue(48,16,gp_Pnt(150.001,-30.2856,-0.000312929));
02814 Poles.SetValue(48,17,gp_Pnt(150.001,-27.4012,-0.00119273));
02815 Poles.SetValue(48,18,gp_Pnt(150.002,-24.036,0.000913256));
02816 Poles.SetValue(48,19,gp_Pnt(150.002,-20.19,-0.000202949));
02817 Poles.SetValue(48,20,gp_Pnt(150.003,-16.3441,0.0036406));
02818 Poles.SetValue(48,21,gp_Pnt(150.003,-12.4982,0.0019362));
02819 Poles.SetValue(48,22,gp_Pnt(150.004,-8.65203,0.000622563));
02820 Poles.SetValue(48,23,gp_Pnt(150.005,-5.7673,0.00229496));
02821 Poles.SetValue(48,24,gp_Pnt(150.005,-1.92098,-7.68902e-005));
02822 Poles.SetValue(48,25,gp_Pnt(150.005,1.92543,0.000370792));
02823 Poles.SetValue(48,26,gp_Pnt(150.005,5.77187,0.00239266));
02824 Poles.SetValue(48,27,gp_Pnt(150.004,8.65667,0.000574651));
02825 Poles.SetValue(48,28,gp_Pnt(150.004,12.503,0.00222324));
02826 Poles.SetValue(48,29,gp_Pnt(150.003,16.3492,0.00598073));
02827 Poles.SetValue(48,30,gp_Pnt(150.002,20.1954,0.000135085));
02828 Poles.SetValue(48,31,gp_Pnt(150.002,24.0417,0.00238843));
02829 Poles.SetValue(48,32,gp_Pnt(150.002,27.4072,-0.000189144));
02830 Poles.SetValue(48,33,gp_Pnt(150.001,30.2919,0.000229755));
02831 Poles.SetValue(48,34,gp_Pnt(150.001,32.2151,0.000156563));
02832 Poles.SetValue(48,35,gp_Pnt(150.001,34.6191,-0.00112558));
02833 Poles.SetValue(48,36,gp_Pnt(150.001,37.5038,-0.000249663));
02834 Poles.SetValue(48,37,gp_Pnt(150.001,40.3885,0.000316503));
02835 Poles.SetValue(48,38,gp_Pnt(150.001,43.273,-0.00132504));
02836 Poles.SetValue(48,39,gp_Pnt(150.001,47.119,-0.00179323));
02837 Poles.SetValue(48,40,gp_Pnt(150,51.9261,0.00186415));
02838 Poles.SetValue(48,41,gp_Pnt(150,57.6944,0.000887863));
02839 Poles.SetValue(48,42,gp_Pnt(150,63.4625,-0.00455467));
02840 Poles.SetValue(48,43,gp_Pnt(150,71.1535,0.00329757));
02841 Poles.SetValue(48,44,gp_Pnt(150,84.613,-0.00125356));
02842 Poles.SetValue(48,45,gp_Pnt(150,103.842,0.000250841));
02843 Poles.SetValue(48,46,gp_Pnt(150,126.921,-0.00110007));
02844 Poles.SetValue(48,47,gp_Pnt(150.022,142.311,0.00127182));
02845 Poles.SetValue(48,48,gp_Pnt(150.034,150.006,9.4637e-005));
02846
02847
02848
02849
02850 TColStd_Array1OfReal UKnots(1,46);
02851 UKnots.SetValue(1,0);
02852 UKnots.SetValue(2,0.0769231);
02853 UKnots.SetValue(3,0.153846);
02854 UKnots.SetValue(4,0.230769);
02855 UKnots.SetValue(5,0.269231);
02856 UKnots.SetValue(6,0.288462);
02857 UKnots.SetValue(7,0.307692);
02858 UKnots.SetValue(8,0.326923);
02859 UKnots.SetValue(9,0.346154);
02860 UKnots.SetValue(10,0.365385);
02861 UKnots.SetValue(11,0.375);
02862 UKnots.SetValue(12,0.384615);
02863 UKnots.SetValue(13,0.394231);
02864 UKnots.SetValue(14,0.403846);
02865 UKnots.SetValue(15,0.413462);
02866 UKnots.SetValue(16,0.423077);
02867 UKnots.SetValue(17,0.432692);
02868 UKnots.SetValue(18,0.442308);
02869 UKnots.SetValue(19,0.461538);
02870 UKnots.SetValue(20,0.480769);
02871 UKnots.SetValue(21,0.485577);
02872 UKnots.SetValue(22,0.490385);
02873 UKnots.SetValue(23,0.495192);
02874 UKnots.SetValue(24,0.504808);
02875 UKnots.SetValue(25,0.509615);
02876 UKnots.SetValue(26,0.514423);
02877 UKnots.SetValue(27,0.519231);
02878 UKnots.SetValue(28,0.538462);
02879 UKnots.SetValue(29,0.557692);
02880 UKnots.SetValue(30,0.567308);
02881 UKnots.SetValue(31,0.576923);
02882 UKnots.SetValue(32,0.586538);
02883 UKnots.SetValue(33,0.596154);
02884 UKnots.SetValue(34,0.605769);
02885 UKnots.SetValue(35,0.615385);
02886 UKnots.SetValue(36,0.625);
02887 UKnots.SetValue(37,0.634615);
02888 UKnots.SetValue(38,0.653846);
02889 UKnots.SetValue(39,0.673077);
02890 UKnots.SetValue(40,0.692308);
02891 UKnots.SetValue(41,0.711538);
02892 UKnots.SetValue(42,0.730769);
02893 UKnots.SetValue(43,0.769231);
02894 UKnots.SetValue(44,0.846154);
02895 UKnots.SetValue(45,0.923077);
02896 UKnots.SetValue(46,1);
02897
02898 TColStd_Array1OfReal VKnots(1,46);
02899 VKnots.SetValue(1,0);
02900 VKnots.SetValue(2,0.0769231);
02901 VKnots.SetValue(3,0.153846);
02902 VKnots.SetValue(4,0.230769);
02903 VKnots.SetValue(5,0.269231);
02904 VKnots.SetValue(6,0.288462);
02905 VKnots.SetValue(7,0.307692);
02906 VKnots.SetValue(8,0.326923);
02907 VKnots.SetValue(9,0.346154);
02908 VKnots.SetValue(10,0.355769);
02909 VKnots.SetValue(11,0.365385);
02910 VKnots.SetValue(12,0.375);
02911 VKnots.SetValue(13,0.384615);
02912 VKnots.SetValue(14,0.394231);
02913 VKnots.SetValue(15,0.399038);
02914 VKnots.SetValue(16,0.403846);
02915 VKnots.SetValue(17,0.423077);
02916 VKnots.SetValue(18,0.432692);
02917 VKnots.SetValue(19,0.442308);
02918 VKnots.SetValue(20,0.461538);
02919 VKnots.SetValue(21,0.471154);
02920 VKnots.SetValue(22,0.480769);
02921 VKnots.SetValue(23,0.490385);
02922 VKnots.SetValue(24,0.509615);
02923 VKnots.SetValue(25,0.519231);
02924 VKnots.SetValue(26,0.528846);
02925 VKnots.SetValue(27,0.538462);
02926 VKnots.SetValue(28,0.557692);
02927 VKnots.SetValue(29,0.567308);
02928 VKnots.SetValue(30,0.576923);
02929 VKnots.SetValue(31,0.596154);
02930 VKnots.SetValue(32,0.600962);
02931 VKnots.SetValue(33,0.605769);
02932 VKnots.SetValue(34,0.615385);
02933 VKnots.SetValue(35,0.625);
02934 VKnots.SetValue(36,0.634615);
02935 VKnots.SetValue(37,0.644231);
02936 VKnots.SetValue(38,0.653846);
02937 VKnots.SetValue(39,0.673077);
02938 VKnots.SetValue(40,0.692308);
02939 VKnots.SetValue(41,0.711538);
02940 VKnots.SetValue(42,0.730769);
02941 VKnots.SetValue(43,0.769231);
02942 VKnots.SetValue(44,0.846154);
02943 VKnots.SetValue(45,0.923077);
02944 VKnots.SetValue(46,1);
02945
02946 TColStd_Array1OfInteger UMults(1,46);
02947 UMults.SetValue(1,4);
02948 UMults.SetValue(2,1);
02949 UMults.SetValue(3,1);
02950 UMults.SetValue(4,1);
02951 UMults.SetValue(5,1);
02952 UMults.SetValue(6,1);
02953 UMults.SetValue(7,1);
02954 UMults.SetValue(8,1);
02955 UMults.SetValue(9,1);
02956 UMults.SetValue(10,1);
02957 UMults.SetValue(11,1);
02958 UMults.SetValue(12,1);
02959 UMults.SetValue(13,1);
02960 UMults.SetValue(14,1);
02961 UMults.SetValue(15,1);
02962 UMults.SetValue(16,1);
02963 UMults.SetValue(17,1);
02964 UMults.SetValue(18,1);
02965 UMults.SetValue(19,1);
02966 UMults.SetValue(20,1);
02967 UMults.SetValue(21,1);
02968 UMults.SetValue(22,1);
02969 UMults.SetValue(23,1);
02970 UMults.SetValue(24,1);
02971 UMults.SetValue(25,1);
02972 UMults.SetValue(26,1);
02973 UMults.SetValue(27,1);
02974 UMults.SetValue(28,1);
02975 UMults.SetValue(29,1);
02976 UMults.SetValue(30,1);
02977 UMults.SetValue(31,1);
02978 UMults.SetValue(32,1);
02979 UMults.SetValue(33,1);
02980 UMults.SetValue(34,1);
02981 UMults.SetValue(35,1);
02982 UMults.SetValue(36,1);
02983 UMults.SetValue(37,1);
02984 UMults.SetValue(38,1);
02985 UMults.SetValue(39,1);
02986 UMults.SetValue(40,1);
02987 UMults.SetValue(41,1);
02988 UMults.SetValue(42,1);
02989 UMults.SetValue(43,1);
02990 UMults.SetValue(44,1);
02991 UMults.SetValue(45,1);
02992 UMults.SetValue(46,4);
02993
02994 TColStd_Array1OfInteger VMults(1,46);
02995 VMults.SetValue(1,4);
02996 VMults.SetValue(2,1);
02997 VMults.SetValue(3,1);
02998 VMults.SetValue(4,1);
02999 VMults.SetValue(5,1);
03000 VMults.SetValue(6,1);
03001 VMults.SetValue(7,1);
03002 VMults.SetValue(8,1);
03003 VMults.SetValue(9,1);
03004 VMults.SetValue(10,1);
03005 VMults.SetValue(11,1);
03006 VMults.SetValue(12,1);
03007 VMults.SetValue(13,1);
03008 VMults.SetValue(14,1);
03009 VMults.SetValue(15,1);
03010 VMults.SetValue(16,1);
03011 VMults.SetValue(17,1);
03012 VMults.SetValue(18,1);
03013 VMults.SetValue(19,1);
03014 VMults.SetValue(20,1);
03015 VMults.SetValue(21,1);
03016 VMults.SetValue(22,1);
03017 VMults.SetValue(23,1);
03018 VMults.SetValue(24,1);
03019 VMults.SetValue(25,1);
03020 VMults.SetValue(26,1);
03021 VMults.SetValue(27,1);
03022 VMults.SetValue(28,1);
03023 VMults.SetValue(29,1);
03024 VMults.SetValue(30,1);
03025 VMults.SetValue(31,1);
03026 VMults.SetValue(32,1);
03027 VMults.SetValue(33,1);
03028 VMults.SetValue(34,1);
03029 VMults.SetValue(35,1);
03030 VMults.SetValue(36,1);
03031 VMults.SetValue(37,1);
03032 VMults.SetValue(38,1);
03033 VMults.SetValue(39,1);
03034 VMults.SetValue(40,1);
03035 VMults.SetValue(41,1);
03036 VMults.SetValue(42,1);
03037 VMults.SetValue(43,1);
03038 VMults.SetValue(44,1);
03039 VMults.SetValue(45,1);
03040 VMults.SetValue(46,4);
03041
03042
03043 Handle(Geom_BSplineSurface) Surface = new Geom_BSplineSurface(
03044 Poles,
03045 UKnots,
03046 VKnots,
03047 UMults,
03048 VMults,
03049 3,
03050 3
03051
03052
03053 );
03054
03055
03056
03057
03058
03059 BRepBuilderAPI_MakeFace Face(Surface);
03060
03061 return new TopoShapePy(new TopoShape(Face.Face()));
03062 } PY_CATCH;
03063 }
03064
03065
03066 static PyObject * createPlane(PyObject *self, PyObject *args)
03067 {
03068
03069 double z_level;
03070
03071
03072 if (! PyArg_ParseTuple(args, "d", &z_level))
03073 return NULL;
03074
03075
03076 PY_TRY
03077 {
03078
03079 gp_Pnt aPlanePnt(0,0,z_level);
03080 gp_Dir aPlaneDir(0,0,1);
03081 Handle_Geom_Plane aPlane = new Geom_Plane(aPlanePnt, aPlaneDir);
03082 BRepBuilderAPI_MakeFace Face(aPlane);
03083
03084 return new TopoShapePy(new TopoShape(Face.Face()));
03085 } PY_CATCH;
03086 }
03087
03088 static PyObject * createBox(PyObject *self, PyObject *args)
03089 {
03090 double X, Y, Z , L, H, W ;
03091
03092
03093 if (! PyArg_ParseTuple(args, "dddddd", &X, &Y, &Z , &L, &H, &W ))
03094 return NULL;
03095
03096
03097 PY_TRY
03098 {
03099
03100 BRepPrimAPI_MakeBox mkBox( gp_Pnt( X, Y, Z ), L, H, W );
03101
03102 TopoDS_Shape ResultShape = mkBox.Shape();
03103
03104 return new TopoShapePy(new TopoShape(ResultShape));
03105 } PY_CATCH;
03106 }
03107
03108 static PyObject * useMesh(PyObject *self, PyObject *args)
03109 {
03110 MeshPy *pcObject;
03111 PyObject *pcObj;
03112 if (!PyArg_ParseTuple(args, "O!; Need exatly one Mesh object", &(MeshPy::Type), &pcObj))
03113 return NULL;
03114
03115 pcObject = (MeshPy*)pcObj;
03116
03117 PY_TRY
03118 {
03119
03120 const MeshObject *aMeshObject = pcObject->getMeshObjectPtr();
03121 const MeshKernel& m = aMeshObject->getKernel();
03122
03123 MeshKernel copy = m;
03124 MeshCore::MeshAlgorithm algo(copy);
03125 std::list< std::vector <unsigned long> > BoundariesIndex;
03126 std::list< std::vector <unsigned long> > ::iterator bin_it;
03127 std::list< std::vector <Base::Vector3f> > BoundariesPoints;
03128 algo.GetMeshBorders(BoundariesIndex);
03129 algo.GetMeshBorders(BoundariesPoints);
03130 Base::BoundBox3f BoundBox = copy.GetBoundBox();
03131
03132
03133
03134 m.CountEdges();
03135
03136 m.CountPoints();
03137
03138 m.CountFacets();
03139
03140
03141 unsigned long idx1,idx2,idx3,idx=0;
03142 m.GetFacetNeighbours(idx,idx1,idx2,idx3);
03143
03144
03145 m.GetFacetPoints(idx,idx1,idx2,idx3);
03146 MeshCore::MeshPoint p = m.GetPoint(idx1);
03147
03148
03149
03150
03151
03152
03153
03154
03155 MeshCore::MeshFacetIterator It(m);
03156 while (It.More())
03157 {
03158 ++It;
03159 }
03160
03161
03162
03163 } PY_CATCH;
03164
03165 Py_Return;
03166 }
03167
03168
03169
03170
03171
03172
03173
03174
03175
03176
03177
03178
03179
03180
03181
03182
03183
03184
03185
03186
03187
03188
03189
03190
03191
03192
03193
03194
03195
03196
03197
03198
03199
03200
03201
03202
03203
03204
03205
03206
03207
03208
03209
03210
03211
03212
03213
03214
03215
03216
03217
03218
03219
03220
03221
03222
03223
03224
03225
03226
03227
03228
03229
03230
03231
03232
03233
03234
03235
03236
03237
03238
03239
03240
03241
03242
03243
03244
03245
03246
03247
03248
03249
03250
03251
03252
03253
03254
03255
03256
03257
03258
03259
03260
03261
03262
03263
03264 static PyObject * openDYNA(PyObject *self, PyObject *args)
03265 {
03266 const char* filename;
03267 if (! PyArg_ParseTuple(args, "s;Usage:- openDYNA(filename)", &filename))
03268 return NULL;
03269 PY_TRY
03270 {
03271 MeshCore::MeshKernel mesh;
03272 ReadDyna parse(mesh,filename);
03273 MeshObject aObject(mesh);
03274
03275 return aObject.getPyObject();
03276 }
03277 PY_CATCH;
03278
03279 Py_Return;
03280
03281 }
03282
03283
03284 static PyObject * offset_mesh(PyObject *self, PyObject *args)
03285 {
03286 double offset;
03287
03288 MeshPy *pcObject;
03289 PyObject *pcObj;
03290 if (!PyArg_ParseTuple(args, "O!d; Need exatly one Mesh object", &(MeshPy::Type), &pcObj, &offset))
03291 return NULL;
03292
03293 pcObject = (MeshPy*)pcObj;
03294 Base::Builder3D log3d;
03295
03296 PY_TRY
03297 {
03298
03299 MeshObject *o = pcObject->getMeshObjectPtr();
03300 MeshKernel &mesh = o->getKernel();
03301
03302
03303 Base::Vector3f current_pnt;
03304
03305
03306
03307
03308
03309 MeshCore::MeshPointIterator p_it(mesh);
03310 MeshCore::MeshFacetIterator f_it(mesh);
03311 MeshCore::MeshRefPointToFacets rf2pt(mesh);
03312 MeshCore::MeshGeomFacet t_face;
03313
03314
03315
03316 Base::Vector3f normal,local_normal;
03317
03318
03319
03320
03321 for (unsigned long i=0; i<mesh.CountPoints(); i++)
03322 {
03323
03324 const std::set<unsigned long>& faceSet = rf2pt[i];
03325 float fArea = 0.0;
03326 normal.Set(0.0,0.0,0.0);
03327
03328
03329
03330 for (std::set<unsigned long>::const_iterator it = faceSet.begin(); it != faceSet.end(); ++it)
03331 {
03332
03333 t_face = mesh.GetFacet(*it);
03334
03335 float local_Area = t_face.Area();
03336 local_normal = t_face.GetNormal();
03337 if (local_normal.z < 0)
03338 {
03339 local_normal = local_normal * (-1);
03340 }
03341
03342 fArea = fArea + local_Area;
03343 normal = normal + local_normal;
03344
03345 }
03346
03347 normal.Normalize();
03348 log3d.addSingleArrow(mesh.GetPoint(i),mesh.GetPoint(i) + (normal*float(offset)));
03349 mesh.MovePoint(i,(normal*float(offset)));
03350
03351 }
03352
03353 log3d.saveToFile("c:/test.iv");
03354 MeshObject aObject(mesh);
03355 return new MeshPy(&aObject);
03356 }
03357 PY_CATCH;
03358
03359 Py_Return;
03360
03361
03362
03363
03364
03365
03366
03367
03368
03369
03370
03371
03372
03373
03374
03375
03376
03377
03378
03379
03380
03381
03382
03383
03384
03385
03386 }
03387
03388
03389
03390
03391
03392
03393
03394
03395
03396
03397
03398
03399
03400
03401
03402
03403
03404
03405
03406
03407
03408
03409
03410
03411
03412
03413
03414
03415
03416
03417
03418
03419
03420
03421
03422
03423
03424
03425
03426
03427
03428
03429
03430
03431
03432
03433
03434
03435
03436
03437
03438
03439
03440
03441
03442
03443
03444
03445
03446
03447
03448
03449
03450
03451
03452
03453
03454
03455
03456
03457
03458
03459
03460
03461
03462
03463
03464
03465
03466
03467
03468
03469
03470
03471
03472
03473
03474
03475
03476
03477
03478
03479
03480
03481
03482
03483
03484
03485
03486
03487
03488
03489
03490
03491
03492
03493
03494
03495
03496
03497
03498
03499
03500
03501
03502
03503
03504
03505
03506
03507
03508
03509
03510
03511
03512
03513
03514
03515
03516
03517
03518
03519
03520
03521
03522
03523
03524
03525
03526
03527
03528
03529
03530
03531
03532
03533
03534
03535
03536
03537
03538
03539
03540
03541
03542
03543
03544
03545
03546
03547
03548
03549
03550
03551
03552
03553
03554
03555
03556
03557
03558
03559
03560
03561
03562
03563
03564
03565
03566
03567
03568
03569
03570
03571
03572
03573
03574
03575
03576
03577
03578
03579
03580
03581
03582
03583
03584
03585
03586
03587
03588
03589
03590
03591
03592
03593
03594
03595
03596
03597
03598
03599
03600
03601
03602
03603
03604
03605
03606
03607
03608
03609
03610
03611
03612
03613
03614
03615
03616
03617
03618
03619
03620
03621
03622
03623
03624
03625
03626
03627
03628 static PyObject * best_fit_complete(PyObject *self, PyObject *args)
03629 {
03630 MeshPy *pcObject;
03631 PyObject *pcObj;
03632 PyObject *pcObj2;
03633
03634 if (!PyArg_ParseTuple(args, "O!O!; Need one Mesh objects and one toposhape", &(MeshPy::Type), &pcObj, &(TopoShapePy::Type), &pcObj2))
03635 return NULL;
03636
03637 PY_TRY
03638 {
03639 GProp_GProps prop;
03640 GProp_PrincipalProps pprop;
03641 gp_Pnt orig;
03642
03643 pcObject = (MeshPy*)pcObj;
03644 TopoShapePy *pcShape = static_cast<TopoShapePy*>(pcObj2);
03645 TopoDS_Shape cad = pcShape->getTopoShapePtr()->_Shape;
03646 MeshCore::MeshKernel mesh = pcObject->getMeshObjectPtr()->getKernel();
03647
03648
03649
03650
03651
03652
03653
03654
03655 }PY_CATCH;
03656
03657 Py_Return;
03658 }
03659
03660 #include "WireExplorer.h"
03661 #include <GeomAPI_Interpolate.hxx>
03662 #include <TColgp_HArray1OfPnt.hxx>
03663 #include "BRepAdaptor_CompCurve2.h"
03664 #include "SpringbackCorrection.h"
03665 static PyObject * best_fit_test(PyObject *self, PyObject *args)
03666 {
03667
03668 PyObject *pcObj;
03669
03670
03671 if (!PyArg_ParseTuple(args, "O!", &(TopoShapePy::Type), &pcObj))
03672 return NULL;
03673
03674 PY_TRY
03675 {
03676
03677 TopoShapePy *pcShape = static_cast<TopoShapePy*>(pcObj);
03678 TopoDS_Shape aShape = pcShape->getTopoShapePtr()->_Shape;
03679 TopExp_Explorer anExplorer;
03680 TopExp_Explorer aFaceExplorer;
03681
03682
03683
03684 std::vector<TopoDS_Edge> anEdgeList;
03685 TopoDS_Face first,second;
03686 anEdgeList.clear();
03687 bool firstrun=true;
03688 bool finished=false;
03689 for (anExplorer.Init(aShape,TopAbs_FACE);anExplorer.More();anExplorer.Next())
03690 {
03691 if (finished) break;
03692 for (aFaceExplorer.Init(anExplorer.Current(),TopAbs_EDGE);aFaceExplorer.More();aFaceExplorer.Next())
03693 {
03694 if (!firstrun && finished==false)
03695 {
03696 for (unsigned int i=0;i<anEdgeList.size();++i)
03697 {
03698 if (anEdgeList[i].IsSame(TopoDS::Edge(aFaceExplorer.Current())))
03699 {
03700 second = TopoDS::Face(anExplorer.Current());
03701 finished=true;
03702 break;
03703 }
03704 }
03705 }
03706 if (firstrun)
03707 {
03708 anEdgeList.push_back(TopoDS::Edge(aFaceExplorer.Current()));
03709 first = TopoDS::Face(anExplorer.Current());
03710 }
03711 }
03712 firstrun=false;
03713 }
03714
03715 BRepAdaptor_Surface afirstFaceAdaptor(first);
03716
03717 BRepAdaptor_Surface asecondFaceAdaptor(second);
03718 Standard_Real lUf,lVf,fUf,fVf,lUs,lVs,fUs,fVs,schrittweiteUf,schrittweiteVf,schrittweiteUs,schrittweiteVs;
03719 lUf = afirstFaceAdaptor.LastUParameter();
03720 fUf = afirstFaceAdaptor.FirstUParameter();
03721 lVf = afirstFaceAdaptor.LastVParameter();
03722 fVf = afirstFaceAdaptor.FirstVParameter();
03723 lUs = asecondFaceAdaptor.LastUParameter();
03724 fUs = asecondFaceAdaptor.FirstUParameter();
03725 lVs = asecondFaceAdaptor.LastVParameter();
03726 fVs = asecondFaceAdaptor.FirstVParameter();
03727 schrittweiteUf = fabs(lUf-fUf)/20.0;
03728 schrittweiteVf = fabs(lVf-fVf)/20.0;
03729 schrittweiteUs = fabs(lUs-fUs)/20.0;
03730 schrittweiteVs = fabs(lVs-fVs)/20.0;
03731 TColgp_Array2OfPnt Input(1,21,1,21);
03732 for (int j=0;j<=20;++j)
03733 {
03734 for (int k=0;k<=20;++k)
03735 {
03736 gp_Pnt currentPoint;
03737 gp_Vec UVec,VVec,Normal;
03738 afirstFaceAdaptor.D1((fUf+j*schrittweiteUf),(fVf+k*schrittweiteVf),currentPoint,UVec,VVec);
03739 UVec.Cross(VVec);
03740 Normal = UVec;
03741 Normal.Normalize();
03742 Normal.Multiply(20.0);
03743 gp_Pnt OffsetPoint;
03744 OffsetPoint.SetXYZ(currentPoint.XYZ()+Normal.XYZ());
03745 Input.SetValue(j+1,k+1,OffsetPoint);
03746 }
03747 }
03748 GeomAPI_PointsToBSplineSurface *Approx_Surface = new GeomAPI_PointsToBSplineSurface(Input, 3, 8, GeomAbs_C1,0.1);
03749 Handle(Geom_BSplineSurface) Final_Approx = Approx_Surface->Surface () ;
03750
03751 TopExp_Explorer asecondFaceExplorer;
03752 TopoDS_Wire aFaceWire;
03753 for (asecondFaceExplorer.Init(first,TopAbs_WIRE);asecondFaceExplorer.More();asecondFaceExplorer.Next())
03754 {
03755 aFaceWire = TopoDS::Wire(asecondFaceExplorer.Current());
03756 }
03757 WireExplorer awireexplorer(aFaceWire);
03758
03759 BRepAdaptor_CompCurve2 aWireAdapter(aFaceWire);
03760 Standard_Real first_p,last_p,delta_u;
03761 last_p = aWireAdapter.LastParameter();
03762 first_p = aWireAdapter.FirstParameter();
03763 delta_u = fabs(last_p-first_p)/50;
03764 std::vector<Base::Vector3f> mesh_input;
03765 mesh_input.clear();
03766 for (int k=0;k<=50;++k)
03767 {
03768 gp_Pnt currentPoint = aWireAdapter.Value(first_p+(k*delta_u));
03769 Base::Vector3f aVector;
03770 aVector.x = float(currentPoint.X());
03771 aVector.y = float(currentPoint.Y());
03772 aVector.z = float(currentPoint.Z());
03773 mesh_input.push_back(aVector);
03774 }
03775 MeshCore::MeshKernel ameshkernel;
03776 MeshCore::MeshBuilder aBuilder(ameshkernel);
03777 std::vector<Base::Vector3f> mesh_output;
03778
03779
03780 Base::Matrix4D matrix;
03781
03782
03783 std::vector<MeshCore::MeshGeomFacet> geomfacets;
03784 aBuilder.Initialize(100);
03785
03786
03787 for ( std::vector<MeshCore::MeshGeomFacet>::iterator kt = geomfacets.begin(); kt != geomfacets.end(); ++kt )
03788 {
03789 MeshCore::MeshGeomFacet atempfacet(matrix*(kt->_aclPoints[0]),matrix*(kt->_aclPoints[1]),matrix*(kt->_aclPoints[2]));
03790 atempfacet.CalcNormal();
03791 aBuilder.AddFacet(atempfacet);
03792 }
03793 aBuilder.Finish();
03794 MeshObject anObject(ameshkernel);
03795 return new MeshPy(&anObject);
03796
03797
03798 TopoDS_Wire newWire;
03799 for (awireexplorer.Init();awireexplorer.More();awireexplorer.Next())
03800 {
03801 TopoDS_Edge currentEdge = TopoDS::Edge(awireexplorer.Current());
03802 Standard_Real uf,ul,schrittweite_edge;
03803 Handle_Geom2d_Curve aPCurve = BRep_Tool::CurveOnSurface(currentEdge,first,uf,ul);
03804 schrittweite_edge = fabs(uf-ul)/10;
03805 std::vector<gp_Pnt> offsetPoints;
03806 offsetPoints.clear();
03807 for (int i=0;i<=10;++i)
03808 {
03809 gp_Pnt2d a2dPoint;
03810 aPCurve->D0(uf+i*schrittweite_edge,a2dPoint);
03811
03812 gp_Pnt point;
03813 gp_Vec vecu,vecv,normal;
03814 afirstFaceAdaptor.D1(a2dPoint.X(),a2dPoint.Y(),point,vecu,vecv);
03815 vecu.Cross(vecv);
03816 normal = vecu;
03817 normal.Normalize();
03818 normal.Multiply(20.0);
03819 gp_Pnt OffsetPoint;
03820 OffsetPoint.SetXYZ(point.XYZ()+normal.XYZ());
03821 offsetPoints.push_back(OffsetPoint);
03822 }
03823 Handle(TColgp_HArray1OfPnt) MasterOffsetPoints = new TColgp_HArray1OfPnt(1, offsetPoints.size());
03824 for (unsigned int t=0;t<offsetPoints.size();++t)
03825 {
03826 MasterOffsetPoints->SetValue(t+1,offsetPoints[t]);
03827 }
03828 GeomAPI_Interpolate aBSplineInterp(MasterOffsetPoints, Standard_False, Precision::Confusion());
03829 aBSplineInterp.Perform();
03830 Handle_Geom_BSplineCurve currentOffsetCurve(aBSplineInterp.Curve());
03831 }
03832 BRepBuilderAPI_MakeFace Face(Final_Approx);
03833
03834
03835
03836
03837 }PY_CATCH;
03838
03839 Py_Return;
03840 }
03841
03842 static PyObject * shape2orig(PyObject *self, PyObject *args)
03843 {
03844 PyObject *pcObj;
03845
03846 if (!PyArg_ParseTuple(args, "O!; Need one toposhape", &(TopoShapePy::Type), &pcObj))
03847 return NULL;
03848
03849 PY_TRY
03850 {
03851 GProp_GProps prop;
03852 GProp_PrincipalProps pprop;
03853 gp_Pnt orig;
03854
03855 TopoShapePy *pcShape = static_cast<TopoShapePy*>(pcObj);
03856 TopoDS_Shape cad = pcShape->getTopoShapePtr()->_Shape;
03857
03858
03859
03860
03861
03862
03863 }PY_CATCH;
03864
03865 Py_Return;
03866 }
03867
03868
03869
03870
03871 static PyObject * spring_back(PyObject *self, PyObject *args)
03872 {
03873 MeshPy *pcObject;
03874 PyObject *pcObj;
03875 PyObject *pcObj2;
03876
03877 if (!PyArg_ParseTuple(args, "O!O!; Need one Mesh objects and one toposhape", &(MeshPy::Type), &pcObj, &(TopoShapePy::Type), &pcObj2))
03878 return NULL;
03879
03880 PY_TRY
03881 {
03882 GProp_GProps prop;
03883 GProp_PrincipalProps pprop;
03884 gp_Pnt orig;
03885
03886 pcObject = (MeshPy*)pcObj;
03887 TopoShapePy *pcShape = static_cast<TopoShapePy*>(pcObj2);
03888 TopoDS_Shape cad = pcShape->getTopoShapePtr()->_Shape;
03889 MeshObject* anObject = pcObject->getMeshObjectPtr();
03890 MeshCore::MeshKernel mesh = anObject->getKernel();
03891
03892 time_t seconds1, seconds2;
03893 seconds1 = time(NULL);
03894
03895
03896 SpringbackCorrection aShapeTri(cad, mesh);
03897 aShapeTri.Perform(60,1);
03898
03899
03900 seconds2 = time(NULL);
03901 cout << "laufzeit: " << seconds2-seconds1 << " sec" << endl;
03902
03903
03904
03905 return new MeshPy(anObject);
03906
03907 }PY_CATCH;
03908
03909 Py_Return;
03910 }
03911
03912
03913
03914
03915
03916
03917
03918 static PyObject * tess_shape(PyObject *self, PyObject *args)
03919 {
03920 PyObject *pcObj;
03921 float aDeflection;
03922
03923 if (!PyArg_ParseTuple(args, "O!f", &(TopoShapePy::Type), &pcObj, &aDeflection))
03924 return NULL;
03925
03926 PY_TRY
03927 {
03928
03929 TopoShapePy *pcShape = static_cast<TopoShapePy*>(pcObj);
03930 TopoDS_Shape cad = pcShape->getTopoShapePtr()->_Shape;
03931
03932
03933
03934
03935 MeshCore::MeshKernel mesh;
03936 best_fit::Tesselate_Shape(cad, mesh, float(0.1));
03937 MeshObject* anObject = new MeshObject(mesh);
03938 return new MeshPy(anObject);
03939
03940 }PY_CATCH;
03941
03942 Py_Return;
03943 }
03944
03945
03946
03947
03948
03949
03950
03951
03952
03953
03954
03955
03956
03957
03958
03959
03960
03961
03962
03963
03964
03965
03966
03967
03968
03969
03970
03971
03972
03973
03974
03975
03976
03977
03978
03979
03980
03981
03982
03983
03984
03985
03986
03987
03988
03989
03990
03991
03992
03993
03994
03995
03996
03997
03998
03999
04000
04001
04002
04003
04004
04005
04006
04007
04008
04009
04010
04011
04012
04013
04014
04015
04016
04017
04018
04019 static PyObject * fit_iter(PyObject *self, PyObject *args)
04020 {
04021 MeshPy *pcObject;
04022 PyObject *pcObj;
04023 PyObject *pcObj2;
04024
04025 if (!PyArg_ParseTuple(args, "O!O!; Need exatly one Mesh object", &(MeshPy::Type), &pcObj, &(TopoShapePy::Type), &pcObj2))
04026 return NULL;
04027
04028 TopoShapePy *pcShape = static_cast<TopoShapePy*>(pcObj2);
04029 TopoDS_Shape cad = pcShape->getTopoShapePtr()->_Shape;
04030
04031 TopExp_Explorer Ex;
04032 Ex.Init(cad,TopAbs_FACE);
04033
04034 pcObject = (MeshPy*)pcObj;
04035
04036 Base::Builder3D log3d;
04037 gp_Dir pl_vec;
04038 gp_Lin lin;
04039 gp_Pnt pnt;
04040 Base::Vector3f tmp_pnt;
04041 IntCurvesFace_ShapeIntersector shp_int;
04042
04043 std::vector< std::vector<double> > R(3, std::vector<double>(3,0.0));
04044 double err = 1001;
04045
04046 TopoDS_Face atopo_surface;
04047
04048 MeshCore::MeshKernel mesh = pcObject->getMeshObjectPtr()->getKernel();
04049
04050 PY_TRY
04051 {
04052
04053 Base::Vector3f current_pnt;
04054
04055
04056
04057
04058
04059
04060
04061 MeshCore::MeshPointIterator p_it(mesh);
04062 MeshCore::MeshFacetIterator f_it(mesh);
04063 MeshCore::MeshRefPointToFacets rf2pt(mesh);
04064 MeshCore::MeshGeomFacet t_face;
04065
04066 int NumOfPoints = mesh.CountPoints();
04067
04068
04069
04070 Base::Vector3f normal,local_normal;
04071
04072
04073 while (err > 1000)
04074 {
04075
04076 err = 0.0;
04077 for (unsigned long i=0; i<mesh.CountPoints(); i++)
04078 {
04079
04080 const std::set<unsigned long>& faceSet = rf2pt[i];
04081 float fArea = 0.0;
04082 normal.Set(0.0,0.0,0.0);
04083
04084
04085
04086 for (std::set<unsigned long>::const_iterator it = faceSet.begin(); it != faceSet.end(); ++it)
04087 {
04088
04089 t_face = mesh.GetFacet(*it);
04090
04091 float local_Area = t_face.Area();
04092 local_normal = t_face.GetNormal();
04093 if (local_normal.z < 0)
04094 {
04095 local_normal = local_normal * (-1);
04096 }
04097
04098 fArea = fArea + local_Area;
04099 normal = normal + local_normal;
04100
04101 }
04102
04103 pnt.SetX((mesh.GetPoint(i)).x);
04104 pnt.SetY((mesh.GetPoint(i)).y);
04105 pnt.SetZ((mesh.GetPoint(i)).z);
04106
04107 lin.SetLocation(pnt);
04108
04109 pl_vec.SetX(normal.x);
04110 pl_vec.SetY(normal.y);
04111 pl_vec.SetZ(normal.z);
04112
04113 lin.SetDirection(pl_vec);
04114
04115 shp_int.Load(cad, 0.1);
04116 shp_int.PerformNearest(lin,-RealLast(),+RealLast());
04117
04118 if (shp_int.IsDone())
04119 {
04120 err += sqrt((pnt.X() - shp_int.Pnt(1).X())*(pnt.X() - shp_int.Pnt(1).X())*
04121 (pnt.Y() - shp_int.Pnt(1).Y())*(pnt.Y() - shp_int.Pnt(1).Y())*
04122 (pnt.Z() - shp_int.Pnt(1).Z())*(pnt.Z() - shp_int.Pnt(1).Z()));
04123
04124
04125 pnt = shp_int.Pnt(1);
04126
04127 tmp_pnt.x = float(pnt.X());
04128 tmp_pnt.y = float(pnt.Y());
04129 tmp_pnt.z = float(pnt.Z());
04130
04131
04132 log3d.addSinglePoint(tmp_pnt,2,0,0,0);
04133 }
04134 }
04135
04136
04137 R[0][0] = cos(PI);
04138 R[0][1] = -sin(PI);
04139 R[1][0] = sin(PI);
04140 R[1][1] = cos(PI);
04141 R[2][2] = 1;
04142
04143 MeshCore::MeshPoint mpnt;
04144
04145 for (int i=0; i<NumOfPoints; ++i)
04146 {
04147 mpnt = mesh.GetPoint(i);
04148
04149 tmp_pnt.x = float(R[0][0]*mpnt.x + R[0][1]*mpnt.y + R[0][2]*mpnt.z);
04150 tmp_pnt.y = float(R[1][0]*mpnt.x + R[1][1]*mpnt.y + R[1][2]*mpnt.z);
04151 tmp_pnt.z = float(R[2][0]*mpnt.x + R[2][1]*mpnt.y + R[2][2]*mpnt.z);
04152
04153 mesh.SetPoint(i,tmp_pnt);
04154 }
04155
04156 break;
04157
04158 }
04159
04162
04163
04164
04165
04166
04167
04168
04169
04170
04171
04172
04173
04174
04175
04176
04177
04178
04179
04180
04181
04182
04183
04184
04185
04186
04187
04188
04189
04190
04191
04192
04193
04194
04195
04196
04197
04198
04199
04200
04201
04202
04204 }PY_CATCH;
04205
04206 log3d.saveToFile("c:/test_trim2.iv");
04207 MeshObject aObject(mesh);
04208 return new MeshPy(&aObject);
04209 Py_Return;
04210 }
04211
04212
04213
04214
04215
04216
04217
04218
04219
04220
04221
04222
04223
04224
04225
04226 struct PyMethodDef Cam_methods[] =
04227 {
04228 {"open" , open, Py_NEWARGS, "open(string) -- Not implemented for this Module so far."
04229 },
04230 {"insert" , insert, Py_NEWARGS, "insert(string, string) -- Not implemented for this Module so far."},
04231 {"read" , read, 1},
04232 {"createTestBSPLINE" , createTestBSPLINE, Py_NEWARGS, "Creates a TopoShape with a test BSPLINE"},
04233 {"createTestApproximate" , createTestApproximate, 1},
04234
04235 {"offset", offset, 1},
04236
04237 {"tesselateShape",tesselateShape,1},
04238 {"tess_shape",tess_shape,1},
04239
04240 {"createPlane" , createPlane, 1},
04241 {"best_fit_test", best_fit_test,1},
04242 {"best_fit_complete", best_fit_complete,1},
04243 {"best_fit_coarse", best_fit_coarse ,1},
04244 {"createBox" , createBox, 1},
04245 {"spring_back", spring_back, 1},
04246 {"useMesh" , useMesh, Py_NEWARGS, "useMesh(MeshObject) -- Shows the usage of Mesh objects from the Mesh Module." },
04247
04248 {"openDYNA" , openDYNA, Py_NEWARGS, "Open up a DYNA file, triangulate it, and returns a mesh"},
04249 {NULL , NULL }
04250 };
04251