1 // Copyright (C) 2007-2012 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
22 #include "GEOM_Superv_i.hh"
23 #include "SALOME_LifeCycleCORBA.hxx"
25 #include CORBA_SERVER_HEADER(SALOME_Session)
26 #include "SALOMEDSClient_ClientFactory.hxx"
28 #define isNewStudy(a,b) (a > 0 && a != b)
30 //=============================================================================
32 //=============================================================================
33 GEOM_Superv_i::GEOM_Superv_i(CORBA::ORB_ptr orb,
34 PortableServer::POA_ptr poa,
35 PortableServer::ObjectId * contId,
36 const char *instanceName,
37 const char *interfaceName) :
38 Engines_Component_i(orb, poa, contId, instanceName, interfaceName)
40 MESSAGE("GEOM_Superv_i::GEOM_Superv_i");
43 _id = _poa->activate_object(_thisObj);
44 name_service = new SALOME_NamingService(_orb);
45 //get RootPOA (the default)
46 //myPOA = PortableServer::RefCountServantBase::_default_POA();
47 CORBA::Object_var anObj = _orb->resolve_initial_references("RootPOA");
48 myPOA = PortableServer::POA::_narrow(anObj);
55 myBasicOp = GEOM::GEOM_IBasicOperations::_nil();
56 my3DPrimOp = GEOM::GEOM_I3DPrimOperations::_nil();
57 myBoolOp = GEOM::GEOM_IBooleanOperations::_nil();
58 myInsOp = GEOM::GEOM_IInsertOperations::_nil();
59 myTransfOp = GEOM::GEOM_ITransformOperations::_nil();
60 myShapesOp = GEOM::GEOM_IShapesOperations::_nil();
61 myBlocksOp = GEOM::GEOM_IBlocksOperations::_nil();
62 myCurvesOp = GEOM::GEOM_ICurvesOperations::_nil();
63 myLocalOp = GEOM::GEOM_ILocalOperations::_nil();
64 myGroupOp = GEOM::GEOM_IGroupOperations::_nil();
67 //=============================================================================
69 //=============================================================================
70 GEOM_Superv_i::~GEOM_Superv_i()
72 MESSAGE("GEOM_Superv_i::~GEOM_Superv_i");
73 if (!CORBA::is_nil(myBasicOp))
74 myBasicOp->UnRegister();
75 if (!CORBA::is_nil(myBoolOp))
76 myBoolOp->UnRegister();
77 if (!CORBA::is_nil(my3DPrimOp))
78 my3DPrimOp->UnRegister();
82 //============================================================================
83 // function : register()
84 // purpose : register 'name' in 'name_service'
85 //============================================================================
86 void GEOM_Superv_i::register_name(char * name)
88 GEOM::GEOM_Superv_var g = _this();
89 name_service->Register(g, name);
92 //=============================================================================
94 //=============================================================================
95 void GEOM_Superv_i::setGeomEngine()
97 if ( !CORBA::is_nil(myGeomEngine) )
100 // get GEOM_Gen engine
101 Engines::Container_var cont=GetContainerRef();
102 CORBA::String_var container_name=cont->name();
103 std::string shortName=container_name.in();
104 shortName=shortName.substr(12); // substract "/Containers/"
105 SALOME_LifeCycleCORBA* lcc = new SALOME_LifeCycleCORBA( name_service );
106 Engines::EngineComponent_var comp = lcc->FindOrLoad_Component( shortName.c_str(), "GEOM" );
109 myGeomEngine = GEOM::GEOM_Gen::_narrow(comp);
112 //=============================================================================
114 //=============================================================================
115 void GEOM_Superv_i::SetStudyID( CORBA::Long theId )
117 // mkr : PAL10770 -->
118 myLastStudyID = myStudyID;
120 CORBA::Object_ptr anObject = name_service->Resolve("/Kernel/Session");
121 if ( !CORBA::is_nil(anObject) ) {
122 SALOME::Session_var aSession = SALOME::Session::_narrow(anObject);
123 if ( !CORBA::is_nil(aSession) ) {
124 int aStudyID = aSession->GetActiveStudyId();
125 if ( theId != aStudyID && aStudyID > 0) { // mkr : IPAL12128
126 MESSAGE("Warning : given study ID theId="<<theId<<" is wrong and will be replaced by the value "<<aStudyID);
127 myStudyID = aStudyID;
130 myStudyID = theId; // mkr : IPAL12128
134 if ( isNewStudy(myLastStudyID,myStudyID) ) {
135 if (CORBA::is_nil(myGeomEngine)) setGeomEngine();
136 std::string anEngine = _orb->object_to_string( myGeomEngine );
138 CORBA::Object_var anObj = name_service->Resolve("/myStudyManager");
139 if ( !CORBA::is_nil(anObj) ) {
140 SALOMEDS::StudyManager_var aStudyManager = SALOMEDS::StudyManager::_narrow(anObj);
141 if ( !CORBA::is_nil(aStudyManager) ) {
142 _PTR(Study) aDSStudy = ClientFactory::Study(aStudyManager->GetStudyByID(myStudyID));
144 _PTR(SComponent) aSCO = aDSStudy->FindComponent(myGeomEngine->ComponentDataType());
146 _PTR(StudyBuilder) aBuilder = aDSStudy->NewBuilder();
147 if ( aBuilder ) aBuilder->LoadWith( aSCO, anEngine );
153 // mkr : PAL10770 <--
156 //=============================================================================
158 //=============================================================================
159 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfGO()
161 MESSAGE("GEOM_Superv_i::CreateListOfGO()");
162 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>();
163 return aListPtr->_this();
166 //=============================================================================
167 // AddItemToListOfGO:
168 //=============================================================================
169 void GEOM_Superv_i::AddItemToListOfGO(GEOM::GEOM_List_ptr& theList,
170 GEOM::GEOM_Object_ptr theObject)
172 MESSAGE("GEOM_Superv_i::AddItemToListOfGO(...)");
173 GEOM::GEOM_Object_var anObj = GEOM::GEOM_Object::_duplicate(theObject);
174 if (GEOM_List_i<GEOM::ListOfGO>* aList =
175 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theList, myPOA).in())) {
176 aList->AddObject(anObj);
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 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
239 // Try to get id of the study from the SALOME Session
240 if(myStudyID < 0 ) SetStudyID(-1);
241 myBasicOp = myGeomEngine->GetIBasicOperations(myStudyID);
245 //=============================================================================
247 //=============================================================================
248 void GEOM_Superv_i::get3DPrimOp()
250 if (CORBA::is_nil(myGeomEngine))
252 // get GEOM_I3DPrimOperations interface
253 if (CORBA::is_nil(my3DPrimOp) || isNewStudy(myLastStudyID,myStudyID)) {
254 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
255 // Try to get id of the study from the SALOME Session
256 if(myStudyID < 0 ) SetStudyID(-1);
257 my3DPrimOp = myGeomEngine->GetI3DPrimOperations(myStudyID);
261 //=============================================================================
263 //=============================================================================
264 void GEOM_Superv_i::getBoolOp()
266 if (CORBA::is_nil(myGeomEngine))
268 // get GEOM_IBooleanOperations interface
269 if (CORBA::is_nil(myBoolOp) || isNewStudy(myLastStudyID,myStudyID)) {
270 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
271 // Try to get id of the study from the SALOME Session
272 if(myStudyID < 0 ) SetStudyID(-1);
273 myBoolOp = myGeomEngine->GetIBooleanOperations(myStudyID);
277 //=============================================================================
279 //=============================================================================
280 void GEOM_Superv_i::getInsOp()
282 if (CORBA::is_nil(myGeomEngine))
284 // get GEOM_IInsertOperations interface
285 if (CORBA::is_nil(myInsOp) || isNewStudy(myLastStudyID,myStudyID)) {
286 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
287 // Try to get id of the study from the SALOME Session
288 if(myStudyID < 0 ) SetStudyID(-1);
289 myInsOp = myGeomEngine->GetIInsertOperations(myStudyID);
293 //=============================================================================
295 //=============================================================================
296 void GEOM_Superv_i::getTransfOp()
298 if (CORBA::is_nil(myGeomEngine))
300 // get GEOM_ITransformOperations interface
301 if (CORBA::is_nil(myTransfOp) || isNewStudy(myLastStudyID,myStudyID)) {
302 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
303 // Try to get id of the study from the SALOME Session
304 if(myStudyID < 0 ) SetStudyID(-1);
305 myTransfOp = myGeomEngine->GetITransformOperations(myStudyID);
309 //=============================================================================
311 //=============================================================================
312 void GEOM_Superv_i::getShapesOp()
314 if (CORBA::is_nil(myGeomEngine))
316 // get GEOM_IShapesOperations interface
317 if (CORBA::is_nil(myShapesOp) || isNewStudy(myLastStudyID,myStudyID)) {
318 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
319 // Try to get id of the study from the SALOME Session
320 if(myStudyID < 0 ) SetStudyID(-1);
321 myShapesOp = myGeomEngine->GetIShapesOperations(myStudyID);
325 //=============================================================================
327 //=============================================================================
328 void GEOM_Superv_i::getBlocksOp()
330 if (CORBA::is_nil(myGeomEngine))
332 // get GEOM_IBlocksOperations interface
333 if (CORBA::is_nil(myBlocksOp) || isNewStudy(myLastStudyID,myStudyID)) {
334 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
335 // Try to get id of the study from the SALOME Session
336 if(myStudyID < 0 ) SetStudyID(-1);
337 myBlocksOp = myGeomEngine->GetIBlocksOperations(myStudyID);
341 //=============================================================================
343 //=============================================================================
344 void GEOM_Superv_i::getCurvesOp()
346 if (CORBA::is_nil(myGeomEngine))
348 // get GEOM_ICurvesOperations interface
349 if (CORBA::is_nil(myCurvesOp) || isNewStudy(myLastStudyID,myStudyID)) {
350 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
351 // Try to get id of the study from the SALOME Session
352 if(myStudyID < 0 ) SetStudyID(-1);
353 myCurvesOp = myGeomEngine->GetICurvesOperations(myStudyID);
357 //=============================================================================
359 //=============================================================================
360 void GEOM_Superv_i::getLocalOp()
362 if (CORBA::is_nil(myGeomEngine))
364 // get GEOM_ILocalOperations interface
365 if (CORBA::is_nil(myLocalOp) || isNewStudy(myLastStudyID,myStudyID)) {
366 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
367 // Try to get id of the study from the SALOME Session
368 if(myStudyID < 0 ) SetStudyID(-1);
369 myLocalOp = myGeomEngine->GetILocalOperations(myStudyID);
373 //=============================================================================
375 //=============================================================================
376 void GEOM_Superv_i::getGroupOp()
378 if (CORBA::is_nil(myGeomEngine))
380 // get GEOM_IGroupOperations interface
381 if (CORBA::is_nil(myGroupOp) || isNewStudy(myLastStudyID,myStudyID)) {
382 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
383 // Try to get id of the study from the SALOME Session
384 if(myStudyID < 0 ) SetStudyID(-1);
385 myGroupOp = myGeomEngine->GetIGroupOperations(myStudyID);
389 //=============================================================================
391 //=============================================================================
392 void GEOM_Superv_i::getAdvancedOp()
394 if (CORBA::is_nil(myGeomEngine))
396 // get GEOM_IAdvancedOperations interface
397 if (CORBA::is_nil(myAdvancedOp) || isNewStudy(myLastStudyID,myStudyID)) {
398 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
399 // Try to get id of the study from the SALOME Session
400 if(myStudyID < 0 ) SetStudyID(-1);
401 myAdvancedOp = myGeomEngine->GetIAdvancedOperations(myStudyID);
405 //=============================================================================
406 // getImportExportOp:
407 //=============================================================================
408 void GEOM_Superv_i::getImportExportOp()
410 if (CORBA::is_nil(myGeomEngine))
412 // get GEOM_IImportExportOperations interface
413 if (CORBA::is_nil(myImportExportOp) || isNewStudy(myLastStudyID,myStudyID)) {
414 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
415 // Try to get id of the study from the SALOME Session
416 if(myStudyID < 0 ) SetStudyID(-1);
417 myImportExportOp = myGeomEngine->GetIImportExportOperations(myStudyID);
421 //=============================================================================
423 //=============================================================================
424 PortableServer::ServantBase_var GEOM_Superv_i::GetServant(CORBA::Object_ptr theObject,
425 PortableServer::POA_ptr thePOA)
427 if(CORBA::is_nil(theObject)) return NULL;
428 PortableServer::Servant aServant = thePOA->reference_to_servant(theObject);
432 //============================================================================
434 // purpose : save OCAF/Geom document
435 //============================================================================
436 SALOMEDS::TMPFile* GEOM_Superv_i::Save(SALOMEDS::SComponent_ptr theComponent,
438 CORBA::Boolean isMultiFile)
440 SALOMEDS::TMPFile_var aStreamFile;
441 return aStreamFile._retn();
444 //============================================================================
445 // function : SaveASCII()
447 //============================================================================
448 SALOMEDS::TMPFile* GEOM_Superv_i::SaveASCII(SALOMEDS::SComponent_ptr theComponent,
450 CORBA::Boolean isMultiFile)
452 SALOMEDS::TMPFile_var aStreamFile;
453 return aStreamFile._retn();
456 //============================================================================
459 //============================================================================
460 CORBA::Boolean GEOM_Superv_i::Load(SALOMEDS::SComponent_ptr theComponent,
461 const SALOMEDS::TMPFile& theStream,
463 CORBA::Boolean isMultiFile)
468 //============================================================================
469 // function : LoadASCII()
471 //============================================================================
472 CORBA::Boolean GEOM_Superv_i::LoadASCII(SALOMEDS::SComponent_ptr theComponent,
473 const SALOMEDS::TMPFile& theStream,
475 CORBA::Boolean isMultiFile)
480 //============================================================================
481 // function : Close()
483 //============================================================================
484 void GEOM_Superv_i::Close(SALOMEDS::SComponent_ptr theComponent)
488 //============================================================================
489 // function : ComponentDataType()
491 //============================================================================
492 char* GEOM_Superv_i::ComponentDataType()
497 //============================================================================
498 // function : IORToLocalPersistentID()
500 //============================================================================
501 char* GEOM_Superv_i::IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject,
502 const char* IORString,
503 CORBA::Boolean isMultiFile,
504 CORBA::Boolean isASCII)
509 //============================================================================
510 // function : LocalPersistentIDToIOR()
511 // purpose : Create/Load CORBA object from a persistent ref (an entry)
512 // : Used when a study is loaded
513 // : The IOR (IORName) of object created is returned
514 //============================================================================
515 char* GEOM_Superv_i::LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject,
516 const char* aLocalPersistentID,
517 CORBA::Boolean isMultiFile,
518 CORBA::Boolean isASCII)
523 //============================================================================
524 // function : CanPublishInStudy
526 //============================================================================
527 CORBA::Boolean GEOM_Superv_i::CanPublishInStudy(CORBA::Object_ptr theIOR)
529 if (CORBA::is_nil(myGeomEngine))
531 return myGeomEngine->CanPublishInStudy(theIOR);
534 //============================================================================
535 // function : PublishInStudy
537 //============================================================================
538 SALOMEDS::SObject_ptr GEOM_Superv_i::PublishInStudy(SALOMEDS::Study_ptr theStudy,
539 SALOMEDS::SObject_ptr theSObject,
540 CORBA::Object_ptr theObject,
541 const char* theName) throw (SALOME::SALOME_Exception)
543 if (CORBA::is_nil(myGeomEngine))
545 return myGeomEngine->PublishInStudy(theStudy, theSObject, theObject, theName);
548 //============================================================================
549 // function : PublishNamedShapesInStudy
551 //============================================================================
553 GEOM_Superv_i::PublishNamedShapesInStudy(SALOMEDS::Study_ptr theStudy,
554 //SALOMEDS::SObject_ptr theSObject,
555 CORBA::Object_ptr theObject)
557 if (CORBA::is_nil(myGeomEngine))
559 return myGeomEngine->PublishNamedShapesInStudy(theStudy, theObject);
562 //============================================================================
563 // function : CanCopy()
565 //============================================================================
566 CORBA::Boolean GEOM_Superv_i::CanCopy(SALOMEDS::SObject_ptr theObject)
571 //============================================================================
572 // function : CopyFrom()
574 //============================================================================
575 SALOMEDS::TMPFile* GEOM_Superv_i::CopyFrom(SALOMEDS::SObject_ptr theObject, CORBA::Long& theObjectID)
577 SALOMEDS::TMPFile_var aStreamFile;
578 return aStreamFile._retn();
581 //============================================================================
582 // function : CanPaste()
584 //============================================================================
585 CORBA::Boolean GEOM_Superv_i::CanPaste(const char* theComponentName, CORBA::Long theObjectID)
590 //============================================================================
591 // function : PasteInto()
593 //============================================================================
594 SALOMEDS::SObject_ptr GEOM_Superv_i::PasteInto(const SALOMEDS::TMPFile& theStream,
595 CORBA::Long theObjectID,
596 SALOMEDS::SObject_ptr theObject)
598 SALOMEDS::SObject_var aNewSO;
599 return aNewSO._retn();
602 //================= Primitives Construction : BasicOperations =================
603 //=============================================================================
605 //=============================================================================
606 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointXYZ(CORBA::Double theX,
610 beginService( " GEOM_Superv_i::MakePointXYZ" );
611 MESSAGE("GEOM_Superv_i::MakePointXYZ");
613 // make vertex and return
614 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointXYZ(theX, theY, theZ);
615 endService( " GEOM_Superv_i::MakePointXYZ" );
619 //=============================================================================
620 // MakePointWithReference:
621 //=============================================================================
622 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointWithReference (GEOM::GEOM_Object_ptr theReference,
627 beginService( " GEOM_Superv_i::MakePointWithReference" );
628 MESSAGE("GEOM_Superv_i::MakePointWithReference");
630 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointWithReference(theReference, theX, theY, theZ);
631 endService( " GEOM_Superv_i::MakePointWithReference" );
635 //=============================================================================
637 //=============================================================================
638 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
639 CORBA::Double theParameter)
641 beginService( " GEOM_Superv_i::MakePointOnCurve" );
642 MESSAGE("GEOM_Superv_i::MakePointOnCurve");
644 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurve(theRefCurve, theParameter);
645 endService( " GEOM_Superv_i::MakePointOnCurve" );
649 //=============================================================================
650 // MakePointOnCurveByLength:
651 //=============================================================================
652 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByLength (GEOM::GEOM_Object_ptr theRefCurve,
653 CORBA::Double theLength,
654 GEOM::GEOM_Object_ptr theStartPoint)
656 beginService( " GEOM_Superv_i::MakePointOnCurveByLength" );
657 MESSAGE("GEOM_Superv_i::MakePointOnCurveByLength");
659 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurveByLength(theRefCurve, theLength, theStartPoint);
660 endService( " GEOM_Superv_i::MakePointOnCurveByLength" );
664 //=============================================================================
665 // MakePointOnCurveByCoord
666 //=============================================================================
667 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByCoord (GEOM::GEOM_Object_ptr theRefCurve,
668 CORBA::Double theXParameter,
669 CORBA::Double theYParameter,
670 CORBA::Double theZParameter)
672 beginService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
673 MESSAGE("GEOM_Superv_i::MakePointOnCurveByCoord");
675 GEOM::GEOM_Object_ptr anObj =
676 myBasicOp->MakePointOnCurveByCoord(theRefCurve, theXParameter,
677 theYParameter, theZParameter);
678 endService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
682 //=============================================================================
683 // MakePointOnSurface:
684 //=============================================================================
685 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurface (GEOM::GEOM_Object_ptr theRefSurface,
686 CORBA::Double theUParameter,
687 CORBA::Double theVParameter)
689 beginService( " GEOM_Superv_i::MakePointOnSurface" );
690 MESSAGE("GEOM_Superv_i::MakePointOnSurface");
692 GEOM::GEOM_Object_ptr anObj =
693 myBasicOp->MakePointOnSurface(theRefSurface, theUParameter, theVParameter);
694 endService( " GEOM_Superv_i::MakePointOnSurface" );
698 //=============================================================================
699 // MakePointOnSurfaceByCoord
700 //=============================================================================
701 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurfaceByCoord (GEOM::GEOM_Object_ptr theRefSurface,
702 CORBA::Double theXParameter,
703 CORBA::Double theYParameter,
704 CORBA::Double theZParameter)
706 beginService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
707 MESSAGE("GEOM_Superv_i::MakePointOnSurfaceByCoord");
709 GEOM::GEOM_Object_ptr anObj =
710 myBasicOp->MakePointOnSurfaceByCoord(theRefSurface, theXParameter,
711 theYParameter, theZParameter);
712 endService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
716 //=============================================================================
717 // MakePointOnLinesIntersection:
718 //=============================================================================
719 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnLinesIntersection (GEOM::GEOM_Object_ptr theRefLine1,
720 GEOM::GEOM_Object_ptr theRefLine2)
722 beginService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
723 MESSAGE("GEOM_Superv_i::MakePointOnLinesIntersection");
725 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnLinesIntersection(theRefLine1, theRefLine2);
726 endService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
730 //=============================================================================
731 // MakeTangentOnCurve:
732 //=============================================================================
733 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
734 CORBA::Double theParameter)
736 beginService( " GEOM_Superv_i::MakeTangentOnCurve" );
737 MESSAGE("GEOM_Superv_i::MakeTangentOnCurve");
739 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentOnCurve(theRefCurve, theParameter);
740 endService( " GEOM_Superv_i::MakeTangentOnCurve" );
744 //=============================================================================
746 //=============================================================================
747 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorDXDYDZ (CORBA::Double theDX,
751 beginService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
752 MESSAGE("GEOM_Superv_i::MakeVectorDXDYDZ");
754 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorDXDYDZ(theDX, theDY, theDZ);
755 endService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
759 //=============================================================================
761 //=============================================================================
762 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
763 GEOM::GEOM_Object_ptr thePnt2)
765 beginService( " GEOM_Superv_i::MakeVectorTwoPnt" );
766 MESSAGE("GEOM_Superv_i::MakeVector");
768 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorTwoPnt(thePnt1, thePnt2);
769 endService( " GEOM_Superv_i::MakeVectorTwoPnt" );
773 //=============================================================================
775 //=============================================================================
776 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
777 GEOM::GEOM_Object_ptr thePnt2)
779 beginService( " GEOM_Superv_i::MakeLineTwoPnt");
780 MESSAGE("GEOM_Superv_i::MakeLineTwoPnt");
782 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoPnt(thePnt1, thePnt2);
783 endService( " GEOM_Superv_i::MakeLineTwoPnt");
787 //=============================================================================
789 //=============================================================================
790 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoFaces (GEOM::GEOM_Object_ptr theFace1,
791 GEOM::GEOM_Object_ptr theFace2)
793 beginService( " GEOM_Superv_i::MakeLineTwoFaces");
794 MESSAGE("GEOM_Superv_i::MakeLineTwoFaces");
796 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoFaces(theFace1, theFace2);
797 endService( " GEOM_Superv_i::MakeLineTwoFaces");
801 //=============================================================================
802 // MakePlaneThreePnt:
803 //=============================================================================
804 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneThreePnt (GEOM::GEOM_Object_ptr thePnt1,
805 GEOM::GEOM_Object_ptr thePnt2,
806 GEOM::GEOM_Object_ptr thePnt3,
807 CORBA::Double theTrimSize)
809 beginService( " GEOM_Superv_i::MakePlaneThreePnt");
810 MESSAGE("GEOM_Superv_i::MakePlaneThreePnt");
812 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneThreePnt(thePnt1, thePnt2, thePnt3, theTrimSize);
813 endService( " GEOM_Superv_i::MakePlaneThreePnt");
817 //=============================================================================
819 //=============================================================================
820 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlanePntVec (GEOM::GEOM_Object_ptr thePnt,
821 GEOM::GEOM_Object_ptr theVec,
822 CORBA::Double theTrimSize)
824 beginService( " GEOM_Superv_i::MakePlanePntVec" );
825 MESSAGE("GEOM_Superv_i::MakePlanePntVec");
827 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlanePntVec(thePnt, theVec, theTrimSize);
828 endService( " GEOM_Superv_i::MakePlanePntVec" );
832 //=============================================================================
834 //=============================================================================
835 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneFace (GEOM::GEOM_Object_ptr theFace,
836 CORBA::Double theTrimSize)
838 beginService( " GEOM_Superv_i::MakePlaneFace" );
839 MESSAGE("GEOM_Superv_i::MakePlaneFace");
841 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneFace(theFace, theTrimSize);
842 endService( " GEOM_Superv_i::MakePlaneFace" );
846 //=============================================================================
848 //=============================================================================
849 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlane2Vec (GEOM::GEOM_Object_ptr theVec1,
850 GEOM::GEOM_Object_ptr theVec2,
851 CORBA::Double theTrimSize)
853 beginService( " GEOM_Superv_i::MakePlane2Vec" );
854 MESSAGE("GEOM_Superv_i::MakePlane2Vec");
856 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlane2Vec(theVec1, theVec2, theTrimSize);
857 endService( " GEOM_Superv_i::MakePlane2Vec" );
861 //=============================================================================
863 //=============================================================================
864 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneLCS (GEOM::GEOM_Object_ptr theLCS,
865 CORBA::Double theTrimSize,
866 CORBA::Double theOrientation)
868 beginService( " GEOM_Superv_i::MakePlaneLCS" );
869 MESSAGE("GEOM_Superv_i::MakePlaneLCS");
871 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneLCS(theLCS, theTrimSize, theOrientation);
872 endService( " GEOM_Superv_i::MakePlaneLCS" );
876 //=============================================================================
878 //=============================================================================
879 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarker
880 (CORBA::Double theOX , CORBA::Double theOY , CORBA::Double theOZ,
881 CORBA::Double theXDX, CORBA::Double theXDY, CORBA::Double theXDZ,
882 CORBA::Double theYDX, CORBA::Double theYDY, CORBA::Double theYDZ)
884 beginService( " GEOM_Superv_i::MakeMarker" );
885 MESSAGE("GEOM_Superv_i::MakeMarker");
887 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarker(theOX, theOY, theOZ, theXDX, theXDY, theXDZ, theYDX, theYDY, theYDZ);
888 endService( " GEOM_Superv_i::MakeMarker" );
892 //=============================================================================
893 // MakeMarkerFromShape:
894 //=============================================================================
895 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerFromShape (GEOM::GEOM_Object_ptr theShape)
897 beginService( " GEOM_Superv_i::MakeMarkerFromShape" );
898 MESSAGE("GEOM_Superv_i::MakeMarkerFromShape");
900 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerFromShape(theShape);
901 endService( " GEOM_Superv_i::MakeMarkerFromShape" );
905 //=============================================================================
906 // MakeMarkerPntTwoVec:
907 //=============================================================================
908 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerPntTwoVec (GEOM::GEOM_Object_ptr theOrigin,
909 GEOM::GEOM_Object_ptr theXVec,
910 GEOM::GEOM_Object_ptr theYVec)
912 beginService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
913 MESSAGE("GEOM_Superv_i::MakeMarkerPntTwoVec");
915 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerPntTwoVec(theOrigin, theXVec, theYVec);
916 endService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
920 //=============================================================================
921 // MakeTangentPlaneOnFace:
922 //=============================================================================
923 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentPlaneOnFace (GEOM::GEOM_Object_ptr theFace,
924 CORBA::Double theParameterU,
925 CORBA::Double theParameterV,
926 CORBA::Double theTrimSize)
928 beginService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
929 MESSAGE("GEOM_Superv_i::MakeTangentPlaneOnFace");
931 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentPlaneOnFace(theFace, theParameterU,theParameterV,theTrimSize);
932 endService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
936 //================= Primitives Construction : 3DPrimOperations ================
937 //=============================================================================
939 //=============================================================================
940 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBox (CORBA::Double theX1,
947 beginService( " GEOM_Superv_i::MakeBox" );
948 MESSAGE("GEOM_Superv_i::MakeBox");
951 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(myBasicOp->MakePointXYZ(theX1, theY1, theZ1),
952 myBasicOp->MakePointXYZ(theX2, theY2, theZ2));
953 endService( " GEOM_Superv_i::MakeBox" );
957 //=============================================================================
959 //=============================================================================
960 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxDXDYDZ (CORBA::Double theDX,
964 beginService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
965 MESSAGE("GEOM_Superv_i::MakeBoxDXDYDZ");
967 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxDXDYDZ(theDX, theDY, theDZ);
968 endService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
972 //=============================================================================
974 //=============================================================================
975 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
976 GEOM::GEOM_Object_ptr thePnt2)
978 beginService( " GEOM_Superv_i::MakeBoxTwoPnt" );
979 MESSAGE("GEOM_Superv_i::MakeBoxTwoPnt");
981 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(thePnt1, thePnt2);
982 endService( " GEOM_Superv_i::MakeBoxTwoPnt" );
986 //=============================================================================
988 //=============================================================================
989 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceHW (CORBA::Double theH,
991 CORBA::Short theOrientation)
993 beginService( " GEOM_Superv_i::MakeFaceHW" );
994 MESSAGE("GEOM_Superv_i::MakeFaceHW");
996 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceHW(theH, theW, theOrientation);
997 endService( " GEOM_Superv_i::MakeFaceHW" );
1001 //=============================================================================
1003 //=============================================================================
1004 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj,
1008 beginService( " GEOM_Superv_i::MakeFaceObjHW" );
1009 MESSAGE("GEOM_Superv_i::MakeFaceObjHW");
1011 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceObjHW(theObj, theH, theW);
1012 endService( " GEOM_Superv_i::MakeFaceObjHW" );
1016 //=============================================================================
1018 //=============================================================================
1019 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter,
1020 GEOM::GEOM_Object_ptr theVector,
1023 beginService( " GEOM_Superv_i::MakeDiskPntVecR" );
1024 MESSAGE("GEOM_Superv_i::MakeDiskPntVecR");
1026 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskPntVecR(theCenter, theVector, theR);
1027 endService( " GEOM_Superv_i::MakeDiskPntVecR" );
1031 //=============================================================================
1032 // MakeDiskThreePnt:
1033 //=============================================================================
1034 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1,
1035 GEOM::GEOM_Object_ptr thePnt2,
1036 GEOM::GEOM_Object_ptr thePnt3)
1038 beginService( " GEOM_Superv_i::MakeDiskThreePnt" );
1039 MESSAGE("GEOM_Superv_i::MakeDiskThreePnt");
1041 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskThreePnt(thePnt1, thePnt2, thePnt3);
1042 endService( " GEOM_Superv_i::MakeDiskThreePnt" );
1046 //=============================================================================
1048 //=============================================================================
1049 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskR (CORBA::Double theR,
1050 CORBA::Short theOrientation)
1052 beginService( " GEOM_Superv_i::MakeDiskR" );
1053 MESSAGE("GEOM_Superv_i::MakeDiskR");
1055 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskR(theR, theOrientation);
1056 endService( " GEOM_Superv_i::MakeDiskR" );
1060 //=============================================================================
1061 // MakeCylinderPntVecRH:
1062 //=============================================================================
1063 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderPntVecRH (GEOM::GEOM_Object_ptr thePnt,
1064 GEOM::GEOM_Object_ptr theAxis,
1065 CORBA::Double theRadius,
1066 CORBA::Double theHeight)
1068 beginService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
1069 MESSAGE("GEOM_Superv_i::MakeCylinderPntVecRH");
1071 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderPntVecRH(thePnt, theAxis, theRadius, theHeight);
1072 endService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
1076 //=============================================================================
1078 //=============================================================================
1079 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderRH (CORBA::Double theR,
1082 beginService( " GEOM_Superv_i::MakeCylinderRH" );
1083 MESSAGE("GEOM_Superv_i::MakeCylinderRH");
1085 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderRH(theR, theH);
1086 endService( " GEOM_Superv_i::MakeCylinderRH" );
1090 //=============================================================================
1092 //=============================================================================
1093 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphere (CORBA::Double theX,
1096 CORBA::Double theRadius)
1098 beginService( " GEOM_Superv_i::MakeSphepe" );
1099 MESSAGE("GEOM_Superv_i::MakeSphepe");
1102 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(myBasicOp->MakePointXYZ(theX, theY, theZ), theRadius);
1103 endService( " GEOM_Superv_i::MakeSphepe" );
1107 //=============================================================================
1109 //=============================================================================
1110 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphereR (CORBA::Double theR)
1112 beginService( " GEOM_Superv_i::MakeSphereR" );
1113 MESSAGE("GEOM_Superv_i::MakeSphereR");
1115 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSphereR(theR);
1116 endService( " GEOM_Superv_i::MakeSphereR" );
1120 //=============================================================================
1122 //=============================================================================
1123 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSpherePntR (GEOM::GEOM_Object_ptr thePnt,
1126 beginService( " GEOM_Superv_i::MakeSpherePntR" );
1127 MESSAGE("GEOM_Superv_i::MakeSpherePntR");
1129 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(thePnt, theR);
1130 endService( " GEOM_Superv_i::MakeSpherePntR" );
1134 //=============================================================================
1135 // MakeTorusPntVecRR:
1136 //=============================================================================
1137 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusPntVecRR (GEOM::GEOM_Object_ptr thePnt,
1138 GEOM::GEOM_Object_ptr theVec,
1139 CORBA::Double theRMajor,
1140 CORBA::Double theRMinor)
1142 beginService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1143 MESSAGE("GEOM_Superv_i::MakeTorusPntVecRR");
1145 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusPntVecRR(thePnt, theVec, theRMajor, theRMinor);
1146 endService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1150 //=============================================================================
1152 //=============================================================================
1153 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusRR (CORBA::Double theRMajor,
1154 CORBA::Double theRMinor)
1156 beginService( " GEOM_Superv_i::MakeTorusRR" );
1157 MESSAGE("GEOM_Superv_i::MakeTorusRR");
1159 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusRR(theRMajor, theRMinor);
1160 endService( " GEOM_Superv_i::MakeTorusRR" );
1164 //=============================================================================
1165 // MakeConePntVecR1R2H:
1166 //=============================================================================
1167 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConePntVecR1R2H (GEOM::GEOM_Object_ptr thePnt,
1168 GEOM::GEOM_Object_ptr theAxis,
1169 CORBA::Double theR1,
1170 CORBA::Double theR2,
1171 CORBA::Double theHeight)
1173 beginService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1174 MESSAGE("GEOM_Superv_i::MakeConePntVecR1R2H");
1176 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConePntVecR1R2H(thePnt, theAxis, theR1, theR2, theHeight);
1177 endService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1181 //=============================================================================
1183 //=============================================================================
1184 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConeR1R2H (CORBA::Double theR1,
1185 CORBA::Double theR2,
1186 CORBA::Double theHeight)
1188 beginService( " GEOM_Superv_i::MakeConeR1R2H" );
1189 MESSAGE("GEOM_Superv_i::MakeConeR1R2H");
1191 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConeR1R2H(theR1, theR2, theHeight);
1192 endService( " GEOM_Superv_i::MakeConeR1R2H" );
1196 //=============================================================================
1198 //=============================================================================
1199 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH (GEOM::GEOM_Object_ptr theBase,
1200 GEOM::GEOM_Object_ptr theVec,
1203 beginService( " GEOM_Superv_i::MakePrismVecH" );
1204 MESSAGE("GEOM_Superv_i::MakePrismVecH");
1206 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH(theBase, theVec, theH);
1207 endService( " GEOM_Superv_i::MakePrismVecH" );
1211 //=============================================================================
1212 // MakePrismVecH2Ways:
1213 //=============================================================================
1214 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH2Ways (GEOM::GEOM_Object_ptr theBase,
1215 GEOM::GEOM_Object_ptr theVec,
1218 beginService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1219 MESSAGE("GEOM_Superv_i::MakePrismVecH2Ways");
1221 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH2Ways(theBase, theVec, theH);
1222 endService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1226 //=============================================================================
1228 //=============================================================================
1229 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt (GEOM::GEOM_Object_ptr theBase,
1230 GEOM::GEOM_Object_ptr thePoint1,
1231 GEOM::GEOM_Object_ptr thePoint2)
1233 beginService( " GEOM_Superv_i::MakePrismTwoPnt" );
1234 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt");
1236 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt(theBase, thePoint1, thePoint2);
1237 endService( " GEOM_Superv_i::MakePrismTwoPnt" );
1241 //=============================================================================
1242 // MakePrismTwoPnt2Ways:
1243 //=============================================================================
1244 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt2Ways (GEOM::GEOM_Object_ptr theBase,
1245 GEOM::GEOM_Object_ptr thePoint1,
1246 GEOM::GEOM_Object_ptr thePoint2)
1248 beginService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1249 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt2Ways");
1251 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt2Ways(theBase, thePoint1, thePoint2);
1252 endService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1256 //=============================================================================
1258 //=============================================================================
1259 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase,
1260 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1262 beginService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1263 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ");
1265 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ(theBase, theDX, theDY, theDZ);
1266 endService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1270 //=============================================================================
1272 //=============================================================================
1273 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase,
1274 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1276 beginService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1277 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ2Ways");
1279 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ2Ways(theBase, theDX, theDY, theDZ);
1280 endService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1284 //=============================================================================
1286 //=============================================================================
1287 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipe (GEOM::GEOM_Object_ptr theBase,
1288 GEOM::GEOM_Object_ptr thePath)
1290 beginService( " GEOM_Superv_i::MakePipe" );
1291 MESSAGE("GEOM_Superv_i::MakePipe");
1293 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipe(theBase, thePath);
1294 endService( " GEOM_Superv_i::MakePipe" );
1298 //=============================================================================
1299 // MakeRevolutionAxisAngle:
1300 //=============================================================================
1301 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle (GEOM::GEOM_Object_ptr theBase,
1302 GEOM::GEOM_Object_ptr theAxis,
1303 CORBA::Double theAngle)
1305 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1306 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle");
1308 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle(theBase, theAxis, theAngle);
1309 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1313 //=============================================================================
1314 // MakeRevolutionAxisAngle:
1315 //=============================================================================
1316 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle2Ways (GEOM::GEOM_Object_ptr theBase,
1317 GEOM::GEOM_Object_ptr theAxis,
1318 CORBA::Double theAngle)
1320 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1321 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle2Ways");
1323 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle2Ways(theBase, theAxis, theAngle);
1324 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1328 //=============================================================================
1330 //=============================================================================
1331 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilling (GEOM::GEOM_Object_ptr theShape,
1332 CORBA::Long theMinDeg,
1333 CORBA::Long theMaxDeg,
1334 CORBA::Double theTol2D,
1335 CORBA::Double theTol3D,
1336 CORBA::Long theNbIter,
1337 GEOM::filling_oper_method theMethod,
1338 CORBA::Boolean theApprox)
1340 beginService( " GEOM_Superv_i::MakeFilling" );
1341 MESSAGE("GEOM_Superv_i::MakeFilling");
1343 GEOM::GEOM_Object_ptr anObj =
1344 my3DPrimOp->MakeFilling(theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D,
1345 theNbIter, theMethod, theApprox);
1346 endService( " GEOM_Superv_i::MakeFilling" );
1350 //============================= BooleanOperations =============================
1351 //=============================================================================
1353 //=============================================================================
1354 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoolean (GEOM::GEOM_Object_ptr theShape1,
1355 GEOM::GEOM_Object_ptr theShape2,
1356 CORBA::Long theOperation)
1358 beginService( " GEOM_Superv_i::MakeBoolean" );
1359 // theOperation indicates the operation to be done:
1360 // 1 - Common, 2 - Cut, 3 - Fuse, 4 - Section
1361 MESSAGE("GEOM_Superv_i::MakeBoolean");
1363 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeBoolean(theShape1, theShape2, theOperation);
1364 endService( " GEOM_Superv_i::MakeBoolean" );
1368 //=============================================================================
1369 // MakeThruSections:
1370 //=============================================================================
1371 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeThruSections(const GEOM::ListOfGO& theSeqSections,
1372 CORBA::Boolean theModeSolid,
1373 CORBA::Double thePreci,
1374 CORBA::Boolean theRuled)
1376 beginService( " GEOM_Superv_i::MakeThruSections" );
1377 MESSAGE("GEOM_Superv_i::MakeThruSections");
1379 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeThruSections(theSeqSections, theModeSolid,thePreci,theRuled);
1380 endService( " GEOM_Superv_i::MakeThruSections" );
1384 //=============================================================================
1386 //=============================================================================
1387 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithDifferentSections
1388 (const GEOM::ListOfGO& theBases,
1389 const GEOM::ListOfGO& theLocations,
1390 GEOM::GEOM_Object_ptr thePath,
1391 CORBA::Boolean theWithContact,
1392 CORBA::Boolean theWithCorrections)
1394 beginService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1395 MESSAGE("GEOM_Superv_i::MakePipeWithDifferentSections");
1397 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipeWithDifferentSections(theBases,theLocations, thePath,theWithContact,theWithCorrections);
1398 endService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1403 //=============================================================================
1405 //=============================================================================
1406 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithShellSections
1407 (const GEOM::ListOfGO& theBases,
1408 const GEOM::ListOfGO& theSubBases,
1409 const GEOM::ListOfGO& theLocations,
1410 GEOM::GEOM_Object_ptr thePath,
1411 CORBA::Boolean theWithContact,
1412 CORBA::Boolean theWithCorrections)
1414 beginService( " GEOM_Superv_i::MakePipeWithShellSections" );
1415 MESSAGE("GEOM_Superv_i::MakePipeWithShellSections");
1417 GEOM::GEOM_Object_ptr anObj =
1418 my3DPrimOp->MakePipeWithShellSections(theBases, theSubBases,
1419 theLocations, thePath,
1420 theWithContact, theWithCorrections);
1421 endService( " GEOM_Superv_i::MakePipeWithShellSections" );
1426 //=============================================================================
1428 //=============================================================================
1429 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeShellsWithoutPath
1430 (const GEOM::ListOfGO& theBases,
1431 const GEOM::ListOfGO& theLocations)
1433 beginService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1434 MESSAGE("GEOM_Superv_i::MakePipeShellsWithoutPath");
1436 GEOM::GEOM_Object_ptr anObj =
1437 my3DPrimOp->MakePipeShellsWithoutPath(theBases,theLocations);
1438 endService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1443 //=============================================================================
1445 //=============================================================================
1446 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeBiNormalAlongVector
1447 (GEOM::GEOM_Object_ptr theBase,
1448 GEOM::GEOM_Object_ptr thePath,
1449 GEOM::GEOM_Object_ptr theVec)
1451 beginService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1452 MESSAGE("GEOM_Superv_i::MakePipeBiNormalAlongVector");
1454 GEOM::GEOM_Object_ptr anObj =
1455 my3DPrimOp->MakePipeBiNormalAlongVector(theBase, thePath, theVec);
1456 endService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1461 //=============================================================================
1463 //=============================================================================
1464 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFuse (GEOM::GEOM_Object_ptr theShape1,
1465 GEOM::GEOM_Object_ptr theShape2)
1467 beginService( " GEOM_Superv_i::MakeFuse" );
1468 MESSAGE("GEOM_Superv_i::MakeFuse");
1470 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeBoolean(theShape1, theShape2, 3);
1471 endService( " GEOM_Superv_i::MakeFuse" );
1475 //=============================================================================
1477 //=============================================================================
1478 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePartition (GEOM::GEOM_List_ptr theShapes,
1479 GEOM::GEOM_List_ptr theTools,
1480 GEOM::GEOM_List_ptr theKeepInside,
1481 GEOM::GEOM_List_ptr theRemoveInside,
1482 CORBA::Short theLimit,
1483 CORBA::Boolean theRemoveWebs,
1484 GEOM::GEOM_List_ptr theMaterials,
1485 CORBA::Short theKeepNonlimitShapes)
1487 beginService( " GEOM_Superv_i::MakePartition" );
1488 MESSAGE("GEOM_Superv_i::MakePartition");
1489 GEOM_List_i<GEOM::ListOfGO>* aListImplS =
1490 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in());
1491 GEOM_List_i<GEOM::ListOfGO>* aListImplT =
1492 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theTools, myPOA).in());
1493 GEOM_List_i<GEOM::ListOfGO>* aListImplKI =
1494 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theKeepInside, myPOA).in());
1495 GEOM_List_i<GEOM::ListOfGO>* aListImplRI =
1496 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theRemoveInside, myPOA).in());
1497 GEOM_List_i<GEOM::ListOfLong>* aListImplM =
1498 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theMaterials, myPOA).in());
1499 if (aListImplS && aListImplT && aListImplKI && aListImplRI && aListImplM) {
1501 GEOM::GEOM_Object_ptr anObj =
1502 myBoolOp->MakePartition(aListImplS->GetList(), aListImplT->GetList(),
1503 aListImplKI->GetList(), aListImplRI->GetList(),
1504 theLimit, theRemoveWebs, aListImplM->GetList(),
1505 theKeepNonlimitShapes);
1506 endService( " GEOM_Superv_i::MakePartition" );
1509 endService( " GEOM_Superv_i::MakePartition" );
1513 //=============================================================================
1514 // MakeHalfPartition:
1515 //=============================================================================
1516 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHalfPartition (GEOM::GEOM_Object_ptr theShape,
1517 GEOM::GEOM_Object_ptr thePlane)
1519 beginService( " GEOM_Superv_i::MakeHalfPartition" );
1520 MESSAGE("GEOM_Superv_i::MakeHalfPartition");
1522 GEOM::GEOM_Object_ptr anObj = myBoolOp->MakeHalfPartition(theShape, thePlane);
1523 endService( " GEOM_Superv_i::MakeHalfPartition" );
1527 //============================== InsertOperations =============================
1528 //=============================================================================
1530 //=============================================================================
1531 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCopy (GEOM::GEOM_Object_ptr theOriginal)
1533 beginService( " GEOM_Superv_i::MakeCopy" );
1534 MESSAGE("GEOM_Superv_i::MakeCopy");
1536 GEOM::GEOM_Object_ptr anObj = myInsOp->MakeCopy(theOriginal);
1537 endService( " GEOM_Superv_i::MakeCopy" );
1541 //=============================================================================
1543 //=============================================================================
1544 void GEOM_Superv_i::Export (GEOM::GEOM_Object_ptr theObject,
1545 const char* theFileName,
1546 const char* theFormatName)
1548 beginService( " GEOM_Superv_i::Export" );
1549 MESSAGE("GEOM_Superv_i::Export");
1551 myInsOp->Export(theObject, theFileName, theFormatName);
1552 endService( " GEOM_Superv_i::Export" );
1555 //=============================================================================
1557 //=============================================================================
1558 GEOM::GEOM_Object_ptr GEOM_Superv_i::ImportFile (const char* theFileName,
1559 const char* theFormatName)
1561 beginService( " GEOM_Superv_i::ImportFile" );
1562 MESSAGE("GEOM_Superv_i::ImportFile");
1564 GEOM::GEOM_Object_ptr anObj = myInsOp->ImportFile(theFileName, theFormatName);
1565 endService( " GEOM_Superv_i::ImportFile" );
1569 //=============================================================================
1570 // ImportTranslators:
1571 //=============================================================================
1572 void GEOM_Superv_i::ImportTranslators (GEOM::string_array_out theFormats,
1573 GEOM::string_array_out thePatterns)
1575 beginService( " GEOM_Superv_i::ImportTranslators" );
1576 MESSAGE("GEOM_Superv_i::ImportTranslators");
1578 myInsOp->ImportTranslators(theFormats, thePatterns);
1579 endService( " GEOM_Superv_i::ImportTranslators" );
1582 //=============================================================================
1583 // ExportTranslators:
1584 //=============================================================================
1585 void GEOM_Superv_i::ExportTranslators (GEOM::string_array_out theFormats,
1586 GEOM::string_array_out thePatterns)
1588 beginService( " GEOM_Superv_i::ExportTranslators" );
1589 MESSAGE("GEOM_Superv_i::ExportTranslators");
1591 myInsOp->ExportTranslators(theFormats, thePatterns);
1592 endService( " GEOM_Superv_i::ExportTranslators" );
1595 //============================= TransformOperations ===========================
1596 //=============================================================================
1597 // TranslateTwoPoints:
1598 //=============================================================================
1599 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPoints (GEOM::GEOM_Object_ptr theObject,
1600 GEOM::GEOM_Object_ptr thePoint1,
1601 GEOM::GEOM_Object_ptr thePoint2)
1603 beginService( " GEOM_Superv_i::TranslateTwoPoints" );
1604 MESSAGE("GEOM_Superv_i::TranslateTwoPoints");
1606 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPoints(theObject, thePoint1, thePoint2);
1607 endService( " GEOM_Superv_i::TranslateTwoPoints" );
1611 //=============================================================================
1612 // TranslateTwoPointsCopy:
1613 //=============================================================================
1614 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPointsCopy (GEOM::GEOM_Object_ptr theObject,
1615 GEOM::GEOM_Object_ptr thePoint1,
1616 GEOM::GEOM_Object_ptr thePoint2)
1618 beginService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1619 MESSAGE("GEOM_Superv_i::TranslateTwoPointsCopy");
1621 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPointsCopy(theObject, thePoint1, thePoint2);
1622 endService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1626 //=============================================================================
1628 //=============================================================================
1629 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZ (GEOM::GEOM_Object_ptr theObject,
1630 CORBA::Double theDX,
1631 CORBA::Double theDY,
1632 CORBA::Double theDZ)
1634 beginService( " GEOM_Superv_i::TranslateDXDYDZ" );
1635 MESSAGE("GEOM_Superv_i::TranslateDXDYDZ");
1637 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZ(theObject, theDX, theDY, theDZ);
1638 endService( " GEOM_Superv_i::TranslateDXDYDZ" );
1642 //=============================================================================
1643 // TranslateDXDYDZCopy:
1644 //=============================================================================
1645 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZCopy (GEOM::GEOM_Object_ptr theObject,
1646 CORBA::Double theDX,
1647 CORBA::Double theDY,
1648 CORBA::Double theDZ)
1650 beginService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1651 MESSAGE("GEOM_Superv_i::TranslateDXDYDZCopy");
1653 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZCopy(theObject, theDX, theDY, theDZ);
1654 endService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1658 //=============================================================================
1660 //=============================================================================
1661 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVector (GEOM::GEOM_Object_ptr theObject,
1662 GEOM::GEOM_Object_ptr theVector)
1664 beginService( " GEOM_Superv_i::TranslateVector" );
1665 MESSAGE("GEOM_Superv_i::TranslateVector");
1667 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVector(theObject, theVector);
1668 endService( " GEOM_Superv_i::TranslateVector" );
1672 //=============================================================================
1673 // TranslateVectorCopy:
1674 //=============================================================================
1675 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorCopy (GEOM::GEOM_Object_ptr theObject,
1676 GEOM::GEOM_Object_ptr theVector)
1678 beginService( " GEOM_Superv_i::TranslateVectorCopy" );
1679 MESSAGE("GEOM_Superv_i::TranslateVectorCopy");
1681 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorCopy(theObject, theVector);
1682 endService( " GEOM_Superv_i::TranslateVectorCopy" );
1686 //=============================================================================
1687 // TranslateVectorDistance:
1688 //=============================================================================
1689 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject,
1690 GEOM::GEOM_Object_ptr theVector,
1691 CORBA::Double theDistance,
1692 CORBA::Boolean theCopy)
1694 beginService( " GEOM_Superv_i::TranslateVectorDistance" );
1695 MESSAGE("GEOM_Superv_i::TranslateVectorDistance");
1697 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorDistance(theObject,
1698 theVector, theDistance, theCopy);
1699 endService( " GEOM_Superv_i::TranslateVectorDistance" );
1703 //=============================================================================
1704 // MultiTranslate1D:
1705 //=============================================================================
1706 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate1D (GEOM::GEOM_Object_ptr theObject,
1707 GEOM::GEOM_Object_ptr theVector,
1708 CORBA::Double theStep,
1709 CORBA::Long theNbTimes)
1711 beginService( " GEOM_Superv_i::MultiTranslate1D" );
1712 MESSAGE("GEOM_Superv_i::MultiTranslate1D");
1714 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate1D(theObject, theVector, theStep, theNbTimes);
1715 endService( " GEOM_Superv_i::MultiTranslate1D" );
1719 //=============================================================================
1720 // MultiTranslate2D:
1721 //=============================================================================
1722 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate2D (GEOM::GEOM_Object_ptr theObject,
1723 GEOM::GEOM_Object_ptr theVector1,
1724 CORBA::Double theStep1,
1725 CORBA::Long theNbTimes1,
1726 GEOM::GEOM_Object_ptr theVector2,
1727 CORBA::Double theStep2,
1728 CORBA::Long theNbTimes2)
1730 beginService( " GEOM_Superv_i::MultiTranslate2D" );
1731 MESSAGE("GEOM_Superv_i::MultiTranslate2D");
1733 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate2D(theObject, theVector1, theStep1, theNbTimes1,
1734 theVector2, theStep2, theNbTimes2);
1735 endService( " GEOM_Superv_i::MultiTranslate2D" );
1739 //=============================================================================
1741 //=============================================================================
1742 GEOM::GEOM_Object_ptr GEOM_Superv_i::Rotate (GEOM::GEOM_Object_ptr theObject,
1743 GEOM::GEOM_Object_ptr theAxis,
1744 CORBA::Double theAngle)
1746 beginService( " GEOM_Superv_i::Rotate" );
1747 MESSAGE("GEOM_Superv_i::Rotate");
1749 GEOM::GEOM_Object_ptr anObj = myTransfOp->Rotate(theObject, theAxis, theAngle);
1750 endService( " GEOM_Superv_i::Rotate" );
1754 //=============================================================================
1756 //=============================================================================
1757 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateCopy (GEOM::GEOM_Object_ptr theObject,
1758 GEOM::GEOM_Object_ptr theAxis,
1759 CORBA::Double theAngle)
1761 beginService( " GEOM_Superv_i::RotateCopy" );
1762 MESSAGE("GEOM_Superv_i::RotateCopy");
1764 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateCopy(theObject, theAxis, theAngle);
1765 endService( " GEOM_Superv_i::RotateCopy" );
1768 //=============================================================================
1769 // RotateThreePoints:
1770 //=============================================================================
1771 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePoints (GEOM::GEOM_Object_ptr theObject,
1772 GEOM::GEOM_Object_ptr theCentPoint,
1773 GEOM::GEOM_Object_ptr thePoint1,
1774 GEOM::GEOM_Object_ptr thePoint2)
1776 beginService( " GEOM_Superv_i::RotateThreePoints" );
1777 MESSAGE("GEOM_Superv_i::RotateThreePoints");
1779 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePoints(theObject, theCentPoint, thePoint1, thePoint2);
1780 endService( " GEOM_Superv_i::RotateThreePoints" );
1784 //=============================================================================
1785 // RotateThreePointsCopy:
1786 //=============================================================================
1787 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePointsCopy (GEOM::GEOM_Object_ptr theObject,
1788 GEOM::GEOM_Object_ptr theCentPoint,
1789 GEOM::GEOM_Object_ptr thePoint1,
1790 GEOM::GEOM_Object_ptr thePoint2)
1792 beginService( " GEOM_Superv_i::RotateThreePointsCopy" );
1793 MESSAGE("GEOM_Superv_i::RotateThreePointsCopy");
1795 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePointsCopy(theObject, theCentPoint, thePoint1, thePoint2);
1796 endService( " GEOM_Superv_i::RotateThreePointsCopy" );
1800 //=============================================================================
1802 //=============================================================================
1803 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate1D (GEOM::GEOM_Object_ptr theObject,
1804 GEOM::GEOM_Object_ptr theAxis,
1805 CORBA::Long theNbTimes)
1807 beginService( " GEOM_Superv_i::MultiRotate1D" );
1808 MESSAGE("GEOM_Superv_i::MultiRotate1D");
1810 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate1D(theObject, theAxis, theNbTimes);
1811 endService( " GEOM_Superv_i::MultiRotate1D" );
1815 //=============================================================================
1817 //=============================================================================
1818 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate2D (GEOM::GEOM_Object_ptr theObject,
1819 GEOM::GEOM_Object_ptr theAxis,
1820 CORBA::Double theAngle,
1821 CORBA::Long theNbTimes1,
1822 CORBA::Double theStep,
1823 CORBA::Long theNbTimes2)
1825 beginService( " GEOM_Superv_i::MultiRotate2D" );
1826 MESSAGE("GEOM_Superv_i::MultiRotate2D");
1828 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate2D(theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2);
1829 endService( " GEOM_Superv_i::MultiRotate2D" );
1833 //=============================================================================
1835 //=============================================================================
1836 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlane (GEOM::GEOM_Object_ptr theObject,
1837 GEOM::GEOM_Object_ptr thePlane)
1839 beginService( " GEOM_Superv_i::MirrorPlane" );
1840 MESSAGE("GEOM_Superv_i::MirrorPlane");
1842 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlane(theObject, thePlane);
1843 endService( " GEOM_Superv_i::MirrorPlane" );
1847 //=============================================================================
1849 //=============================================================================
1850 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlaneCopy (GEOM::GEOM_Object_ptr theObject,
1851 GEOM::GEOM_Object_ptr thePlane)
1853 beginService( " GEOM_Superv_i::MirrorPlaneCopy" );
1854 MESSAGE("GEOM_Superv_i::MirrorPlaneCopy");
1856 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlaneCopy(theObject, thePlane);
1857 endService( " GEOM_Superv_i::MirrorPlaneCopy" );
1861 //=============================================================================
1863 //=============================================================================
1864 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxis (GEOM::GEOM_Object_ptr theObject,
1865 GEOM::GEOM_Object_ptr theAxis)
1867 beginService( " GEOM_Superv_i::MirrorAxis" );
1868 MESSAGE("GEOM_Superv_i::MirrorAxis");
1870 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxis(theObject, theAxis);
1871 endService( " GEOM_Superv_i::MirrorAxis" );
1875 //=============================================================================
1877 //=============================================================================
1878 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxisCopy (GEOM::GEOM_Object_ptr theObject,
1879 GEOM::GEOM_Object_ptr theAxis)
1881 beginService( " GEOM_Superv_i::MirrorAxisCopy" );
1882 MESSAGE("GEOM_Superv_i::MirrorAxisCopy");
1884 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxisCopy(theObject, theAxis);
1885 endService( " GEOM_Superv_i::MirrorAxisCopy" );
1889 //=============================================================================
1891 //=============================================================================
1892 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPoint (GEOM::GEOM_Object_ptr theObject,
1893 GEOM::GEOM_Object_ptr thePoint)
1895 beginService( " GEOM_Superv_i::MirrorPoint" );
1896 MESSAGE("GEOM_Superv_i::MirrorPoint");
1898 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPoint(theObject, thePoint);
1899 endService( " GEOM_Superv_i::MirrorPoint" );
1903 //=============================================================================
1905 //=============================================================================
1906 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPointCopy (GEOM::GEOM_Object_ptr theObject,
1907 GEOM::GEOM_Object_ptr thePoint)
1909 beginService( " GEOM_Superv_i::MirrorPoint" );
1910 MESSAGE("GEOM_Superv_i::MirrorPointCopy");
1912 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPointCopy(theObject, thePoint);
1913 endService( " GEOM_Superv_i::MirrorPoint" );
1917 //=============================================================================
1919 //=============================================================================
1920 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShape (GEOM::GEOM_Object_ptr theObject,
1921 CORBA::Double theOffset)
1923 beginService( " GEOM_Superv_i::OffsetShape" );
1924 MESSAGE("GEOM_Superv_i::OffsetShape");
1926 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShape(theObject, theOffset);
1927 endService( " GEOM_Superv_i::OffsetShape" );
1931 //=============================================================================
1933 //=============================================================================
1934 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShapeCopy (GEOM::GEOM_Object_ptr theObject,
1935 CORBA::Double theOffset)
1937 beginService( " GEOM_Superv_i::OffsetShapeCopy" );
1938 MESSAGE("GEOM_Superv_i::OffsetShapeCopy");
1940 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShapeCopy(theObject, theOffset);
1941 endService( " GEOM_Superv_i::OffsetShapeCopy" );
1945 //=============================================================================
1947 //=============================================================================
1948 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShape (GEOM::GEOM_Object_ptr theObject,
1949 GEOM::GEOM_Object_ptr thePoint,
1950 CORBA::Double theFactor)
1952 beginService( " GEOM_Superv_i::ScaleShape" );
1953 MESSAGE("GEOM_Superv_i::ScaleShape");
1955 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShape(theObject, thePoint, theFactor);
1956 endService( " GEOM_Superv_i::ScaleShape" );
1960 //=============================================================================
1962 //=============================================================================
1963 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeCopy (GEOM::GEOM_Object_ptr theObject,
1964 GEOM::GEOM_Object_ptr thePoint,
1965 CORBA::Double theFactor)
1967 beginService( " GEOM_Superv_i::ScaleShapeCopy" );
1968 MESSAGE("GEOM_Superv_i::ScaleShapeCopy");
1970 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeCopy(theObject, thePoint, theFactor);
1971 endService( " GEOM_Superv_i::ScaleShapeCopy" );
1975 //=============================================================================
1976 // ScaleShapeAlongAxes:
1977 //=============================================================================
1978 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject,
1979 GEOM::GEOM_Object_ptr thePoint,
1980 CORBA::Double theFactorX,
1981 CORBA::Double theFactorY,
1982 CORBA::Double theFactorZ)
1984 beginService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1985 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxes");
1987 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxes
1988 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
1989 endService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
1993 //=============================================================================
1994 // ScaleShapeAlongAxesCopy:
1995 //=============================================================================
1996 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject,
1997 GEOM::GEOM_Object_ptr thePoint,
1998 CORBA::Double theFactorX,
1999 CORBA::Double theFactorY,
2000 CORBA::Double theFactorZ)
2002 beginService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
2003 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxesCopy");
2005 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxesCopy
2006 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
2007 endService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
2011 //=============================================================================
2013 //=============================================================================
2014 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShape (GEOM::GEOM_Object_ptr theObject,
2015 GEOM::GEOM_Object_ptr theStartLCS,
2016 GEOM::GEOM_Object_ptr theEndLCS)
2018 beginService( " GEOM_Superv_i::PositionShape" );
2019 MESSAGE("GEOM_Superv_i::PositionShape");
2021 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShape(theObject, theStartLCS, theEndLCS);
2022 endService( " GEOM_Superv_i::PositionShape" );
2026 //=============================================================================
2027 // PositionShapeCopy:
2028 //=============================================================================
2029 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShapeCopy (GEOM::GEOM_Object_ptr theObject,
2030 GEOM::GEOM_Object_ptr theStartLCS,
2031 GEOM::GEOM_Object_ptr theEndLCS)
2033 beginService( " GEOM_Superv_i::PositionShapeCopy" );
2034 MESSAGE("GEOM_Superv_i::PositionShapeCopy");
2036 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShapeCopy(theObject, theStartLCS, theEndLCS);
2037 endService( " GEOM_Superv_i::PositionShapeCopy" );
2041 //=============================================================================
2042 // PositionAlongPath:
2043 //=============================================================================
2044 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionAlongPath (GEOM::GEOM_Object_ptr theObject,
2045 GEOM::GEOM_Object_ptr thePath,
2046 CORBA::Double theDistance,
2047 CORBA::Boolean theCopy,
2048 CORBA::Boolean theReverse)
2050 beginService( " GEOM_Superv_i::PositionAlongPath" );
2051 MESSAGE("GEOM_Superv_i::PositionAlongPath");
2053 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionAlongPath(theObject, thePath, theDistance, theCopy, theReverse);
2054 endService( " GEOM_Superv_i::PositionAlongPath" );
2058 //=============================== ShapesOperations ============================
2059 //=============================================================================
2061 //=============================================================================
2062 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdge (GEOM::GEOM_Object_ptr thePnt1,
2063 GEOM::GEOM_Object_ptr thePnt2)
2065 beginService( " GEOM_Superv_i::MakeEdge" );
2066 MESSAGE("GEOM_Superv_i::MakeEdge");
2068 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeEdge(thePnt1, thePnt2);
2069 endService( " GEOM_Superv_i::MakeEdge" );
2073 //=============================================================================
2074 // MakeEdgeOnCurveByLength:
2075 //=============================================================================
2076 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdgeOnCurveByLength (GEOM::GEOM_Object_ptr theRefCurve,
2077 CORBA::Double theLength,
2078 GEOM::GEOM_Object_ptr theStartPoint)
2080 beginService( " GEOM_Superv_i::MakeEdgeOnCurveByLength" );
2081 MESSAGE("GEOM_Superv_i::MakeEdgeOnCurveByLength");
2083 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeEdgeOnCurveByLength(theRefCurve, theLength, theStartPoint);
2084 endService( " GEOM_Superv_i::MakeEdgeOnCurveByLength" );
2088 //=============================================================================
2090 //=============================================================================
2091 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeWire (GEOM::GEOM_List_ptr theEdgesAndWires,
2092 CORBA::Double theTolerance)
2094 beginService( " GEOM_Superv_i::MakeWire" );
2095 MESSAGE("GEOM_Superv_i::MakeWire");
2096 if (GEOM_List_i<GEOM::ListOfGO>* aListImplEW =
2097 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theEdgesAndWires, myPOA).in())) {
2099 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeWire(aListImplEW->GetList(), theTolerance);
2100 endService( " GEOM_Superv_i::MakeWire" );
2103 endService( " GEOM_Superv_i::MakeWire" );
2107 //=============================================================================
2109 //=============================================================================
2110 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFace (GEOM::GEOM_Object_ptr theWire,
2111 CORBA::Boolean isPlanarWanted)
2113 beginService( " GEOM_Superv_i::MakeFace" );
2114 MESSAGE("GEOM_Superv_i::MakeFace");
2116 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFace(theWire, isPlanarWanted);
2117 endService( " GEOM_Superv_i::MakeFace" );
2121 //=============================================================================
2123 //=============================================================================
2124 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceWires (GEOM::GEOM_List_ptr theWires,
2125 CORBA::Boolean isPlanarWanted)
2127 beginService( " GEOM_Superv_i::MakeFaceWires" );
2128 MESSAGE("GEOM_Superv_i::MakeFaceWires");
2129 if (GEOM_List_i<GEOM::ListOfGO>* aListImplW =
2130 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theWires, myPOA).in())) {
2132 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFaceWires(aListImplW->GetList(), isPlanarWanted);
2133 endService( " GEOM_Superv_i::MakeFaceWires" );
2136 endService( " GEOM_Superv_i::MakeFaceWires" );
2140 //=============================================================================
2142 //=============================================================================
2143 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeShell (GEOM::GEOM_List_ptr theFacesAndShells)
2145 beginService( " GEOM_Superv_i::MakeShell" );
2146 MESSAGE("GEOM_Superv_i::MakeShell");
2147 if (GEOM_List_i<GEOM::ListOfGO>* aListImplFS =
2148 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theFacesAndShells, myPOA).in())) {
2150 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeShell(aListImplFS->GetList());
2151 endService( " GEOM_Superv_i::MakeShell" );
2154 endService( " GEOM_Superv_i::MakeShell" );
2158 //=============================================================================
2160 //=============================================================================
2161 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShell (GEOM::GEOM_Object_ptr theShell)
2163 beginService( " GEOM_Superv_i::MakeSolidShell" );
2164 MESSAGE("GEOM_Superv_i::MakeSolidShell");
2166 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShell(theShell);
2167 endService( " GEOM_Superv_i::MakeSolidShell" );
2171 //=============================================================================
2173 //=============================================================================
2174 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShells (GEOM::GEOM_List_ptr theShells)
2176 beginService( " GEOM_Superv_i::MakeSolidShells" );
2177 MESSAGE("GEOM_Superv_i::MakeSolidShells");
2178 if (GEOM_List_i<GEOM::ListOfGO>* aListImplS =
2179 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShells, myPOA).in())) {
2181 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShells(aListImplS->GetList());
2182 endService( " GEOM_Superv_i::MakeSolidShells" );
2185 endService( " GEOM_Superv_i::MakeSolidShells" );
2189 //=============================================================================
2191 //=============================================================================
2192 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCompound (GEOM::GEOM_List_ptr theShapes)
2194 beginService( " GEOM_Superv_i::MakeCompound" );
2195 MESSAGE("GEOM_Superv_i::MakeCompound");
2196 if (GEOM_List_i<GEOM::ListOfGO>* aListImpl =
2197 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in())) {
2199 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeCompound(aListImpl->GetList());
2200 endService( " GEOM_Superv_i::MakeCompound" );
2203 endService( " GEOM_Superv_i::MakeCompound" );
2207 //=============================================================================
2209 //=============================================================================
2210 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFaces (GEOM::GEOM_Object_ptr theShape,
2211 CORBA::Double theTolerance,
2212 CORBA::Boolean doKeepNonSolids)
2214 beginService( " GEOM_Superv_i::MakeGlueFaces" );
2215 MESSAGE("GEOM_Superv_i::MakeGlueFaces");
2217 GEOM::GEOM_Object_ptr anObj =
2218 myShapesOp->MakeGlueFaces(theShape, theTolerance, doKeepNonSolids);
2219 endService( " GEOM_Superv_i::MakeGlueFaces" );
2223 //=============================================================================
2225 //=============================================================================
2226 GEOM::GEOM_List_ptr GEOM_Superv_i::GetGlueFaces (GEOM::GEOM_Object_ptr theShape,
2227 CORBA::Double theTolerance)
2229 beginService( " GEOM_Superv_i::GetGlueFaces" );
2230 MESSAGE("GEOM_Superv_i::GetGlueFaces");
2232 GEOM::ListOfGO* aList = myShapesOp->GetGlueFaces(theShape, theTolerance);
2233 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2234 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2235 endService( " GEOM_Superv_i::GetGlueFaces" );
2236 return aListPtr->_this();
2239 //=============================================================================
2240 // MakeGlueFacesByList:
2241 //=============================================================================
2242 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFacesByList (GEOM::GEOM_Object_ptr theShape,
2243 CORBA::Double theTolerance,
2244 const GEOM::ListOfGO& theFaces,
2245 CORBA::Boolean doKeepNonSolids,
2246 CORBA::Boolean doGlueAllEdges)
2248 beginService( " GEOM_Superv_i::MakeGlueFacesByList" );
2249 MESSAGE("GEOM_Superv_i::MakeGlueFacesByList");
2251 GEOM::GEOM_Object_ptr anObj =
2252 myShapesOp->MakeGlueFacesByList(theShape, theTolerance, theFaces,
2253 doKeepNonSolids, doGlueAllEdges);
2254 endService( " GEOM_Superv_i::MakeGlueFacesByList" );
2258 //=============================================================================
2260 //=============================================================================
2261 GEOM::GEOM_List_ptr GEOM_Superv_i::MakeExplode (GEOM::GEOM_Object_ptr theShape,
2262 CORBA::Long theShapeType,
2263 CORBA::Boolean isSorted)
2265 beginService( " GEOM_Superv_i::MakeExplode" );
2266 MESSAGE("GEOM_Superv_i::MakeExplode");
2269 GEOM::ListOfGO* aList = myShapesOp->MakeExplode(theShape, theShapeType, isSorted);
2270 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2271 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2272 endService( " GEOM_Superv_i::MakeExplode" );
2273 return aListPtr->_this();
2276 //=============================================================================
2278 //=============================================================================
2279 CORBA::Long GEOM_Superv_i::NumberOfFaces (GEOM::GEOM_Object_ptr theShape)
2281 beginService( " GEOM_Superv_i::NumberOfFaces" );
2282 MESSAGE("GEOM_Superv_i::NumberOfFaces");
2284 CORBA::Long aRes = myShapesOp->NumberOfFaces(theShape);
2285 endService( " GEOM_Superv_i::NumberOfFaces" );
2289 //=============================================================================
2291 //=============================================================================
2292 CORBA::Long GEOM_Superv_i::NumberOfEdges (GEOM::GEOM_Object_ptr theShape)
2294 beginService( " GEOM_Superv_i::NumberOfEdges" );
2295 MESSAGE("GEOM_Superv_i::NumberOfEdges");
2297 CORBA::Long aRes = myShapesOp->NumberOfEdges(theShape);
2298 endService( " GEOM_Superv_i::NumberOfEdges" );
2303 //=============================================================================
2304 // ChangeOrientation:
2305 //=============================================================================
2306 GEOM::GEOM_Object_ptr GEOM_Superv_i::ChangeOrientation (GEOM::GEOM_Object_ptr theShape)
2308 beginService( " GEOM_Superv_i::ChangeOrientation" );
2309 MESSAGE("GEOM_Superv_i::ChangeOrientation");
2311 GEOM::GEOM_Object_ptr anObj = myShapesOp->ChangeOrientation(theShape);
2312 endService( " GEOM_Superv_i::ChangeOrientation" );
2317 //=============================================================================
2318 // GetShapesOnShape:
2319 //=============================================================================
2320 GEOM::GEOM_List_ptr GEOM_Superv_i::GetShapesOnShape
2321 (GEOM::GEOM_Object_ptr theCheckShape,
2322 GEOM::GEOM_Object_ptr theShape,
2323 CORBA::Short theShapeType,
2324 GEOM::shape_state theState)
2326 beginService( " GEOM_Superv_i::GetShapesOnShape" );
2327 MESSAGE("GEOM_Superv_i::GetShapesOnShape");
2329 GEOM::ListOfGO* aList =
2330 myShapesOp->GetShapesOnShape(theCheckShape, theShape, theShapeType, theState);
2331 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2332 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2333 endService( " GEOM_Superv_i::GetShapesOnShape" );
2334 return aListPtr->_this();
2338 //=============================================================================
2339 // GetShapesOnShapeAsCompound:
2340 //=============================================================================
2341 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetShapesOnShapeAsCompound
2342 (GEOM::GEOM_Object_ptr theCheckShape,
2343 GEOM::GEOM_Object_ptr theShape,
2344 CORBA::Short theShapeType,
2345 GEOM::shape_state theState)
2347 beginService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2348 MESSAGE("GEOM_Superv_i::GetShapesOnShapeAsCompound");
2350 GEOM::GEOM_Object_ptr anObj =
2351 myShapesOp->GetShapesOnShapeAsCompound(theCheckShape, theShape, theShapeType, theState);
2352 endService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2357 //=============================== BlocksOperations ============================
2358 //=============================================================================
2359 // MakeQuad4Vertices:
2360 //=============================================================================
2361 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad4Vertices (GEOM::GEOM_Object_ptr thePnt1,
2362 GEOM::GEOM_Object_ptr thePnt2,
2363 GEOM::GEOM_Object_ptr thePnt3,
2364 GEOM::GEOM_Object_ptr thePnt4)
2366 beginService( " GEOM_Superv_i::MakeQuad4Vertices" );
2367 MESSAGE("GEOM_Superv_i::MakeQuad4Vertices");
2369 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad4Vertices(thePnt1, thePnt2, thePnt3, thePnt4);
2370 endService( " GEOM_Superv_i::MakeQuad4Vertices" );
2374 //=============================================================================
2376 //=============================================================================
2377 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad (GEOM::GEOM_Object_ptr theEdge1,
2378 GEOM::GEOM_Object_ptr theEdge2,
2379 GEOM::GEOM_Object_ptr theEdge3,
2380 GEOM::GEOM_Object_ptr theEdge4)
2382 beginService( " GEOM_Superv_i::MakeQuad" );
2383 MESSAGE("GEOM_Superv_i::MakeQuad");
2385 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad(theEdge1, theEdge2, theEdge3, theEdge4);
2386 endService( " GEOM_Superv_i::MakeQuad" );
2390 //=============================================================================
2392 //=============================================================================
2393 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad2Edges (GEOM::GEOM_Object_ptr theEdge1,
2394 GEOM::GEOM_Object_ptr theEdge2)
2396 beginService( " GEOM_Superv_i::MakeQuad2Edges" );
2397 MESSAGE("GEOM_Superv_i::MakeQuad2Edges");
2399 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad2Edges(theEdge1, theEdge2);
2400 endService( " GEOM_Superv_i::MakeQuad2Edges" );
2404 //=============================================================================
2406 //=============================================================================
2407 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa (GEOM::GEOM_Object_ptr theFace1,
2408 GEOM::GEOM_Object_ptr theFace2,
2409 GEOM::GEOM_Object_ptr theFace3,
2410 GEOM::GEOM_Object_ptr theFace4,
2411 GEOM::GEOM_Object_ptr theFace5,
2412 GEOM::GEOM_Object_ptr theFace6)
2414 beginService( " GEOM_Superv_i::MakeHexa" );
2415 MESSAGE("GEOM_Superv_i::MakeHexa");
2417 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa(theFace1, theFace2, theFace3, theFace4, theFace5, theFace6);
2418 endService( " GEOM_Superv_i::MakeHexa" );
2422 //=============================================================================
2424 //=============================================================================
2425 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa2Faces (GEOM::GEOM_Object_ptr theFace1,
2426 GEOM::GEOM_Object_ptr theFace2)
2428 beginService( " GEOM_Superv_i::MakeHexa2Faces" );
2429 MESSAGE("GEOM_Superv_i::MakeHexa2Faces");
2431 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa2Faces(theFace1, theFace2);
2432 endService( " GEOM_Superv_i::MakeHexa2Faces" );
2436 //=============================================================================
2438 //=============================================================================
2439 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetPoint (GEOM::GEOM_Object_ptr theShape,
2443 CORBA::Double theEpsilon)
2445 beginService( " GEOM_Superv_i::GetPoint" );
2446 MESSAGE("GEOM_Superv_i::GetPoint");
2448 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetPoint(theShape, theX, theY, theZ, theEpsilon);
2449 endService( " GEOM_Superv_i::GetPoint" );
2453 //=============================================================================
2455 //=============================================================================
2456 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdge (GEOM::GEOM_Object_ptr theShape,
2457 GEOM::GEOM_Object_ptr thePoint1,
2458 GEOM::GEOM_Object_ptr thePoint2)
2460 beginService( " GEOM_Superv_i::GetEdge" );
2461 MESSAGE("GEOM_Superv_i::GetEdge");
2463 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdge(theShape, thePoint1, thePoint2);
2464 endService( " GEOM_Superv_i::GetEdge" );
2468 //=============================================================================
2469 // GetEdgeNearPoint:
2470 //=============================================================================
2471 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdgeNearPoint (GEOM::GEOM_Object_ptr theShape,
2472 GEOM::GEOM_Object_ptr thePoint)
2474 beginService( " GEOM_Superv_i::GetEdgeNearPoint" );
2475 MESSAGE("GEOM_Superv_i::GetEdgeNearPoint");
2477 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdgeNearPoint(theShape, thePoint);
2478 endService( " GEOM_Superv_i::GetEdgeNearPoint" );
2482 //=============================================================================
2484 //=============================================================================
2485 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByPoints (GEOM::GEOM_Object_ptr theShape,
2486 GEOM::GEOM_Object_ptr thePoint1,
2487 GEOM::GEOM_Object_ptr thePoint2,
2488 GEOM::GEOM_Object_ptr thePoint3,
2489 GEOM::GEOM_Object_ptr thePoint4)
2491 beginService( " GEOM_Superv_i::GetFaceByPoints" );
2492 MESSAGE("GEOM_Superv_i::GetFaceByPoints");
2494 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByPoints(theShape, thePoint1, thePoint2, thePoint3, thePoint4);
2495 endService( " GEOM_Superv_i::GetFaceByPoints" );
2499 //=============================================================================
2501 //=============================================================================
2502 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByEdges (GEOM::GEOM_Object_ptr theShape,
2503 GEOM::GEOM_Object_ptr theEdge1,
2504 GEOM::GEOM_Object_ptr theEdge2)
2506 beginService( " GEOM_Superv_i::GetFaceByEdges" );
2507 MESSAGE("GEOM_Superv_i::GetFaceByEdges");
2509 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByEdges(theShape, theEdge1, theEdge2);
2510 endService( " GEOM_Superv_i::GetFaceByEdges" );
2514 //=============================================================================
2516 //=============================================================================
2517 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetOppositeFace (GEOM::GEOM_Object_ptr theBlock,
2518 GEOM::GEOM_Object_ptr theFace)
2520 beginService( " GEOM_Superv_i::GetOppositeFace" );
2521 MESSAGE("GEOM_Superv_i::GetOppositeFace");
2523 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetOppositeFace(theBlock, theFace);
2524 endService( " GEOM_Superv_i::GetOppositeFace" );
2528 //=============================================================================
2529 // GetFaceNearPoint:
2530 //=============================================================================
2531 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceNearPoint (GEOM::GEOM_Object_ptr theShape,
2532 GEOM::GEOM_Object_ptr thePoint)
2534 beginService( " GEOM_Superv_i::GetFaceNearPoint" );
2535 MESSAGE("GEOM_Superv_i::GetFaceNearPoint");
2537 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceNearPoint(theShape, thePoint);
2538 endService( " GEOM_Superv_i::GetFaceNearPoint" );
2542 //=============================================================================
2543 // GetFaceByNormale:
2544 //=============================================================================
2545 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByNormale (GEOM::GEOM_Object_ptr theBlock,
2546 GEOM::GEOM_Object_ptr theVector)
2548 beginService( " GEOM_Superv_i::GetFaceByNormale" );
2549 MESSAGE("GEOM_Superv_i::GetFaceByNormale");
2551 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByNormale(theBlock, theVector);
2552 endService( " GEOM_Superv_i::GetFaceByNormale" );
2556 //=============================================================================
2557 // IsCompoundOfBlocks:
2558 //=============================================================================
2559 CORBA::Boolean GEOM_Superv_i::IsCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2560 CORBA::Long theMinNbFaces,
2561 CORBA::Long theMaxNbFaces,
2562 CORBA::Long& theNbBlocks)
2564 beginService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2565 MESSAGE("GEOM_Superv_i::IsCompoundOfBlocks");
2567 CORBA::Boolean aRes = myBlocksOp->IsCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces, theNbBlocks);
2568 endService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2572 //=============================================================================
2573 // CheckCompoundOfBlocks:
2574 //=============================================================================
2575 CORBA::Boolean GEOM_Superv_i::CheckCompoundOfBlocks
2576 (GEOM::GEOM_Object_ptr theCompound,
2577 GEOM::GEOM_IBlocksOperations::BCErrors_out theErrors)
2579 beginService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2580 MESSAGE("GEOM_Superv_i::CheckCompoundOfBlocks");
2582 CORBA::Boolean aRes = myBlocksOp->CheckCompoundOfBlocks(theCompound, theErrors);
2583 endService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2587 //=============================================================================
2589 //=============================================================================
2590 char* GEOM_Superv_i::PrintBCErrors (GEOM::GEOM_Object_ptr theCompound,
2591 const GEOM::GEOM_IBlocksOperations::BCErrors& theErrors)
2593 beginService( " GEOM_Superv_i::PrintBCErrors" );
2594 MESSAGE("GEOM_Superv_i::PrintBCErrors");
2596 char* anErrors = myBlocksOp->PrintBCErrors(theCompound, theErrors);
2597 endService( " GEOM_Superv_i::PrintBCErrors" );
2601 //=============================================================================
2602 // ExplodeCompoundOfBlocks:
2603 //=============================================================================
2604 GEOM::GEOM_List_ptr GEOM_Superv_i::ExplodeCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2605 CORBA::Long theMinNbFaces,
2606 CORBA::Long theMaxNbFaces)
2608 beginService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2609 MESSAGE("GEOM_Superv_i::ExplodeCompoundOfBlocks");
2611 GEOM::ListOfGO* aBlocks = myBlocksOp->ExplodeCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces);
2612 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2613 endService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2614 return aListPtr->_this();
2617 //=============================================================================
2618 // GetBlockNearPoint:
2619 //=============================================================================
2620 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockNearPoint (GEOM::GEOM_Object_ptr theCompound,
2621 GEOM::GEOM_Object_ptr thePoint)
2623 beginService( " GEOM_Superv_i::GetBlockNearPoint" );
2624 MESSAGE("GEOM_Superv_i::GetBlockNearPoint");
2626 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockNearPoint(theCompound, thePoint);
2627 endService( " GEOM_Superv_i::GetBlockNearPoint" );
2631 //=============================================================================
2633 //=============================================================================
2634 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockByParts (GEOM::GEOM_Object_ptr theCompound,
2635 GEOM::GEOM_List_ptr theParts)
2637 beginService( " GEOM_Superv_i::GetBlockByParts" );
2638 MESSAGE("GEOM_Superv_i::GetBlockByParts");
2639 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2640 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2642 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockByParts(theCompound, aListImplP->GetList());
2643 endService( " GEOM_Superv_i::GetBlockByParts" );
2646 endService( " GEOM_Superv_i::GetBlockByParts" );
2650 //=============================================================================
2651 // GetBlocksByParts:
2652 //=============================================================================
2653 GEOM::GEOM_List_ptr GEOM_Superv_i::GetBlocksByParts (GEOM::GEOM_Object_ptr theCompound,
2654 GEOM::GEOM_List_ptr theParts)
2656 beginService( " GEOM_Superv_i::GetBlocksByParts" );
2657 MESSAGE("GEOM_Superv_i::GetBlocksByParts");
2658 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2659 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2662 GEOM::ListOfGO* aBlocks = myBlocksOp->GetBlocksByParts(theCompound, aListImplP->GetList());
2663 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2664 endService( " GEOM_Superv_i::GetBlocksByParts" );
2665 return aListPtr->_this();
2667 endService( " GEOM_Superv_i::GetBlocksByParts" );
2671 //=============================================================================
2672 // MakeMultiTransformation1D:
2673 //=============================================================================
2674 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation1D (GEOM::GEOM_Object_ptr theBlock,
2675 CORBA::Long theDirFace1,
2676 CORBA::Long theDirFace2,
2677 CORBA::Long theNbTimes)
2679 beginService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2680 MESSAGE("GEOM_Superv_i::MakeMultiTransformation1D");
2682 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation1D(theBlock, theDirFace1, theDirFace2, theNbTimes);
2683 endService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2687 //=============================================================================
2688 // MakeMultiTransformation2D:
2689 //=============================================================================
2690 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation2D
2691 (GEOM::GEOM_Object_ptr theBlock,
2692 CORBA::Long theDirFace1U,
2693 CORBA::Long theDirFace2U,
2694 CORBA::Long theNbTimesU,
2695 CORBA::Long theDirFace1V,
2696 CORBA::Long theDirFace2V,
2697 CORBA::Long theNbTimesV)
2699 beginService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2700 MESSAGE("GEOM_Superv_i::MakeMultiTransformation2D");
2702 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation2D(theBlock,
2703 theDirFace1U, theDirFace2U, theNbTimesU,
2704 theDirFace1V, theDirFace2V, theNbTimesV);
2705 endService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2709 //=============================== CurvesOperations ============================
2710 //=============================================================================
2711 // MakeCirclePntVecR:
2712 //=============================================================================
2713 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCirclePntVecR (GEOM::GEOM_Object_ptr theCenter,
2714 GEOM::GEOM_Object_ptr theVector,
2717 beginService( " GEOM_Superv_i::MakeCirclePntVecR" );
2718 MESSAGE("GEOM_Superv_i::MakeCirclePntVecR");
2720 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCirclePntVecR(theCenter, theVector, theR);
2721 endService( " GEOM_Superv_i::MakeCirclePntVecR" );
2725 //=============================================================================
2726 // MakeCircleThreePnt:
2727 //=============================================================================
2728 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleThreePnt (GEOM::GEOM_Object_ptr thePnt1,
2729 GEOM::GEOM_Object_ptr thePnt2,
2730 GEOM::GEOM_Object_ptr thePnt3)
2732 beginService( " GEOM_Superv_i::MakeCircleThreePnt" );
2733 MESSAGE("GEOM_Superv_i::MakeCircleThreePnt");
2735 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleThreePnt(thePnt1, thePnt2, thePnt3);
2736 endService( " GEOM_Superv_i::MakeCircleThreePnt" );
2739 //=============================================================================
2740 // MakeCircleCenter2Pnt:
2741 //=============================================================================
2742 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleCenter2Pnt (GEOM::GEOM_Object_ptr thePnt1,
2743 GEOM::GEOM_Object_ptr thePnt2,
2744 GEOM::GEOM_Object_ptr thePnt3)
2746 beginService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2747 MESSAGE("GEOM_Superv_i::MakeCircleCenter2Pnt");
2749 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleCenter2Pnt(thePnt1, thePnt2, thePnt3);
2750 endService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2754 //=============================================================================
2756 //=============================================================================
2757 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipse (GEOM::GEOM_Object_ptr theCenter,
2758 GEOM::GEOM_Object_ptr theVector,
2759 CORBA::Double theRMajor,
2760 CORBA::Double theRMinor)
2762 beginService( " GEOM_Superv_i::MakeEllipse" );
2763 MESSAGE("GEOM_Superv_i::MakeEllipse");
2765 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipse(theCenter, theVector, theRMajor, theRMinor);
2766 endService( " GEOM_Superv_i::MakeEllipse" );
2770 //=============================================================================
2772 //=============================================================================
2773 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipseVec (GEOM::GEOM_Object_ptr theCenter,
2774 GEOM::GEOM_Object_ptr theVector,
2775 CORBA::Double theRMajor,
2776 CORBA::Double theRMinor,
2777 GEOM::GEOM_Object_ptr theVectorMajor)
2779 beginService( " GEOM_Superv_i::MakeEllipseVec" );
2780 MESSAGE("GEOM_Superv_i::MakeEllipseVec");
2782 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipseVec(theCenter, theVector, theRMajor, theRMinor, theVectorMajor);
2783 endService( " GEOM_Superv_i::MakeEllipseVec" );
2787 //=============================================================================
2789 //=============================================================================
2790 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArc (GEOM::GEOM_Object_ptr thePnt1,
2791 GEOM::GEOM_Object_ptr thePnt2,
2792 GEOM::GEOM_Object_ptr thePnt3)
2794 beginService( " GEOM_Superv_i::MakeArc" );
2795 MESSAGE("GEOM_Superv_i::MakeArc");
2797 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArc(thePnt1, thePnt2, thePnt3);
2798 endService( " GEOM_Superv_i::MakeArc" );
2802 //=============================================================================
2804 //=============================================================================
2805 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcCenter (GEOM::GEOM_Object_ptr theCenter,
2806 GEOM::GEOM_Object_ptr thePnt1,
2807 GEOM::GEOM_Object_ptr thePnt2,
2808 CORBA::Boolean theSense)
2810 beginService( " GEOM_Superv_i::MakeArcCenter" );
2811 MESSAGE("GEOM_Superv_i::MakeArcCenter");
2813 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcCenter(theCenter, thePnt1, thePnt2,theSense);
2814 endService( " GEOM_Superv_i::MakeArcCenter" );
2818 //=============================================================================
2819 // MakeArcOfEllipse:
2820 //=============================================================================
2821 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1,
2822 GEOM::GEOM_Object_ptr thePnt2,
2823 GEOM::GEOM_Object_ptr thePnt3)
2825 beginService( " GEOM_Superv_i::MakeArcOfEllipse" );
2826 MESSAGE("GEOM_Superv_i::MakeArcOfEllipse");
2828 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcOfEllipse(thePnt1, thePnt2, thePnt3);
2829 endService( " GEOM_Superv_i::MakeArcOfEllipse" );
2833 //=============================================================================
2835 //=============================================================================
2836 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePolyline (GEOM::GEOM_List_ptr thePoints,
2837 CORBA::Boolean theIsClosed)
2839 beginService( " GEOM_Superv_i::MakePolyline" );
2840 MESSAGE("GEOM_Superv_i::MakePolyline");
2841 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2842 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2844 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakePolyline(aListImplP->GetList(), theIsClosed);
2845 endService( " GEOM_Superv_i::MakePolyline" );
2848 endService( " GEOM_Superv_i::MakePolyline" );
2852 //=============================================================================
2853 // MakeSplineBezier:
2854 //=============================================================================
2855 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineBezier (GEOM::GEOM_List_ptr thePoints,
2856 CORBA::Boolean theIsClosed)
2858 beginService( " GEOM_Superv_i::MakeSplineBezier" );
2859 MESSAGE("GEOM_Superv_i::MakeSplineBezier");
2860 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2861 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2863 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineBezier(aListImplP->GetList(), theIsClosed);
2864 endService( " GEOM_Superv_i::MakeSplineBezier" );
2867 endService( " GEOM_Superv_i::MakeSplineBezier" );
2871 //=============================================================================
2872 // MakeSplineInterpolation:
2873 //=============================================================================
2874 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints,
2875 CORBA::Boolean theIsClosed,
2876 CORBA::Boolean theDoReordering)
2878 beginService( " GEOM_Superv_i::MakeSplineInterpolation" );
2879 MESSAGE("GEOM_Superv_i::MakeSplineInterpolation");
2880 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2881 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2883 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineInterpolation(aListImplP->GetList(), theIsClosed, theDoReordering);
2884 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2887 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2891 //=============================================================================
2893 //=============================================================================
2894 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSketcher (const char* theCommand,
2895 GEOM::GEOM_List_ptr theWorkingPlane)
2897 beginService( " GEOM_Superv_i::MakeSketcher" );
2898 MESSAGE("GEOM_Superv_i::MakeSketcher");
2899 if (GEOM_List_i<GEOM::ListOfDouble>* aListImplWP =
2900 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theWorkingPlane, myPOA).in())) {
2902 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSketcher(theCommand, aListImplWP->GetList());
2903 endService( " GEOM_Superv_i::MakeSketcher" );
2906 endService( " GEOM_Superv_i::MakeSketcher" );
2910 //=============================================================================
2912 //=============================================================================
2913 GEOM::GEOM_Object_ptr GEOM_Superv_i::Make3DSketcher ( GEOM::GEOM_List_ptr theCoordinates)
2915 beginService( " GEOM_Superv_i::Make3DSketcher" );
2916 MESSAGE("GEOM_Superv_i::Make3DSketcher");
2917 if (GEOM_List_i<GEOM::ListOfDouble>* aListImpl =
2918 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theCoordinates, myPOA).in())) {
2920 GEOM::GEOM_Object_ptr anObj = myCurvesOp->Make3DSketcher(aListImpl->GetList());
2921 endService( " GEOM_Superv_i::Make3DSketcher" );
2924 endService( " GEOM_Superv_i::Make3DSketcher" );
2928 //=============================== LocalOperations =============================
2929 //=============================================================================
2931 //=============================================================================
2932 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletAll (GEOM::GEOM_Object_ptr theShape,
2935 beginService( " GEOM_Superv_i::MakeFilletAll" );
2936 MESSAGE("GEOM_Superv_i::MakeFilletAllMakeSketcher");
2938 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletAll(theShape, theR);
2939 endService( " GEOM_Superv_i::MakeFilletAll" );
2943 //=============================================================================
2945 //=============================================================================
2946 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdges (GEOM::GEOM_Object_ptr theShape,
2948 GEOM::GEOM_List_ptr theEdges)
2950 beginService( " GEOM_Superv_i::MakeFilletEdges" );
2951 MESSAGE("GEOM_Superv_i::MakeFilletEdges");
2952 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2953 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2955 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdges(theShape, theR, aListImplE->GetList());
2956 endService( " GEOM_Superv_i::MakeFilletEdges" );
2959 endService( " GEOM_Superv_i::MakeFilletEdges" );
2963 //=============================================================================
2964 // MakeFilletEdges R1 R2:
2965 //=============================================================================
2966 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdgesR1R2 (GEOM::GEOM_Object_ptr theShape,
2967 CORBA::Double theR1,
2968 CORBA::Double theR2,
2969 GEOM::GEOM_List_ptr theEdges)
2971 beginService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2972 MESSAGE("GEOM_Superv_i::MakeFilletEdgesR1R2");
2973 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
2974 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
2976 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdgesR1R2(theShape, theR1,
2977 theR2, aListImplE->GetList());
2978 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2981 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
2985 //=============================================================================
2987 //=============================================================================
2988 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFaces (GEOM::GEOM_Object_ptr theShape,
2990 GEOM::GEOM_List_ptr theFaces)
2992 beginService( " GEOM_Superv_i::MakeFilletFaces" );
2993 MESSAGE("GEOM_Superv_i::MakeFilletFaces");
2994 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
2995 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
2997 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFaces(theShape, theR, aListImplF->GetList());
2998 endService( " GEOM_Superv_i::MakeFilletFaces" );
3001 endService( " GEOM_Superv_i::MakeFilletFaces" );
3005 //=============================================================================
3006 // MakeFilletFaces R1 R2:
3007 //=============================================================================
3008 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFacesR1R2 (GEOM::GEOM_Object_ptr theShape,
3009 CORBA::Double theR1,
3010 CORBA::Double theR2,
3011 GEOM::GEOM_List_ptr theFaces)
3013 beginService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
3014 MESSAGE("GEOM_Superv_i::MakeFilletFacesR1R2");
3015 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3016 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3018 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFacesR1R2(theShape, theR1, theR2,
3019 aListImplF->GetList());
3020 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
3023 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
3027 //=============================================================================
3029 //=============================================================================
3030 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet2D (GEOM::GEOM_Object_ptr theShape,
3032 GEOM::GEOM_List_ptr theVertexes)
3034 beginService( " GEOM_Superv_i::MakeFillet2D" );
3035 MESSAGE("GEOM_Superv_i::MakeFillet2D");
3036 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
3037 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
3039 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet2D(theShape, theR, aListImplV->GetList());
3040 endService( " GEOM_Superv_i::MakeFillet2D" );
3043 endService( " GEOM_Superv_i::MakeFillet2D" );
3047 //=============================================================================
3049 //=============================================================================
3050 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet1D (GEOM::GEOM_Object_ptr theShape,
3052 GEOM::GEOM_List_ptr theVertexes,
3053 CORBA::Boolean doIgnoreSecantVertices)
3055 beginService( " GEOM_Superv_i::MakeFillet1D" );
3056 MESSAGE("GEOM_Superv_i::MakeFillet1D");
3057 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
3058 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
3060 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet1D
3061 (theShape, theR, aListImplV->GetList(), doIgnoreSecantVertices);
3062 endService( " GEOM_Superv_i::MakeFillet1D" );
3065 endService( " GEOM_Superv_i::MakeFillet1D" );
3069 //=============================================================================
3071 //=============================================================================
3072 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferAll (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD)
3074 beginService( " GEOM_Superv_i::MakeChamferAll" );
3075 MESSAGE("GEOM_Superv_i::MakeChamferAll");
3077 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferAll(theShape, theD);
3078 endService( " GEOM_Superv_i::MakeChamferAll" );
3082 //=============================================================================
3084 //=============================================================================
3085 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdge (GEOM::GEOM_Object_ptr theShape,
3086 CORBA::Double theD1, CORBA::Double theD2,
3087 CORBA::Long theFace1, CORBA::Long theFace2)
3089 beginService( " GEOM_Superv_i::MakeChamferEdge" );
3090 MESSAGE("GEOM_Superv_i::MakeChamferEdge");
3092 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdge(theShape, theD1, theD2, theFace1, theFace2);
3093 endService( " GEOM_Superv_i::MakeChamferEdge" );
3097 //=============================================================================
3098 // MakeChamferEdgeAD:
3099 //=============================================================================
3100 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgeAD (GEOM::GEOM_Object_ptr theShape,
3101 CORBA::Double theD, CORBA::Double theAngle,
3102 CORBA::Long theFace1, CORBA::Long theFace2)
3104 beginService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3105 MESSAGE("GEOM_Superv_i::MakeChamferEdgeAD");
3107 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgeAD(theShape, theD, theAngle, theFace1, theFace2);
3108 endService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3112 //=============================================================================
3113 // MakeChamferFaces:
3114 //=============================================================================
3115 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFaces (GEOM::GEOM_Object_ptr theShape,
3116 CORBA::Double theD1, CORBA::Double theD2,
3117 GEOM::GEOM_List_ptr theFaces)
3119 beginService( " GEOM_Superv_i::MakeChamferFaces" );
3120 MESSAGE("GEOM_Superv_i::MakeChamferFaces");
3121 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3122 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3124 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFaces(theShape, theD1, theD2, aListImplF->GetList());
3125 endService( " GEOM_Superv_i::MakeChamferFaces" );
3128 endService( " GEOM_Superv_i::MakeChamferFaces" );
3132 //=============================================================================
3133 // MakeChamferFacesAD:
3134 //=============================================================================
3135 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFacesAD (GEOM::GEOM_Object_ptr theShape,
3136 CORBA::Double theD, CORBA::Double theAngle,
3137 GEOM::GEOM_List_ptr theFaces)
3139 beginService( " GEOM_Superv_i::MakeChamferFacesAD" );
3140 MESSAGE("GEOM_Superv_i::MakeChamferFacesAD");
3141 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3142 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3144 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFacesAD(theShape, theD, theAngle, aListImplF->GetList());
3145 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3148 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3152 //=============================================================================
3153 // MakeChamferEdges:
3154 //=============================================================================
3155 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdges (GEOM::GEOM_Object_ptr theShape,
3156 CORBA::Double theD1, CORBA::Double theD2,
3157 GEOM::GEOM_List_ptr theEdges)
3159 beginService( " GEOM_Superv_i::MakeChamferEdges" );
3160 MESSAGE("GEOM_Superv_i::MakeChamferEdges");
3161 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3162 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3164 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdges(theShape, theD1, theD2, aListImplF->GetList());
3165 endService( " GEOM_Superv_i::MakeChamferEdges" );
3168 endService( " GEOM_Superv_i::MakeChamferEdges" );
3172 //=============================================================================
3173 // MakeChamferEdgesAD:
3174 //=============================================================================
3175 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgesAD (GEOM::GEOM_Object_ptr theShape,
3176 CORBA::Double theD, CORBA::Double theAngle,
3177 GEOM::GEOM_List_ptr theEdges)
3179 beginService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3180 MESSAGE("GEOM_Superv_i::MakeChamferEdgesAD");
3181 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3182 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3184 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgesAD(theShape, theD, theAngle, aListImplF->GetList());
3185 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3188 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3192 //=============================================================================
3194 //=============================================================================
3195 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArchimede (GEOM::GEOM_Object_ptr theShape,
3196 CORBA::Double theWeight,
3197 CORBA::Double theWaterDensity,
3198 CORBA::Double theMeshingDeflection)
3200 beginService( " GEOM_Superv_i::MakeArchimede" );
3201 MESSAGE("GEOM_Superv_i::MakeArchimede");
3203 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeArchimede(theShape, theWeight, theWaterDensity, theMeshingDeflection);
3204 endService( " GEOM_Superv_i::MakeArchimede" );
3208 //=============================================================================
3209 // GetSubShapeIndexMakeFilletAll:
3210 //=============================================================================
3211 CORBA::Long GEOM_Superv_i::GetSubShapeIndex (GEOM::GEOM_Object_ptr theShape,
3212 GEOM::GEOM_Object_ptr theSubShape)
3214 beginService( " GEOM_Superv_i::GetSubShapeIndex" );
3215 MESSAGE("GEOM_Superv_i::GetSubShapeIndexMakeArchimede");
3217 CORBA::Long aRes = myLocalOp->GetSubShapeIndex(theShape, theSubShape);
3218 endService( " GEOM_Superv_i::GetSubShapeIndex" );
3222 //=============================== GroupOperations =============================
3223 //=============================================================================
3225 //=============================================================================
3226 GEOM::GEOM_Object_ptr GEOM_Superv_i::CreateGroup (GEOM::GEOM_Object_ptr theMainShape,
3227 CORBA::Long theShapeType)
3229 beginService( " GEOM_Superv_i::CreateGroup" );
3230 MESSAGE("GEOM_Superv_i::CreateGroup");
3232 GEOM::GEOM_Object_ptr anObj = myGroupOp->CreateGroup(theMainShape, theShapeType);
3233 endService( " GEOM_Superv_i::CreateGroup" );
3237 //=============================================================================
3239 //=============================================================================
3240 void GEOM_Superv_i::AddObject (GEOM::GEOM_Object_ptr theGroup,
3241 CORBA::Long theSubShapeId)
3243 beginService( " GEOM_Superv_i::AddObject" );
3244 MESSAGE("GEOM_Superv_i::AddObject");
3246 myGroupOp->AddObject(theGroup, theSubShapeId);
3247 endService( " GEOM_Superv_i::AddObject" );
3250 //=============================================================================
3252 //=============================================================================
3253 void GEOM_Superv_i::RemoveObject (GEOM::GEOM_Object_ptr theGroup,
3254 CORBA::Long theSubShapeId)
3256 beginService( " GEOM_Superv_i::RemoveObject" );
3257 MESSAGE("GEOM_Superv_i::RemoveObject");
3259 myGroupOp->RemoveObject(theGroup, theSubShapeId);
3260 endService( " GEOM_Superv_i::RemoveObject" );
3263 //=============================================================================
3265 //=============================================================================
3266 CORBA::Long GEOM_Superv_i::GetType (GEOM::GEOM_Object_ptr theGroup)
3268 beginService( " GEOM_Superv_i::GetType" );
3269 MESSAGE("GEOM_Superv_i::GetType");
3271 CORBA::Long aResult = myGroupOp->GetType(theGroup);
3272 endService( " GEOM_Superv_i::GetType" );
3276 //=============================================================================
3278 //=============================================================================
3279 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetMainShape (GEOM::GEOM_Object_ptr theGroup)
3281 beginService( " GEOM_Superv_i::GetMainShape" );
3282 MESSAGE("GEOM_Superv_i::GetMainShape");
3284 GEOM::GEOM_Object_ptr anObj = myGroupOp->GetMainShape(theGroup);
3285 endService( " GEOM_Superv_i::GetMainShape" );
3289 //=============================================================================
3291 //=============================================================================
3292 GEOM::GEOM_List_ptr GEOM_Superv_i::GetObjects (GEOM::GEOM_Object_ptr theGroup)
3294 beginService( " GEOM_Superv_i::GetObjects" );
3295 MESSAGE("GEOM_Superv_i::GetObjects");
3298 GEOM::ListOfLong* aList = myGroupOp->GetObjects(theGroup);
3299 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>(*(aList));
3300 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
3301 endService( " GEOM_Superv_i::GetObjects" );
3302 return aListPtr->_this();
3305 //=============================== Advanced Operations =============================
3306 //=============================================================================
3308 //=============================================================================
3309 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShape
3310 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3311 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3312 CORBA::Boolean theHexMesh)
3314 beginService( " GEOM_Superv_i::MakePipeTShape" );
3315 MESSAGE("GEOM_Superv_i::MakePipeTShape");
3318 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShape(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh);
3319 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3320 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3321 endService( " GEOM_Superv_i::MakePipeTShape" );
3322 return aSeqPtr->_this();
3325 //=============================================================================
3326 // MakePipeTShapeWithPosition
3327 //=============================================================================
3328 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeWithPosition
3329 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3330 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2, CORBA::Boolean theHexMesh,
3331 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3333 beginService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3334 MESSAGE("GEOM_Superv_i::MakePipeTShapeWithPosition");
3337 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh, theP1, theP2, theP3);
3338 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3339 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3340 endService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3341 return aSeqPtr->_this();
3344 //=============================================================================
3345 // MakePipeTShapeChamfer
3346 //=============================================================================
3347 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamfer
3348 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3349 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3350 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh)
3352 beginService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3353 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamfer");
3356 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamfer(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh);
3357 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3358 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3359 endService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3360 return aSeqPtr->_this();
3363 //=============================================================================
3364 // MakePipeTShapeChamferWithPosition
3365 //=============================================================================
3366 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamferWithPosition
3367 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3368 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3369 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh,
3370 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3372 beginService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3373 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamferWithPosition");
3376 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamferWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh, theP1, theP2, theP3);
3377 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3378 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3379 endService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3380 return aSeqPtr->_this();
3383 //=============================================================================
3384 // MakePipeTShapeFillet
3385 //=============================================================================
3386 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFillet
3387 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3388 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3389 CORBA::Double theRF, CORBA::Boolean theHexMesh)
3391 beginService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3392 MESSAGE("GEOM_Superv_i::MakePipeTShapeFillet");
3395 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFillet(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh);
3396 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3397 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3398 endService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3399 return aSeqPtr->_this();
3402 //=============================================================================
3403 // MakePipeTShapeFilletWithPosition
3404 //=============================================================================
3405 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFilletWithPosition
3406 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3407 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3408 CORBA::Double theRF, CORBA::Boolean theHexMesh,
3409 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3411 beginService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3412 MESSAGE("GEOM_Superv_i::MakePipeTShapeFilletWithPosition");
3415 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFilletWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh, theP1, theP2, theP3);
3416 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3417 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3418 endService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3419 return aSeqPtr->_this();
3422 //=============================================================================
3424 //=============================================================================
3425 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDividedDisk (CORBA::Double theR, CORBA::Double theRatio,
3426 CORBA::Short theOrientation, GEOM::pattern thePattern)
3428 beginService( " GEOM_Superv_i::MakeDividedDisk" );
3429 MESSAGE("GEOM_Superv_i::MakeDividedDisk");
3431 GEOM::GEOM_Object_ptr anObj = myAdvancedOp->MakeDividedDisk(theR, theRatio, theOrientation, thePattern);
3432 endService( " GEOM_Superv_i::MakeDividedDisk" );
3436 //=============================================================================
3437 // MakeDividedCylinder
3438 //=============================================================================
3439 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDividedCylinder (CORBA::Double theR,
3441 GEOM::pattern thePattern)
3443 beginService( " GEOM_Superv_i::MakeDividedCylinder" );
3444 MESSAGE("GEOM_Superv_i::MakeDividedCylinder");
3446 GEOM::GEOM_Object_ptr anObj = myAdvancedOp->MakeDividedCylinder(theR, theH, thePattern);
3447 endService( " GEOM_Superv_i::MakeDividedCylinder" );
3451 //=============================================================================
3453 //=============================================================================
3454 CORBA::Boolean GEOM_Superv_i::ExportXAO (GEOM::GEOM_Object_ptr theExportingShape, const char* theFileName, GEOM::GEOM_List_ptr thelGroups, GEOM::GEOM_List_ptr thelFields)
3456 beginService( " GEOM_Superv_i::ExportXAO" );
3457 MESSAGE("GEOM_Superv_i::ExportXAO");
3458 getImportExportOp();
3459 if (GEOM_List_i<GEOM::ListOfGO>* aListImplG =
3460 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thelGroups, myPOA).in()))
3462 if (GEOM_List_i<GEOM::ListOfGO>* aListImplF =
3463 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thelFields, myPOA).in()))
3465 CORBA::Boolean isGood = myImportExportOp->ExportXAO(theExportingShape, theFileName, aListImplG->GetList(), aListImplF->GetList());
3466 endService( " GEOM_Superv_i::ExportXAO" );
3470 endService( " GEOM_Superv_i::ExportXAO" );
3473 /*@@ insert new functions before this line @@ do not remove this line @@*/
3475 //=====================================================================================
3477 //=====================================================================================
3481 __declspec( dllexport )
3483 PortableServer::ObjectId * GEOM_SupervEngine_factory(CORBA::ORB_ptr orb,
3484 PortableServer::POA_ptr poa,
3485 PortableServer::ObjectId * contId,
3486 const char *instanceName,
3487 const char * interfaceName)
3489 GEOM_Superv_i * myGEOM_Superv_i = new GEOM_Superv_i(orb, poa, contId, instanceName, interfaceName);
3490 //Don't understand the reason why this component is registered ???
3491 // myGEOM_Superv_i->register_name("/myGEOM_Superv");
3492 return myGEOM_Superv_i->getId() ;