1 // Copyright (C) 2007-2010 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))
76 if (!CORBA::is_nil(myBoolOp))
78 if (!CORBA::is_nil(my3DPrimOp))
79 my3DPrimOp->Destroy();
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::Component_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 if (GEOM_List_i<GEOM::ListOfGO>* aList =
175 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theList, myPOA).in())) {
176 aList->AddObject(theObject);
177 MESSAGE(" NewLength = "<<aList->GetList().length());
181 //=============================================================================
183 //=============================================================================
184 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfLong()
186 MESSAGE("GEOM_Superv_i::CreateListOfLong()");
187 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>();
188 return aListPtr->_this();
191 //=============================================================================
192 // AddItemToListOfLong:
193 //=============================================================================
194 void GEOM_Superv_i::AddItemToListOfLong(GEOM::GEOM_List_ptr& theList,
195 CORBA::Long theObject)
197 MESSAGE("GEOM_Superv_i::AddItemToListOfLong(...)");
198 if (GEOM_List_i<GEOM::ListOfLong>* aList =
199 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theList, myPOA).in())) {
200 aList->AddObject(theObject);
201 MESSAGE(" NewLength = "<<aList->GetList().length());
205 //=============================================================================
206 // CreateListOfDouble:
207 //=============================================================================
208 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfDouble()
210 MESSAGE("GEOM_Superv_i::CreateListOfDouble()");
211 GEOM_List_i<GEOM::ListOfDouble>* aListPtr = new GEOM_List_i<GEOM::ListOfDouble>();
212 return aListPtr->_this();
215 //=============================================================================
216 // AddItemToListOfDouble:
217 //=============================================================================
218 void GEOM_Superv_i::AddItemToListOfDouble(GEOM::GEOM_List_ptr& theList,
219 CORBA::Double theObject)
221 MESSAGE("GEOM_Superv_i::AddItemToListOfDouble(...)");
222 if (GEOM_List_i<GEOM::ListOfDouble>* aList =
223 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theList, myPOA).in())) {
224 aList->AddObject(theObject);
225 MESSAGE(" NewLength = "<<aList->GetList().length());
229 //=============================================================================
231 //=============================================================================
232 void GEOM_Superv_i::getBasicOp()
234 if (CORBA::is_nil(myGeomEngine))
236 // get GEOM_IBasicOperations interface
237 if (CORBA::is_nil(myBasicOp) || isNewStudy(myLastStudyID,myStudyID))
238 myBasicOp = myGeomEngine->GetIBasicOperations(myStudyID);
241 //=============================================================================
243 //=============================================================================
244 void GEOM_Superv_i::get3DPrimOp()
246 if (CORBA::is_nil(myGeomEngine))
248 // get GEOM_I3DPrimOperations interface
249 if (CORBA::is_nil(my3DPrimOp) || isNewStudy(myLastStudyID,myStudyID))
250 my3DPrimOp = myGeomEngine->GetI3DPrimOperations(myStudyID);
253 //=============================================================================
255 //=============================================================================
256 void GEOM_Superv_i::getBoolOp()
258 if (CORBA::is_nil(myGeomEngine))
260 // get GEOM_IBooleanOperations interface
261 if (CORBA::is_nil(myBoolOp) || isNewStudy(myLastStudyID,myStudyID))
262 myBoolOp = myGeomEngine->GetIBooleanOperations(myStudyID);
265 //=============================================================================
267 //=============================================================================
268 void GEOM_Superv_i::getInsOp()
270 if (CORBA::is_nil(myGeomEngine))
272 // get GEOM_IInsertOperations interface
273 if (CORBA::is_nil(myInsOp) || isNewStudy(myLastStudyID,myStudyID))
274 myInsOp = myGeomEngine->GetIInsertOperations(myStudyID);
277 //=============================================================================
279 //=============================================================================
280 void GEOM_Superv_i::getTransfOp()
282 if (CORBA::is_nil(myGeomEngine))
284 // get GEOM_ITransformOperations interface
285 if (CORBA::is_nil(myTransfOp) || isNewStudy(myLastStudyID,myStudyID))
286 myTransfOp = myGeomEngine->GetITransformOperations(myStudyID);
289 //=============================================================================
291 //=============================================================================
292 void GEOM_Superv_i::getShapesOp()
294 if (CORBA::is_nil(myGeomEngine))
296 // get GEOM_IShapesOperations interface
297 if (CORBA::is_nil(myShapesOp) || isNewStudy(myLastStudyID,myStudyID))
298 myShapesOp = myGeomEngine->GetIShapesOperations(myStudyID);
301 //=============================================================================
303 //=============================================================================
304 void GEOM_Superv_i::getBlocksOp()
306 if (CORBA::is_nil(myGeomEngine))
308 // get GEOM_IBlocksOperations interface
309 if (CORBA::is_nil(myBlocksOp) || isNewStudy(myLastStudyID,myStudyID))
310 myBlocksOp = myGeomEngine->GetIBlocksOperations(myStudyID);
313 //=============================================================================
315 //=============================================================================
316 void GEOM_Superv_i::getCurvesOp()
318 if (CORBA::is_nil(myGeomEngine))
320 // get GEOM_ICurvesOperations interface
321 if (CORBA::is_nil(myCurvesOp) || isNewStudy(myLastStudyID,myStudyID))
322 myCurvesOp = myGeomEngine->GetICurvesOperations(myStudyID);
325 //=============================================================================
327 //=============================================================================
328 void GEOM_Superv_i::getLocalOp()
330 if (CORBA::is_nil(myGeomEngine))
332 // get GEOM_ILocalOperations interface
333 if (CORBA::is_nil(myLocalOp) || isNewStudy(myLastStudyID,myStudyID))
334 myLocalOp = myGeomEngine->GetILocalOperations(myStudyID);
337 //=============================================================================
339 //=============================================================================
340 void GEOM_Superv_i::getGroupOp()
342 if (CORBA::is_nil(myGeomEngine))
344 // get GEOM_IGroupOperations interface
345 if (CORBA::is_nil(myGroupOp) || isNewStudy(myLastStudyID,myStudyID))
346 myGroupOp = myGeomEngine->GetIGroupOperations(myStudyID);
349 //=============================================================================
351 //=============================================================================
352 void GEOM_Superv_i::getAdvancedOp()
354 if (CORBA::is_nil(myGeomEngine))
356 // get GEOM_IGroupOperations interface
357 if (CORBA::is_nil(myGroupOp) || isNewStudy(myLastStudyID,myStudyID))
358 myAdvancedOp = myGeomEngine->GetIAdvancedOperations(myStudyID);
361 //=============================================================================
363 //=============================================================================
364 PortableServer::ServantBase_var GEOM_Superv_i::GetServant(CORBA::Object_ptr theObject,
365 PortableServer::POA_ptr thePOA)
367 if(CORBA::is_nil(theObject)) return NULL;
368 PortableServer::Servant aServant = thePOA->reference_to_servant(theObject);
372 //============================================================================
374 // purpose : save OCAF/Geom document
375 //============================================================================
376 SALOMEDS::TMPFile* GEOM_Superv_i::Save(SALOMEDS::SComponent_ptr theComponent,
378 CORBA::Boolean isMultiFile)
380 SALOMEDS::TMPFile_var aStreamFile;
381 return aStreamFile._retn();
384 //============================================================================
385 // function : SaveASCII()
387 //============================================================================
388 SALOMEDS::TMPFile* GEOM_Superv_i::SaveASCII(SALOMEDS::SComponent_ptr theComponent,
390 CORBA::Boolean isMultiFile)
392 SALOMEDS::TMPFile_var aStreamFile;
393 return aStreamFile._retn();
396 //============================================================================
399 //============================================================================
400 CORBA::Boolean GEOM_Superv_i::Load(SALOMEDS::SComponent_ptr theComponent,
401 const SALOMEDS::TMPFile& theStream,
403 CORBA::Boolean isMultiFile)
408 //============================================================================
409 // function : LoadASCII()
411 //============================================================================
412 CORBA::Boolean GEOM_Superv_i::LoadASCII(SALOMEDS::SComponent_ptr theComponent,
413 const SALOMEDS::TMPFile& theStream,
415 CORBA::Boolean isMultiFile)
420 //============================================================================
421 // function : Close()
423 //============================================================================
424 void GEOM_Superv_i::Close(SALOMEDS::SComponent_ptr theComponent)
428 //============================================================================
429 // function : ComponentDataType()
431 //============================================================================
432 char* GEOM_Superv_i::ComponentDataType()
437 //============================================================================
438 // function : IORToLocalPersistentID()
440 //============================================================================
441 char* GEOM_Superv_i::IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject,
442 const char* IORString,
443 CORBA::Boolean isMultiFile,
444 CORBA::Boolean isASCII)
449 //============================================================================
450 // function : LocalPersistentIDToIOR()
451 // purpose : Create/Load CORBA object from a persistent ref (an entry)
452 // : Used when a study is loaded
453 // : The IOR (IORName) of object created is returned
454 //============================================================================
455 char* GEOM_Superv_i::LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject,
456 const char* aLocalPersistentID,
457 CORBA::Boolean isMultiFile,
458 CORBA::Boolean isASCII)
463 //============================================================================
464 // function : CanPublishInStudy
466 //============================================================================
467 CORBA::Boolean GEOM_Superv_i::CanPublishInStudy(CORBA::Object_ptr theIOR)
469 if (CORBA::is_nil(myGeomEngine))
471 return myGeomEngine->CanPublishInStudy(theIOR);
474 //============================================================================
475 // function : PublishInStudy
477 //============================================================================
478 SALOMEDS::SObject_ptr GEOM_Superv_i::PublishInStudy(SALOMEDS::Study_ptr theStudy,
479 SALOMEDS::SObject_ptr theSObject,
480 CORBA::Object_ptr theObject,
481 const char* theName) throw (SALOME::SALOME_Exception)
483 if (CORBA::is_nil(myGeomEngine))
485 return myGeomEngine->PublishInStudy(theStudy, theSObject, theObject, theName);
488 //============================================================================
489 // function : PublishNamedShapesInStudy
491 //============================================================================
493 GEOM_Superv_i::PublishNamedShapesInStudy(SALOMEDS::Study_ptr theStudy,
494 //SALOMEDS::SObject_ptr theSObject,
495 CORBA::Object_ptr theObject)
497 if (CORBA::is_nil(myGeomEngine))
499 return myGeomEngine->PublishNamedShapesInStudy(theStudy, theObject);
502 //============================================================================
503 // function : CanCopy()
505 //============================================================================
506 CORBA::Boolean GEOM_Superv_i::CanCopy(SALOMEDS::SObject_ptr theObject)
511 //============================================================================
512 // function : CopyFrom()
514 //============================================================================
515 SALOMEDS::TMPFile* GEOM_Superv_i::CopyFrom(SALOMEDS::SObject_ptr theObject, CORBA::Long& theObjectID)
517 SALOMEDS::TMPFile_var aStreamFile;
518 return aStreamFile._retn();
521 //============================================================================
522 // function : CanPaste()
524 //============================================================================
525 CORBA::Boolean GEOM_Superv_i::CanPaste(const char* theComponentName, CORBA::Long theObjectID)
530 //============================================================================
531 // function : PasteInto()
533 //============================================================================
534 SALOMEDS::SObject_ptr GEOM_Superv_i::PasteInto(const SALOMEDS::TMPFile& theStream,
535 CORBA::Long theObjectID,
536 SALOMEDS::SObject_ptr theObject)
538 SALOMEDS::SObject_var aNewSO;
539 return aNewSO._retn();
542 //================= Primitives Construction : BasicOperations =================
543 //=============================================================================
545 //=============================================================================
546 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointXYZ(CORBA::Double theX,
550 beginService( " GEOM_Superv_i::MakePointXYZ" );
551 MESSAGE("GEOM_Superv_i::MakePointXYZ");
553 // make vertex and return
554 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointXYZ(theX, theY, theZ);
555 endService( " GEOM_Superv_i::MakePointXYZ" );
559 //=============================================================================
560 // MakePointWithReference:
561 //=============================================================================
562 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointWithReference (GEOM::GEOM_Object_ptr theReference,
567 beginService( " GEOM_Superv_i::MakePointWithReference" );
568 MESSAGE("GEOM_Superv_i::MakePointWithReference");
570 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointWithReference(theReference, theX, theY, theZ);
571 endService( " GEOM_Superv_i::MakePointWithReference" );
575 //=============================================================================
577 //=============================================================================
578 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
579 CORBA::Double theParameter)
581 beginService( " GEOM_Superv_i::MakePointOnCurve" );
582 MESSAGE("GEOM_Superv_i::MakePointOnCurve");
584 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurve(theRefCurve, theParameter);
585 endService( " GEOM_Superv_i::MakePointOnCurve" );
589 //=============================================================================
590 // MakePointOnCurveByCoord
591 //=============================================================================
592 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByCoord (GEOM::GEOM_Object_ptr theRefCurve,
593 CORBA::Double theXParameter,
594 CORBA::Double theYParameter,
595 CORBA::Double theZParameter)
597 beginService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
598 MESSAGE("GEOM_Superv_i::MakePointOnCurveByCoord");
600 GEOM::GEOM_Object_ptr anObj =
601 myBasicOp->MakePointOnCurveByCoord(theRefCurve, theXParameter,
602 theYParameter, theZParameter);
603 endService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
607 //=============================================================================
608 // MakePointOnSurface:
609 //=============================================================================
610 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurface (GEOM::GEOM_Object_ptr theRefSurface,
611 CORBA::Double theUParameter,
612 CORBA::Double theVParameter)
614 beginService( " GEOM_Superv_i::MakePointOnSurface" );
615 MESSAGE("GEOM_Superv_i::MakePointOnSurface");
617 GEOM::GEOM_Object_ptr anObj =
618 myBasicOp->MakePointOnSurface(theRefSurface, theUParameter, theVParameter);
619 endService( " GEOM_Superv_i::MakePointOnSurface" );
623 //=============================================================================
624 // MakePointOnSurfaceByCoord
625 //=============================================================================
626 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurfaceByCoord (GEOM::GEOM_Object_ptr theRefSurface,
627 CORBA::Double theXParameter,
628 CORBA::Double theYParameter,
629 CORBA::Double theZParameter)
631 beginService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
632 MESSAGE("GEOM_Superv_i::MakePointOnSurfaceByCoord");
634 GEOM::GEOM_Object_ptr anObj =
635 myBasicOp->MakePointOnSurfaceByCoord(theRefSurface, theXParameter,
636 theYParameter, theZParameter);
637 endService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
641 //=============================================================================
642 // MakePointOnLinesIntersection:
643 //=============================================================================
644 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnLinesIntersection (GEOM::GEOM_Object_ptr theRefLine1,
645 GEOM::GEOM_Object_ptr theRefLine2)
647 beginService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
648 MESSAGE("GEOM_Superv_i::MakePointOnLinesIntersection");
650 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnLinesIntersection(theRefLine1, theRefLine2);
651 endService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
655 //=============================================================================
656 // MakeTangentOnCurve:
657 //=============================================================================
658 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
659 CORBA::Double theParameter)
661 beginService( " GEOM_Superv_i::MakeTangentOnCurve" );
662 MESSAGE("GEOM_Superv_i::MakeTangentOnCurve");
664 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentOnCurve(theRefCurve, theParameter);
665 endService( " GEOM_Superv_i::MakeTangentOnCurve" );
669 //=============================================================================
671 //=============================================================================
672 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorDXDYDZ (CORBA::Double theDX,
676 beginService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
677 MESSAGE("GEOM_Superv_i::MakeVectorDXDYDZ");
679 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorDXDYDZ(theDX, theDY, theDZ);
680 endService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
684 //=============================================================================
686 //=============================================================================
687 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
688 GEOM::GEOM_Object_ptr thePnt2)
690 beginService( " GEOM_Superv_i::MakeVectorTwoPnt" );
691 MESSAGE("GEOM_Superv_i::MakeVector");
693 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorTwoPnt(thePnt1, thePnt2);
694 endService( " GEOM_Superv_i::MakeVectorTwoPnt" );
698 //=============================================================================
700 //=============================================================================
701 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
702 GEOM::GEOM_Object_ptr thePnt2)
704 beginService( " GEOM_Superv_i::MakeLineTwoPnt");
705 MESSAGE("GEOM_Superv_i::MakeLineTwoPnt");
707 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoPnt(thePnt1, thePnt2);
708 endService( " GEOM_Superv_i::MakeLineTwoPnt");
712 //=============================================================================
714 //=============================================================================
715 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoFaces (GEOM::GEOM_Object_ptr theFace1,
716 GEOM::GEOM_Object_ptr theFace2)
718 beginService( " GEOM_Superv_i::MakeLineTwoFaces");
719 MESSAGE("GEOM_Superv_i::MakeLineTwoFaces");
721 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoFaces(theFace1, theFace2);
722 endService( " GEOM_Superv_i::MakeLineTwoFaces");
726 //=============================================================================
727 // MakePlaneThreePnt:
728 //=============================================================================
729 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneThreePnt (GEOM::GEOM_Object_ptr thePnt1,
730 GEOM::GEOM_Object_ptr thePnt2,
731 GEOM::GEOM_Object_ptr thePnt3,
732 CORBA::Double theTrimSize)
734 beginService( " GEOM_Superv_i::MakePlaneThreePnt");
735 MESSAGE("GEOM_Superv_i::MakePlaneThreePnt");
737 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneThreePnt(thePnt1, thePnt2, thePnt3, theTrimSize);
738 endService( " GEOM_Superv_i::MakePlaneThreePnt");
742 //=============================================================================
744 //=============================================================================
745 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlanePntVec (GEOM::GEOM_Object_ptr thePnt,
746 GEOM::GEOM_Object_ptr theVec,
747 CORBA::Double theTrimSize)
749 beginService( " GEOM_Superv_i::MakePlanePntVec" );
750 MESSAGE("GEOM_Superv_i::MakePlanePntVec");
752 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlanePntVec(thePnt, theVec, theTrimSize);
753 endService( " GEOM_Superv_i::MakePlanePntVec" );
757 //=============================================================================
759 //=============================================================================
760 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneFace (GEOM::GEOM_Object_ptr theFace,
761 CORBA::Double theTrimSize)
763 beginService( " GEOM_Superv_i::MakePlaneFace" );
764 MESSAGE("GEOM_Superv_i::MakePlaneFace");
766 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneFace(theFace, theTrimSize);
767 endService( " GEOM_Superv_i::MakePlaneFace" );
771 //=============================================================================
773 //=============================================================================
774 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlane2Vec (GEOM::GEOM_Object_ptr theVec1,
775 GEOM::GEOM_Object_ptr theVec2,
776 CORBA::Double theTrimSize)
778 beginService( " GEOM_Superv_i::MakePlane2Vec" );
779 MESSAGE("GEOM_Superv_i::MakePlane2Vec");
781 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlane2Vec(theVec1, theVec2, theTrimSize);
782 endService( " GEOM_Superv_i::MakePlane2Vec" );
786 //=============================================================================
788 //=============================================================================
789 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneLCS (GEOM::GEOM_Object_ptr theLCS,
790 CORBA::Double theTrimSize,
791 CORBA::Double theOrientation)
793 beginService( " GEOM_Superv_i::MakePlaneLCS" );
794 MESSAGE("GEOM_Superv_i::MakePlaneLCS");
796 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneLCS(theLCS, theTrimSize, theOrientation);
797 endService( " GEOM_Superv_i::MakePlaneLCS" );
801 //=============================================================================
803 //=============================================================================
804 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarker
805 (CORBA::Double theOX , CORBA::Double theOY , CORBA::Double theOZ,
806 CORBA::Double theXDX, CORBA::Double theXDY, CORBA::Double theXDZ,
807 CORBA::Double theYDX, CORBA::Double theYDY, CORBA::Double theYDZ)
809 beginService( " GEOM_Superv_i::MakeMarker" );
810 MESSAGE("GEOM_Superv_i::MakeMarker");
812 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarker(theOX, theOY, theOZ, theXDX, theXDY, theXDZ, theYDX, theYDY, theYDZ);
813 endService( " GEOM_Superv_i::MakeMarker" );
817 //=============================================================================
818 // MakeMarkerFromShape:
819 //=============================================================================
820 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerFromShape (GEOM::GEOM_Object_ptr theShape)
822 beginService( " GEOM_Superv_i::MakeMarkerFromShape" );
823 MESSAGE("GEOM_Superv_i::MakeMarkerFromShape");
825 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerFromShape(theShape);
826 endService( " GEOM_Superv_i::MakeMarkerFromShape" );
830 //=============================================================================
831 // MakeMarkerPntTwoVec:
832 //=============================================================================
833 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerPntTwoVec (GEOM::GEOM_Object_ptr theOrigin,
834 GEOM::GEOM_Object_ptr theXVec,
835 GEOM::GEOM_Object_ptr theYVec)
837 beginService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
838 MESSAGE("GEOM_Superv_i::MakeMarkerPntTwoVec");
840 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerPntTwoVec(theOrigin, theXVec, theYVec);
841 endService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
845 //=============================================================================
846 // MakeTangentPlaneOnFace:
847 //=============================================================================
848 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentPlaneOnFace (GEOM::GEOM_Object_ptr theFace,
849 CORBA::Double theParameterU,
850 CORBA::Double theParameterV,
851 CORBA::Double theTrimSize)
853 beginService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
854 MESSAGE("GEOM_Superv_i::MakeTangentPlaneOnFace");
856 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentPlaneOnFace(theFace, theParameterU,theParameterV,theTrimSize);
857 endService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
861 //================= Primitives Construction : 3DPrimOperations ================
862 //=============================================================================
864 //=============================================================================
865 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBox (CORBA::Double theX1,
872 beginService( " GEOM_Superv_i::MakeBox" );
873 MESSAGE("GEOM_Superv_i::MakeBox");
876 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(myBasicOp->MakePointXYZ(theX1, theY1, theZ1),
877 myBasicOp->MakePointXYZ(theX2, theY2, theZ2));
878 endService( " GEOM_Superv_i::MakeBox" );
882 //=============================================================================
884 //=============================================================================
885 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxDXDYDZ (CORBA::Double theDX,
889 beginService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
890 MESSAGE("GEOM_Superv_i::MakeBoxDXDYDZ");
892 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxDXDYDZ(theDX, theDY, theDZ);
893 endService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
897 //=============================================================================
899 //=============================================================================
900 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
901 GEOM::GEOM_Object_ptr thePnt2)
903 beginService( " GEOM_Superv_i::MakeBoxTwoPnt" );
904 MESSAGE("GEOM_Superv_i::MakeBoxTwoPnt");
906 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(thePnt1, thePnt2);
907 endService( " GEOM_Superv_i::MakeBoxTwoPnt" );
911 //=============================================================================
913 //=============================================================================
914 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceHW (CORBA::Double theH,
916 CORBA::Short theOrientation)
918 beginService( " GEOM_Superv_i::MakeFaceHW" );
919 MESSAGE("GEOM_Superv_i::MakeFaceHW");
921 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceHW(theH, theW, theOrientation);
922 endService( " GEOM_Superv_i::MakeFaceHW" );
926 //=============================================================================
928 //=============================================================================
929 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj,
933 beginService( " GEOM_Superv_i::MakeFaceObjHW" );
934 MESSAGE("GEOM_Superv_i::MakeFaceObjHW");
936 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceObjHW(theObj, theH, theW);
937 endService( " GEOM_Superv_i::MakeFaceObjHW" );
941 //=============================================================================
943 //=============================================================================
944 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter,
945 GEOM::GEOM_Object_ptr theVector,
948 beginService( " GEOM_Superv_i::MakeDiskPntVecR" );
949 MESSAGE("GEOM_Superv_i::MakeDiskPntVecR");
951 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskPntVecR(theCenter, theVector, theR);
952 endService( " GEOM_Superv_i::MakeDiskPntVecR" );
956 //=============================================================================
958 //=============================================================================
959 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1,
960 GEOM::GEOM_Object_ptr thePnt2,
961 GEOM::GEOM_Object_ptr thePnt3)
963 beginService( " GEOM_Superv_i::MakeDiskThreePnt" );
964 MESSAGE("GEOM_Superv_i::MakeDiskThreePnt");
966 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskThreePnt(thePnt1, thePnt2, thePnt3);
967 endService( " GEOM_Superv_i::MakeDiskThreePnt" );
971 //=============================================================================
973 //=============================================================================
974 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskR (CORBA::Double theR,
975 CORBA::Short theOrientation)
977 beginService( " GEOM_Superv_i::MakeDiskR" );
978 MESSAGE("GEOM_Superv_i::MakeDiskR");
980 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskR(theR, theOrientation);
981 endService( " GEOM_Superv_i::MakeDiskR" );
985 //=============================================================================
986 // MakeCylinderPntVecRH:
987 //=============================================================================
988 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderPntVecRH (GEOM::GEOM_Object_ptr thePnt,
989 GEOM::GEOM_Object_ptr theAxis,
990 CORBA::Double theRadius,
991 CORBA::Double theHeight)
993 beginService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
994 MESSAGE("GEOM_Superv_i::MakeCylinderPntVecRH");
996 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderPntVecRH(thePnt, theAxis, theRadius, theHeight);
997 endService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
1001 //=============================================================================
1003 //=============================================================================
1004 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderRH (CORBA::Double theR,
1007 beginService( " GEOM_Superv_i::MakeCylinderRH" );
1008 MESSAGE("GEOM_Superv_i::MakeCylinderRH");
1010 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderRH(theR, theH);
1011 endService( " GEOM_Superv_i::MakeCylinderRH" );
1015 //=============================================================================
1017 //=============================================================================
1018 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphere (CORBA::Double theX,
1021 CORBA::Double theRadius)
1023 beginService( " GEOM_Superv_i::MakeSphepe" );
1024 MESSAGE("GEOM_Superv_i::MakeSphepe");
1027 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(myBasicOp->MakePointXYZ(theX, theY, theZ), theRadius);
1028 endService( " GEOM_Superv_i::MakeSphepe" );
1032 //=============================================================================
1034 //=============================================================================
1035 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphereR (CORBA::Double theR)
1037 beginService( " GEOM_Superv_i::MakeSphereR" );
1038 MESSAGE("GEOM_Superv_i::MakeSphereR");
1040 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSphereR(theR);
1041 endService( " GEOM_Superv_i::MakeSphereR" );
1045 //=============================================================================
1047 //=============================================================================
1048 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSpherePntR (GEOM::GEOM_Object_ptr thePnt,
1051 beginService( " GEOM_Superv_i::MakeSpherePntR" );
1052 MESSAGE("GEOM_Superv_i::MakeSpherePntR");
1054 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(thePnt, theR);
1055 endService( " GEOM_Superv_i::MakeSpherePntR" );
1059 //=============================================================================
1060 // MakeTorusPntVecRR:
1061 //=============================================================================
1062 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusPntVecRR (GEOM::GEOM_Object_ptr thePnt,
1063 GEOM::GEOM_Object_ptr theVec,
1064 CORBA::Double theRMajor,
1065 CORBA::Double theRMinor)
1067 beginService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1068 MESSAGE("GEOM_Superv_i::MakeTorusPntVecRR");
1070 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusPntVecRR(thePnt, theVec, theRMajor, theRMinor);
1071 endService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1075 //=============================================================================
1077 //=============================================================================
1078 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusRR (CORBA::Double theRMajor,
1079 CORBA::Double theRMinor)
1081 beginService( " GEOM_Superv_i::MakeTorusRR" );
1082 MESSAGE("GEOM_Superv_i::MakeTorusRR");
1084 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusRR(theRMajor, theRMinor);
1085 endService( " GEOM_Superv_i::MakeTorusRR" );
1089 //=============================================================================
1090 // MakeConePntVecR1R2H:
1091 //=============================================================================
1092 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConePntVecR1R2H (GEOM::GEOM_Object_ptr thePnt,
1093 GEOM::GEOM_Object_ptr theAxis,
1094 CORBA::Double theR1,
1095 CORBA::Double theR2,
1096 CORBA::Double theHeight)
1098 beginService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1099 MESSAGE("GEOM_Superv_i::MakeConePntVecR1R2H");
1101 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConePntVecR1R2H(thePnt, theAxis, theR1, theR2, theHeight);
1102 endService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1106 //=============================================================================
1108 //=============================================================================
1109 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConeR1R2H (CORBA::Double theR1,
1110 CORBA::Double theR2,
1111 CORBA::Double theHeight)
1113 beginService( " GEOM_Superv_i::MakeConeR1R2H" );
1114 MESSAGE("GEOM_Superv_i::MakeConeR1R2H");
1116 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConeR1R2H(theR1, theR2, theHeight);
1117 endService( " GEOM_Superv_i::MakeConeR1R2H" );
1121 //=============================================================================
1123 //=============================================================================
1124 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH (GEOM::GEOM_Object_ptr theBase,
1125 GEOM::GEOM_Object_ptr theVec,
1128 beginService( " GEOM_Superv_i::MakePrismVecH" );
1129 MESSAGE("GEOM_Superv_i::MakePrismVecH");
1131 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH(theBase, theVec, theH);
1132 endService( " GEOM_Superv_i::MakePrismVecH" );
1136 //=============================================================================
1137 // MakePrismVecH2Ways:
1138 //=============================================================================
1139 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH2Ways (GEOM::GEOM_Object_ptr theBase,
1140 GEOM::GEOM_Object_ptr theVec,
1143 beginService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1144 MESSAGE("GEOM_Superv_i::MakePrismVecH2Ways");
1146 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH2Ways(theBase, theVec, theH);
1147 endService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1151 //=============================================================================
1153 //=============================================================================
1154 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt (GEOM::GEOM_Object_ptr theBase,
1155 GEOM::GEOM_Object_ptr thePoint1,
1156 GEOM::GEOM_Object_ptr thePoint2)
1158 beginService( " GEOM_Superv_i::MakePrismTwoPnt" );
1159 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt");
1161 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt(theBase, thePoint1, thePoint2);
1162 endService( " GEOM_Superv_i::MakePrismTwoPnt" );
1166 //=============================================================================
1167 // MakePrismTwoPnt2Ways:
1168 //=============================================================================
1169 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt2Ways (GEOM::GEOM_Object_ptr theBase,
1170 GEOM::GEOM_Object_ptr thePoint1,
1171 GEOM::GEOM_Object_ptr thePoint2)
1173 beginService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1174 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt2Ways");
1176 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt2Ways(theBase, thePoint1, thePoint2);
1177 endService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1181 //=============================================================================
1183 //=============================================================================
1184 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase,
1185 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1187 beginService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1188 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ");
1190 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ(theBase, theDX, theDY, theDZ);
1191 endService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1195 //=============================================================================
1197 //=============================================================================
1198 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase,
1199 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1201 beginService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1202 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ2Ways");
1204 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ2Ways(theBase, theDX, theDY, theDZ);
1205 endService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1209 //=============================================================================
1211 //=============================================================================
1212 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipe (GEOM::GEOM_Object_ptr theBase,
1213 GEOM::GEOM_Object_ptr thePath)
1215 beginService( " GEOM_Superv_i::MakePipe" );
1216 MESSAGE("GEOM_Superv_i::MakePipe");
1218 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipe(theBase, thePath);
1219 endService( " GEOM_Superv_i::MakePipe" );
1223 //=============================================================================
1224 // MakeRevolutionAxisAngle:
1225 //=============================================================================
1226 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle (GEOM::GEOM_Object_ptr theBase,
1227 GEOM::GEOM_Object_ptr theAxis,
1228 CORBA::Double theAngle)
1230 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1231 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle");
1233 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle(theBase, theAxis, theAngle);
1234 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1238 //=============================================================================
1239 // MakeRevolutionAxisAngle:
1240 //=============================================================================
1241 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle2Ways (GEOM::GEOM_Object_ptr theBase,
1242 GEOM::GEOM_Object_ptr theAxis,
1243 CORBA::Double theAngle)
1245 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1246 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle2Ways");
1248 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle2Ways(theBase, theAxis, theAngle);
1249 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1253 //=============================================================================
1255 //=============================================================================
1256 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilling (GEOM::GEOM_Object_ptr theShape,
1257 CORBA::Long theMinDeg,
1258 CORBA::Long theMaxDeg,
1259 CORBA::Double theTol2D,
1260 CORBA::Double theTol3D,
1261 CORBA::Long theNbIter,
1262 GEOM::filling_oper_method theMethod,
1263 CORBA::Boolean theApprox)
1265 beginService( " GEOM_Superv_i::MakeFilling" );
1266 MESSAGE("GEOM_Superv_i::MakeFilling");
1268 GEOM::GEOM_Object_ptr anObj =
1269 my3DPrimOp->MakeFilling(theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D,
1270 theNbIter, theMethod, theApprox);
1271 endService( " GEOM_Superv_i::MakeFilling" );
1275 //============================= BooleanOperations =============================
1276 //=============================================================================
1278 //=============================================================================
1279 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoolean (GEOM::GEOM_Object_ptr theShape1,
1280 GEOM::GEOM_Object_ptr theShape2,
1281 CORBA::Long theOperation)
1283 beginService( " GEOM_Superv_i::MakeBoolean" );
1284 // theOperation indicates the operation to be done:
1285 // 1 - Common, 2 - Cut, 3 - Fuse, 4 - Section
1286 MESSAGE("GEOM_Superv_i::MakeBoolean");
1288 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeBoolean(theShape1, theShape2, theOperation);
1289 endService( " GEOM_Superv_i::MakeBoolean" );
1293 //=============================================================================
1294 // MakeThruSections:
1295 //=============================================================================
1296 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeThruSections(const GEOM::ListOfGO& theSeqSections,
1297 CORBA::Boolean theModeSolid,
1298 CORBA::Double thePreci,
1299 CORBA::Boolean theRuled)
1301 beginService( " GEOM_Superv_i::MakeThruSections" );
1302 MESSAGE("GEOM_Superv_i::MakeThruSections");
1304 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeThruSections(theSeqSections, theModeSolid,thePreci,theRuled);
1305 endService( " GEOM_Superv_i::MakeThruSections" );
1309 //=============================================================================
1311 //=============================================================================
1312 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithDifferentSections
1313 (const GEOM::ListOfGO& theBases,
1314 const GEOM::ListOfGO& theLocations,
1315 GEOM::GEOM_Object_ptr thePath,
1316 CORBA::Boolean theWithContact,
1317 CORBA::Boolean theWithCorrections)
1319 beginService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1320 MESSAGE("GEOM_Superv_i::MakePipeWithDifferentSections");
1322 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipeWithDifferentSections(theBases,theLocations, thePath,theWithContact,theWithCorrections);
1323 endService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1328 //=============================================================================
1330 //=============================================================================
1331 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithShellSections
1332 (const GEOM::ListOfGO& theBases,
1333 const GEOM::ListOfGO& theSubBases,
1334 const GEOM::ListOfGO& theLocations,
1335 GEOM::GEOM_Object_ptr thePath,
1336 CORBA::Boolean theWithContact,
1337 CORBA::Boolean theWithCorrections)
1339 beginService( " GEOM_Superv_i::MakePipeWithShellSections" );
1340 MESSAGE("GEOM_Superv_i::MakePipeWithShellSections");
1342 GEOM::GEOM_Object_ptr anObj =
1343 my3DPrimOp->MakePipeWithShellSections(theBases, theSubBases,
1344 theLocations, thePath,
1345 theWithContact, theWithCorrections);
1346 endService( " GEOM_Superv_i::MakePipeWithShellSections" );
1351 //=============================================================================
1353 //=============================================================================
1354 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeShellsWithoutPath
1355 (const GEOM::ListOfGO& theBases,
1356 const GEOM::ListOfGO& theLocations)
1358 beginService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1359 MESSAGE("GEOM_Superv_i::MakePipeShellsWithoutPath");
1361 GEOM::GEOM_Object_ptr anObj =
1362 my3DPrimOp->MakePipeShellsWithoutPath(theBases,theLocations);
1363 endService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1368 //=============================================================================
1370 //=============================================================================
1371 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeBiNormalAlongVector
1372 (GEOM::GEOM_Object_ptr theBase,
1373 GEOM::GEOM_Object_ptr thePath,
1374 GEOM::GEOM_Object_ptr theVec)
1376 beginService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1377 MESSAGE("GEOM_Superv_i::MakePipeBiNormalAlongVector");
1379 GEOM::GEOM_Object_ptr anObj =
1380 my3DPrimOp->MakePipeBiNormalAlongVector(theBase, thePath, theVec);
1381 endService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1386 //=============================================================================
1388 //=============================================================================
1389 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFuse (GEOM::GEOM_Object_ptr theShape1,
1390 GEOM::GEOM_Object_ptr theShape2)
1392 beginService( " GEOM_Superv_i::MakeFuse" );
1393 MESSAGE("GEOM_Superv_i::MakeFuse");
1395 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeBoolean(theShape1, theShape2, 3);
1396 endService( " GEOM_Superv_i::MakeFuse" );
1400 //=============================================================================
1402 //=============================================================================
1403 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePartition (GEOM::GEOM_List_ptr theShapes,
1404 GEOM::GEOM_List_ptr theTools,
1405 GEOM::GEOM_List_ptr theKeepInside,
1406 GEOM::GEOM_List_ptr theRemoveInside,
1407 CORBA::Short theLimit,
1408 CORBA::Boolean theRemoveWebs,
1409 GEOM::GEOM_List_ptr theMaterials,
1410 CORBA::Short theKeepNonlimitShapes)
1412 beginService( " GEOM_Superv_i::MakePartition" );
1413 MESSAGE("GEOM_Superv_i::MakePartition");
1414 GEOM_List_i<GEOM::ListOfGO>* aListImplS =
1415 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in());
1416 GEOM_List_i<GEOM::ListOfGO>* aListImplT =
1417 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theTools, myPOA).in());
1418 GEOM_List_i<GEOM::ListOfGO>* aListImplKI =
1419 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theKeepInside, myPOA).in());
1420 GEOM_List_i<GEOM::ListOfGO>* aListImplRI =
1421 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theRemoveInside, myPOA).in());
1422 GEOM_List_i<GEOM::ListOfLong>* aListImplM =
1423 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theMaterials, myPOA).in());
1424 if (aListImplS && aListImplT && aListImplKI && aListImplRI && aListImplM) {
1426 GEOM::GEOM_Object_ptr anObj =
1427 myBoolOp->MakePartition(aListImplS->GetList(), aListImplT->GetList(),
1428 aListImplKI->GetList(), aListImplRI->GetList(),
1429 theLimit, theRemoveWebs, aListImplM->GetList(),
1430 theKeepNonlimitShapes);
1431 endService( " GEOM_Superv_i::MakePartition" );
1434 endService( " GEOM_Superv_i::MakePartition" );
1438 //=============================================================================
1439 // MakeHalfPartition:
1440 //=============================================================================
1441 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHalfPartition (GEOM::GEOM_Object_ptr theShape,
1442 GEOM::GEOM_Object_ptr thePlane)
1444 beginService( " GEOM_Superv_i::MakeHalfPartition" );
1445 MESSAGE("GEOM_Superv_i::MakeHalfPartition");
1447 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeHalfPartition(theShape, thePlane);
1448 endService( " GEOM_Superv_i::MakeHalfPartition" );
1452 //============================== InsertOperations =============================
1453 //=============================================================================
1455 //=============================================================================
1456 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCopy (GEOM::GEOM_Object_ptr theOriginal)
1458 beginService( " GEOM_Superv_i::MakeCopy" );
1459 MESSAGE("GEOM_Superv_i::MakeCopy");
1461 GEOM::GEOM_Object_ptr anObj = myInsOp->MakeCopy(theOriginal);
1462 endService( " GEOM_Superv_i::MakeCopy" );
1466 //=============================================================================
1468 //=============================================================================
1469 void GEOM_Superv_i::Export (GEOM::GEOM_Object_ptr theObject,
1470 const char* theFileName,
1471 const char* theFormatName)
1473 beginService( " GEOM_Superv_i::Export" );
1474 MESSAGE("GEOM_Superv_i::Export");
1476 myInsOp->Export(theObject, theFileName, theFormatName);
1477 endService( " GEOM_Superv_i::Export" );
1480 //=============================================================================
1482 //=============================================================================
1483 GEOM::GEOM_Object_ptr GEOM_Superv_i::Import (const char* theFileName,
1484 const char* theFormatName)
1486 beginService( " GEOM_Superv_i::Import" );
1487 MESSAGE("GEOM_Superv_i::Import");
1489 GEOM::GEOM_Object_ptr anObj = myInsOp->Import(theFileName, theFormatName);
1490 endService( " GEOM_Superv_i::Import" );
1494 //=============================================================================
1495 // ImportTranslators:
1496 //=============================================================================
1497 void GEOM_Superv_i::ImportTranslators (GEOM::string_array_out theFormats,
1498 GEOM::string_array_out thePatterns)
1500 beginService( " GEOM_Superv_i::ImportTranslators" );
1501 MESSAGE("GEOM_Superv_i::ImportTranslators");
1503 myInsOp->ImportTranslators(theFormats, thePatterns);
1504 endService( " GEOM_Superv_i::ImportTranslators" );
1507 //=============================================================================
1508 // ExportTranslators:
1509 //=============================================================================
1510 void GEOM_Superv_i::ExportTranslators (GEOM::string_array_out theFormats,
1511 GEOM::string_array_out thePatterns)
1513 beginService( " GEOM_Superv_i::ExportTranslators" );
1514 MESSAGE("GEOM_Superv_i::ExportTranslators");
1516 myInsOp->ExportTranslators(theFormats, thePatterns);
1517 endService( " GEOM_Superv_i::ExportTranslators" );
1520 //============================= TransformOperations ===========================
1521 //=============================================================================
1522 // TranslateTwoPoints:
1523 //=============================================================================
1524 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPoints (GEOM::GEOM_Object_ptr theObject,
1525 GEOM::GEOM_Object_ptr thePoint1,
1526 GEOM::GEOM_Object_ptr thePoint2)
1528 beginService( " GEOM_Superv_i::TranslateTwoPoints" );
1529 MESSAGE("GEOM_Superv_i::TranslateTwoPoints");
1531 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPoints(theObject, thePoint1, thePoint2);
1532 endService( " GEOM_Superv_i::TranslateTwoPoints" );
1536 //=============================================================================
1537 // TranslateTwoPointsCopy:
1538 //=============================================================================
1539 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPointsCopy (GEOM::GEOM_Object_ptr theObject,
1540 GEOM::GEOM_Object_ptr thePoint1,
1541 GEOM::GEOM_Object_ptr thePoint2)
1543 beginService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1544 MESSAGE("GEOM_Superv_i::TranslateTwoPointsCopy");
1546 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPointsCopy(theObject, thePoint1, thePoint2);
1547 endService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1551 //=============================================================================
1553 //=============================================================================
1554 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZ (GEOM::GEOM_Object_ptr theObject,
1555 CORBA::Double theDX,
1556 CORBA::Double theDY,
1557 CORBA::Double theDZ)
1559 beginService( " GEOM_Superv_i::TranslateDXDYDZ" );
1560 MESSAGE("GEOM_Superv_i::TranslateDXDYDZ");
1562 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZ(theObject, theDX, theDY, theDZ);
1563 endService( " GEOM_Superv_i::TranslateDXDYDZ" );
1567 //=============================================================================
1568 // TranslateDXDYDZCopy:
1569 //=============================================================================
1570 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZCopy (GEOM::GEOM_Object_ptr theObject,
1571 CORBA::Double theDX,
1572 CORBA::Double theDY,
1573 CORBA::Double theDZ)
1575 beginService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1576 MESSAGE("GEOM_Superv_i::TranslateDXDYDZCopy");
1578 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZCopy(theObject, theDX, theDY, theDZ);
1579 endService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1583 //=============================================================================
1585 //=============================================================================
1586 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVector (GEOM::GEOM_Object_ptr theObject,
1587 GEOM::GEOM_Object_ptr theVector)
1589 beginService( " GEOM_Superv_i::TranslateVector" );
1590 MESSAGE("GEOM_Superv_i::TranslateVector");
1592 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVector(theObject, theVector);
1593 endService( " GEOM_Superv_i::TranslateVector" );
1597 //=============================================================================
1598 // TranslateVectorCopy:
1599 //=============================================================================
1600 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorCopy (GEOM::GEOM_Object_ptr theObject,
1601 GEOM::GEOM_Object_ptr theVector)
1603 beginService( " GEOM_Superv_i::TranslateVectorCopy" );
1604 MESSAGE("GEOM_Superv_i::TranslateVectorCopy");
1606 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorCopy(theObject, theVector);
1607 endService( " GEOM_Superv_i::TranslateVectorCopy" );
1611 //=============================================================================
1612 // TranslateVectorDistance:
1613 //=============================================================================
1614 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject,
1615 GEOM::GEOM_Object_ptr theVector,
1616 CORBA::Double theDistance,
1617 CORBA::Boolean theCopy)
1619 beginService( " GEOM_Superv_i::TranslateVectorDistance" );
1620 MESSAGE("GEOM_Superv_i::TranslateVectorDistance");
1622 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorDistance(theObject,
1623 theVector, theDistance, theCopy);
1624 endService( " GEOM_Superv_i::TranslateVectorDistance" );
1628 //=============================================================================
1629 // MultiTranslate1D:
1630 //=============================================================================
1631 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate1D (GEOM::GEOM_Object_ptr theObject,
1632 GEOM::GEOM_Object_ptr theVector,
1633 CORBA::Double theStep,
1634 CORBA::Long theNbTimes)
1636 beginService( " GEOM_Superv_i::MultiTranslate1D" );
1637 MESSAGE("GEOM_Superv_i::MultiTranslate1D");
1639 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate1D(theObject, theVector, theStep, theNbTimes);
1640 endService( " GEOM_Superv_i::MultiTranslate1D" );
1644 //=============================================================================
1645 // MultiTranslate2D:
1646 //=============================================================================
1647 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate2D (GEOM::GEOM_Object_ptr theObject,
1648 GEOM::GEOM_Object_ptr theVector1,
1649 CORBA::Double theStep1,
1650 CORBA::Long theNbTimes1,
1651 GEOM::GEOM_Object_ptr theVector2,
1652 CORBA::Double theStep2,
1653 CORBA::Long theNbTimes2)
1655 beginService( " GEOM_Superv_i::MultiTranslate2D" );
1656 MESSAGE("GEOM_Superv_i::MultiTranslate2D");
1658 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate2D(theObject, theVector1, theStep1, theNbTimes1,
1659 theVector2, theStep2, theNbTimes2);
1660 endService( " GEOM_Superv_i::MultiTranslate2D" );
1664 //=============================================================================
1666 //=============================================================================
1667 GEOM::GEOM_Object_ptr GEOM_Superv_i::Rotate (GEOM::GEOM_Object_ptr theObject,
1668 GEOM::GEOM_Object_ptr theAxis,
1669 CORBA::Double theAngle)
1671 beginService( " GEOM_Superv_i::Rotate" );
1672 MESSAGE("GEOM_Superv_i::Rotate");
1674 GEOM::GEOM_Object_ptr anObj = myTransfOp->Rotate(theObject, theAxis, theAngle);
1675 endService( " GEOM_Superv_i::Rotate" );
1679 //=============================================================================
1681 //=============================================================================
1682 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateCopy (GEOM::GEOM_Object_ptr theObject,
1683 GEOM::GEOM_Object_ptr theAxis,
1684 CORBA::Double theAngle)
1686 beginService( " GEOM_Superv_i::RotateCopy" );
1687 MESSAGE("GEOM_Superv_i::RotateCopy");
1689 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateCopy(theObject, theAxis, theAngle);
1690 endService( " GEOM_Superv_i::RotateCopy" );
1693 //=============================================================================
1694 // RotateThreePoints:
1695 //=============================================================================
1696 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePoints (GEOM::GEOM_Object_ptr theObject,
1697 GEOM::GEOM_Object_ptr theCentPoint,
1698 GEOM::GEOM_Object_ptr thePoint1,
1699 GEOM::GEOM_Object_ptr thePoint2)
1701 beginService( " GEOM_Superv_i::RotateThreePoints" );
1702 MESSAGE("GEOM_Superv_i::RotateThreePoints");
1704 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePoints(theObject, theCentPoint, thePoint1, thePoint2);
1705 endService( " GEOM_Superv_i::RotateThreePoints" );
1709 //=============================================================================
1710 // RotateThreePointsCopy:
1711 //=============================================================================
1712 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePointsCopy (GEOM::GEOM_Object_ptr theObject,
1713 GEOM::GEOM_Object_ptr theCentPoint,
1714 GEOM::GEOM_Object_ptr thePoint1,
1715 GEOM::GEOM_Object_ptr thePoint2)
1717 beginService( " GEOM_Superv_i::RotateThreePointsCopy" );
1718 MESSAGE("GEOM_Superv_i::RotateThreePointsCopy");
1720 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePointsCopy(theObject, theCentPoint, thePoint1, thePoint2);
1721 endService( " GEOM_Superv_i::RotateThreePointsCopy" );
1725 //=============================================================================
1727 //=============================================================================
1728 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate1D (GEOM::GEOM_Object_ptr theObject,
1729 GEOM::GEOM_Object_ptr theAxis,
1730 CORBA::Long theNbTimes)
1732 beginService( " GEOM_Superv_i::MultiRotate1D" );
1733 MESSAGE("GEOM_Superv_i::MultiRotate1D");
1735 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate1D(theObject, theAxis, theNbTimes);
1736 endService( " GEOM_Superv_i::MultiRotate1D" );
1740 //=============================================================================
1742 //=============================================================================
1743 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate2D (GEOM::GEOM_Object_ptr theObject,
1744 GEOM::GEOM_Object_ptr theAxis,
1745 CORBA::Double theAngle,
1746 CORBA::Long theNbTimes1,
1747 CORBA::Double theStep,
1748 CORBA::Long theNbTimes2)
1750 beginService( " GEOM_Superv_i::MultiRotate2D" );
1751 MESSAGE("GEOM_Superv_i::MultiRotate2D");
1753 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate2D(theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2);
1754 endService( " GEOM_Superv_i::MultiRotate2D" );
1758 //=============================================================================
1760 //=============================================================================
1761 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlane (GEOM::GEOM_Object_ptr theObject,
1762 GEOM::GEOM_Object_ptr thePlane)
1764 beginService( " GEOM_Superv_i::MirrorPlane" );
1765 MESSAGE("GEOM_Superv_i::MirrorPlane");
1767 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlane(theObject, thePlane);
1768 endService( " GEOM_Superv_i::MirrorPlane" );
1772 //=============================================================================
1774 //=============================================================================
1775 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlaneCopy (GEOM::GEOM_Object_ptr theObject,
1776 GEOM::GEOM_Object_ptr thePlane)
1778 beginService( " GEOM_Superv_i::MirrorPlaneCopy" );
1779 MESSAGE("GEOM_Superv_i::MirrorPlaneCopy");
1781 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlaneCopy(theObject, thePlane);
1782 endService( " GEOM_Superv_i::MirrorPlaneCopy" );
1786 //=============================================================================
1788 //=============================================================================
1789 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxis (GEOM::GEOM_Object_ptr theObject,
1790 GEOM::GEOM_Object_ptr theAxis)
1792 beginService( " GEOM_Superv_i::MirrorAxis" );
1793 MESSAGE("GEOM_Superv_i::MirrorAxis");
1795 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxis(theObject, theAxis);
1796 endService( " GEOM_Superv_i::MirrorAxis" );
1800 //=============================================================================
1802 //=============================================================================
1803 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxisCopy (GEOM::GEOM_Object_ptr theObject,
1804 GEOM::GEOM_Object_ptr theAxis)
1806 beginService( " GEOM_Superv_i::MirrorAxisCopy" );
1807 MESSAGE("GEOM_Superv_i::MirrorAxisCopy");
1809 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxisCopy(theObject, theAxis);
1810 endService( " GEOM_Superv_i::MirrorAxisCopy" );
1814 //=============================================================================
1816 //=============================================================================
1817 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPoint (GEOM::GEOM_Object_ptr theObject,
1818 GEOM::GEOM_Object_ptr thePoint)
1820 beginService( " GEOM_Superv_i::MirrorPoint" );
1821 MESSAGE("GEOM_Superv_i::MirrorPoint");
1823 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPoint(theObject, thePoint);
1824 endService( " GEOM_Superv_i::MirrorPoint" );
1828 //=============================================================================
1830 //=============================================================================
1831 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPointCopy (GEOM::GEOM_Object_ptr theObject,
1832 GEOM::GEOM_Object_ptr thePoint)
1834 beginService( " GEOM_Superv_i::MirrorPoint" );
1835 MESSAGE("GEOM_Superv_i::MirrorPointCopy");
1837 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPointCopy(theObject, thePoint);
1838 endService( " GEOM_Superv_i::MirrorPoint" );
1842 //=============================================================================
1844 //=============================================================================
1845 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShape (GEOM::GEOM_Object_ptr theObject,
1846 CORBA::Double theOffset)
1848 beginService( " GEOM_Superv_i::OffsetShape" );
1849 MESSAGE("GEOM_Superv_i::OffsetShape");
1851 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShape(theObject, theOffset);
1852 endService( " GEOM_Superv_i::OffsetShape" );
1856 //=============================================================================
1858 //=============================================================================
1859 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShapeCopy (GEOM::GEOM_Object_ptr theObject,
1860 CORBA::Double theOffset)
1862 beginService( " GEOM_Superv_i::OffsetShapeCopy" );
1863 MESSAGE("GEOM_Superv_i::OffsetShapeCopy");
1865 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShapeCopy(theObject, theOffset);
1866 endService( " GEOM_Superv_i::OffsetShapeCopy" );
1870 //=============================================================================
1872 //=============================================================================
1873 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShape (GEOM::GEOM_Object_ptr theObject,
1874 GEOM::GEOM_Object_ptr thePoint,
1875 CORBA::Double theFactor)
1877 beginService( " GEOM_Superv_i::ScaleShape" );
1878 MESSAGE("GEOM_Superv_i::ScaleShape");
1880 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShape(theObject, thePoint, theFactor);
1881 endService( " GEOM_Superv_i::ScaleShape" );
1885 //=============================================================================
1887 //=============================================================================
1888 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeCopy (GEOM::GEOM_Object_ptr theObject,
1889 GEOM::GEOM_Object_ptr thePoint,
1890 CORBA::Double theFactor)
1892 beginService( " GEOM_Superv_i::ScaleShapeCopy" );
1893 MESSAGE("GEOM_Superv_i::ScaleShapeCopy");
1895 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeCopy(theObject, thePoint, theFactor);
1896 endService( " GEOM_Superv_i::ScaleShapeCopy" );
1900 //=============================================================================
1901 // ScaleShapeAlongAxes:
1902 //=============================================================================
1903 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject,
1904 GEOM::GEOM_Object_ptr thePoint,
1905 CORBA::Double theFactorX,
1906 CORBA::Double theFactorY,
1907 CORBA::Double theFactorZ)
1909 beginService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1910 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxes");
1912 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxes
1913 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
1914 endService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1918 //=============================================================================
1919 // ScaleShapeAlongAxesCopy:
1920 //=============================================================================
1921 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject,
1922 GEOM::GEOM_Object_ptr thePoint,
1923 CORBA::Double theFactorX,
1924 CORBA::Double theFactorY,
1925 CORBA::Double theFactorZ)
1927 beginService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
1928 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxesCopy");
1930 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxesCopy
1931 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
1932 endService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
1936 //=============================================================================
1938 //=============================================================================
1939 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShape (GEOM::GEOM_Object_ptr theObject,
1940 GEOM::GEOM_Object_ptr theStartLCS,
1941 GEOM::GEOM_Object_ptr theEndLCS)
1943 beginService( " GEOM_Superv_i::PositionShape" );
1944 MESSAGE("GEOM_Superv_i::PositionShape");
1946 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShape(theObject, theStartLCS, theEndLCS);
1947 endService( " GEOM_Superv_i::PositionShape" );
1951 //=============================================================================
1952 // PositionShapeCopy:
1953 //=============================================================================
1954 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShapeCopy (GEOM::GEOM_Object_ptr theObject,
1955 GEOM::GEOM_Object_ptr theStartLCS,
1956 GEOM::GEOM_Object_ptr theEndLCS)
1958 beginService( " GEOM_Superv_i::PositionShapeCopy" );
1959 MESSAGE("GEOM_Superv_i::PositionShapeCopy");
1961 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShapeCopy(theObject, theStartLCS, theEndLCS);
1962 endService( " GEOM_Superv_i::PositionShapeCopy" );
1966 //=============================================================================
1967 // PositionAlongPath:
1968 //=============================================================================
1969 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionAlongPath (GEOM::GEOM_Object_ptr theObject,
1970 GEOM::GEOM_Object_ptr thePath,
1971 CORBA::Double theDistance,
1972 CORBA::Boolean theCopy,
1973 CORBA::Boolean theReverse)
1975 beginService( " GEOM_Superv_i::PositionAlongPath" );
1976 MESSAGE("GEOM_Superv_i::PositionAlongPath");
1978 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionAlongPath(theObject, thePath, theDistance, theCopy, theReverse);
1979 endService( " GEOM_Superv_i::PositionAlongPath" );
1983 //=============================== ShapesOperations ============================
1984 //=============================================================================
1986 //=============================================================================
1987 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdge (GEOM::GEOM_Object_ptr thePnt1,
1988 GEOM::GEOM_Object_ptr thePnt2)
1990 beginService( " GEOM_Superv_i::MakeEdge" );
1991 MESSAGE("GEOM_Superv_i::MakeEdge");
1993 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeEdge(thePnt1, thePnt2);
1994 endService( " GEOM_Superv_i::MakeEdge" );
1998 //=============================================================================
2000 //=============================================================================
2001 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeWire (GEOM::GEOM_List_ptr theEdgesAndWires,
2002 CORBA::Double theTolerance)
2004 beginService( " GEOM_Superv_i::MakeWire" );
2005 MESSAGE("GEOM_Superv_i::MakeWire");
2006 if (GEOM_List_i<GEOM::ListOfGO>* aListImplEW =
2007 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theEdgesAndWires, myPOA).in())) {
2009 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeWire(aListImplEW->GetList(), theTolerance);
2010 endService( " GEOM_Superv_i::MakeWire" );
2013 endService( " GEOM_Superv_i::MakeWire" );
2017 //=============================================================================
2019 //=============================================================================
2020 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFace (GEOM::GEOM_Object_ptr theWire,
2021 CORBA::Boolean isPlanarWanted)
2023 beginService( " GEOM_Superv_i::MakeFace" );
2024 MESSAGE("GEOM_Superv_i::MakeFace");
2026 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFace(theWire, isPlanarWanted);
2027 endService( " GEOM_Superv_i::MakeFace" );
2031 //=============================================================================
2033 //=============================================================================
2034 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceWires (GEOM::GEOM_List_ptr theWires,
2035 CORBA::Boolean isPlanarWanted)
2037 beginService( " GEOM_Superv_i::MakeFaceWires" );
2038 MESSAGE("GEOM_Superv_i::MakeFaceWires");
2039 if (GEOM_List_i<GEOM::ListOfGO>* aListImplW =
2040 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theWires, myPOA).in())) {
2042 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFaceWires(aListImplW->GetList(), isPlanarWanted);
2043 endService( " GEOM_Superv_i::MakeFaceWires" );
2046 endService( " GEOM_Superv_i::MakeFaceWires" );
2050 //=============================================================================
2052 //=============================================================================
2053 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeShell (GEOM::GEOM_List_ptr theFacesAndShells)
2055 beginService( " GEOM_Superv_i::MakeShell" );
2056 MESSAGE("GEOM_Superv_i::MakeShell");
2057 if (GEOM_List_i<GEOM::ListOfGO>* aListImplFS =
2058 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theFacesAndShells, myPOA).in())) {
2060 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeShell(aListImplFS->GetList());
2061 endService( " GEOM_Superv_i::MakeShell" );
2064 endService( " GEOM_Superv_i::MakeShell" );
2068 //=============================================================================
2070 //=============================================================================
2071 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShell (GEOM::GEOM_Object_ptr theShell)
2073 beginService( " GEOM_Superv_i::MakeSolidShell" );
2074 MESSAGE("GEOM_Superv_i::MakeSolidShell");
2076 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShell(theShell);
2077 endService( " GEOM_Superv_i::MakeSolidShell" );
2081 //=============================================================================
2083 //=============================================================================
2084 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShells (GEOM::GEOM_List_ptr theShells)
2086 beginService( " GEOM_Superv_i::MakeSolidShells" );
2087 MESSAGE("GEOM_Superv_i::MakeSolidShells");
2088 if (GEOM_List_i<GEOM::ListOfGO>* aListImplS =
2089 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShells, myPOA).in())) {
2091 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShells(aListImplS->GetList());
2092 endService( " GEOM_Superv_i::MakeSolidShells" );
2095 endService( " GEOM_Superv_i::MakeSolidShells" );
2099 //=============================================================================
2101 //=============================================================================
2102 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCompound (GEOM::GEOM_List_ptr theShapes)
2104 beginService( " GEOM_Superv_i::MakeCompound" );
2105 MESSAGE("GEOM_Superv_i::MakeCompound");
2106 if (GEOM_List_i<GEOM::ListOfGO>* aListImpl =
2107 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in())) {
2109 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeCompound(aListImpl->GetList());
2110 endService( " GEOM_Superv_i::MakeCompound" );
2113 endService( " GEOM_Superv_i::MakeCompound" );
2117 //=============================================================================
2119 //=============================================================================
2120 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFaces (GEOM::GEOM_Object_ptr theShape,
2121 CORBA::Double theTolerance,
2122 CORBA::Boolean doKeepNonSolids)
2124 beginService( " GEOM_Superv_i::MakeGlueFaces" );
2125 MESSAGE("GEOM_Superv_i::MakeGlueFaces");
2127 GEOM::GEOM_Object_ptr anObj =
2128 myShapesOp->MakeGlueFaces(theShape, theTolerance, doKeepNonSolids);
2129 endService( " GEOM_Superv_i::MakeGlueFaces" );
2133 //=============================================================================
2135 //=============================================================================
2136 GEOM::GEOM_List_ptr GEOM_Superv_i::GetGlueFaces (GEOM::GEOM_Object_ptr theShape,
2137 CORBA::Double theTolerance)
2139 beginService( " GEOM_Superv_i::GetGlueFaces" );
2140 MESSAGE("GEOM_Superv_i::GetGlueFaces");
2142 GEOM::ListOfGO* aList = myShapesOp->GetGlueFaces(theShape, theTolerance);
2143 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2144 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2145 endService( " GEOM_Superv_i::GetGlueFaces" );
2146 return aListPtr->_this();
2149 //=============================================================================
2150 // MakeGlueFacesByList:
2151 //=============================================================================
2152 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFacesByList (GEOM::GEOM_Object_ptr theShape,
2153 CORBA::Double theTolerance,
2154 const GEOM::ListOfGO& theFaces,
2155 CORBA::Boolean doKeepNonSolids)
2157 beginService( " GEOM_Superv_i::MakeGlueFacesByList" );
2158 MESSAGE("GEOM_Superv_i::MakeGlueFacesByList");
2160 GEOM::GEOM_Object_ptr anObj =
2161 myShapesOp->MakeGlueFacesByList(theShape, theTolerance, theFaces, doKeepNonSolids);
2162 endService( " GEOM_Superv_i::MakeGlueFacesByList" );
2166 //=============================================================================
2168 //=============================================================================
2169 GEOM::GEOM_List_ptr GEOM_Superv_i::MakeExplode (GEOM::GEOM_Object_ptr theShape,
2170 CORBA::Long theShapeType,
2171 CORBA::Boolean isSorted)
2173 beginService( " GEOM_Superv_i::MakeExplode" );
2174 MESSAGE("GEOM_Superv_i::MakeExplode");
2177 GEOM::ListOfGO* aList = myShapesOp->MakeExplode(theShape, theShapeType, isSorted);
2178 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2179 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2180 endService( " GEOM_Superv_i::MakeExplode" );
2181 return aListPtr->_this();
2184 //=============================================================================
2186 //=============================================================================
2187 CORBA::Long GEOM_Superv_i::NumberOfFaces (GEOM::GEOM_Object_ptr theShape)
2189 beginService( " GEOM_Superv_i::NumberOfFaces" );
2190 MESSAGE("GEOM_Superv_i::NumberOfFaces");
2192 CORBA::Long aRes = myShapesOp->NumberOfFaces(theShape);
2193 endService( " GEOM_Superv_i::NumberOfFaces" );
2197 //=============================================================================
2199 //=============================================================================
2200 CORBA::Long GEOM_Superv_i::NumberOfEdges (GEOM::GEOM_Object_ptr theShape)
2202 beginService( " GEOM_Superv_i::NumberOfEdges" );
2203 MESSAGE("GEOM_Superv_i::NumberOfEdges");
2205 CORBA::Long aRes = myShapesOp->NumberOfEdges(theShape);
2206 endService( " GEOM_Superv_i::NumberOfEdges" );
2211 //=============================================================================
2212 // ChangeOrientation:
2213 //=============================================================================
2214 GEOM::GEOM_Object_ptr GEOM_Superv_i::ChangeOrientation (GEOM::GEOM_Object_ptr theShape)
2216 beginService( " GEOM_Superv_i::ChangeOrientation" );
2217 MESSAGE("GEOM_Superv_i::ChangeOrientation");
2219 GEOM::GEOM_Object_ptr anObj = myShapesOp->ChangeOrientation(theShape);
2220 endService( " GEOM_Superv_i::ChangeOrientation" );
2225 //=============================================================================
2226 // GetShapesOnShape:
2227 //=============================================================================
2228 GEOM::GEOM_List_ptr GEOM_Superv_i::GetShapesOnShape
2229 (GEOM::GEOM_Object_ptr theCheckShape,
2230 GEOM::GEOM_Object_ptr theShape,
2231 CORBA::Short theShapeType,
2232 GEOM::shape_state theState)
2234 beginService( " GEOM_Superv_i::GetShapesOnShape" );
2235 MESSAGE("GEOM_Superv_i::GetShapesOnShape");
2237 GEOM::ListOfGO* aList =
2238 myShapesOp->GetShapesOnShape(theCheckShape, theShape, theShapeType, theState);
2239 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2240 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2241 endService( " GEOM_Superv_i::GetShapesOnShape" );
2242 return aListPtr->_this();
2246 //=============================================================================
2247 // GetShapesOnShapeAsCompound:
2248 //=============================================================================
2249 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetShapesOnShapeAsCompound
2250 (GEOM::GEOM_Object_ptr theCheckShape,
2251 GEOM::GEOM_Object_ptr theShape,
2252 CORBA::Short theShapeType,
2253 GEOM::shape_state theState)
2255 beginService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2256 MESSAGE("GEOM_Superv_i::GetShapesOnShapeAsCompound");
2258 GEOM::GEOM_Object_ptr anObj =
2259 myShapesOp->GetShapesOnShapeAsCompound(theCheckShape, theShape, theShapeType, theState);
2260 endService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2265 //=============================== BlocksOperations ============================
2266 //=============================================================================
2267 // MakeQuad4Vertices:
2268 //=============================================================================
2269 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad4Vertices (GEOM::GEOM_Object_ptr thePnt1,
2270 GEOM::GEOM_Object_ptr thePnt2,
2271 GEOM::GEOM_Object_ptr thePnt3,
2272 GEOM::GEOM_Object_ptr thePnt4)
2274 beginService( " GEOM_Superv_i::MakeQuad4Vertices" );
2275 MESSAGE("GEOM_Superv_i::MakeQuad4Vertices");
2277 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad4Vertices(thePnt1, thePnt2, thePnt3, thePnt4);
2278 endService( " GEOM_Superv_i::MakeQuad4Vertices" );
2282 //=============================================================================
2284 //=============================================================================
2285 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad (GEOM::GEOM_Object_ptr theEdge1,
2286 GEOM::GEOM_Object_ptr theEdge2,
2287 GEOM::GEOM_Object_ptr theEdge3,
2288 GEOM::GEOM_Object_ptr theEdge4)
2290 beginService( " GEOM_Superv_i::MakeQuad" );
2291 MESSAGE("GEOM_Superv_i::MakeQuad");
2293 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad(theEdge1, theEdge2, theEdge3, theEdge4);
2294 endService( " GEOM_Superv_i::MakeQuad" );
2298 //=============================================================================
2300 //=============================================================================
2301 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad2Edges (GEOM::GEOM_Object_ptr theEdge1,
2302 GEOM::GEOM_Object_ptr theEdge2)
2304 beginService( " GEOM_Superv_i::MakeQuad2Edges" );
2305 MESSAGE("GEOM_Superv_i::MakeQuad2Edges");
2307 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad2Edges(theEdge1, theEdge2);
2308 endService( " GEOM_Superv_i::MakeQuad2Edges" );
2312 //=============================================================================
2314 //=============================================================================
2315 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa (GEOM::GEOM_Object_ptr theFace1,
2316 GEOM::GEOM_Object_ptr theFace2,
2317 GEOM::GEOM_Object_ptr theFace3,
2318 GEOM::GEOM_Object_ptr theFace4,
2319 GEOM::GEOM_Object_ptr theFace5,
2320 GEOM::GEOM_Object_ptr theFace6)
2322 beginService( " GEOM_Superv_i::MakeHexa" );
2323 MESSAGE("GEOM_Superv_i::MakeHexa");
2325 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa(theFace1, theFace2, theFace3, theFace4, theFace5, theFace6);
2326 endService( " GEOM_Superv_i::MakeHexa" );
2330 //=============================================================================
2332 //=============================================================================
2333 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa2Faces (GEOM::GEOM_Object_ptr theFace1,
2334 GEOM::GEOM_Object_ptr theFace2)
2336 beginService( " GEOM_Superv_i::MakeHexa2Faces" );
2337 MESSAGE("GEOM_Superv_i::MakeHexa2Faces");
2339 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa2Faces(theFace1, theFace2);
2340 endService( " GEOM_Superv_i::MakeHexa2Faces" );
2344 //=============================================================================
2346 //=============================================================================
2347 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetPoint (GEOM::GEOM_Object_ptr theShape,
2351 CORBA::Double theEpsilon)
2353 beginService( " GEOM_Superv_i::GetPoint" );
2354 MESSAGE("GEOM_Superv_i::GetPoint");
2356 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetPoint(theShape, theX, theY, theZ, theEpsilon);
2357 endService( " GEOM_Superv_i::GetPoint" );
2361 //=============================================================================
2363 //=============================================================================
2364 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdge (GEOM::GEOM_Object_ptr theShape,
2365 GEOM::GEOM_Object_ptr thePoint1,
2366 GEOM::GEOM_Object_ptr thePoint2)
2368 beginService( " GEOM_Superv_i::GetEdge" );
2369 MESSAGE("GEOM_Superv_i::GetEdge");
2371 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdge(theShape, thePoint1, thePoint2);
2372 endService( " GEOM_Superv_i::GetEdge" );
2376 //=============================================================================
2377 // GetEdgeNearPoint:
2378 //=============================================================================
2379 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdgeNearPoint (GEOM::GEOM_Object_ptr theShape,
2380 GEOM::GEOM_Object_ptr thePoint)
2382 beginService( " GEOM_Superv_i::GetEdgeNearPoint" );
2383 MESSAGE("GEOM_Superv_i::GetEdgeNearPoint");
2385 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdgeNearPoint(theShape, thePoint);
2386 endService( " GEOM_Superv_i::GetEdgeNearPoint" );
2390 //=============================================================================
2392 //=============================================================================
2393 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByPoints (GEOM::GEOM_Object_ptr theShape,
2394 GEOM::GEOM_Object_ptr thePoint1,
2395 GEOM::GEOM_Object_ptr thePoint2,
2396 GEOM::GEOM_Object_ptr thePoint3,
2397 GEOM::GEOM_Object_ptr thePoint4)
2399 beginService( " GEOM_Superv_i::GetFaceByPoints" );
2400 MESSAGE("GEOM_Superv_i::GetFaceByPoints");
2402 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByPoints(theShape, thePoint1, thePoint2, thePoint3, thePoint4);
2403 endService( " GEOM_Superv_i::GetFaceByPoints" );
2407 //=============================================================================
2409 //=============================================================================
2410 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByEdges (GEOM::GEOM_Object_ptr theShape,
2411 GEOM::GEOM_Object_ptr theEdge1,
2412 GEOM::GEOM_Object_ptr theEdge2)
2414 beginService( " GEOM_Superv_i::GetFaceByEdges" );
2415 MESSAGE("GEOM_Superv_i::GetFaceByEdges");
2417 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByEdges(theShape, theEdge1, theEdge2);
2418 endService( " GEOM_Superv_i::GetFaceByEdges" );
2422 //=============================================================================
2424 //=============================================================================
2425 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetOppositeFace (GEOM::GEOM_Object_ptr theBlock,
2426 GEOM::GEOM_Object_ptr theFace)
2428 beginService( " GEOM_Superv_i::GetOppositeFace" );
2429 MESSAGE("GEOM_Superv_i::GetOppositeFace");
2431 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetOppositeFace(theBlock, theFace);
2432 endService( " GEOM_Superv_i::GetOppositeFace" );
2436 //=============================================================================
2437 // GetFaceNearPoint:
2438 //=============================================================================
2439 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceNearPoint (GEOM::GEOM_Object_ptr theShape,
2440 GEOM::GEOM_Object_ptr thePoint)
2442 beginService( " GEOM_Superv_i::GetFaceNearPoint" );
2443 MESSAGE("GEOM_Superv_i::GetFaceNearPoint");
2445 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceNearPoint(theShape, thePoint);
2446 endService( " GEOM_Superv_i::GetFaceNearPoint" );
2450 //=============================================================================
2451 // GetFaceByNormale:
2452 //=============================================================================
2453 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByNormale (GEOM::GEOM_Object_ptr theBlock,
2454 GEOM::GEOM_Object_ptr theVector)
2456 beginService( " GEOM_Superv_i::GetFaceByNormale" );
2457 MESSAGE("GEOM_Superv_i::GetFaceByNormale");
2459 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByNormale(theBlock, theVector);
2460 endService( " GEOM_Superv_i::GetFaceByNormale" );
2464 //=============================================================================
2465 // IsCompoundOfBlocks:
2466 //=============================================================================
2467 CORBA::Boolean GEOM_Superv_i::IsCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2468 CORBA::Long theMinNbFaces,
2469 CORBA::Long theMaxNbFaces,
2470 CORBA::Long& theNbBlocks)
2472 beginService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2473 MESSAGE("GEOM_Superv_i::IsCompoundOfBlocks");
2475 CORBA::Boolean aRes = myBlocksOp->IsCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces, theNbBlocks);
2476 endService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2480 //=============================================================================
2481 // CheckCompoundOfBlocks:
2482 //=============================================================================
2483 CORBA::Boolean GEOM_Superv_i::CheckCompoundOfBlocks
2484 (GEOM::GEOM_Object_ptr theCompound,
2485 GEOM::GEOM_IBlocksOperations::BCErrors_out theErrors)
2487 beginService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2488 MESSAGE("GEOM_Superv_i::CheckCompoundOfBlocks");
2490 CORBA::Boolean aRes = myBlocksOp->CheckCompoundOfBlocks(theCompound, theErrors);
2491 endService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2495 //=============================================================================
2497 //=============================================================================
2498 char* GEOM_Superv_i::PrintBCErrors (GEOM::GEOM_Object_ptr theCompound,
2499 const GEOM::GEOM_IBlocksOperations::BCErrors& theErrors)
2501 beginService( " GEOM_Superv_i::PrintBCErrors" );
2502 MESSAGE("GEOM_Superv_i::PrintBCErrors");
2504 char* anErrors = myBlocksOp->PrintBCErrors(theCompound, theErrors);
2505 endService( " GEOM_Superv_i::PrintBCErrors" );
2509 //=============================================================================
2510 // ExplodeCompoundOfBlocks:
2511 //=============================================================================
2512 GEOM::GEOM_List_ptr GEOM_Superv_i::ExplodeCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2513 CORBA::Long theMinNbFaces,
2514 CORBA::Long theMaxNbFaces)
2516 beginService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2517 MESSAGE("GEOM_Superv_i::ExplodeCompoundOfBlocks");
2519 GEOM::ListOfGO* aBlocks = myBlocksOp->ExplodeCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces);
2520 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2521 endService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2522 return aListPtr->_this();
2525 //=============================================================================
2526 // GetBlockNearPoint:
2527 //=============================================================================
2528 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockNearPoint (GEOM::GEOM_Object_ptr theCompound,
2529 GEOM::GEOM_Object_ptr thePoint)
2531 beginService( " GEOM_Superv_i::GetBlockNearPoint" );
2532 MESSAGE("GEOM_Superv_i::GetBlockNearPoint");
2534 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockNearPoint(theCompound, thePoint);
2535 endService( " GEOM_Superv_i::GetBlockNearPoint" );
2539 //=============================================================================
2541 //=============================================================================
2542 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockByParts (GEOM::GEOM_Object_ptr theCompound,
2543 GEOM::GEOM_List_ptr theParts)
2545 beginService( " GEOM_Superv_i::GetBlockByParts" );
2546 MESSAGE("GEOM_Superv_i::GetBlockByParts");
2547 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2548 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2550 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockByParts(theCompound, aListImplP->GetList());
2551 endService( " GEOM_Superv_i::GetBlockByParts" );
2554 endService( " GEOM_Superv_i::GetBlockByParts" );
2558 //=============================================================================
2559 // GetBlocksByParts:
2560 //=============================================================================
2561 GEOM::GEOM_List_ptr GEOM_Superv_i::GetBlocksByParts (GEOM::GEOM_Object_ptr theCompound,
2562 GEOM::GEOM_List_ptr theParts)
2564 beginService( " GEOM_Superv_i::GetBlocksByParts" );
2565 MESSAGE("GEOM_Superv_i::GetBlocksByParts");
2566 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2567 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2570 GEOM::ListOfGO* aBlocks = myBlocksOp->GetBlocksByParts(theCompound, aListImplP->GetList());
2571 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2572 endService( " GEOM_Superv_i::GetBlocksByParts" );
2573 return aListPtr->_this();
2575 endService( " GEOM_Superv_i::GetBlocksByParts" );
2579 //=============================================================================
2580 // MakeMultiTransformation1D:
2581 //=============================================================================
2582 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation1D (GEOM::GEOM_Object_ptr theBlock,
2583 CORBA::Long theDirFace1,
2584 CORBA::Long theDirFace2,
2585 CORBA::Long theNbTimes)
2587 beginService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2588 MESSAGE("GEOM_Superv_i::MakeMultiTransformation1D");
2590 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation1D(theBlock, theDirFace1, theDirFace2, theNbTimes);
2591 endService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2595 //=============================================================================
2596 // MakeMultiTransformation2D:
2597 //=============================================================================
2598 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation2D
2599 (GEOM::GEOM_Object_ptr theBlock,
2600 CORBA::Long theDirFace1U,
2601 CORBA::Long theDirFace2U,
2602 CORBA::Long theNbTimesU,
2603 CORBA::Long theDirFace1V,
2604 CORBA::Long theDirFace2V,
2605 CORBA::Long theNbTimesV)
2607 beginService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2608 MESSAGE("GEOM_Superv_i::MakeMultiTransformation2D");
2610 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation2D(theBlock,
2611 theDirFace1U, theDirFace2U, theNbTimesU,
2612 theDirFace1V, theDirFace2V, theNbTimesV);
2613 endService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2617 //=============================== CurvesOperations ============================
2618 //=============================================================================
2619 // MakeCirclePntVecR:
2620 //=============================================================================
2621 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCirclePntVecR (GEOM::GEOM_Object_ptr theCenter,
2622 GEOM::GEOM_Object_ptr theVector,
2625 beginService( " GEOM_Superv_i::MakeCirclePntVecR" );
2626 MESSAGE("GEOM_Superv_i::MakeCirclePntVecR");
2628 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCirclePntVecR(theCenter, theVector, theR);
2629 endService( " GEOM_Superv_i::MakeCirclePntVecR" );
2633 //=============================================================================
2634 // MakeCircleThreePnt:
2635 //=============================================================================
2636 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleThreePnt (GEOM::GEOM_Object_ptr thePnt1,
2637 GEOM::GEOM_Object_ptr thePnt2,
2638 GEOM::GEOM_Object_ptr thePnt3)
2640 beginService( " GEOM_Superv_i::MakeCircleThreePnt" );
2641 MESSAGE("GEOM_Superv_i::MakeCircleThreePnt");
2643 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleThreePnt(thePnt1, thePnt2, thePnt3);
2644 endService( " GEOM_Superv_i::MakeCircleThreePnt" );
2647 //=============================================================================
2648 // MakeCircleCenter2Pnt:
2649 //=============================================================================
2650 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleCenter2Pnt (GEOM::GEOM_Object_ptr thePnt1,
2651 GEOM::GEOM_Object_ptr thePnt2,
2652 GEOM::GEOM_Object_ptr thePnt3)
2654 beginService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2655 MESSAGE("GEOM_Superv_i::MakeCircleCenter2Pnt");
2657 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleCenter2Pnt(thePnt1, thePnt2, thePnt3);
2658 endService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2662 //=============================================================================
2664 //=============================================================================
2665 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipse (GEOM::GEOM_Object_ptr theCenter,
2666 GEOM::GEOM_Object_ptr theVector,
2667 CORBA::Double theRMajor,
2668 CORBA::Double theRMinor)
2670 beginService( " GEOM_Superv_i::MakeEllipse" );
2671 MESSAGE("GEOM_Superv_i::MakeEllipse");
2673 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipse(theCenter, theVector, theRMajor, theRMinor);
2674 endService( " GEOM_Superv_i::MakeEllipse" );
2678 //=============================================================================
2680 //=============================================================================
2681 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipseVec (GEOM::GEOM_Object_ptr theCenter,
2682 GEOM::GEOM_Object_ptr theVector,
2683 CORBA::Double theRMajor,
2684 CORBA::Double theRMinor,
2685 GEOM::GEOM_Object_ptr theVectorMajor)
2687 beginService( " GEOM_Superv_i::MakeEllipseVec" );
2688 MESSAGE("GEOM_Superv_i::MakeEllipseVec");
2690 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipseVec(theCenter, theVector, theRMajor, theRMinor, theVectorMajor);
2691 endService( " GEOM_Superv_i::MakeEllipseVec" );
2695 //=============================================================================
2697 //=============================================================================
2698 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArc (GEOM::GEOM_Object_ptr thePnt1,
2699 GEOM::GEOM_Object_ptr thePnt2,
2700 GEOM::GEOM_Object_ptr thePnt3)
2702 beginService( " GEOM_Superv_i::MakeArc" );
2703 MESSAGE("GEOM_Superv_i::MakeArc");
2705 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArc(thePnt1, thePnt2, thePnt3);
2706 endService( " GEOM_Superv_i::MakeArc" );
2710 //=============================================================================
2712 //=============================================================================
2713 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcCenter (GEOM::GEOM_Object_ptr theCenter,
2714 GEOM::GEOM_Object_ptr thePnt1,
2715 GEOM::GEOM_Object_ptr thePnt2,
2716 CORBA::Boolean theSense)
2718 beginService( " GEOM_Superv_i::MakeArcCenter" );
2719 MESSAGE("GEOM_Superv_i::MakeArcCenter");
2721 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcCenter(theCenter, thePnt1, thePnt2,theSense);
2722 endService( " GEOM_Superv_i::MakeArcCenter" );
2726 //=============================================================================
2727 // MakeArcOfEllipse:
2728 //=============================================================================
2729 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1,
2730 GEOM::GEOM_Object_ptr thePnt2,
2731 GEOM::GEOM_Object_ptr thePnt3)
2733 beginService( " GEOM_Superv_i::MakeArcOfEllipse" );
2734 MESSAGE("GEOM_Superv_i::MakeArcOfEllipse");
2736 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcOfEllipse(thePnt1, thePnt2, thePnt3);
2737 endService( " GEOM_Superv_i::MakeArcOfEllipse" );
2741 //=============================================================================
2743 //=============================================================================
2744 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePolyline (GEOM::GEOM_List_ptr thePoints)
2746 beginService( " GEOM_Superv_i::MakePolyline" );
2747 MESSAGE("GEOM_Superv_i::MakePolyline");
2748 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2749 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2751 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakePolyline(aListImplP->GetList());
2752 endService( " GEOM_Superv_i::MakePolyline" );
2755 endService( " GEOM_Superv_i::MakePolyline" );
2759 //=============================================================================
2760 // MakeSplineBezier:
2761 //=============================================================================
2762 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineBezier (GEOM::GEOM_List_ptr thePoints)
2764 beginService( " GEOM_Superv_i::MakeSplineBezier" );
2765 MESSAGE("GEOM_Superv_i::MakeSplineBezier");
2766 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2767 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2769 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineBezier(aListImplP->GetList());
2770 endService( " GEOM_Superv_i::MakeSplineBezier" );
2773 endService( " GEOM_Superv_i::MakeSplineBezier" );
2777 //=============================================================================
2778 // MakeSplineInterpolation:
2779 //=============================================================================
2780 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints,
2781 CORBA::Boolean theIsClosed)
2783 beginService( " GEOM_Superv_i::MakeSplineInterpolation" );
2784 MESSAGE("GEOM_Superv_i::MakeSplineInterpolation");
2785 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2786 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2788 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineInterpolation(aListImplP->GetList(), theIsClosed);
2789 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2792 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2796 //=============================================================================
2798 //=============================================================================
2799 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSketcher (const char* theCommand,
2800 GEOM::GEOM_List_ptr theWorkingPlane)
2802 beginService( " GEOM_Superv_i::MakeSketcher" );
2803 MESSAGE("GEOM_Superv_i::MakeSketcher");
2804 if (GEOM_List_i<GEOM::ListOfDouble>* aListImplWP =
2805 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theWorkingPlane, myPOA).in())) {
2807 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSketcher(theCommand, aListImplWP->GetList());
2808 endService( " GEOM_Superv_i::MakeSketcher" );
2811 endService( " GEOM_Superv_i::MakeSketcher" );
2815 //=============================================================================
2817 //=============================================================================
2818 GEOM::GEOM_Object_ptr GEOM_Superv_i::Make3DSketcher ( GEOM::GEOM_List_ptr theCoordinates)
2820 beginService( " GEOM_Superv_i::Make3DSketcher" );
2821 MESSAGE("GEOM_Superv_i::Make3DSketcher");
2822 if (GEOM_List_i<GEOM::ListOfDouble>* aListImpl =
2823 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theCoordinates, myPOA).in())) {
2825 GEOM::GEOM_Object_ptr anObj = myCurvesOp->Make3DSketcher(aListImpl->GetList());
2826 endService( " GEOM_Superv_i::Make3DSketcher" );
2829 endService( " GEOM_Superv_i::Make3DSketcher" );
2833 //=============================== LocalOperations =============================
2834 //=============================================================================
2836 //=============================================================================
2837 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletAll (GEOM::GEOM_Object_ptr theShape,
2840 beginService( " GEOM_Superv_i::MakeFilletAll" );
2841 MESSAGE("GEOM_Superv_i::MakeFilletAllMakeSketcher");
2843 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletAll(theShape, theR);
2844 endService( " GEOM_Superv_i::MakeFilletAll" );
2848 //=============================================================================
2850 //=============================================================================
2851 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdges (GEOM::GEOM_Object_ptr theShape,
2853 GEOM::GEOM_List_ptr theEdges)
2855 beginService( " GEOM_Superv_i::MakeFilletEdges" );
2856 MESSAGE("GEOM_Superv_i::MakeFilletEdges");
2857 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2858 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2860 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdges(theShape, theR, aListImplE->GetList());
2861 endService( " GEOM_Superv_i::MakeFilletEdges" );
2864 endService( " GEOM_Superv_i::MakeFilletEdges" );
2868 //=============================================================================
2869 // MakeFilletEdges R1 R2:
2870 //=============================================================================
2871 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdgesR1R2 (GEOM::GEOM_Object_ptr theShape,
2872 CORBA::Double theR1,
2873 CORBA::Double theR2,
2874 GEOM::GEOM_List_ptr theEdges)
2876 beginService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2877 MESSAGE("GEOM_Superv_i::MakeFilletEdgesR1R2");
2878 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2879 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2881 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdgesR1R2(theShape, theR1,
2882 theR2, aListImplE->GetList());
2883 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2886 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2890 //=============================================================================
2892 //=============================================================================
2893 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFaces (GEOM::GEOM_Object_ptr theShape,
2895 GEOM::GEOM_List_ptr theFaces)
2897 beginService( " GEOM_Superv_i::MakeFilletFaces" );
2898 MESSAGE("GEOM_Superv_i::MakeFilletFaces");
2899 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
2900 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
2902 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFaces(theShape, theR, aListImplF->GetList());
2903 endService( " GEOM_Superv_i::MakeFilletFaces" );
2906 endService( " GEOM_Superv_i::MakeFilletFaces" );
2910 //=============================================================================
2911 // MakeFilletFaces R1 R2:
2912 //=============================================================================
2913 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFacesR1R2 (GEOM::GEOM_Object_ptr theShape,
2914 CORBA::Double theR1,
2915 CORBA::Double theR2,
2916 GEOM::GEOM_List_ptr theFaces)
2918 beginService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
2919 MESSAGE("GEOM_Superv_i::MakeFilletFacesR1R2");
2920 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
2921 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
2923 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFacesR1R2(theShape, theR1, theR2,
2924 aListImplF->GetList());
2925 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
2928 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
2932 //=============================================================================
2934 //=============================================================================
2935 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet2D (GEOM::GEOM_Object_ptr theShape,
2937 GEOM::GEOM_List_ptr theVertexes)
2939 beginService( " GEOM_Superv_i::MakeFillet2D" );
2940 MESSAGE("GEOM_Superv_i::MakeFillet2D");
2941 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
2942 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
2944 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet2D(theShape, theR, aListImplV->GetList());
2945 endService( " GEOM_Superv_i::MakeFillet2D" );
2948 endService( " GEOM_Superv_i::MakeFillet2D" );
2952 //=============================================================================
2954 //=============================================================================
2955 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet1D (GEOM::GEOM_Object_ptr theShape,
2957 GEOM::GEOM_List_ptr theVertexes)
2959 beginService( " GEOM_Superv_i::MakeFillet1D" );
2960 MESSAGE("GEOM_Superv_i::MakeFillet1D");
2961 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
2962 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
2964 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet1D(theShape, theR, aListImplV->GetList());
2965 endService( " GEOM_Superv_i::MakeFillet1D" );
2968 endService( " GEOM_Superv_i::MakeFillet1D" );
2972 //=============================================================================
2974 //=============================================================================
2975 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferAll (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD)
2977 beginService( " GEOM_Superv_i::MakeChamferAll" );
2978 MESSAGE("GEOM_Superv_i::MakeChamferAll");
2980 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferAll(theShape, theD);
2981 endService( " GEOM_Superv_i::MakeChamferAll" );
2985 //=============================================================================
2987 //=============================================================================
2988 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdge (GEOM::GEOM_Object_ptr theShape,
2989 CORBA::Double theD1, CORBA::Double theD2,
2990 CORBA::Long theFace1, CORBA::Long theFace2)
2992 beginService( " GEOM_Superv_i::MakeChamferEdge" );
2993 MESSAGE("GEOM_Superv_i::MakeChamferEdge");
2995 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdge(theShape, theD1, theD2, theFace1, theFace2);
2996 endService( " GEOM_Superv_i::MakeChamferEdge" );
3000 //=============================================================================
3001 // MakeChamferEdgeAD:
3002 //=============================================================================
3003 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgeAD (GEOM::GEOM_Object_ptr theShape,
3004 CORBA::Double theD, CORBA::Double theAngle,
3005 CORBA::Long theFace1, CORBA::Long theFace2)
3007 beginService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3008 MESSAGE("GEOM_Superv_i::MakeChamferEdgeAD");
3010 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgeAD(theShape, theD, theAngle, theFace1, theFace2);
3011 endService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3015 //=============================================================================
3016 // MakeChamferFaces:
3017 //=============================================================================
3018 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFaces (GEOM::GEOM_Object_ptr theShape,
3019 CORBA::Double theD1, CORBA::Double theD2,
3020 GEOM::GEOM_List_ptr theFaces)
3022 beginService( " GEOM_Superv_i::MakeChamferFaces" );
3023 MESSAGE("GEOM_Superv_i::MakeChamferFaces");
3024 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3025 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3027 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFaces(theShape, theD1, theD2, aListImplF->GetList());
3028 endService( " GEOM_Superv_i::MakeChamferFaces" );
3031 endService( " GEOM_Superv_i::MakeChamferFaces" );
3035 //=============================================================================
3036 // MakeChamferFacesAD:
3037 //=============================================================================
3038 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFacesAD (GEOM::GEOM_Object_ptr theShape,
3039 CORBA::Double theD, CORBA::Double theAngle,
3040 GEOM::GEOM_List_ptr theFaces)
3042 beginService( " GEOM_Superv_i::MakeChamferFacesAD" );
3043 MESSAGE("GEOM_Superv_i::MakeChamferFacesAD");
3044 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3045 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3047 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFacesAD(theShape, theD, theAngle, aListImplF->GetList());
3048 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3051 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3055 //=============================================================================
3056 // MakeChamferEdges:
3057 //=============================================================================
3058 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdges (GEOM::GEOM_Object_ptr theShape,
3059 CORBA::Double theD1, CORBA::Double theD2,
3060 GEOM::GEOM_List_ptr theEdges)
3062 beginService( " GEOM_Superv_i::MakeChamferEdges" );
3063 MESSAGE("GEOM_Superv_i::MakeChamferEdges");
3064 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3065 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3067 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdges(theShape, theD1, theD2, aListImplF->GetList());
3068 endService( " GEOM_Superv_i::MakeChamferEdges" );
3071 endService( " GEOM_Superv_i::MakeChamferEdges" );
3075 //=============================================================================
3076 // MakeChamferEdgesAD:
3077 //=============================================================================
3078 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgesAD (GEOM::GEOM_Object_ptr theShape,
3079 CORBA::Double theD, CORBA::Double theAngle,
3080 GEOM::GEOM_List_ptr theEdges)
3082 beginService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3083 MESSAGE("GEOM_Superv_i::MakeChamferEdgesAD");
3084 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3085 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3087 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgesAD(theShape, theD, theAngle, aListImplF->GetList());
3088 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3091 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3095 //=============================================================================
3097 //=============================================================================
3098 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArchimede (GEOM::GEOM_Object_ptr theShape,
3099 CORBA::Double theWeight,
3100 CORBA::Double theWaterDensity,
3101 CORBA::Double theMeshingDeflection)
3103 beginService( " GEOM_Superv_i::MakeArchimede" );
3104 MESSAGE("GEOM_Superv_i::MakeArchimede");
3106 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeArchimede(theShape, theWeight, theWaterDensity, theMeshingDeflection);
3107 endService( " GEOM_Superv_i::MakeArchimede" );
3111 //=============================================================================
3112 // GetSubShapeIndexMakeFilletAll:
3113 //=============================================================================
3114 CORBA::Long GEOM_Superv_i::GetSubShapeIndex (GEOM::GEOM_Object_ptr theShape,
3115 GEOM::GEOM_Object_ptr theSubShape)
3117 beginService( " GEOM_Superv_i::GetSubShapeIndex" );
3118 MESSAGE("GEOM_Superv_i::GetSubShapeIndexMakeArchimede");
3120 CORBA::Long aRes = myLocalOp->GetSubShapeIndex(theShape, theSubShape);
3121 endService( " GEOM_Superv_i::GetSubShapeIndex" );
3125 //=============================== GroupOperations =============================
3126 //=============================================================================
3128 //=============================================================================
3129 GEOM::GEOM_Object_ptr GEOM_Superv_i::CreateGroup (GEOM::GEOM_Object_ptr theMainShape,
3130 CORBA::Long theShapeType)
3132 beginService( " GEOM_Superv_i::CreateGroup" );
3133 MESSAGE("GEOM_Superv_i::CreateGroup");
3135 GEOM::GEOM_Object_ptr anObj = myGroupOp->CreateGroup(theMainShape, theShapeType);
3136 endService( " GEOM_Superv_i::CreateGroup" );
3140 //=============================================================================
3142 //=============================================================================
3143 void GEOM_Superv_i::AddObject (GEOM::GEOM_Object_ptr theGroup,
3144 CORBA::Long theSubShapeId)
3146 beginService( " GEOM_Superv_i::AddObject" );
3147 MESSAGE("GEOM_Superv_i::AddObject");
3149 myGroupOp->AddObject(theGroup, theSubShapeId);
3150 endService( " GEOM_Superv_i::AddObject" );
3153 //=============================================================================
3155 //=============================================================================
3156 void GEOM_Superv_i::RemoveObject (GEOM::GEOM_Object_ptr theGroup,
3157 CORBA::Long theSubShapeId)
3159 beginService( " GEOM_Superv_i::RemoveObject" );
3160 MESSAGE("GEOM_Superv_i::RemoveObject");
3162 myGroupOp->RemoveObject(theGroup, theSubShapeId);
3163 endService( " GEOM_Superv_i::RemoveObject" );
3166 //=============================================================================
3168 //=============================================================================
3169 CORBA::Long GEOM_Superv_i::GetType (GEOM::GEOM_Object_ptr theGroup)
3171 beginService( " GEOM_Superv_i::GetType" );
3172 MESSAGE("GEOM_Superv_i::GetType");
3174 CORBA::Long aResult = myGroupOp->GetType(theGroup);
3175 endService( " GEOM_Superv_i::GetType" );
3179 //=============================================================================
3181 //=============================================================================
3182 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetMainShape (GEOM::GEOM_Object_ptr theGroup)
3184 beginService( " GEOM_Superv_i::GetMainShape" );
3185 MESSAGE("GEOM_Superv_i::GetMainShape");
3187 GEOM::GEOM_Object_ptr anObj = myGroupOp->GetMainShape(theGroup);
3188 endService( " GEOM_Superv_i::GetMainShape" );
3192 //=============================================================================
3194 //=============================================================================
3195 GEOM::GEOM_List_ptr GEOM_Superv_i::GetObjects (GEOM::GEOM_Object_ptr theGroup)
3197 beginService( " GEOM_Superv_i::GetObjects" );
3198 MESSAGE("GEOM_Superv_i::GetObjects");
3201 GEOM::ListOfLong* aList = myGroupOp->GetObjects(theGroup);
3202 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>(*(aList));
3203 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
3204 endService( " GEOM_Superv_i::GetObjects" );
3205 return aListPtr->_this();
3208 //=============================== Advanced Operations =============================
3209 //=============================================================================
3211 //=============================================================================
3212 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShape (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3213 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2, CORBA::Boolean theHexMesh)
3215 beginService( " GEOM_Superv_i::MakePipeTShape" );
3216 MESSAGE("GEOM_Superv_i::MakePipeTShape");
3219 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShape(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh);
3220 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3221 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3222 endService( " GEOM_Superv_i::MakePipeTShape" );
3223 return aSeqPtr->_this();
3226 //=============================================================================
3227 // MakePipeTShapeWithPosition
3228 //=============================================================================
3229 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeWithPosition (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3230 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2, CORBA::Boolean theHexMesh,
3231 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3233 beginService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3234 MESSAGE("GEOM_Superv_i::MakePipeTShapeWithPosition");
3237 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh, theP1, theP2, theP3);
3238 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3239 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3240 endService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3241 return aSeqPtr->_this();
3244 //=============================================================================
3245 // MakePipeTShapeChamfer
3246 //=============================================================================
3247 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamfer (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3248 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3249 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh)
3251 beginService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3252 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamfer");
3255 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamfer(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh);
3256 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3257 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3258 endService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3259 return aSeqPtr->_this();
3262 //=============================================================================
3263 // MakePipeTShapeChamferWithPosition
3264 //=============================================================================
3265 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamferWithPosition (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3266 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3267 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh,
3268 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3270 beginService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3271 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamferWithPosition");
3274 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamferWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh, theP1, theP2, theP3);
3275 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3276 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3277 endService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3278 return aSeqPtr->_this();
3281 //=============================================================================
3282 // MakePipeTShapeFillet
3283 //=============================================================================
3284 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFillet (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3285 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3286 CORBA::Double theRF, CORBA::Boolean theHexMesh)
3288 beginService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3289 MESSAGE("GEOM_Superv_i::MakePipeTShapeFillet");
3292 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFillet(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh);
3293 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3294 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3295 endService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3296 return aSeqPtr->_this();
3299 //=============================================================================
3300 // MakePipeTShapeFilletWithPosition
3301 //=============================================================================
3302 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFilletWithPosition (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3303 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3304 CORBA::Double theRF, CORBA::Boolean theHexMesh,
3305 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3307 beginService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3308 MESSAGE("GEOM_Superv_i::MakePipeTShapeFilletWithPosition");
3311 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFilletWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh, theP1, theP2, theP3);
3312 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3313 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3314 endService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3315 return aSeqPtr->_this();
3318 //=====================================================================================
3320 //=====================================================================================
3323 PortableServer::ObjectId * GEOM_SupervEngine_factory(CORBA::ORB_ptr orb,
3324 PortableServer::POA_ptr poa,
3325 PortableServer::ObjectId * contId,
3326 const char *instanceName,
3327 const char * interfaceName)
3329 GEOM_Superv_i * myGEOM_Superv_i = new GEOM_Superv_i(orb, poa, contId, instanceName, interfaceName);
3330 //Don't understand the reason why this component is registered ???
3331 // myGEOM_Superv_i->register_name("/myGEOM_Superv");
3332 return myGEOM_Superv_i->getId() ;