1 // Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 #include "GEOM_Superv_i.hh"
24 #include "SALOME_LifeCycleCORBA.hxx"
26 #include CORBA_SERVER_HEADER(SALOME_Session)
27 #include "SALOMEDSClient_ClientFactory.hxx"
29 #define isNewStudy(a,b) (a > 0 && a != b)
31 //=============================================================================
33 //=============================================================================
34 GEOM_Superv_i::GEOM_Superv_i(CORBA::ORB_ptr orb,
35 PortableServer::POA_ptr poa,
36 PortableServer::ObjectId * contId,
37 const char *instanceName,
38 const char *interfaceName) :
39 Engines_Component_i(orb, poa, contId, instanceName, interfaceName)
41 MESSAGE("GEOM_Superv_i::GEOM_Superv_i");
44 _id = _poa->activate_object(_thisObj);
45 name_service = new SALOME_NamingService(_orb);
46 //get RootPOA (the default)
47 //myPOA = PortableServer::RefCountServantBase::_default_POA();
48 CORBA::Object_var anObj = _orb->resolve_initial_references("RootPOA");
49 myPOA = PortableServer::POA::_narrow(anObj);
56 myBasicOp = GEOM::GEOM_IBasicOperations::_nil();
57 my3DPrimOp = GEOM::GEOM_I3DPrimOperations::_nil();
58 myBoolOp = GEOM::GEOM_IBooleanOperations::_nil();
59 myInsOp = GEOM::GEOM_IInsertOperations::_nil();
60 myTransfOp = GEOM::GEOM_ITransformOperations::_nil();
61 myShapesOp = GEOM::GEOM_IShapesOperations::_nil();
62 myBlocksOp = GEOM::GEOM_IBlocksOperations::_nil();
63 myCurvesOp = GEOM::GEOM_ICurvesOperations::_nil();
64 myLocalOp = GEOM::GEOM_ILocalOperations::_nil();
65 myGroupOp = GEOM::GEOM_IGroupOperations::_nil();
68 //=============================================================================
70 //=============================================================================
71 GEOM_Superv_i::~GEOM_Superv_i()
73 MESSAGE("GEOM_Superv_i::~GEOM_Superv_i");
74 if (!CORBA::is_nil(myBasicOp))
75 myBasicOp->UnRegister();
76 if (!CORBA::is_nil(myBoolOp))
77 myBoolOp->UnRegister();
78 if (!CORBA::is_nil(my3DPrimOp))
79 my3DPrimOp->UnRegister();
83 //============================================================================
84 // function : register()
85 // purpose : register 'name' in 'name_service'
86 //============================================================================
87 void GEOM_Superv_i::register_name(char * name)
89 GEOM::GEOM_Superv_var g = _this();
90 name_service->Register(g, name);
93 //=============================================================================
95 //=============================================================================
96 void GEOM_Superv_i::setGeomEngine()
98 if ( !CORBA::is_nil(myGeomEngine) )
101 // get GEOM_Gen engine
102 Engines::Container_var cont=GetContainerRef();
103 CORBA::String_var container_name=cont->name();
104 std::string shortName=container_name.in();
105 shortName=shortName.substr(12); // substract "/Containers/"
106 SALOME_LifeCycleCORBA* lcc = new SALOME_LifeCycleCORBA( name_service );
107 Engines::EngineComponent_var comp = lcc->FindOrLoad_Component( shortName.c_str(), "GEOM" );
110 myGeomEngine = GEOM::GEOM_Gen::_narrow(comp);
113 //=============================================================================
115 //=============================================================================
116 void GEOM_Superv_i::SetStudyID( CORBA::Long theId )
118 // mkr : PAL10770 -->
119 myLastStudyID = myStudyID;
121 CORBA::Object_ptr anObject = name_service->Resolve("/Kernel/Session");
122 if ( !CORBA::is_nil(anObject) ) {
123 SALOME::Session_var aSession = SALOME::Session::_narrow(anObject);
124 if ( !CORBA::is_nil(aSession) ) {
125 int aStudyID = aSession->GetActiveStudyId();
126 if ( theId != aStudyID && aStudyID > 0) { // mkr : IPAL12128
127 MESSAGE("Warning : given study ID theId="<<theId<<" is wrong and will be replaced by the value "<<aStudyID);
128 myStudyID = aStudyID;
131 myStudyID = theId; // mkr : IPAL12128
135 if ( isNewStudy(myLastStudyID,myStudyID) ) {
136 if (CORBA::is_nil(myGeomEngine)) setGeomEngine();
137 std::string anEngine = _orb->object_to_string( myGeomEngine );
139 CORBA::Object_var anObj = name_service->Resolve("/myStudyManager");
140 if ( !CORBA::is_nil(anObj) ) {
141 SALOMEDS::StudyManager_var aStudyManager = SALOMEDS::StudyManager::_narrow(anObj);
142 if ( !CORBA::is_nil(aStudyManager) ) {
143 _PTR(Study) aDSStudy = ClientFactory::Study(aStudyManager->GetStudyByID(myStudyID));
145 _PTR(SComponent) aSCO = aDSStudy->FindComponent(myGeomEngine->ComponentDataType());
147 _PTR(StudyBuilder) aBuilder = aDSStudy->NewBuilder();
148 if ( aBuilder ) aBuilder->LoadWith( aSCO, anEngine );
154 // mkr : PAL10770 <--
157 //=============================================================================
159 //=============================================================================
160 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfGO()
162 MESSAGE("GEOM_Superv_i::CreateListOfGO()");
163 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>();
164 return aListPtr->_this();
167 //=============================================================================
168 // AddItemToListOfGO:
169 //=============================================================================
170 void GEOM_Superv_i::AddItemToListOfGO(GEOM::GEOM_List_ptr& theList,
171 GEOM::GEOM_Object_ptr theObject)
173 MESSAGE("GEOM_Superv_i::AddItemToListOfGO(...)");
174 GEOM::GEOM_Object_var anObj = GEOM::GEOM_Object::_duplicate(theObject);
175 if (GEOM_List_i<GEOM::ListOfGO>* aList =
176 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theList, myPOA).in())) {
177 aList->AddObject(anObj);
178 MESSAGE(" NewLength = "<<aList->GetList().length());
182 //=============================================================================
184 //=============================================================================
185 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfLong()
187 MESSAGE("GEOM_Superv_i::CreateListOfLong()");
188 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>();
189 return aListPtr->_this();
192 //=============================================================================
193 // AddItemToListOfLong:
194 //=============================================================================
195 void GEOM_Superv_i::AddItemToListOfLong(GEOM::GEOM_List_ptr& theList,
196 CORBA::Long theObject)
198 MESSAGE("GEOM_Superv_i::AddItemToListOfLong(...)");
199 if (GEOM_List_i<GEOM::ListOfLong>* aList =
200 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theList, myPOA).in())) {
201 aList->AddObject(theObject);
202 MESSAGE(" NewLength = "<<aList->GetList().length());
206 //=============================================================================
207 // CreateListOfDouble:
208 //=============================================================================
209 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfDouble()
211 MESSAGE("GEOM_Superv_i::CreateListOfDouble()");
212 GEOM_List_i<GEOM::ListOfDouble>* aListPtr = new GEOM_List_i<GEOM::ListOfDouble>();
213 return aListPtr->_this();
216 //=============================================================================
217 // AddItemToListOfDouble:
218 //=============================================================================
219 void GEOM_Superv_i::AddItemToListOfDouble(GEOM::GEOM_List_ptr& theList,
220 CORBA::Double theObject)
222 MESSAGE("GEOM_Superv_i::AddItemToListOfDouble(...)");
223 if (GEOM_List_i<GEOM::ListOfDouble>* aList =
224 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theList, myPOA).in())) {
225 aList->AddObject(theObject);
226 MESSAGE(" NewLength = "<<aList->GetList().length());
230 //=============================================================================
232 //=============================================================================
233 void GEOM_Superv_i::getBasicOp()
235 if (CORBA::is_nil(myGeomEngine))
237 // get GEOM_IBasicOperations interface
238 if (CORBA::is_nil(myBasicOp) || isNewStudy(myLastStudyID,myStudyID)) {
239 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
240 // Try to get id of the study from the SALOME Session
241 if(myStudyID < 0 ) SetStudyID(-1);
242 myBasicOp = myGeomEngine->GetIBasicOperations(myStudyID);
246 //=============================================================================
248 //=============================================================================
249 void GEOM_Superv_i::get3DPrimOp()
251 if (CORBA::is_nil(myGeomEngine))
253 // get GEOM_I3DPrimOperations interface
254 if (CORBA::is_nil(my3DPrimOp) || isNewStudy(myLastStudyID,myStudyID)) {
255 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
256 // Try to get id of the study from the SALOME Session
257 if(myStudyID < 0 ) SetStudyID(-1);
258 my3DPrimOp = myGeomEngine->GetI3DPrimOperations(myStudyID);
262 //=============================================================================
264 //=============================================================================
265 void GEOM_Superv_i::getBoolOp()
267 if (CORBA::is_nil(myGeomEngine))
269 // get GEOM_IBooleanOperations interface
270 if (CORBA::is_nil(myBoolOp) || isNewStudy(myLastStudyID,myStudyID)) {
271 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
272 // Try to get id of the study from the SALOME Session
273 if(myStudyID < 0 ) SetStudyID(-1);
274 myBoolOp = myGeomEngine->GetIBooleanOperations(myStudyID);
278 //=============================================================================
280 //=============================================================================
281 void GEOM_Superv_i::getInsOp()
283 if (CORBA::is_nil(myGeomEngine))
285 // get GEOM_IInsertOperations interface
286 if (CORBA::is_nil(myInsOp) || isNewStudy(myLastStudyID,myStudyID)) {
287 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
288 // Try to get id of the study from the SALOME Session
289 if(myStudyID < 0 ) SetStudyID(-1);
290 myInsOp = myGeomEngine->GetIInsertOperations(myStudyID);
294 //=============================================================================
296 //=============================================================================
297 void GEOM_Superv_i::getTransfOp()
299 if (CORBA::is_nil(myGeomEngine))
301 // get GEOM_ITransformOperations interface
302 if (CORBA::is_nil(myTransfOp) || isNewStudy(myLastStudyID,myStudyID)) {
303 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
304 // Try to get id of the study from the SALOME Session
305 if(myStudyID < 0 ) SetStudyID(-1);
306 myTransfOp = myGeomEngine->GetITransformOperations(myStudyID);
310 //=============================================================================
312 //=============================================================================
313 void GEOM_Superv_i::getShapesOp()
315 if (CORBA::is_nil(myGeomEngine))
317 // get GEOM_IShapesOperations interface
318 if (CORBA::is_nil(myShapesOp) || isNewStudy(myLastStudyID,myStudyID)) {
319 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
320 // Try to get id of the study from the SALOME Session
321 if(myStudyID < 0 ) SetStudyID(-1);
322 myShapesOp = myGeomEngine->GetIShapesOperations(myStudyID);
326 //=============================================================================
328 //=============================================================================
329 void GEOM_Superv_i::getBlocksOp()
331 if (CORBA::is_nil(myGeomEngine))
333 // get GEOM_IBlocksOperations interface
334 if (CORBA::is_nil(myBlocksOp) || isNewStudy(myLastStudyID,myStudyID)) {
335 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
336 // Try to get id of the study from the SALOME Session
337 if(myStudyID < 0 ) SetStudyID(-1);
338 myBlocksOp = myGeomEngine->GetIBlocksOperations(myStudyID);
342 //=============================================================================
344 //=============================================================================
345 void GEOM_Superv_i::getCurvesOp()
347 if (CORBA::is_nil(myGeomEngine))
349 // get GEOM_ICurvesOperations interface
350 if (CORBA::is_nil(myCurvesOp) || isNewStudy(myLastStudyID,myStudyID)) {
351 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
352 // Try to get id of the study from the SALOME Session
353 if(myStudyID < 0 ) SetStudyID(-1);
354 myCurvesOp = myGeomEngine->GetICurvesOperations(myStudyID);
358 //=============================================================================
360 //=============================================================================
361 void GEOM_Superv_i::getLocalOp()
363 if (CORBA::is_nil(myGeomEngine))
365 // get GEOM_ILocalOperations interface
366 if (CORBA::is_nil(myLocalOp) || isNewStudy(myLastStudyID,myStudyID)) {
367 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
368 // Try to get id of the study from the SALOME Session
369 if(myStudyID < 0 ) SetStudyID(-1);
370 myLocalOp = myGeomEngine->GetILocalOperations(myStudyID);
374 //=============================================================================
376 //=============================================================================
377 void GEOM_Superv_i::getGroupOp()
379 if (CORBA::is_nil(myGeomEngine))
381 // get GEOM_IGroupOperations interface
382 if (CORBA::is_nil(myGroupOp) || isNewStudy(myLastStudyID,myStudyID)) {
383 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
384 // Try to get id of the study from the SALOME Session
385 if(myStudyID < 0 ) SetStudyID(-1);
386 myGroupOp = myGeomEngine->GetIGroupOperations(myStudyID);
390 //=============================================================================
392 //=============================================================================
393 void GEOM_Superv_i::getAdvancedOp()
395 if (CORBA::is_nil(myGeomEngine))
397 // get GEOM_IAdvancedOperations interface
398 if (CORBA::is_nil(myAdvancedOp) || isNewStudy(myLastStudyID,myStudyID)) {
399 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
400 // Try to get id of the study from the SALOME Session
401 if(myStudyID < 0 ) SetStudyID(-1);
402 //myAdvancedOp = myGeomEngine->GetIAdvancedOperations(myStudyID);
403 myAdvancedOp = GEOM::GEOM_IAdvancedOperations::_narrow(myGeomEngine->GetPluginOperations(myStudyID, "AdvancedEngine"));
407 //=============================================================================
409 //=============================================================================
410 PortableServer::ServantBase_var GEOM_Superv_i::GetServant(CORBA::Object_ptr theObject,
411 PortableServer::POA_ptr thePOA)
413 if(CORBA::is_nil(theObject)) return NULL;
414 PortableServer::Servant aServant = thePOA->reference_to_servant(theObject);
418 //============================================================================
420 // purpose : save OCAF/Geom document
421 //============================================================================
422 SALOMEDS::TMPFile* GEOM_Superv_i::Save(SALOMEDS::SComponent_ptr theComponent,
424 CORBA::Boolean isMultiFile)
426 SALOMEDS::TMPFile_var aStreamFile;
427 return aStreamFile._retn();
430 //============================================================================
431 // function : SaveASCII()
433 //============================================================================
434 SALOMEDS::TMPFile* GEOM_Superv_i::SaveASCII(SALOMEDS::SComponent_ptr theComponent,
436 CORBA::Boolean isMultiFile)
438 SALOMEDS::TMPFile_var aStreamFile;
439 return aStreamFile._retn();
442 //============================================================================
445 //============================================================================
446 CORBA::Boolean GEOM_Superv_i::Load(SALOMEDS::SComponent_ptr theComponent,
447 const SALOMEDS::TMPFile& theStream,
449 CORBA::Boolean isMultiFile)
454 //============================================================================
455 // function : LoadASCII()
457 //============================================================================
458 CORBA::Boolean GEOM_Superv_i::LoadASCII(SALOMEDS::SComponent_ptr theComponent,
459 const SALOMEDS::TMPFile& theStream,
461 CORBA::Boolean isMultiFile)
466 //============================================================================
467 // function : Close()
469 //============================================================================
470 void GEOM_Superv_i::Close(SALOMEDS::SComponent_ptr theComponent)
474 //============================================================================
475 // function : ComponentDataType()
477 //============================================================================
478 char* GEOM_Superv_i::ComponentDataType()
483 //============================================================================
484 // function : IORToLocalPersistentID()
486 //============================================================================
487 char* GEOM_Superv_i::IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject,
488 const char* IORString,
489 CORBA::Boolean isMultiFile,
490 CORBA::Boolean isASCII)
495 //============================================================================
496 // function : LocalPersistentIDToIOR()
497 // purpose : Create/Load CORBA object from a persistent ref (an entry)
498 // : Used when a study is loaded
499 // : The IOR (IORName) of object created is returned
500 //============================================================================
501 char* GEOM_Superv_i::LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject,
502 const char* aLocalPersistentID,
503 CORBA::Boolean isMultiFile,
504 CORBA::Boolean isASCII)
509 //============================================================================
510 // function : CanPublishInStudy
512 //============================================================================
513 CORBA::Boolean GEOM_Superv_i::CanPublishInStudy(CORBA::Object_ptr theIOR)
515 if (CORBA::is_nil(myGeomEngine))
517 return myGeomEngine->CanPublishInStudy(theIOR);
520 //============================================================================
521 // function : PublishInStudy
523 //============================================================================
524 SALOMEDS::SObject_ptr GEOM_Superv_i::PublishInStudy(SALOMEDS::Study_ptr theStudy,
525 SALOMEDS::SObject_ptr theSObject,
526 CORBA::Object_ptr theObject,
527 const char* theName) throw (SALOME::SALOME_Exception)
529 if (CORBA::is_nil(myGeomEngine))
531 return myGeomEngine->PublishInStudy(theStudy, theSObject, theObject, theName);
534 //============================================================================
535 // function : PublishNamedShapesInStudy
537 //============================================================================
539 GEOM_Superv_i::PublishNamedShapesInStudy(SALOMEDS::Study_ptr theStudy,
540 //SALOMEDS::SObject_ptr theSObject,
541 CORBA::Object_ptr theObject)
543 if (CORBA::is_nil(myGeomEngine))
545 return myGeomEngine->PublishNamedShapesInStudy(theStudy, theObject);
548 //============================================================================
549 // function : CanCopy()
551 //============================================================================
552 CORBA::Boolean GEOM_Superv_i::CanCopy(SALOMEDS::SObject_ptr theObject)
557 //============================================================================
558 // function : CopyFrom()
560 //============================================================================
561 SALOMEDS::TMPFile* GEOM_Superv_i::CopyFrom(SALOMEDS::SObject_ptr theObject, CORBA::Long& theObjectID)
563 SALOMEDS::TMPFile_var aStreamFile;
564 return aStreamFile._retn();
567 //============================================================================
568 // function : CanPaste()
570 //============================================================================
571 CORBA::Boolean GEOM_Superv_i::CanPaste(const char* theComponentName, CORBA::Long theObjectID)
576 //============================================================================
577 // function : PasteInto()
579 //============================================================================
580 SALOMEDS::SObject_ptr GEOM_Superv_i::PasteInto(const SALOMEDS::TMPFile& theStream,
581 CORBA::Long theObjectID,
582 SALOMEDS::SObject_ptr theObject)
584 SALOMEDS::SObject_var aNewSO;
585 return aNewSO._retn();
588 //================= Primitives Construction : BasicOperations =================
589 //=============================================================================
591 //=============================================================================
592 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointXYZ(CORBA::Double theX,
596 beginService( " GEOM_Superv_i::MakePointXYZ" );
597 MESSAGE("GEOM_Superv_i::MakePointXYZ");
599 // make vertex and return
600 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointXYZ(theX, theY, theZ);
601 endService( " GEOM_Superv_i::MakePointXYZ" );
605 //=============================================================================
606 // MakePointWithReference:
607 //=============================================================================
608 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointWithReference (GEOM::GEOM_Object_ptr theReference,
613 beginService( " GEOM_Superv_i::MakePointWithReference" );
614 MESSAGE("GEOM_Superv_i::MakePointWithReference");
616 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointWithReference(theReference, theX, theY, theZ);
617 endService( " GEOM_Superv_i::MakePointWithReference" );
621 //=============================================================================
623 //=============================================================================
624 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
625 CORBA::Double theParameter)
627 beginService( " GEOM_Superv_i::MakePointOnCurve" );
628 MESSAGE("GEOM_Superv_i::MakePointOnCurve");
630 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurve(theRefCurve, theParameter);
631 endService( " GEOM_Superv_i::MakePointOnCurve" );
635 //=============================================================================
636 // MakePointOnCurveByLength:
637 //=============================================================================
638 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByLength (GEOM::GEOM_Object_ptr theRefCurve,
639 CORBA::Double theLength,
640 GEOM::GEOM_Object_ptr theStartPoint)
642 beginService( " GEOM_Superv_i::MakePointOnCurveByLength" );
643 MESSAGE("GEOM_Superv_i::MakePointOnCurveByLength");
645 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurveByLength(theRefCurve, theLength, theStartPoint);
646 endService( " GEOM_Superv_i::MakePointOnCurveByLength" );
650 //=============================================================================
651 // MakePointOnCurveByCoord
652 //=============================================================================
653 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByCoord (GEOM::GEOM_Object_ptr theRefCurve,
654 CORBA::Double theXParameter,
655 CORBA::Double theYParameter,
656 CORBA::Double theZParameter)
658 beginService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
659 MESSAGE("GEOM_Superv_i::MakePointOnCurveByCoord");
661 GEOM::GEOM_Object_ptr anObj =
662 myBasicOp->MakePointOnCurveByCoord(theRefCurve, theXParameter,
663 theYParameter, theZParameter);
664 endService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
668 //=============================================================================
669 // MakePointOnSurface:
670 //=============================================================================
671 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurface (GEOM::GEOM_Object_ptr theRefSurface,
672 CORBA::Double theUParameter,
673 CORBA::Double theVParameter)
675 beginService( " GEOM_Superv_i::MakePointOnSurface" );
676 MESSAGE("GEOM_Superv_i::MakePointOnSurface");
678 GEOM::GEOM_Object_ptr anObj =
679 myBasicOp->MakePointOnSurface(theRefSurface, theUParameter, theVParameter);
680 endService( " GEOM_Superv_i::MakePointOnSurface" );
684 //=============================================================================
685 // MakePointOnSurfaceByCoord
686 //=============================================================================
687 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurfaceByCoord (GEOM::GEOM_Object_ptr theRefSurface,
688 CORBA::Double theXParameter,
689 CORBA::Double theYParameter,
690 CORBA::Double theZParameter)
692 beginService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
693 MESSAGE("GEOM_Superv_i::MakePointOnSurfaceByCoord");
695 GEOM::GEOM_Object_ptr anObj =
696 myBasicOp->MakePointOnSurfaceByCoord(theRefSurface, theXParameter,
697 theYParameter, theZParameter);
698 endService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
702 //=============================================================================
703 // MakePointOnLinesIntersection:
704 //=============================================================================
705 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnLinesIntersection (GEOM::GEOM_Object_ptr theRefLine1,
706 GEOM::GEOM_Object_ptr theRefLine2)
708 beginService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
709 MESSAGE("GEOM_Superv_i::MakePointOnLinesIntersection");
711 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnLinesIntersection(theRefLine1, theRefLine2);
712 endService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
716 //=============================================================================
717 // MakeTangentOnCurve:
718 //=============================================================================
719 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
720 CORBA::Double theParameter)
722 beginService( " GEOM_Superv_i::MakeTangentOnCurve" );
723 MESSAGE("GEOM_Superv_i::MakeTangentOnCurve");
725 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentOnCurve(theRefCurve, theParameter);
726 endService( " GEOM_Superv_i::MakeTangentOnCurve" );
730 //=============================================================================
732 //=============================================================================
733 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorDXDYDZ (CORBA::Double theDX,
737 beginService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
738 MESSAGE("GEOM_Superv_i::MakeVectorDXDYDZ");
740 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorDXDYDZ(theDX, theDY, theDZ);
741 endService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
745 //=============================================================================
747 //=============================================================================
748 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
749 GEOM::GEOM_Object_ptr thePnt2)
751 beginService( " GEOM_Superv_i::MakeVectorTwoPnt" );
752 MESSAGE("GEOM_Superv_i::MakeVector");
754 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorTwoPnt(thePnt1, thePnt2);
755 endService( " GEOM_Superv_i::MakeVectorTwoPnt" );
759 //=============================================================================
761 //=============================================================================
762 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
763 GEOM::GEOM_Object_ptr thePnt2)
765 beginService( " GEOM_Superv_i::MakeLineTwoPnt");
766 MESSAGE("GEOM_Superv_i::MakeLineTwoPnt");
768 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoPnt(thePnt1, thePnt2);
769 endService( " GEOM_Superv_i::MakeLineTwoPnt");
773 //=============================================================================
775 //=============================================================================
776 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoFaces (GEOM::GEOM_Object_ptr theFace1,
777 GEOM::GEOM_Object_ptr theFace2)
779 beginService( " GEOM_Superv_i::MakeLineTwoFaces");
780 MESSAGE("GEOM_Superv_i::MakeLineTwoFaces");
782 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoFaces(theFace1, theFace2);
783 endService( " GEOM_Superv_i::MakeLineTwoFaces");
787 //=============================================================================
788 // MakePlaneThreePnt:
789 //=============================================================================
790 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneThreePnt (GEOM::GEOM_Object_ptr thePnt1,
791 GEOM::GEOM_Object_ptr thePnt2,
792 GEOM::GEOM_Object_ptr thePnt3,
793 CORBA::Double theTrimSize)
795 beginService( " GEOM_Superv_i::MakePlaneThreePnt");
796 MESSAGE("GEOM_Superv_i::MakePlaneThreePnt");
798 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneThreePnt(thePnt1, thePnt2, thePnt3, theTrimSize);
799 endService( " GEOM_Superv_i::MakePlaneThreePnt");
803 //=============================================================================
805 //=============================================================================
806 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlanePntVec (GEOM::GEOM_Object_ptr thePnt,
807 GEOM::GEOM_Object_ptr theVec,
808 CORBA::Double theTrimSize)
810 beginService( " GEOM_Superv_i::MakePlanePntVec" );
811 MESSAGE("GEOM_Superv_i::MakePlanePntVec");
813 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlanePntVec(thePnt, theVec, theTrimSize);
814 endService( " GEOM_Superv_i::MakePlanePntVec" );
818 //=============================================================================
820 //=============================================================================
821 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneFace (GEOM::GEOM_Object_ptr theFace,
822 CORBA::Double theTrimSize)
824 beginService( " GEOM_Superv_i::MakePlaneFace" );
825 MESSAGE("GEOM_Superv_i::MakePlaneFace");
827 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneFace(theFace, theTrimSize);
828 endService( " GEOM_Superv_i::MakePlaneFace" );
832 //=============================================================================
834 //=============================================================================
835 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlane2Vec (GEOM::GEOM_Object_ptr theVec1,
836 GEOM::GEOM_Object_ptr theVec2,
837 CORBA::Double theTrimSize)
839 beginService( " GEOM_Superv_i::MakePlane2Vec" );
840 MESSAGE("GEOM_Superv_i::MakePlane2Vec");
842 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlane2Vec(theVec1, theVec2, theTrimSize);
843 endService( " GEOM_Superv_i::MakePlane2Vec" );
847 //=============================================================================
849 //=============================================================================
850 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneLCS (GEOM::GEOM_Object_ptr theLCS,
851 CORBA::Double theTrimSize,
852 CORBA::Double theOrientation)
854 beginService( " GEOM_Superv_i::MakePlaneLCS" );
855 MESSAGE("GEOM_Superv_i::MakePlaneLCS");
857 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneLCS(theLCS, theTrimSize, theOrientation);
858 endService( " GEOM_Superv_i::MakePlaneLCS" );
862 //=============================================================================
864 //=============================================================================
865 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarker
866 (CORBA::Double theOX , CORBA::Double theOY , CORBA::Double theOZ,
867 CORBA::Double theXDX, CORBA::Double theXDY, CORBA::Double theXDZ,
868 CORBA::Double theYDX, CORBA::Double theYDY, CORBA::Double theYDZ)
870 beginService( " GEOM_Superv_i::MakeMarker" );
871 MESSAGE("GEOM_Superv_i::MakeMarker");
873 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarker(theOX, theOY, theOZ, theXDX, theXDY, theXDZ, theYDX, theYDY, theYDZ);
874 endService( " GEOM_Superv_i::MakeMarker" );
878 //=============================================================================
879 // MakeMarkerFromShape:
880 //=============================================================================
881 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerFromShape (GEOM::GEOM_Object_ptr theShape)
883 beginService( " GEOM_Superv_i::MakeMarkerFromShape" );
884 MESSAGE("GEOM_Superv_i::MakeMarkerFromShape");
886 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerFromShape(theShape);
887 endService( " GEOM_Superv_i::MakeMarkerFromShape" );
891 //=============================================================================
892 // MakeMarkerPntTwoVec:
893 //=============================================================================
894 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerPntTwoVec (GEOM::GEOM_Object_ptr theOrigin,
895 GEOM::GEOM_Object_ptr theXVec,
896 GEOM::GEOM_Object_ptr theYVec)
898 beginService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
899 MESSAGE("GEOM_Superv_i::MakeMarkerPntTwoVec");
901 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerPntTwoVec(theOrigin, theXVec, theYVec);
902 endService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
906 //=============================================================================
907 // MakeTangentPlaneOnFace:
908 //=============================================================================
909 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentPlaneOnFace (GEOM::GEOM_Object_ptr theFace,
910 CORBA::Double theParameterU,
911 CORBA::Double theParameterV,
912 CORBA::Double theTrimSize)
914 beginService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
915 MESSAGE("GEOM_Superv_i::MakeTangentPlaneOnFace");
917 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentPlaneOnFace(theFace, theParameterU,theParameterV,theTrimSize);
918 endService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
922 //================= Primitives Construction : 3DPrimOperations ================
923 //=============================================================================
925 //=============================================================================
926 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBox (CORBA::Double theX1,
933 beginService( " GEOM_Superv_i::MakeBox" );
934 MESSAGE("GEOM_Superv_i::MakeBox");
937 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(myBasicOp->MakePointXYZ(theX1, theY1, theZ1),
938 myBasicOp->MakePointXYZ(theX2, theY2, theZ2));
939 endService( " GEOM_Superv_i::MakeBox" );
943 //=============================================================================
945 //=============================================================================
946 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxDXDYDZ (CORBA::Double theDX,
950 beginService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
951 MESSAGE("GEOM_Superv_i::MakeBoxDXDYDZ");
953 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxDXDYDZ(theDX, theDY, theDZ);
954 endService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
958 //=============================================================================
960 //=============================================================================
961 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
962 GEOM::GEOM_Object_ptr thePnt2)
964 beginService( " GEOM_Superv_i::MakeBoxTwoPnt" );
965 MESSAGE("GEOM_Superv_i::MakeBoxTwoPnt");
967 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(thePnt1, thePnt2);
968 endService( " GEOM_Superv_i::MakeBoxTwoPnt" );
972 //=============================================================================
974 //=============================================================================
975 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceHW (CORBA::Double theH,
977 CORBA::Short theOrientation)
979 beginService( " GEOM_Superv_i::MakeFaceHW" );
980 MESSAGE("GEOM_Superv_i::MakeFaceHW");
982 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceHW(theH, theW, theOrientation);
983 endService( " GEOM_Superv_i::MakeFaceHW" );
987 //=============================================================================
989 //=============================================================================
990 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj,
994 beginService( " GEOM_Superv_i::MakeFaceObjHW" );
995 MESSAGE("GEOM_Superv_i::MakeFaceObjHW");
997 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceObjHW(theObj, theH, theW);
998 endService( " GEOM_Superv_i::MakeFaceObjHW" );
1002 //=============================================================================
1004 //=============================================================================
1005 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter,
1006 GEOM::GEOM_Object_ptr theVector,
1009 beginService( " GEOM_Superv_i::MakeDiskPntVecR" );
1010 MESSAGE("GEOM_Superv_i::MakeDiskPntVecR");
1012 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskPntVecR(theCenter, theVector, theR);
1013 endService( " GEOM_Superv_i::MakeDiskPntVecR" );
1017 //=============================================================================
1018 // MakeDiskThreePnt:
1019 //=============================================================================
1020 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1,
1021 GEOM::GEOM_Object_ptr thePnt2,
1022 GEOM::GEOM_Object_ptr thePnt3)
1024 beginService( " GEOM_Superv_i::MakeDiskThreePnt" );
1025 MESSAGE("GEOM_Superv_i::MakeDiskThreePnt");
1027 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskThreePnt(thePnt1, thePnt2, thePnt3);
1028 endService( " GEOM_Superv_i::MakeDiskThreePnt" );
1032 //=============================================================================
1034 //=============================================================================
1035 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskR (CORBA::Double theR,
1036 CORBA::Short theOrientation)
1038 beginService( " GEOM_Superv_i::MakeDiskR" );
1039 MESSAGE("GEOM_Superv_i::MakeDiskR");
1041 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskR(theR, theOrientation);
1042 endService( " GEOM_Superv_i::MakeDiskR" );
1046 //=============================================================================
1047 // MakeCylinderPntVecRH:
1048 //=============================================================================
1049 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderPntVecRH (GEOM::GEOM_Object_ptr thePnt,
1050 GEOM::GEOM_Object_ptr theAxis,
1051 CORBA::Double theRadius,
1052 CORBA::Double theHeight)
1054 beginService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
1055 MESSAGE("GEOM_Superv_i::MakeCylinderPntVecRH");
1057 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderPntVecRH(thePnt, theAxis, theRadius, theHeight);
1058 endService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
1062 //=============================================================================
1064 //=============================================================================
1065 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderRH (CORBA::Double theR,
1068 beginService( " GEOM_Superv_i::MakeCylinderRH" );
1069 MESSAGE("GEOM_Superv_i::MakeCylinderRH");
1071 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderRH(theR, theH);
1072 endService( " GEOM_Superv_i::MakeCylinderRH" );
1076 //=============================================================================
1078 //=============================================================================
1079 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphere (CORBA::Double theX,
1082 CORBA::Double theRadius)
1084 beginService( " GEOM_Superv_i::MakeSphepe" );
1085 MESSAGE("GEOM_Superv_i::MakeSphepe");
1088 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(myBasicOp->MakePointXYZ(theX, theY, theZ), theRadius);
1089 endService( " GEOM_Superv_i::MakeSphepe" );
1093 //=============================================================================
1095 //=============================================================================
1096 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphereR (CORBA::Double theR)
1098 beginService( " GEOM_Superv_i::MakeSphereR" );
1099 MESSAGE("GEOM_Superv_i::MakeSphereR");
1101 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSphereR(theR);
1102 endService( " GEOM_Superv_i::MakeSphereR" );
1106 //=============================================================================
1108 //=============================================================================
1109 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSpherePntR (GEOM::GEOM_Object_ptr thePnt,
1112 beginService( " GEOM_Superv_i::MakeSpherePntR" );
1113 MESSAGE("GEOM_Superv_i::MakeSpherePntR");
1115 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(thePnt, theR);
1116 endService( " GEOM_Superv_i::MakeSpherePntR" );
1120 //=============================================================================
1121 // MakeTorusPntVecRR:
1122 //=============================================================================
1123 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusPntVecRR (GEOM::GEOM_Object_ptr thePnt,
1124 GEOM::GEOM_Object_ptr theVec,
1125 CORBA::Double theRMajor,
1126 CORBA::Double theRMinor)
1128 beginService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1129 MESSAGE("GEOM_Superv_i::MakeTorusPntVecRR");
1131 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusPntVecRR(thePnt, theVec, theRMajor, theRMinor);
1132 endService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1136 //=============================================================================
1138 //=============================================================================
1139 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusRR (CORBA::Double theRMajor,
1140 CORBA::Double theRMinor)
1142 beginService( " GEOM_Superv_i::MakeTorusRR" );
1143 MESSAGE("GEOM_Superv_i::MakeTorusRR");
1145 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusRR(theRMajor, theRMinor);
1146 endService( " GEOM_Superv_i::MakeTorusRR" );
1150 //=============================================================================
1151 // MakeConePntVecR1R2H:
1152 //=============================================================================
1153 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConePntVecR1R2H (GEOM::GEOM_Object_ptr thePnt,
1154 GEOM::GEOM_Object_ptr theAxis,
1155 CORBA::Double theR1,
1156 CORBA::Double theR2,
1157 CORBA::Double theHeight)
1159 beginService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1160 MESSAGE("GEOM_Superv_i::MakeConePntVecR1R2H");
1162 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConePntVecR1R2H(thePnt, theAxis, theR1, theR2, theHeight);
1163 endService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1167 //=============================================================================
1169 //=============================================================================
1170 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConeR1R2H (CORBA::Double theR1,
1171 CORBA::Double theR2,
1172 CORBA::Double theHeight)
1174 beginService( " GEOM_Superv_i::MakeConeR1R2H" );
1175 MESSAGE("GEOM_Superv_i::MakeConeR1R2H");
1177 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConeR1R2H(theR1, theR2, theHeight);
1178 endService( " GEOM_Superv_i::MakeConeR1R2H" );
1182 //=============================================================================
1184 //=============================================================================
1185 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH (GEOM::GEOM_Object_ptr theBase,
1186 GEOM::GEOM_Object_ptr theVec,
1189 beginService( " GEOM_Superv_i::MakePrismVecH" );
1190 MESSAGE("GEOM_Superv_i::MakePrismVecH");
1192 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH(theBase, theVec, theH);
1193 endService( " GEOM_Superv_i::MakePrismVecH" );
1197 //=============================================================================
1198 // MakePrismVecH2Ways:
1199 //=============================================================================
1200 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH2Ways (GEOM::GEOM_Object_ptr theBase,
1201 GEOM::GEOM_Object_ptr theVec,
1204 beginService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1205 MESSAGE("GEOM_Superv_i::MakePrismVecH2Ways");
1207 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH2Ways(theBase, theVec, theH);
1208 endService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1212 //=============================================================================
1214 //=============================================================================
1215 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt (GEOM::GEOM_Object_ptr theBase,
1216 GEOM::GEOM_Object_ptr thePoint1,
1217 GEOM::GEOM_Object_ptr thePoint2)
1219 beginService( " GEOM_Superv_i::MakePrismTwoPnt" );
1220 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt");
1222 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt(theBase, thePoint1, thePoint2);
1223 endService( " GEOM_Superv_i::MakePrismTwoPnt" );
1227 //=============================================================================
1228 // MakePrismTwoPnt2Ways:
1229 //=============================================================================
1230 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt2Ways (GEOM::GEOM_Object_ptr theBase,
1231 GEOM::GEOM_Object_ptr thePoint1,
1232 GEOM::GEOM_Object_ptr thePoint2)
1234 beginService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1235 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt2Ways");
1237 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt2Ways(theBase, thePoint1, thePoint2);
1238 endService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1242 //=============================================================================
1244 //=============================================================================
1245 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase,
1246 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1248 beginService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1249 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ");
1251 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ(theBase, theDX, theDY, theDZ);
1252 endService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1256 //=============================================================================
1258 //=============================================================================
1259 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase,
1260 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1262 beginService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1263 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ2Ways");
1265 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ2Ways(theBase, theDX, theDY, theDZ);
1266 endService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1270 //=============================================================================
1272 //=============================================================================
1273 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipe (GEOM::GEOM_Object_ptr theBase,
1274 GEOM::GEOM_Object_ptr thePath)
1276 beginService( " GEOM_Superv_i::MakePipe" );
1277 MESSAGE("GEOM_Superv_i::MakePipe");
1279 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipe(theBase, thePath);
1280 endService( " GEOM_Superv_i::MakePipe" );
1284 //=============================================================================
1285 // MakeRevolutionAxisAngle:
1286 //=============================================================================
1287 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle (GEOM::GEOM_Object_ptr theBase,
1288 GEOM::GEOM_Object_ptr theAxis,
1289 CORBA::Double theAngle)
1291 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1292 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle");
1294 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle(theBase, theAxis, theAngle);
1295 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1299 //=============================================================================
1300 // MakeRevolutionAxisAngle:
1301 //=============================================================================
1302 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle2Ways (GEOM::GEOM_Object_ptr theBase,
1303 GEOM::GEOM_Object_ptr theAxis,
1304 CORBA::Double theAngle)
1306 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1307 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle2Ways");
1309 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle2Ways(theBase, theAxis, theAngle);
1310 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1314 //=============================================================================
1316 //=============================================================================
1317 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilling (GEOM::GEOM_Object_ptr theShape,
1318 CORBA::Long theMinDeg,
1319 CORBA::Long theMaxDeg,
1320 CORBA::Double theTol2D,
1321 CORBA::Double theTol3D,
1322 CORBA::Long theNbIter,
1323 GEOM::filling_oper_method theMethod,
1324 CORBA::Boolean theApprox)
1326 beginService( " GEOM_Superv_i::MakeFilling" );
1327 MESSAGE("GEOM_Superv_i::MakeFilling");
1329 GEOM::GEOM_Object_ptr anObj =
1330 my3DPrimOp->MakeFilling(theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D,
1331 theNbIter, theMethod, theApprox);
1332 endService( " GEOM_Superv_i::MakeFilling" );
1336 //============================= BooleanOperations =============================
1337 //=============================================================================
1339 //=============================================================================
1340 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoolean
1341 (GEOM::GEOM_Object_ptr theShape1,
1342 GEOM::GEOM_Object_ptr theShape2,
1343 CORBA::Long theOperation,
1344 CORBA::Boolean IsCheckSelfInte)
1346 beginService( " GEOM_Superv_i::MakeBoolean" );
1347 // theOperation indicates the operation to be done:
1348 // 1 - Common, 2 - Cut, 3 - Fuse, 4 - Section
1349 MESSAGE("GEOM_Superv_i::MakeBoolean");
1351 GEOM::GEOM_Object_ptr anObj =
1352 myBoolOp->MakeBoolean(theShape1, theShape2, theOperation, IsCheckSelfInte);
1353 endService( " GEOM_Superv_i::MakeBoolean" );
1357 //=============================================================================
1358 // MakeThruSections:
1359 //=============================================================================
1360 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeThruSections(const GEOM::ListOfGO& theSeqSections,
1361 CORBA::Boolean theModeSolid,
1362 CORBA::Double thePreci,
1363 CORBA::Boolean theRuled)
1365 beginService( " GEOM_Superv_i::MakeThruSections" );
1366 MESSAGE("GEOM_Superv_i::MakeThruSections");
1368 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeThruSections(theSeqSections, theModeSolid,thePreci,theRuled);
1369 endService( " GEOM_Superv_i::MakeThruSections" );
1373 //=============================================================================
1375 //=============================================================================
1376 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithDifferentSections
1377 (const GEOM::ListOfGO& theBases,
1378 const GEOM::ListOfGO& theLocations,
1379 GEOM::GEOM_Object_ptr thePath,
1380 CORBA::Boolean theWithContact,
1381 CORBA::Boolean theWithCorrections)
1383 beginService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1384 MESSAGE("GEOM_Superv_i::MakePipeWithDifferentSections");
1386 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipeWithDifferentSections(theBases,theLocations, thePath,theWithContact,theWithCorrections);
1387 endService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1392 //=============================================================================
1394 //=============================================================================
1395 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithShellSections
1396 (const GEOM::ListOfGO& theBases,
1397 const GEOM::ListOfGO& theSubBases,
1398 const GEOM::ListOfGO& theLocations,
1399 GEOM::GEOM_Object_ptr thePath,
1400 CORBA::Boolean theWithContact,
1401 CORBA::Boolean theWithCorrections)
1403 beginService( " GEOM_Superv_i::MakePipeWithShellSections" );
1404 MESSAGE("GEOM_Superv_i::MakePipeWithShellSections");
1406 GEOM::GEOM_Object_ptr anObj =
1407 my3DPrimOp->MakePipeWithShellSections(theBases, theSubBases,
1408 theLocations, thePath,
1409 theWithContact, theWithCorrections);
1410 endService( " GEOM_Superv_i::MakePipeWithShellSections" );
1415 //=============================================================================
1417 //=============================================================================
1418 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeShellsWithoutPath
1419 (const GEOM::ListOfGO& theBases,
1420 const GEOM::ListOfGO& theLocations)
1422 beginService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1423 MESSAGE("GEOM_Superv_i::MakePipeShellsWithoutPath");
1425 GEOM::GEOM_Object_ptr anObj =
1426 my3DPrimOp->MakePipeShellsWithoutPath(theBases,theLocations);
1427 endService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1432 //=============================================================================
1434 //=============================================================================
1435 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeBiNormalAlongVector
1436 (GEOM::GEOM_Object_ptr theBase,
1437 GEOM::GEOM_Object_ptr thePath,
1438 GEOM::GEOM_Object_ptr theVec)
1440 beginService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1441 MESSAGE("GEOM_Superv_i::MakePipeBiNormalAlongVector");
1443 GEOM::GEOM_Object_ptr anObj =
1444 my3DPrimOp->MakePipeBiNormalAlongVector(theBase, thePath, theVec);
1445 endService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1450 //=============================================================================
1452 //=============================================================================
1453 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFuse
1454 (GEOM::GEOM_Object_ptr theShape1,
1455 GEOM::GEOM_Object_ptr theShape2,
1456 CORBA::Boolean IsCheckSelfInte)
1458 beginService( " GEOM_Superv_i::MakeFuse" );
1459 MESSAGE("GEOM_Superv_i::MakeFuse");
1461 GEOM::GEOM_Object_ptr anObj =
1462 myBoolOp->MakeBoolean(theShape1, theShape2, 3, IsCheckSelfInte);
1463 endService( " GEOM_Superv_i::MakeFuse" );
1467 //=============================================================================
1469 //=============================================================================
1470 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePartition (GEOM::GEOM_List_ptr theShapes,
1471 GEOM::GEOM_List_ptr theTools,
1472 GEOM::GEOM_List_ptr theKeepInside,
1473 GEOM::GEOM_List_ptr theRemoveInside,
1474 CORBA::Short theLimit,
1475 CORBA::Boolean theRemoveWebs,
1476 GEOM::GEOM_List_ptr theMaterials,
1477 CORBA::Short theKeepNonlimitShapes)
1479 beginService( " GEOM_Superv_i::MakePartition" );
1480 MESSAGE("GEOM_Superv_i::MakePartition");
1481 GEOM_List_i<GEOM::ListOfGO>* aListImplS =
1482 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in());
1483 GEOM_List_i<GEOM::ListOfGO>* aListImplT =
1484 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theTools, myPOA).in());
1485 GEOM_List_i<GEOM::ListOfGO>* aListImplKI =
1486 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theKeepInside, myPOA).in());
1487 GEOM_List_i<GEOM::ListOfGO>* aListImplRI =
1488 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theRemoveInside, myPOA).in());
1489 GEOM_List_i<GEOM::ListOfLong>* aListImplM =
1490 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theMaterials, myPOA).in());
1491 if (aListImplS && aListImplT && aListImplKI && aListImplRI && aListImplM) {
1493 GEOM::GEOM_Object_ptr anObj =
1494 myBoolOp->MakePartition(aListImplS->GetList(), aListImplT->GetList(),
1495 aListImplKI->GetList(), aListImplRI->GetList(),
1496 theLimit, theRemoveWebs, aListImplM->GetList(),
1497 theKeepNonlimitShapes);
1498 endService( " GEOM_Superv_i::MakePartition" );
1501 endService( " GEOM_Superv_i::MakePartition" );
1505 //=============================================================================
1506 // MakeHalfPartition:
1507 //=============================================================================
1508 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHalfPartition (GEOM::GEOM_Object_ptr theShape,
1509 GEOM::GEOM_Object_ptr thePlane)
1511 beginService( " GEOM_Superv_i::MakeHalfPartition" );
1512 MESSAGE("GEOM_Superv_i::MakeHalfPartition");
1514 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeHalfPartition(theShape, thePlane);
1515 endService( " GEOM_Superv_i::MakeHalfPartition" );
1519 //============================== InsertOperations =============================
1520 //=============================================================================
1522 //=============================================================================
1523 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCopy (GEOM::GEOM_Object_ptr theOriginal)
1525 beginService( " GEOM_Superv_i::MakeCopy" );
1526 MESSAGE("GEOM_Superv_i::MakeCopy");
1528 GEOM::GEOM_Object_ptr anObj = myInsOp->MakeCopy(theOriginal);
1529 endService( " GEOM_Superv_i::MakeCopy" );
1533 //=============================================================================
1535 //=============================================================================
1536 void GEOM_Superv_i::Export (GEOM::GEOM_Object_ptr theObject,
1537 const char* theFileName,
1538 const char* theFormatName)
1540 beginService( " GEOM_Superv_i::Export" );
1541 MESSAGE("GEOM_Superv_i::Export");
1543 myInsOp->Export(theObject, theFileName, theFormatName);
1544 endService( " GEOM_Superv_i::Export" );
1547 //=============================================================================
1549 //=============================================================================
1550 GEOM::GEOM_Object_ptr GEOM_Superv_i::ImportFile (const char* theFileName,
1551 const char* theFormatName)
1553 beginService( " GEOM_Superv_i::ImportFile" );
1554 MESSAGE("GEOM_Superv_i::ImportFile");
1556 GEOM::GEOM_Object_ptr anObj = myInsOp->ImportFile(theFileName, theFormatName);
1557 endService( " GEOM_Superv_i::ImportFile" );
1561 //=============================================================================
1562 // ImportTranslators:
1563 //=============================================================================
1564 void GEOM_Superv_i::ImportTranslators (GEOM::string_array_out theFormats,
1565 GEOM::string_array_out thePatterns)
1567 beginService( " GEOM_Superv_i::ImportTranslators" );
1568 MESSAGE("GEOM_Superv_i::ImportTranslators");
1570 myInsOp->ImportTranslators(theFormats, thePatterns);
1571 endService( " GEOM_Superv_i::ImportTranslators" );
1574 //=============================================================================
1575 // ExportTranslators:
1576 //=============================================================================
1577 void GEOM_Superv_i::ExportTranslators (GEOM::string_array_out theFormats,
1578 GEOM::string_array_out thePatterns)
1580 beginService( " GEOM_Superv_i::ExportTranslators" );
1581 MESSAGE("GEOM_Superv_i::ExportTranslators");
1583 myInsOp->ExportTranslators(theFormats, thePatterns);
1584 endService( " GEOM_Superv_i::ExportTranslators" );
1587 //============================= TransformOperations ===========================
1588 //=============================================================================
1589 // TranslateTwoPoints:
1590 //=============================================================================
1591 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPoints (GEOM::GEOM_Object_ptr theObject,
1592 GEOM::GEOM_Object_ptr thePoint1,
1593 GEOM::GEOM_Object_ptr thePoint2)
1595 beginService( " GEOM_Superv_i::TranslateTwoPoints" );
1596 MESSAGE("GEOM_Superv_i::TranslateTwoPoints");
1598 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPoints(theObject, thePoint1, thePoint2);
1599 endService( " GEOM_Superv_i::TranslateTwoPoints" );
1603 //=============================================================================
1604 // TranslateTwoPointsCopy:
1605 //=============================================================================
1606 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPointsCopy (GEOM::GEOM_Object_ptr theObject,
1607 GEOM::GEOM_Object_ptr thePoint1,
1608 GEOM::GEOM_Object_ptr thePoint2)
1610 beginService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1611 MESSAGE("GEOM_Superv_i::TranslateTwoPointsCopy");
1613 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPointsCopy(theObject, thePoint1, thePoint2);
1614 endService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1618 //=============================================================================
1620 //=============================================================================
1621 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZ (GEOM::GEOM_Object_ptr theObject,
1622 CORBA::Double theDX,
1623 CORBA::Double theDY,
1624 CORBA::Double theDZ)
1626 beginService( " GEOM_Superv_i::TranslateDXDYDZ" );
1627 MESSAGE("GEOM_Superv_i::TranslateDXDYDZ");
1629 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZ(theObject, theDX, theDY, theDZ);
1630 endService( " GEOM_Superv_i::TranslateDXDYDZ" );
1634 //=============================================================================
1635 // TranslateDXDYDZCopy:
1636 //=============================================================================
1637 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZCopy (GEOM::GEOM_Object_ptr theObject,
1638 CORBA::Double theDX,
1639 CORBA::Double theDY,
1640 CORBA::Double theDZ)
1642 beginService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1643 MESSAGE("GEOM_Superv_i::TranslateDXDYDZCopy");
1645 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZCopy(theObject, theDX, theDY, theDZ);
1646 endService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1650 //=============================================================================
1652 //=============================================================================
1653 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVector (GEOM::GEOM_Object_ptr theObject,
1654 GEOM::GEOM_Object_ptr theVector)
1656 beginService( " GEOM_Superv_i::TranslateVector" );
1657 MESSAGE("GEOM_Superv_i::TranslateVector");
1659 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVector(theObject, theVector);
1660 endService( " GEOM_Superv_i::TranslateVector" );
1664 //=============================================================================
1665 // TranslateVectorCopy:
1666 //=============================================================================
1667 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorCopy (GEOM::GEOM_Object_ptr theObject,
1668 GEOM::GEOM_Object_ptr theVector)
1670 beginService( " GEOM_Superv_i::TranslateVectorCopy" );
1671 MESSAGE("GEOM_Superv_i::TranslateVectorCopy");
1673 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorCopy(theObject, theVector);
1674 endService( " GEOM_Superv_i::TranslateVectorCopy" );
1678 //=============================================================================
1679 // TranslateVectorDistance:
1680 //=============================================================================
1681 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject,
1682 GEOM::GEOM_Object_ptr theVector,
1683 CORBA::Double theDistance,
1684 CORBA::Boolean theCopy)
1686 beginService( " GEOM_Superv_i::TranslateVectorDistance" );
1687 MESSAGE("GEOM_Superv_i::TranslateVectorDistance");
1689 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorDistance(theObject,
1690 theVector, theDistance, theCopy);
1691 endService( " GEOM_Superv_i::TranslateVectorDistance" );
1695 //=============================================================================
1696 // MultiTranslate1D:
1697 //=============================================================================
1698 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate1D (GEOM::GEOM_Object_ptr theObject,
1699 GEOM::GEOM_Object_ptr theVector,
1700 CORBA::Double theStep,
1701 CORBA::Long theNbTimes)
1703 beginService( " GEOM_Superv_i::MultiTranslate1D" );
1704 MESSAGE("GEOM_Superv_i::MultiTranslate1D");
1706 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate1D(theObject, theVector, theStep, theNbTimes);
1707 endService( " GEOM_Superv_i::MultiTranslate1D" );
1711 //=============================================================================
1712 // MultiTranslate2D:
1713 //=============================================================================
1714 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate2D (GEOM::GEOM_Object_ptr theObject,
1715 GEOM::GEOM_Object_ptr theVector1,
1716 CORBA::Double theStep1,
1717 CORBA::Long theNbTimes1,
1718 GEOM::GEOM_Object_ptr theVector2,
1719 CORBA::Double theStep2,
1720 CORBA::Long theNbTimes2)
1722 beginService( " GEOM_Superv_i::MultiTranslate2D" );
1723 MESSAGE("GEOM_Superv_i::MultiTranslate2D");
1725 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate2D(theObject, theVector1, theStep1, theNbTimes1,
1726 theVector2, theStep2, theNbTimes2);
1727 endService( " GEOM_Superv_i::MultiTranslate2D" );
1731 //=============================================================================
1733 //=============================================================================
1734 GEOM::GEOM_Object_ptr GEOM_Superv_i::Rotate (GEOM::GEOM_Object_ptr theObject,
1735 GEOM::GEOM_Object_ptr theAxis,
1736 CORBA::Double theAngle)
1738 beginService( " GEOM_Superv_i::Rotate" );
1739 MESSAGE("GEOM_Superv_i::Rotate");
1741 GEOM::GEOM_Object_ptr anObj = myTransfOp->Rotate(theObject, theAxis, theAngle);
1742 endService( " GEOM_Superv_i::Rotate" );
1746 //=============================================================================
1748 //=============================================================================
1749 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateCopy (GEOM::GEOM_Object_ptr theObject,
1750 GEOM::GEOM_Object_ptr theAxis,
1751 CORBA::Double theAngle)
1753 beginService( " GEOM_Superv_i::RotateCopy" );
1754 MESSAGE("GEOM_Superv_i::RotateCopy");
1756 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateCopy(theObject, theAxis, theAngle);
1757 endService( " GEOM_Superv_i::RotateCopy" );
1760 //=============================================================================
1761 // RotateThreePoints:
1762 //=============================================================================
1763 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePoints (GEOM::GEOM_Object_ptr theObject,
1764 GEOM::GEOM_Object_ptr theCentPoint,
1765 GEOM::GEOM_Object_ptr thePoint1,
1766 GEOM::GEOM_Object_ptr thePoint2)
1768 beginService( " GEOM_Superv_i::RotateThreePoints" );
1769 MESSAGE("GEOM_Superv_i::RotateThreePoints");
1771 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePoints(theObject, theCentPoint, thePoint1, thePoint2);
1772 endService( " GEOM_Superv_i::RotateThreePoints" );
1776 //=============================================================================
1777 // RotateThreePointsCopy:
1778 //=============================================================================
1779 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePointsCopy (GEOM::GEOM_Object_ptr theObject,
1780 GEOM::GEOM_Object_ptr theCentPoint,
1781 GEOM::GEOM_Object_ptr thePoint1,
1782 GEOM::GEOM_Object_ptr thePoint2)
1784 beginService( " GEOM_Superv_i::RotateThreePointsCopy" );
1785 MESSAGE("GEOM_Superv_i::RotateThreePointsCopy");
1787 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePointsCopy(theObject, theCentPoint, thePoint1, thePoint2);
1788 endService( " GEOM_Superv_i::RotateThreePointsCopy" );
1792 //=============================================================================
1794 //=============================================================================
1795 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate1D (GEOM::GEOM_Object_ptr theObject,
1796 GEOM::GEOM_Object_ptr theAxis,
1797 CORBA::Long theNbTimes)
1799 beginService( " GEOM_Superv_i::MultiRotate1D" );
1800 MESSAGE("GEOM_Superv_i::MultiRotate1D");
1802 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate1D(theObject, theAxis, theNbTimes);
1803 endService( " GEOM_Superv_i::MultiRotate1D" );
1807 //=============================================================================
1809 //=============================================================================
1810 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate2D (GEOM::GEOM_Object_ptr theObject,
1811 GEOM::GEOM_Object_ptr theAxis,
1812 CORBA::Double theAngle,
1813 CORBA::Long theNbTimes1,
1814 CORBA::Double theStep,
1815 CORBA::Long theNbTimes2)
1817 beginService( " GEOM_Superv_i::MultiRotate2D" );
1818 MESSAGE("GEOM_Superv_i::MultiRotate2D");
1820 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate2D(theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2);
1821 endService( " GEOM_Superv_i::MultiRotate2D" );
1825 //=============================================================================
1827 //=============================================================================
1828 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlane (GEOM::GEOM_Object_ptr theObject,
1829 GEOM::GEOM_Object_ptr thePlane)
1831 beginService( " GEOM_Superv_i::MirrorPlane" );
1832 MESSAGE("GEOM_Superv_i::MirrorPlane");
1834 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlane(theObject, thePlane);
1835 endService( " GEOM_Superv_i::MirrorPlane" );
1839 //=============================================================================
1841 //=============================================================================
1842 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlaneCopy (GEOM::GEOM_Object_ptr theObject,
1843 GEOM::GEOM_Object_ptr thePlane)
1845 beginService( " GEOM_Superv_i::MirrorPlaneCopy" );
1846 MESSAGE("GEOM_Superv_i::MirrorPlaneCopy");
1848 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlaneCopy(theObject, thePlane);
1849 endService( " GEOM_Superv_i::MirrorPlaneCopy" );
1853 //=============================================================================
1855 //=============================================================================
1856 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxis (GEOM::GEOM_Object_ptr theObject,
1857 GEOM::GEOM_Object_ptr theAxis)
1859 beginService( " GEOM_Superv_i::MirrorAxis" );
1860 MESSAGE("GEOM_Superv_i::MirrorAxis");
1862 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxis(theObject, theAxis);
1863 endService( " GEOM_Superv_i::MirrorAxis" );
1867 //=============================================================================
1869 //=============================================================================
1870 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxisCopy (GEOM::GEOM_Object_ptr theObject,
1871 GEOM::GEOM_Object_ptr theAxis)
1873 beginService( " GEOM_Superv_i::MirrorAxisCopy" );
1874 MESSAGE("GEOM_Superv_i::MirrorAxisCopy");
1876 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxisCopy(theObject, theAxis);
1877 endService( " GEOM_Superv_i::MirrorAxisCopy" );
1881 //=============================================================================
1883 //=============================================================================
1884 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPoint (GEOM::GEOM_Object_ptr theObject,
1885 GEOM::GEOM_Object_ptr thePoint)
1887 beginService( " GEOM_Superv_i::MirrorPoint" );
1888 MESSAGE("GEOM_Superv_i::MirrorPoint");
1890 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPoint(theObject, thePoint);
1891 endService( " GEOM_Superv_i::MirrorPoint" );
1895 //=============================================================================
1897 //=============================================================================
1898 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPointCopy (GEOM::GEOM_Object_ptr theObject,
1899 GEOM::GEOM_Object_ptr thePoint)
1901 beginService( " GEOM_Superv_i::MirrorPoint" );
1902 MESSAGE("GEOM_Superv_i::MirrorPointCopy");
1904 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPointCopy(theObject, thePoint);
1905 endService( " GEOM_Superv_i::MirrorPoint" );
1909 //=============================================================================
1911 //=============================================================================
1912 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShape (GEOM::GEOM_Object_ptr theObject,
1913 CORBA::Double theOffset)
1915 beginService( " GEOM_Superv_i::OffsetShape" );
1916 MESSAGE("GEOM_Superv_i::OffsetShape");
1918 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShape(theObject, theOffset);
1919 endService( " GEOM_Superv_i::OffsetShape" );
1923 //=============================================================================
1925 //=============================================================================
1926 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShapeCopy (GEOM::GEOM_Object_ptr theObject,
1927 CORBA::Double theOffset)
1929 beginService( " GEOM_Superv_i::OffsetShapeCopy" );
1930 MESSAGE("GEOM_Superv_i::OffsetShapeCopy");
1932 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShapeCopy(theObject, theOffset);
1933 endService( " GEOM_Superv_i::OffsetShapeCopy" );
1937 //=============================================================================
1939 //=============================================================================
1940 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShape (GEOM::GEOM_Object_ptr theObject,
1941 GEOM::GEOM_Object_ptr thePoint,
1942 CORBA::Double theFactor)
1944 beginService( " GEOM_Superv_i::ScaleShape" );
1945 MESSAGE("GEOM_Superv_i::ScaleShape");
1947 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShape(theObject, thePoint, theFactor);
1948 endService( " GEOM_Superv_i::ScaleShape" );
1952 //=============================================================================
1954 //=============================================================================
1955 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeCopy (GEOM::GEOM_Object_ptr theObject,
1956 GEOM::GEOM_Object_ptr thePoint,
1957 CORBA::Double theFactor)
1959 beginService( " GEOM_Superv_i::ScaleShapeCopy" );
1960 MESSAGE("GEOM_Superv_i::ScaleShapeCopy");
1962 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeCopy(theObject, thePoint, theFactor);
1963 endService( " GEOM_Superv_i::ScaleShapeCopy" );
1967 //=============================================================================
1968 // ScaleShapeAlongAxes:
1969 //=============================================================================
1970 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject,
1971 GEOM::GEOM_Object_ptr thePoint,
1972 CORBA::Double theFactorX,
1973 CORBA::Double theFactorY,
1974 CORBA::Double theFactorZ)
1976 beginService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1977 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxes");
1979 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxes
1980 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
1981 endService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1985 //=============================================================================
1986 // ScaleShapeAlongAxesCopy:
1987 //=============================================================================
1988 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject,
1989 GEOM::GEOM_Object_ptr thePoint,
1990 CORBA::Double theFactorX,
1991 CORBA::Double theFactorY,
1992 CORBA::Double theFactorZ)
1994 beginService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
1995 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxesCopy");
1997 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxesCopy
1998 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
1999 endService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
2003 //=============================================================================
2005 //=============================================================================
2006 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShape (GEOM::GEOM_Object_ptr theObject,
2007 GEOM::GEOM_Object_ptr theStartLCS,
2008 GEOM::GEOM_Object_ptr theEndLCS)
2010 beginService( " GEOM_Superv_i::PositionShape" );
2011 MESSAGE("GEOM_Superv_i::PositionShape");
2013 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShape(theObject, theStartLCS, theEndLCS);
2014 endService( " GEOM_Superv_i::PositionShape" );
2018 //=============================================================================
2019 // PositionShapeCopy:
2020 //=============================================================================
2021 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShapeCopy (GEOM::GEOM_Object_ptr theObject,
2022 GEOM::GEOM_Object_ptr theStartLCS,
2023 GEOM::GEOM_Object_ptr theEndLCS)
2025 beginService( " GEOM_Superv_i::PositionShapeCopy" );
2026 MESSAGE("GEOM_Superv_i::PositionShapeCopy");
2028 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShapeCopy(theObject, theStartLCS, theEndLCS);
2029 endService( " GEOM_Superv_i::PositionShapeCopy" );
2033 //=============================================================================
2034 // PositionAlongPath:
2035 //=============================================================================
2036 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionAlongPath (GEOM::GEOM_Object_ptr theObject,
2037 GEOM::GEOM_Object_ptr thePath,
2038 CORBA::Double theDistance,
2039 CORBA::Boolean theCopy,
2040 CORBA::Boolean theReverse)
2042 beginService( " GEOM_Superv_i::PositionAlongPath" );
2043 MESSAGE("GEOM_Superv_i::PositionAlongPath");
2045 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionAlongPath(theObject, thePath, theDistance, theCopy, theReverse);
2046 endService( " GEOM_Superv_i::PositionAlongPath" );
2050 //=============================== ShapesOperations ============================
2051 //=============================================================================
2053 //=============================================================================
2054 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdge (GEOM::GEOM_Object_ptr thePnt1,
2055 GEOM::GEOM_Object_ptr thePnt2)
2057 beginService( " GEOM_Superv_i::MakeEdge" );
2058 MESSAGE("GEOM_Superv_i::MakeEdge");
2060 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeEdge(thePnt1, thePnt2);
2061 endService( " GEOM_Superv_i::MakeEdge" );
2065 //=============================================================================
2066 // MakeEdgeOnCurveByLength:
2067 //=============================================================================
2068 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdgeOnCurveByLength (GEOM::GEOM_Object_ptr theRefCurve,
2069 CORBA::Double theLength,
2070 GEOM::GEOM_Object_ptr theStartPoint)
2072 beginService( " GEOM_Superv_i::MakeEdgeOnCurveByLength" );
2073 MESSAGE("GEOM_Superv_i::MakeEdgeOnCurveByLength");
2075 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeEdgeOnCurveByLength(theRefCurve, theLength, theStartPoint);
2076 endService( " GEOM_Superv_i::MakeEdgeOnCurveByLength" );
2080 //=============================================================================
2082 //=============================================================================
2083 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeWire (GEOM::GEOM_List_ptr theEdgesAndWires,
2084 CORBA::Double theTolerance)
2086 beginService( " GEOM_Superv_i::MakeWire" );
2087 MESSAGE("GEOM_Superv_i::MakeWire");
2088 if (GEOM_List_i<GEOM::ListOfGO>* aListImplEW =
2089 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theEdgesAndWires, myPOA).in())) {
2091 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeWire(aListImplEW->GetList(), theTolerance);
2092 endService( " GEOM_Superv_i::MakeWire" );
2095 endService( " GEOM_Superv_i::MakeWire" );
2099 //=============================================================================
2101 //=============================================================================
2102 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFace (GEOM::GEOM_Object_ptr theWire,
2103 CORBA::Boolean isPlanarWanted)
2105 beginService( " GEOM_Superv_i::MakeFace" );
2106 MESSAGE("GEOM_Superv_i::MakeFace");
2108 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFace(theWire, isPlanarWanted);
2109 endService( " GEOM_Superv_i::MakeFace" );
2113 //=============================================================================
2115 //=============================================================================
2116 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceWires (GEOM::GEOM_List_ptr theWires,
2117 CORBA::Boolean isPlanarWanted)
2119 beginService( " GEOM_Superv_i::MakeFaceWires" );
2120 MESSAGE("GEOM_Superv_i::MakeFaceWires");
2121 if (GEOM_List_i<GEOM::ListOfGO>* aListImplW =
2122 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theWires, myPOA).in())) {
2124 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFaceWires(aListImplW->GetList(), isPlanarWanted);
2125 endService( " GEOM_Superv_i::MakeFaceWires" );
2128 endService( " GEOM_Superv_i::MakeFaceWires" );
2132 //=============================================================================
2134 //=============================================================================
2135 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeShell (GEOM::GEOM_List_ptr theFacesAndShells)
2137 beginService( " GEOM_Superv_i::MakeShell" );
2138 MESSAGE("GEOM_Superv_i::MakeShell");
2139 if (GEOM_List_i<GEOM::ListOfGO>* aListImplFS =
2140 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theFacesAndShells, myPOA).in())) {
2142 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeShell(aListImplFS->GetList());
2143 endService( " GEOM_Superv_i::MakeShell" );
2146 endService( " GEOM_Superv_i::MakeShell" );
2150 //=============================================================================
2152 //=============================================================================
2153 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShell (GEOM::GEOM_Object_ptr theShell)
2155 beginService( " GEOM_Superv_i::MakeSolidShell" );
2156 MESSAGE("GEOM_Superv_i::MakeSolidShell");
2158 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShell(theShell);
2159 endService( " GEOM_Superv_i::MakeSolidShell" );
2163 //=============================================================================
2165 //=============================================================================
2166 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShells (GEOM::GEOM_List_ptr theShells)
2168 beginService( " GEOM_Superv_i::MakeSolidShells" );
2169 MESSAGE("GEOM_Superv_i::MakeSolidShells");
2170 if (GEOM_List_i<GEOM::ListOfGO>* aListImplS =
2171 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShells, myPOA).in())) {
2173 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShells(aListImplS->GetList());
2174 endService( " GEOM_Superv_i::MakeSolidShells" );
2177 endService( " GEOM_Superv_i::MakeSolidShells" );
2181 //=============================================================================
2183 //=============================================================================
2184 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCompound (GEOM::GEOM_List_ptr theShapes)
2186 beginService( " GEOM_Superv_i::MakeCompound" );
2187 MESSAGE("GEOM_Superv_i::MakeCompound");
2188 if (GEOM_List_i<GEOM::ListOfGO>* aListImpl =
2189 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in())) {
2191 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeCompound(aListImpl->GetList());
2192 endService( " GEOM_Superv_i::MakeCompound" );
2195 endService( " GEOM_Superv_i::MakeCompound" );
2199 //=============================================================================
2201 //=============================================================================
2202 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFaces (GEOM::GEOM_Object_ptr theShape,
2203 CORBA::Double theTolerance,
2204 CORBA::Boolean doKeepNonSolids)
2206 beginService( " GEOM_Superv_i::MakeGlueFaces" );
2207 MESSAGE("GEOM_Superv_i::MakeGlueFaces");
2209 GEOM::GEOM_Object_ptr anObj =
2210 myShapesOp->MakeGlueFaces(theShape, theTolerance, doKeepNonSolids);
2211 endService( " GEOM_Superv_i::MakeGlueFaces" );
2215 //=============================================================================
2217 //=============================================================================
2218 GEOM::GEOM_List_ptr GEOM_Superv_i::GetGlueFaces (GEOM::GEOM_Object_ptr theShape,
2219 CORBA::Double theTolerance)
2221 beginService( " GEOM_Superv_i::GetGlueFaces" );
2222 MESSAGE("GEOM_Superv_i::GetGlueFaces");
2224 GEOM::ListOfGO* aList = myShapesOp->GetGlueFaces(theShape, theTolerance);
2225 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2226 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2227 endService( " GEOM_Superv_i::GetGlueFaces" );
2228 return aListPtr->_this();
2231 //=============================================================================
2232 // MakeGlueFacesByList:
2233 //=============================================================================
2234 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFacesByList (GEOM::GEOM_Object_ptr theShape,
2235 CORBA::Double theTolerance,
2236 const GEOM::ListOfGO& theFaces,
2237 CORBA::Boolean doKeepNonSolids,
2238 CORBA::Boolean doGlueAllEdges)
2240 beginService( " GEOM_Superv_i::MakeGlueFacesByList" );
2241 MESSAGE("GEOM_Superv_i::MakeGlueFacesByList");
2243 GEOM::GEOM_Object_ptr anObj =
2244 myShapesOp->MakeGlueFacesByList(theShape, theTolerance, theFaces,
2245 doKeepNonSolids, doGlueAllEdges);
2246 endService( " GEOM_Superv_i::MakeGlueFacesByList" );
2250 //=============================================================================
2252 //=============================================================================
2253 GEOM::GEOM_List_ptr GEOM_Superv_i::MakeExplode (GEOM::GEOM_Object_ptr theShape,
2254 CORBA::Long theShapeType,
2255 CORBA::Boolean isSorted)
2257 beginService( " GEOM_Superv_i::MakeExplode" );
2258 MESSAGE("GEOM_Superv_i::MakeExplode");
2261 GEOM::ListOfGO* aList = myShapesOp->MakeExplode(theShape, theShapeType, isSorted);
2262 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2263 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2264 endService( " GEOM_Superv_i::MakeExplode" );
2265 return aListPtr->_this();
2268 //=============================================================================
2270 //=============================================================================
2271 CORBA::Long GEOM_Superv_i::NumberOfFaces (GEOM::GEOM_Object_ptr theShape)
2273 beginService( " GEOM_Superv_i::NumberOfFaces" );
2274 MESSAGE("GEOM_Superv_i::NumberOfFaces");
2276 CORBA::Long aRes = myShapesOp->NumberOfFaces(theShape);
2277 endService( " GEOM_Superv_i::NumberOfFaces" );
2281 //=============================================================================
2283 //=============================================================================
2284 CORBA::Long GEOM_Superv_i::NumberOfEdges (GEOM::GEOM_Object_ptr theShape)
2286 beginService( " GEOM_Superv_i::NumberOfEdges" );
2287 MESSAGE("GEOM_Superv_i::NumberOfEdges");
2289 CORBA::Long aRes = myShapesOp->NumberOfEdges(theShape);
2290 endService( " GEOM_Superv_i::NumberOfEdges" );
2295 //=============================================================================
2296 // ChangeOrientation:
2297 //=============================================================================
2298 GEOM::GEOM_Object_ptr GEOM_Superv_i::ChangeOrientation (GEOM::GEOM_Object_ptr theShape)
2300 beginService( " GEOM_Superv_i::ChangeOrientation" );
2301 MESSAGE("GEOM_Superv_i::ChangeOrientation");
2303 GEOM::GEOM_Object_ptr anObj = myShapesOp->ChangeOrientation(theShape);
2304 endService( " GEOM_Superv_i::ChangeOrientation" );
2309 //=============================================================================
2310 // GetShapesOnShape:
2311 //=============================================================================
2312 GEOM::GEOM_List_ptr GEOM_Superv_i::GetShapesOnShape
2313 (GEOM::GEOM_Object_ptr theCheckShape,
2314 GEOM::GEOM_Object_ptr theShape,
2315 CORBA::Short theShapeType,
2316 GEOM::shape_state theState)
2318 beginService( " GEOM_Superv_i::GetShapesOnShape" );
2319 MESSAGE("GEOM_Superv_i::GetShapesOnShape");
2321 GEOM::ListOfGO* aList =
2322 myShapesOp->GetShapesOnShape(theCheckShape, theShape, theShapeType, theState);
2323 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2324 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2325 endService( " GEOM_Superv_i::GetShapesOnShape" );
2326 return aListPtr->_this();
2330 //=============================================================================
2331 // GetShapesOnShapeAsCompound:
2332 //=============================================================================
2333 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetShapesOnShapeAsCompound
2334 (GEOM::GEOM_Object_ptr theCheckShape,
2335 GEOM::GEOM_Object_ptr theShape,
2336 CORBA::Short theShapeType,
2337 GEOM::shape_state theState)
2339 beginService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2340 MESSAGE("GEOM_Superv_i::GetShapesOnShapeAsCompound");
2342 GEOM::GEOM_Object_ptr anObj =
2343 myShapesOp->GetShapesOnShapeAsCompound(theCheckShape, theShape, theShapeType, theState);
2344 endService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2349 //=============================== BlocksOperations ============================
2350 //=============================================================================
2351 // MakeQuad4Vertices:
2352 //=============================================================================
2353 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad4Vertices (GEOM::GEOM_Object_ptr thePnt1,
2354 GEOM::GEOM_Object_ptr thePnt2,
2355 GEOM::GEOM_Object_ptr thePnt3,
2356 GEOM::GEOM_Object_ptr thePnt4)
2358 beginService( " GEOM_Superv_i::MakeQuad4Vertices" );
2359 MESSAGE("GEOM_Superv_i::MakeQuad4Vertices");
2361 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad4Vertices(thePnt1, thePnt2, thePnt3, thePnt4);
2362 endService( " GEOM_Superv_i::MakeQuad4Vertices" );
2366 //=============================================================================
2368 //=============================================================================
2369 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad (GEOM::GEOM_Object_ptr theEdge1,
2370 GEOM::GEOM_Object_ptr theEdge2,
2371 GEOM::GEOM_Object_ptr theEdge3,
2372 GEOM::GEOM_Object_ptr theEdge4)
2374 beginService( " GEOM_Superv_i::MakeQuad" );
2375 MESSAGE("GEOM_Superv_i::MakeQuad");
2377 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad(theEdge1, theEdge2, theEdge3, theEdge4);
2378 endService( " GEOM_Superv_i::MakeQuad" );
2382 //=============================================================================
2384 //=============================================================================
2385 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad2Edges (GEOM::GEOM_Object_ptr theEdge1,
2386 GEOM::GEOM_Object_ptr theEdge2)
2388 beginService( " GEOM_Superv_i::MakeQuad2Edges" );
2389 MESSAGE("GEOM_Superv_i::MakeQuad2Edges");
2391 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad2Edges(theEdge1, theEdge2);
2392 endService( " GEOM_Superv_i::MakeQuad2Edges" );
2396 //=============================================================================
2398 //=============================================================================
2399 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa (GEOM::GEOM_Object_ptr theFace1,
2400 GEOM::GEOM_Object_ptr theFace2,
2401 GEOM::GEOM_Object_ptr theFace3,
2402 GEOM::GEOM_Object_ptr theFace4,
2403 GEOM::GEOM_Object_ptr theFace5,
2404 GEOM::GEOM_Object_ptr theFace6)
2406 beginService( " GEOM_Superv_i::MakeHexa" );
2407 MESSAGE("GEOM_Superv_i::MakeHexa");
2409 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa(theFace1, theFace2, theFace3, theFace4, theFace5, theFace6);
2410 endService( " GEOM_Superv_i::MakeHexa" );
2414 //=============================================================================
2416 //=============================================================================
2417 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa2Faces (GEOM::GEOM_Object_ptr theFace1,
2418 GEOM::GEOM_Object_ptr theFace2)
2420 beginService( " GEOM_Superv_i::MakeHexa2Faces" );
2421 MESSAGE("GEOM_Superv_i::MakeHexa2Faces");
2423 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa2Faces(theFace1, theFace2);
2424 endService( " GEOM_Superv_i::MakeHexa2Faces" );
2428 //=============================================================================
2430 //=============================================================================
2431 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetPoint (GEOM::GEOM_Object_ptr theShape,
2435 CORBA::Double theEpsilon)
2437 beginService( " GEOM_Superv_i::GetPoint" );
2438 MESSAGE("GEOM_Superv_i::GetPoint");
2440 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetPoint(theShape, theX, theY, theZ, theEpsilon);
2441 endService( " GEOM_Superv_i::GetPoint" );
2445 //=============================================================================
2447 //=============================================================================
2448 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdge (GEOM::GEOM_Object_ptr theShape,
2449 GEOM::GEOM_Object_ptr thePoint1,
2450 GEOM::GEOM_Object_ptr thePoint2)
2452 beginService( " GEOM_Superv_i::GetEdge" );
2453 MESSAGE("GEOM_Superv_i::GetEdge");
2455 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdge(theShape, thePoint1, thePoint2);
2456 endService( " GEOM_Superv_i::GetEdge" );
2460 //=============================================================================
2461 // GetEdgeNearPoint:
2462 //=============================================================================
2463 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdgeNearPoint (GEOM::GEOM_Object_ptr theShape,
2464 GEOM::GEOM_Object_ptr thePoint)
2466 beginService( " GEOM_Superv_i::GetEdgeNearPoint" );
2467 MESSAGE("GEOM_Superv_i::GetEdgeNearPoint");
2469 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdgeNearPoint(theShape, thePoint);
2470 endService( " GEOM_Superv_i::GetEdgeNearPoint" );
2474 //=============================================================================
2476 //=============================================================================
2477 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByPoints (GEOM::GEOM_Object_ptr theShape,
2478 GEOM::GEOM_Object_ptr thePoint1,
2479 GEOM::GEOM_Object_ptr thePoint2,
2480 GEOM::GEOM_Object_ptr thePoint3,
2481 GEOM::GEOM_Object_ptr thePoint4)
2483 beginService( " GEOM_Superv_i::GetFaceByPoints" );
2484 MESSAGE("GEOM_Superv_i::GetFaceByPoints");
2486 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByPoints(theShape, thePoint1, thePoint2, thePoint3, thePoint4);
2487 endService( " GEOM_Superv_i::GetFaceByPoints" );
2491 //=============================================================================
2493 //=============================================================================
2494 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByEdges (GEOM::GEOM_Object_ptr theShape,
2495 GEOM::GEOM_Object_ptr theEdge1,
2496 GEOM::GEOM_Object_ptr theEdge2)
2498 beginService( " GEOM_Superv_i::GetFaceByEdges" );
2499 MESSAGE("GEOM_Superv_i::GetFaceByEdges");
2501 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByEdges(theShape, theEdge1, theEdge2);
2502 endService( " GEOM_Superv_i::GetFaceByEdges" );
2506 //=============================================================================
2508 //=============================================================================
2509 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetOppositeFace (GEOM::GEOM_Object_ptr theBlock,
2510 GEOM::GEOM_Object_ptr theFace)
2512 beginService( " GEOM_Superv_i::GetOppositeFace" );
2513 MESSAGE("GEOM_Superv_i::GetOppositeFace");
2515 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetOppositeFace(theBlock, theFace);
2516 endService( " GEOM_Superv_i::GetOppositeFace" );
2520 //=============================================================================
2521 // GetFaceNearPoint:
2522 //=============================================================================
2523 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceNearPoint (GEOM::GEOM_Object_ptr theShape,
2524 GEOM::GEOM_Object_ptr thePoint)
2526 beginService( " GEOM_Superv_i::GetFaceNearPoint" );
2527 MESSAGE("GEOM_Superv_i::GetFaceNearPoint");
2529 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceNearPoint(theShape, thePoint);
2530 endService( " GEOM_Superv_i::GetFaceNearPoint" );
2534 //=============================================================================
2535 // GetFaceByNormale:
2536 //=============================================================================
2537 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByNormale (GEOM::GEOM_Object_ptr theBlock,
2538 GEOM::GEOM_Object_ptr theVector)
2540 beginService( " GEOM_Superv_i::GetFaceByNormale" );
2541 MESSAGE("GEOM_Superv_i::GetFaceByNormale");
2543 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByNormale(theBlock, theVector);
2544 endService( " GEOM_Superv_i::GetFaceByNormale" );
2548 //=============================================================================
2549 // IsCompoundOfBlocks:
2550 //=============================================================================
2551 CORBA::Boolean GEOM_Superv_i::IsCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2552 CORBA::Long theMinNbFaces,
2553 CORBA::Long theMaxNbFaces,
2554 CORBA::Long& theNbBlocks)
2556 beginService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2557 MESSAGE("GEOM_Superv_i::IsCompoundOfBlocks");
2559 CORBA::Boolean aRes = myBlocksOp->IsCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces, theNbBlocks);
2560 endService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2564 //=============================================================================
2565 // CheckCompoundOfBlocks:
2566 //=============================================================================
2567 CORBA::Boolean GEOM_Superv_i::CheckCompoundOfBlocks
2568 (GEOM::GEOM_Object_ptr theCompound,
2569 GEOM::GEOM_IBlocksOperations::BCErrors_out theErrors)
2571 beginService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2572 MESSAGE("GEOM_Superv_i::CheckCompoundOfBlocks");
2574 CORBA::Boolean aRes = myBlocksOp->CheckCompoundOfBlocks(theCompound, theErrors);
2575 endService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2579 //=============================================================================
2581 //=============================================================================
2582 char* GEOM_Superv_i::PrintBCErrors (GEOM::GEOM_Object_ptr theCompound,
2583 const GEOM::GEOM_IBlocksOperations::BCErrors& theErrors)
2585 beginService( " GEOM_Superv_i::PrintBCErrors" );
2586 MESSAGE("GEOM_Superv_i::PrintBCErrors");
2588 char* anErrors = myBlocksOp->PrintBCErrors(theCompound, theErrors);
2589 endService( " GEOM_Superv_i::PrintBCErrors" );
2593 //=============================================================================
2594 // ExplodeCompoundOfBlocks:
2595 //=============================================================================
2596 GEOM::GEOM_List_ptr GEOM_Superv_i::ExplodeCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2597 CORBA::Long theMinNbFaces,
2598 CORBA::Long theMaxNbFaces)
2600 beginService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2601 MESSAGE("GEOM_Superv_i::ExplodeCompoundOfBlocks");
2603 GEOM::ListOfGO* aBlocks = myBlocksOp->ExplodeCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces);
2604 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2605 endService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2606 return aListPtr->_this();
2609 //=============================================================================
2610 // GetBlockNearPoint:
2611 //=============================================================================
2612 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockNearPoint (GEOM::GEOM_Object_ptr theCompound,
2613 GEOM::GEOM_Object_ptr thePoint)
2615 beginService( " GEOM_Superv_i::GetBlockNearPoint" );
2616 MESSAGE("GEOM_Superv_i::GetBlockNearPoint");
2618 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockNearPoint(theCompound, thePoint);
2619 endService( " GEOM_Superv_i::GetBlockNearPoint" );
2623 //=============================================================================
2625 //=============================================================================
2626 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockByParts (GEOM::GEOM_Object_ptr theCompound,
2627 GEOM::GEOM_List_ptr theParts)
2629 beginService( " GEOM_Superv_i::GetBlockByParts" );
2630 MESSAGE("GEOM_Superv_i::GetBlockByParts");
2631 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2632 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2634 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockByParts(theCompound, aListImplP->GetList());
2635 endService( " GEOM_Superv_i::GetBlockByParts" );
2638 endService( " GEOM_Superv_i::GetBlockByParts" );
2642 //=============================================================================
2643 // GetBlocksByParts:
2644 //=============================================================================
2645 GEOM::GEOM_List_ptr GEOM_Superv_i::GetBlocksByParts (GEOM::GEOM_Object_ptr theCompound,
2646 GEOM::GEOM_List_ptr theParts)
2648 beginService( " GEOM_Superv_i::GetBlocksByParts" );
2649 MESSAGE("GEOM_Superv_i::GetBlocksByParts");
2650 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2651 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2654 GEOM::ListOfGO* aBlocks = myBlocksOp->GetBlocksByParts(theCompound, aListImplP->GetList());
2655 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2656 endService( " GEOM_Superv_i::GetBlocksByParts" );
2657 return aListPtr->_this();
2659 endService( " GEOM_Superv_i::GetBlocksByParts" );
2663 //=============================================================================
2664 // MakeMultiTransformation1D:
2665 //=============================================================================
2666 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation1D (GEOM::GEOM_Object_ptr theBlock,
2667 CORBA::Long theDirFace1,
2668 CORBA::Long theDirFace2,
2669 CORBA::Long theNbTimes)
2671 beginService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2672 MESSAGE("GEOM_Superv_i::MakeMultiTransformation1D");
2674 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation1D(theBlock, theDirFace1, theDirFace2, theNbTimes);
2675 endService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2679 //=============================================================================
2680 // MakeMultiTransformation2D:
2681 //=============================================================================
2682 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation2D
2683 (GEOM::GEOM_Object_ptr theBlock,
2684 CORBA::Long theDirFace1U,
2685 CORBA::Long theDirFace2U,
2686 CORBA::Long theNbTimesU,
2687 CORBA::Long theDirFace1V,
2688 CORBA::Long theDirFace2V,
2689 CORBA::Long theNbTimesV)
2691 beginService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2692 MESSAGE("GEOM_Superv_i::MakeMultiTransformation2D");
2694 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation2D(theBlock,
2695 theDirFace1U, theDirFace2U, theNbTimesU,
2696 theDirFace1V, theDirFace2V, theNbTimesV);
2697 endService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2701 //=============================== CurvesOperations ============================
2702 //=============================================================================
2703 // MakeCirclePntVecR:
2704 //=============================================================================
2705 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCirclePntVecR (GEOM::GEOM_Object_ptr theCenter,
2706 GEOM::GEOM_Object_ptr theVector,
2709 beginService( " GEOM_Superv_i::MakeCirclePntVecR" );
2710 MESSAGE("GEOM_Superv_i::MakeCirclePntVecR");
2712 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCirclePntVecR(theCenter, theVector, theR);
2713 endService( " GEOM_Superv_i::MakeCirclePntVecR" );
2717 //=============================================================================
2718 // MakeCircleThreePnt:
2719 //=============================================================================
2720 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleThreePnt (GEOM::GEOM_Object_ptr thePnt1,
2721 GEOM::GEOM_Object_ptr thePnt2,
2722 GEOM::GEOM_Object_ptr thePnt3)
2724 beginService( " GEOM_Superv_i::MakeCircleThreePnt" );
2725 MESSAGE("GEOM_Superv_i::MakeCircleThreePnt");
2727 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleThreePnt(thePnt1, thePnt2, thePnt3);
2728 endService( " GEOM_Superv_i::MakeCircleThreePnt" );
2731 //=============================================================================
2732 // MakeCircleCenter2Pnt:
2733 //=============================================================================
2734 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleCenter2Pnt (GEOM::GEOM_Object_ptr thePnt1,
2735 GEOM::GEOM_Object_ptr thePnt2,
2736 GEOM::GEOM_Object_ptr thePnt3)
2738 beginService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2739 MESSAGE("GEOM_Superv_i::MakeCircleCenter2Pnt");
2741 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleCenter2Pnt(thePnt1, thePnt2, thePnt3);
2742 endService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2746 //=============================================================================
2748 //=============================================================================
2749 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipse (GEOM::GEOM_Object_ptr theCenter,
2750 GEOM::GEOM_Object_ptr theVector,
2751 CORBA::Double theRMajor,
2752 CORBA::Double theRMinor)
2754 beginService( " GEOM_Superv_i::MakeEllipse" );
2755 MESSAGE("GEOM_Superv_i::MakeEllipse");
2757 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipse(theCenter, theVector, theRMajor, theRMinor);
2758 endService( " GEOM_Superv_i::MakeEllipse" );
2762 //=============================================================================
2764 //=============================================================================
2765 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipseVec (GEOM::GEOM_Object_ptr theCenter,
2766 GEOM::GEOM_Object_ptr theVector,
2767 CORBA::Double theRMajor,
2768 CORBA::Double theRMinor,
2769 GEOM::GEOM_Object_ptr theVectorMajor)
2771 beginService( " GEOM_Superv_i::MakeEllipseVec" );
2772 MESSAGE("GEOM_Superv_i::MakeEllipseVec");
2774 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipseVec(theCenter, theVector, theRMajor, theRMinor, theVectorMajor);
2775 endService( " GEOM_Superv_i::MakeEllipseVec" );
2779 //=============================================================================
2781 //=============================================================================
2782 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArc (GEOM::GEOM_Object_ptr thePnt1,
2783 GEOM::GEOM_Object_ptr thePnt2,
2784 GEOM::GEOM_Object_ptr thePnt3)
2786 beginService( " GEOM_Superv_i::MakeArc" );
2787 MESSAGE("GEOM_Superv_i::MakeArc");
2789 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArc(thePnt1, thePnt2, thePnt3);
2790 endService( " GEOM_Superv_i::MakeArc" );
2794 //=============================================================================
2796 //=============================================================================
2797 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcCenter (GEOM::GEOM_Object_ptr theCenter,
2798 GEOM::GEOM_Object_ptr thePnt1,
2799 GEOM::GEOM_Object_ptr thePnt2,
2800 CORBA::Boolean theSense)
2802 beginService( " GEOM_Superv_i::MakeArcCenter" );
2803 MESSAGE("GEOM_Superv_i::MakeArcCenter");
2805 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcCenter(theCenter, thePnt1, thePnt2,theSense);
2806 endService( " GEOM_Superv_i::MakeArcCenter" );
2810 //=============================================================================
2811 // MakeArcOfEllipse:
2812 //=============================================================================
2813 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1,
2814 GEOM::GEOM_Object_ptr thePnt2,
2815 GEOM::GEOM_Object_ptr thePnt3)
2817 beginService( " GEOM_Superv_i::MakeArcOfEllipse" );
2818 MESSAGE("GEOM_Superv_i::MakeArcOfEllipse");
2820 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcOfEllipse(thePnt1, thePnt2, thePnt3);
2821 endService( " GEOM_Superv_i::MakeArcOfEllipse" );
2825 //=============================================================================
2827 //=============================================================================
2828 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePolyline (GEOM::GEOM_List_ptr thePoints,
2829 CORBA::Boolean theIsClosed)
2831 beginService( " GEOM_Superv_i::MakePolyline" );
2832 MESSAGE("GEOM_Superv_i::MakePolyline");
2833 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2834 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2836 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakePolyline(aListImplP->GetList(), theIsClosed);
2837 endService( " GEOM_Superv_i::MakePolyline" );
2840 endService( " GEOM_Superv_i::MakePolyline" );
2844 //=============================================================================
2845 // MakeSplineBezier:
2846 //=============================================================================
2847 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineBezier (GEOM::GEOM_List_ptr thePoints,
2848 CORBA::Boolean theIsClosed)
2850 beginService( " GEOM_Superv_i::MakeSplineBezier" );
2851 MESSAGE("GEOM_Superv_i::MakeSplineBezier");
2852 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2853 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2855 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineBezier(aListImplP->GetList(), theIsClosed);
2856 endService( " GEOM_Superv_i::MakeSplineBezier" );
2859 endService( " GEOM_Superv_i::MakeSplineBezier" );
2863 //=============================================================================
2864 // MakeSplineInterpolation:
2865 //=============================================================================
2866 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints,
2867 CORBA::Boolean theIsClosed,
2868 CORBA::Boolean theDoReordering)
2870 beginService( " GEOM_Superv_i::MakeSplineInterpolation" );
2871 MESSAGE("GEOM_Superv_i::MakeSplineInterpolation");
2872 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2873 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2875 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineInterpolation(aListImplP->GetList(), theIsClosed, theDoReordering);
2876 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2879 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2883 //=============================================================================
2885 //=============================================================================
2886 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSketcher (const char* theCommand,
2887 GEOM::GEOM_List_ptr theWorkingPlane)
2889 beginService( " GEOM_Superv_i::MakeSketcher" );
2890 MESSAGE("GEOM_Superv_i::MakeSketcher");
2891 if (GEOM_List_i<GEOM::ListOfDouble>* aListImplWP =
2892 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theWorkingPlane, myPOA).in())) {
2894 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSketcher(theCommand, aListImplWP->GetList());
2895 endService( " GEOM_Superv_i::MakeSketcher" );
2898 endService( " GEOM_Superv_i::MakeSketcher" );
2902 //=============================================================================
2904 //=============================================================================
2905 GEOM::GEOM_Object_ptr GEOM_Superv_i::Make3DSketcher ( GEOM::GEOM_List_ptr theCoordinates)
2907 beginService( " GEOM_Superv_i::Make3DSketcher" );
2908 MESSAGE("GEOM_Superv_i::Make3DSketcher");
2909 if (GEOM_List_i<GEOM::ListOfDouble>* aListImpl =
2910 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theCoordinates, myPOA).in())) {
2912 GEOM::GEOM_Object_ptr anObj = myCurvesOp->Make3DSketcher(aListImpl->GetList());
2913 endService( " GEOM_Superv_i::Make3DSketcher" );
2916 endService( " GEOM_Superv_i::Make3DSketcher" );
2920 //=============================== LocalOperations =============================
2921 //=============================================================================
2923 //=============================================================================
2924 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletAll (GEOM::GEOM_Object_ptr theShape,
2927 beginService( " GEOM_Superv_i::MakeFilletAll" );
2928 MESSAGE("GEOM_Superv_i::MakeFilletAllMakeSketcher");
2930 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletAll(theShape, theR);
2931 endService( " GEOM_Superv_i::MakeFilletAll" );
2935 //=============================================================================
2937 //=============================================================================
2938 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdges (GEOM::GEOM_Object_ptr theShape,
2940 GEOM::GEOM_List_ptr theEdges)
2942 beginService( " GEOM_Superv_i::MakeFilletEdges" );
2943 MESSAGE("GEOM_Superv_i::MakeFilletEdges");
2944 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2945 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2947 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdges(theShape, theR, aListImplE->GetList());
2948 endService( " GEOM_Superv_i::MakeFilletEdges" );
2951 endService( " GEOM_Superv_i::MakeFilletEdges" );
2955 //=============================================================================
2956 // MakeFilletEdges R1 R2:
2957 //=============================================================================
2958 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdgesR1R2 (GEOM::GEOM_Object_ptr theShape,
2959 CORBA::Double theR1,
2960 CORBA::Double theR2,
2961 GEOM::GEOM_List_ptr theEdges)
2963 beginService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2964 MESSAGE("GEOM_Superv_i::MakeFilletEdgesR1R2");
2965 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2966 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2968 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdgesR1R2(theShape, theR1,
2969 theR2, aListImplE->GetList());
2970 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2973 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2977 //=============================================================================
2979 //=============================================================================
2980 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFaces (GEOM::GEOM_Object_ptr theShape,
2982 GEOM::GEOM_List_ptr theFaces)
2984 beginService( " GEOM_Superv_i::MakeFilletFaces" );
2985 MESSAGE("GEOM_Superv_i::MakeFilletFaces");
2986 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
2987 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
2989 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFaces(theShape, theR, aListImplF->GetList());
2990 endService( " GEOM_Superv_i::MakeFilletFaces" );
2993 endService( " GEOM_Superv_i::MakeFilletFaces" );
2997 //=============================================================================
2998 // MakeFilletFaces R1 R2:
2999 //=============================================================================
3000 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFacesR1R2 (GEOM::GEOM_Object_ptr theShape,
3001 CORBA::Double theR1,
3002 CORBA::Double theR2,
3003 GEOM::GEOM_List_ptr theFaces)
3005 beginService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
3006 MESSAGE("GEOM_Superv_i::MakeFilletFacesR1R2");
3007 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3008 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3010 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFacesR1R2(theShape, theR1, theR2,
3011 aListImplF->GetList());
3012 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
3015 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
3019 //=============================================================================
3021 //=============================================================================
3022 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet2D (GEOM::GEOM_Object_ptr theShape,
3024 GEOM::GEOM_List_ptr theVertexes)
3026 beginService( " GEOM_Superv_i::MakeFillet2D" );
3027 MESSAGE("GEOM_Superv_i::MakeFillet2D");
3028 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
3029 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
3031 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet2D(theShape, theR, aListImplV->GetList());
3032 endService( " GEOM_Superv_i::MakeFillet2D" );
3035 endService( " GEOM_Superv_i::MakeFillet2D" );
3039 //=============================================================================
3041 //=============================================================================
3042 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet1D (GEOM::GEOM_Object_ptr theShape,
3044 GEOM::GEOM_List_ptr theVertexes,
3045 CORBA::Boolean doIgnoreSecantVertices)
3047 beginService( " GEOM_Superv_i::MakeFillet1D" );
3048 MESSAGE("GEOM_Superv_i::MakeFillet1D");
3049 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
3050 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
3052 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet1D
3053 (theShape, theR, aListImplV->GetList(), doIgnoreSecantVertices);
3054 endService( " GEOM_Superv_i::MakeFillet1D" );
3057 endService( " GEOM_Superv_i::MakeFillet1D" );
3061 //=============================================================================
3063 //=============================================================================
3064 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferAll (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD)
3066 beginService( " GEOM_Superv_i::MakeChamferAll" );
3067 MESSAGE("GEOM_Superv_i::MakeChamferAll");
3069 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferAll(theShape, theD);
3070 endService( " GEOM_Superv_i::MakeChamferAll" );
3074 //=============================================================================
3076 //=============================================================================
3077 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdge (GEOM::GEOM_Object_ptr theShape,
3078 CORBA::Double theD1, CORBA::Double theD2,
3079 CORBA::Long theFace1, CORBA::Long theFace2)
3081 beginService( " GEOM_Superv_i::MakeChamferEdge" );
3082 MESSAGE("GEOM_Superv_i::MakeChamferEdge");
3084 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdge(theShape, theD1, theD2, theFace1, theFace2);
3085 endService( " GEOM_Superv_i::MakeChamferEdge" );
3089 //=============================================================================
3090 // MakeChamferEdgeAD:
3091 //=============================================================================
3092 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgeAD (GEOM::GEOM_Object_ptr theShape,
3093 CORBA::Double theD, CORBA::Double theAngle,
3094 CORBA::Long theFace1, CORBA::Long theFace2)
3096 beginService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3097 MESSAGE("GEOM_Superv_i::MakeChamferEdgeAD");
3099 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgeAD(theShape, theD, theAngle, theFace1, theFace2);
3100 endService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3104 //=============================================================================
3105 // MakeChamferFaces:
3106 //=============================================================================
3107 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFaces (GEOM::GEOM_Object_ptr theShape,
3108 CORBA::Double theD1, CORBA::Double theD2,
3109 GEOM::GEOM_List_ptr theFaces)
3111 beginService( " GEOM_Superv_i::MakeChamferFaces" );
3112 MESSAGE("GEOM_Superv_i::MakeChamferFaces");
3113 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3114 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3116 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFaces(theShape, theD1, theD2, aListImplF->GetList());
3117 endService( " GEOM_Superv_i::MakeChamferFaces" );
3120 endService( " GEOM_Superv_i::MakeChamferFaces" );
3124 //=============================================================================
3125 // MakeChamferFacesAD:
3126 //=============================================================================
3127 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFacesAD (GEOM::GEOM_Object_ptr theShape,
3128 CORBA::Double theD, CORBA::Double theAngle,
3129 GEOM::GEOM_List_ptr theFaces)
3131 beginService( " GEOM_Superv_i::MakeChamferFacesAD" );
3132 MESSAGE("GEOM_Superv_i::MakeChamferFacesAD");
3133 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3134 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3136 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFacesAD(theShape, theD, theAngle, aListImplF->GetList());
3137 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3140 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3144 //=============================================================================
3145 // MakeChamferEdges:
3146 //=============================================================================
3147 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdges (GEOM::GEOM_Object_ptr theShape,
3148 CORBA::Double theD1, CORBA::Double theD2,
3149 GEOM::GEOM_List_ptr theEdges)
3151 beginService( " GEOM_Superv_i::MakeChamferEdges" );
3152 MESSAGE("GEOM_Superv_i::MakeChamferEdges");
3153 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3154 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3156 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdges(theShape, theD1, theD2, aListImplF->GetList());
3157 endService( " GEOM_Superv_i::MakeChamferEdges" );
3160 endService( " GEOM_Superv_i::MakeChamferEdges" );
3164 //=============================================================================
3165 // MakeChamferEdgesAD:
3166 //=============================================================================
3167 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgesAD (GEOM::GEOM_Object_ptr theShape,
3168 CORBA::Double theD, CORBA::Double theAngle,
3169 GEOM::GEOM_List_ptr theEdges)
3171 beginService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3172 MESSAGE("GEOM_Superv_i::MakeChamferEdgesAD");
3173 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3174 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3176 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgesAD(theShape, theD, theAngle, aListImplF->GetList());
3177 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3180 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3184 //=============================================================================
3186 //=============================================================================
3187 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArchimede (GEOM::GEOM_Object_ptr theShape,
3188 CORBA::Double theWeight,
3189 CORBA::Double theWaterDensity,
3190 CORBA::Double theMeshingDeflection)
3192 beginService( " GEOM_Superv_i::MakeArchimede" );
3193 MESSAGE("GEOM_Superv_i::MakeArchimede");
3195 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeArchimede(theShape, theWeight, theWaterDensity, theMeshingDeflection);
3196 endService( " GEOM_Superv_i::MakeArchimede" );
3200 //=============================================================================
3201 // GetSubShapeIndexMakeFilletAll:
3202 //=============================================================================
3203 CORBA::Long GEOM_Superv_i::GetSubShapeIndex (GEOM::GEOM_Object_ptr theShape,
3204 GEOM::GEOM_Object_ptr theSubShape)
3206 beginService( " GEOM_Superv_i::GetSubShapeIndex" );
3207 MESSAGE("GEOM_Superv_i::GetSubShapeIndexMakeArchimede");
3209 CORBA::Long aRes = myLocalOp->GetSubShapeIndex(theShape, theSubShape);
3210 endService( " GEOM_Superv_i::GetSubShapeIndex" );
3214 //=============================== GroupOperations =============================
3215 //=============================================================================
3217 //=============================================================================
3218 GEOM::GEOM_Object_ptr GEOM_Superv_i::CreateGroup (GEOM::GEOM_Object_ptr theMainShape,
3219 CORBA::Long theShapeType)
3221 beginService( " GEOM_Superv_i::CreateGroup" );
3222 MESSAGE("GEOM_Superv_i::CreateGroup");
3224 GEOM::GEOM_Object_ptr anObj = myGroupOp->CreateGroup(theMainShape, theShapeType);
3225 endService( " GEOM_Superv_i::CreateGroup" );
3229 //=============================================================================
3231 //=============================================================================
3232 void GEOM_Superv_i::AddObject (GEOM::GEOM_Object_ptr theGroup,
3233 CORBA::Long theSubShapeId)
3235 beginService( " GEOM_Superv_i::AddObject" );
3236 MESSAGE("GEOM_Superv_i::AddObject");
3238 myGroupOp->AddObject(theGroup, theSubShapeId);
3239 endService( " GEOM_Superv_i::AddObject" );
3242 //=============================================================================
3244 //=============================================================================
3245 void GEOM_Superv_i::RemoveObject (GEOM::GEOM_Object_ptr theGroup,
3246 CORBA::Long theSubShapeId)
3248 beginService( " GEOM_Superv_i::RemoveObject" );
3249 MESSAGE("GEOM_Superv_i::RemoveObject");
3251 myGroupOp->RemoveObject(theGroup, theSubShapeId);
3252 endService( " GEOM_Superv_i::RemoveObject" );
3255 //=============================================================================
3257 //=============================================================================
3258 CORBA::Long GEOM_Superv_i::GetType (GEOM::GEOM_Object_ptr theGroup)
3260 beginService( " GEOM_Superv_i::GetType" );
3261 MESSAGE("GEOM_Superv_i::GetType");
3263 CORBA::Long aResult = myGroupOp->GetType(theGroup);
3264 endService( " GEOM_Superv_i::GetType" );
3268 //=============================================================================
3270 //=============================================================================
3271 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetMainShape (GEOM::GEOM_Object_ptr theGroup)
3273 beginService( " GEOM_Superv_i::GetMainShape" );
3274 MESSAGE("GEOM_Superv_i::GetMainShape");
3276 GEOM::GEOM_Object_ptr anObj = myGroupOp->GetMainShape(theGroup);
3277 endService( " GEOM_Superv_i::GetMainShape" );
3281 //=============================================================================
3283 //=============================================================================
3284 GEOM::GEOM_List_ptr GEOM_Superv_i::GetObjects (GEOM::GEOM_Object_ptr theGroup)
3286 beginService( " GEOM_Superv_i::GetObjects" );
3287 MESSAGE("GEOM_Superv_i::GetObjects");
3290 GEOM::ListOfLong* aList = myGroupOp->GetObjects(theGroup);
3291 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>(*(aList));
3292 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
3293 endService( " GEOM_Superv_i::GetObjects" );
3294 return aListPtr->_this();
3297 //=============================================================================
3299 //=============================================================================
3300 CORBA::Boolean GEOM_Superv_i::ExportXAO (GEOM::GEOM_Object_ptr shape,
3301 const GEOM::ListOfGO& groups, const GEOM::ListOfGO& fields,
3302 const char* author, const char* fileName)
3304 beginService( " GEOM_Superv_i::ExportXAO" );
3305 MESSAGE("GEOM_Superv_i::ExportXAO");
3307 CORBA::Boolean isGood = myInsOp->ExportXAO(shape, groups, fields, author, fileName);
3308 endService( " GEOM_Superv_i::ExportXAO" );
3312 //=============================================================================
3314 //=============================================================================
3315 CORBA::Boolean GEOM_Superv_i::ImportXAO (const char* fileName, GEOM::GEOM_Object_out shape,
3316 GEOM::ListOfGO_out subShapes, GEOM::ListOfGO_out groups, GEOM::ListOfGO_out fields)
3321 //=============================== Advanced Operations =============================
3322 //=============================================================================
3324 //=============================================================================
3325 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShape
3326 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3327 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3328 CORBA::Boolean theHexMesh)
3330 beginService( " GEOM_Superv_i::MakePipeTShape" );
3331 MESSAGE("GEOM_Superv_i::MakePipeTShape");
3334 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShape(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh);
3335 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3336 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3337 endService( " GEOM_Superv_i::MakePipeTShape" );
3338 return aSeqPtr->_this();
3341 //=============================================================================
3342 // MakePipeTShapeWithPosition
3343 //=============================================================================
3344 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeWithPosition
3345 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3346 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2, CORBA::Boolean theHexMesh,
3347 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3349 beginService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3350 MESSAGE("GEOM_Superv_i::MakePipeTShapeWithPosition");
3353 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh, theP1, theP2, theP3);
3354 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3355 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3356 endService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3357 return aSeqPtr->_this();
3360 //=============================================================================
3361 // MakePipeTShapeChamfer
3362 //=============================================================================
3363 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamfer
3364 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3365 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3366 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh)
3368 beginService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3369 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamfer");
3372 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamfer(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh);
3373 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3374 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3375 endService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3376 return aSeqPtr->_this();
3379 //=============================================================================
3380 // MakePipeTShapeChamferWithPosition
3381 //=============================================================================
3382 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamferWithPosition
3383 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3384 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3385 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh,
3386 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3388 beginService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3389 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamferWithPosition");
3392 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamferWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh, theP1, theP2, theP3);
3393 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3394 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3395 endService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3396 return aSeqPtr->_this();
3399 //=============================================================================
3400 // MakePipeTShapeFillet
3401 //=============================================================================
3402 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFillet
3403 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3404 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3405 CORBA::Double theRF, CORBA::Boolean theHexMesh)
3407 beginService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3408 MESSAGE("GEOM_Superv_i::MakePipeTShapeFillet");
3411 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFillet(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh);
3412 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3413 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3414 endService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3415 return aSeqPtr->_this();
3418 //=============================================================================
3419 // MakePipeTShapeFilletWithPosition
3420 //=============================================================================
3421 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFilletWithPosition
3422 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3423 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3424 CORBA::Double theRF, CORBA::Boolean theHexMesh,
3425 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3427 beginService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3428 MESSAGE("GEOM_Superv_i::MakePipeTShapeFilletWithPosition");
3431 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFilletWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh, theP1, theP2, theP3);
3432 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3433 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3434 endService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3435 return aSeqPtr->_this();
3438 //=============================================================================
3440 //=============================================================================
3441 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDividedDisk (CORBA::Double theR, CORBA::Double theRatio,
3442 CORBA::Short theOrientation, GEOM::pattern thePattern)
3444 beginService( " GEOM_Superv_i::MakeDividedDisk" );
3445 MESSAGE("GEOM_Superv_i::MakeDividedDisk");
3447 GEOM::GEOM_Object_ptr anObj = myAdvancedOp->MakeDividedDisk(theR, theRatio, theOrientation, thePattern);
3448 endService( " GEOM_Superv_i::MakeDividedDisk" );
3452 //=============================================================================
3453 // MakeDividedCylinder
3454 //=============================================================================
3455 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDividedCylinder (CORBA::Double theR,
3457 GEOM::pattern thePattern)
3459 beginService( " GEOM_Superv_i::MakeDividedCylinder" );
3460 MESSAGE("GEOM_Superv_i::MakeDividedCylinder");
3462 GEOM::GEOM_Object_ptr anObj = myAdvancedOp->MakeDividedCylinder(theR, theH, thePattern);
3463 endService( " GEOM_Superv_i::MakeDividedCylinder" );
3467 //=============================================================================
3468 // MakeSmoothingSurface
3469 //=============================================================================
3470 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSmoothingSurface (GEOM::GEOM_List_ptr thelPoints)
3472 beginService( " GEOM_Superv_i::MakeSmoothingSurface" );
3473 MESSAGE("GEOM_Superv_i::MakeSmoothingSurface");
3475 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
3476 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thelPoints, myPOA).in())) {
3478 GEOM::GEOM_Object_ptr anObj = myAdvancedOp->MakeSmoothingSurface(aListImplP->GetList());
3479 endService( " GEOM_Superv_i::MakeSmoothingSurface" );
3482 endService( " GEOM_Superv_i::MakeSmoothingSurface" );
3486 /*@@ insert new functions before this line @@ do not remove this line @@*/
3488 //=====================================================================================
3490 //=====================================================================================
3494 __declspec( dllexport )
3496 PortableServer::ObjectId * GEOM_SupervEngine_factory(CORBA::ORB_ptr orb,
3497 PortableServer::POA_ptr poa,
3498 PortableServer::ObjectId * contId,
3499 const char *instanceName,
3500 const char * interfaceName)
3502 GEOM_Superv_i * myGEOM_Superv_i = new GEOM_Superv_i(orb, poa, contId, instanceName, interfaceName);
3503 //Don't understand the reason why this component is registered ???
3504 // myGEOM_Superv_i->register_name("/myGEOM_Superv");
3505 return myGEOM_Superv_i->getId() ;