1 // Copyright (C) 2007-2014 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, or (at your option) any later version.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 #include "GEOM_Superv_i.hh"
24 #include "SALOME_LifeCycleCORBA.hxx"
26 #include CORBA_SERVER_HEADER(SALOME_Session)
27 #include "SALOMEDSClient_ClientFactory.hxx"
29 #define isNewStudy(a,b) (a > 0 && a != b)
31 //=============================================================================
33 //=============================================================================
34 GEOM_Superv_i::GEOM_Superv_i(CORBA::ORB_ptr orb,
35 PortableServer::POA_ptr poa,
36 PortableServer::ObjectId * contId,
37 const char *instanceName,
38 const char *interfaceName) :
39 Engines_Component_i(orb, poa, contId, instanceName, interfaceName)
41 MESSAGE("GEOM_Superv_i::GEOM_Superv_i");
44 _id = _poa->activate_object(_thisObj);
45 name_service = new SALOME_NamingService(_orb);
46 //get RootPOA (the default)
47 //myPOA = PortableServer::RefCountServantBase::_default_POA();
48 CORBA::Object_var anObj = _orb->resolve_initial_references("RootPOA");
49 myPOA = PortableServer::POA::_narrow(anObj);
56 myBasicOp = GEOM::GEOM_IBasicOperations::_nil();
57 my3DPrimOp = GEOM::GEOM_I3DPrimOperations::_nil();
58 myBoolOp = GEOM::GEOM_IBooleanOperations::_nil();
59 myInsOp = GEOM::GEOM_IInsertOperations::_nil();
60 myTransfOp = GEOM::GEOM_ITransformOperations::_nil();
61 myShapesOp = GEOM::GEOM_IShapesOperations::_nil();
62 myBlocksOp = GEOM::GEOM_IBlocksOperations::_nil();
63 myCurvesOp = GEOM::GEOM_ICurvesOperations::_nil();
64 myLocalOp = GEOM::GEOM_ILocalOperations::_nil();
65 myGroupOp = GEOM::GEOM_IGroupOperations::_nil();
68 //=============================================================================
70 //=============================================================================
71 GEOM_Superv_i::~GEOM_Superv_i()
73 MESSAGE("GEOM_Superv_i::~GEOM_Superv_i");
74 if (!CORBA::is_nil(myBasicOp))
75 myBasicOp->UnRegister();
76 if (!CORBA::is_nil(myBoolOp))
77 myBoolOp->UnRegister();
78 if (!CORBA::is_nil(my3DPrimOp))
79 my3DPrimOp->UnRegister();
83 //============================================================================
84 // function : register()
85 // purpose : register 'name' in 'name_service'
86 //============================================================================
87 void GEOM_Superv_i::register_name(char * name)
89 GEOM::GEOM_Superv_var g = _this();
90 name_service->Register(g, name);
93 //=============================================================================
95 //=============================================================================
96 void GEOM_Superv_i::setGeomEngine()
98 if ( !CORBA::is_nil(myGeomEngine) )
101 // get GEOM_Gen engine
102 Engines::Container_var cont=GetContainerRef();
103 CORBA::String_var container_name=cont->name();
104 std::string shortName=container_name.in();
105 shortName=shortName.substr(12); // substract "/Containers/"
106 SALOME_LifeCycleCORBA* lcc = new SALOME_LifeCycleCORBA( name_service );
107 Engines::EngineComponent_var comp = lcc->FindOrLoad_Component( shortName.c_str(), "GEOM" );
110 myGeomEngine = GEOM::GEOM_Gen::_narrow(comp);
113 //=============================================================================
115 //=============================================================================
116 void GEOM_Superv_i::SetStudyID( CORBA::Long theId )
118 // mkr : PAL10770 -->
119 myLastStudyID = myStudyID;
121 CORBA::Object_ptr anObject = name_service->Resolve("/Kernel/Session");
122 if ( !CORBA::is_nil(anObject) ) {
123 SALOME::Session_var aSession = SALOME::Session::_narrow(anObject);
124 if ( !CORBA::is_nil(aSession) ) {
125 int aStudyID = aSession->GetActiveStudyId();
126 if ( theId != aStudyID && aStudyID > 0) { // mkr : IPAL12128
127 MESSAGE("Warning : given study ID theId="<<theId<<" is wrong and will be replaced by the value "<<aStudyID);
128 myStudyID = aStudyID;
131 myStudyID = theId; // mkr : IPAL12128
135 if ( isNewStudy(myLastStudyID,myStudyID) ) {
136 if (CORBA::is_nil(myGeomEngine)) setGeomEngine();
137 std::string anEngine = _orb->object_to_string( myGeomEngine );
139 CORBA::Object_var anObj = name_service->Resolve("/myStudyManager");
140 if ( !CORBA::is_nil(anObj) ) {
141 SALOMEDS::StudyManager_var aStudyManager = SALOMEDS::StudyManager::_narrow(anObj);
142 if ( !CORBA::is_nil(aStudyManager) ) {
143 _PTR(Study) aDSStudy = ClientFactory::Study(aStudyManager->GetStudyByID(myStudyID));
145 _PTR(SComponent) aSCO = aDSStudy->FindComponent(myGeomEngine->ComponentDataType());
147 _PTR(StudyBuilder) aBuilder = aDSStudy->NewBuilder();
148 if ( aBuilder ) aBuilder->LoadWith( aSCO, anEngine );
154 // mkr : PAL10770 <--
157 //=============================================================================
159 //=============================================================================
160 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfGO()
162 MESSAGE("GEOM_Superv_i::CreateListOfGO()");
163 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>();
164 return aListPtr->_this();
167 //=============================================================================
168 // AddItemToListOfGO:
169 //=============================================================================
170 void GEOM_Superv_i::AddItemToListOfGO(GEOM::GEOM_List_ptr& theList,
171 GEOM::GEOM_Object_ptr theObject)
173 MESSAGE("GEOM_Superv_i::AddItemToListOfGO(...)");
174 GEOM::GEOM_Object_var anObj = GEOM::GEOM_Object::_duplicate(theObject);
175 if (GEOM_List_i<GEOM::ListOfGO>* aList =
176 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theList, myPOA).in())) {
177 aList->AddObject(anObj);
178 MESSAGE(" NewLength = "<<aList->GetList().length());
182 //=============================================================================
184 //=============================================================================
185 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfLong()
187 MESSAGE("GEOM_Superv_i::CreateListOfLong()");
188 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>();
189 return aListPtr->_this();
192 //=============================================================================
193 // AddItemToListOfLong:
194 //=============================================================================
195 void GEOM_Superv_i::AddItemToListOfLong(GEOM::GEOM_List_ptr& theList,
196 CORBA::Long theObject)
198 MESSAGE("GEOM_Superv_i::AddItemToListOfLong(...)");
199 if (GEOM_List_i<GEOM::ListOfLong>* aList =
200 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theList, myPOA).in())) {
201 aList->AddObject(theObject);
202 MESSAGE(" NewLength = "<<aList->GetList().length());
206 //=============================================================================
207 // CreateListOfDouble:
208 //=============================================================================
209 GEOM::GEOM_List_ptr GEOM_Superv_i::CreateListOfDouble()
211 MESSAGE("GEOM_Superv_i::CreateListOfDouble()");
212 GEOM_List_i<GEOM::ListOfDouble>* aListPtr = new GEOM_List_i<GEOM::ListOfDouble>();
213 return aListPtr->_this();
216 //=============================================================================
217 // AddItemToListOfDouble:
218 //=============================================================================
219 void GEOM_Superv_i::AddItemToListOfDouble(GEOM::GEOM_List_ptr& theList,
220 CORBA::Double theObject)
222 MESSAGE("GEOM_Superv_i::AddItemToListOfDouble(...)");
223 if (GEOM_List_i<GEOM::ListOfDouble>* aList =
224 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theList, myPOA).in())) {
225 aList->AddObject(theObject);
226 MESSAGE(" NewLength = "<<aList->GetList().length());
230 //=============================================================================
232 //=============================================================================
233 void GEOM_Superv_i::getBasicOp()
235 if (CORBA::is_nil(myGeomEngine))
237 // get GEOM_IBasicOperations interface
238 if (CORBA::is_nil(myBasicOp) || isNewStudy(myLastStudyID,myStudyID)) {
239 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
240 // Try to get id of the study from the SALOME Session
241 if(myStudyID < 0 ) SetStudyID(-1);
242 myBasicOp = myGeomEngine->GetIBasicOperations(myStudyID);
246 //=============================================================================
248 //=============================================================================
249 void GEOM_Superv_i::get3DPrimOp()
251 if (CORBA::is_nil(myGeomEngine))
253 // get GEOM_I3DPrimOperations interface
254 if (CORBA::is_nil(my3DPrimOp) || isNewStudy(myLastStudyID,myStudyID)) {
255 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
256 // Try to get id of the study from the SALOME Session
257 if(myStudyID < 0 ) SetStudyID(-1);
258 my3DPrimOp = myGeomEngine->GetI3DPrimOperations(myStudyID);
262 //=============================================================================
264 //=============================================================================
265 void GEOM_Superv_i::getBoolOp()
267 if (CORBA::is_nil(myGeomEngine))
269 // get GEOM_IBooleanOperations interface
270 if (CORBA::is_nil(myBoolOp) || isNewStudy(myLastStudyID,myStudyID)) {
271 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
272 // Try to get id of the study from the SALOME Session
273 if(myStudyID < 0 ) SetStudyID(-1);
274 myBoolOp = myGeomEngine->GetIBooleanOperations(myStudyID);
278 //=============================================================================
280 //=============================================================================
281 void GEOM_Superv_i::getInsOp()
283 if (CORBA::is_nil(myGeomEngine))
285 // get GEOM_IInsertOperations interface
286 if (CORBA::is_nil(myInsOp) || isNewStudy(myLastStudyID,myStudyID)) {
287 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
288 // Try to get id of the study from the SALOME Session
289 if(myStudyID < 0 ) SetStudyID(-1);
290 myInsOp = myGeomEngine->GetIInsertOperations(myStudyID);
294 //=============================================================================
296 //=============================================================================
297 void GEOM_Superv_i::getTransfOp()
299 if (CORBA::is_nil(myGeomEngine))
301 // get GEOM_ITransformOperations interface
302 if (CORBA::is_nil(myTransfOp) || isNewStudy(myLastStudyID,myStudyID)) {
303 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
304 // Try to get id of the study from the SALOME Session
305 if(myStudyID < 0 ) SetStudyID(-1);
306 myTransfOp = myGeomEngine->GetITransformOperations(myStudyID);
310 //=============================================================================
312 //=============================================================================
313 void GEOM_Superv_i::getShapesOp()
315 if (CORBA::is_nil(myGeomEngine))
317 // get GEOM_IShapesOperations interface
318 if (CORBA::is_nil(myShapesOp) || isNewStudy(myLastStudyID,myStudyID)) {
319 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
320 // Try to get id of the study from the SALOME Session
321 if(myStudyID < 0 ) SetStudyID(-1);
322 myShapesOp = myGeomEngine->GetIShapesOperations(myStudyID);
326 //=============================================================================
328 //=============================================================================
329 void GEOM_Superv_i::getBlocksOp()
331 if (CORBA::is_nil(myGeomEngine))
333 // get GEOM_IBlocksOperations interface
334 if (CORBA::is_nil(myBlocksOp) || isNewStudy(myLastStudyID,myStudyID)) {
335 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
336 // Try to get id of the study from the SALOME Session
337 if(myStudyID < 0 ) SetStudyID(-1);
338 myBlocksOp = myGeomEngine->GetIBlocksOperations(myStudyID);
342 //=============================================================================
344 //=============================================================================
345 void GEOM_Superv_i::getCurvesOp()
347 if (CORBA::is_nil(myGeomEngine))
349 // get GEOM_ICurvesOperations interface
350 if (CORBA::is_nil(myCurvesOp) || isNewStudy(myLastStudyID,myStudyID)) {
351 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
352 // Try to get id of the study from the SALOME Session
353 if(myStudyID < 0 ) SetStudyID(-1);
354 myCurvesOp = myGeomEngine->GetICurvesOperations(myStudyID);
358 //=============================================================================
360 //=============================================================================
361 void GEOM_Superv_i::getLocalOp()
363 if (CORBA::is_nil(myGeomEngine))
365 // get GEOM_ILocalOperations interface
366 if (CORBA::is_nil(myLocalOp) || isNewStudy(myLastStudyID,myStudyID)) {
367 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
368 // Try to get id of the study from the SALOME Session
369 if(myStudyID < 0 ) SetStudyID(-1);
370 myLocalOp = myGeomEngine->GetILocalOperations(myStudyID);
374 //=============================================================================
376 //=============================================================================
377 void GEOM_Superv_i::getGroupOp()
379 if (CORBA::is_nil(myGeomEngine))
381 // get GEOM_IGroupOperations interface
382 if (CORBA::is_nil(myGroupOp) || isNewStudy(myLastStudyID,myStudyID)) {
383 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
384 // Try to get id of the study from the SALOME Session
385 if(myStudyID < 0 ) SetStudyID(-1);
386 myGroupOp = myGeomEngine->GetIGroupOperations(myStudyID);
390 //=============================================================================
392 //=============================================================================
393 void GEOM_Superv_i::getAdvancedOp()
395 if (CORBA::is_nil(myGeomEngine))
397 // get GEOM_IAdvancedOperations interface
398 if (CORBA::is_nil(myAdvancedOp) || isNewStudy(myLastStudyID,myStudyID)) {
399 //rnv: to fix bug "IPAL22461 6.3.0: Incorrect study storage if study contains shape modified with YACS"
400 // Try to get id of the study from the SALOME Session
401 if(myStudyID < 0 ) SetStudyID(-1);
402 //myAdvancedOp = myGeomEngine->GetIAdvancedOperations(myStudyID);
403 myAdvancedOp = GEOM::GEOM_IAdvancedOperations::_narrow(myGeomEngine->GetPluginOperations(myStudyID, "AdvancedEngine"));
407 //=============================================================================
409 //=============================================================================
410 PortableServer::ServantBase_var GEOM_Superv_i::GetServant(CORBA::Object_ptr theObject,
411 PortableServer::POA_ptr thePOA)
413 if(CORBA::is_nil(theObject)) return NULL;
414 PortableServer::Servant aServant = thePOA->reference_to_servant(theObject);
418 //============================================================================
420 // purpose : save OCAF/Geom document
421 //============================================================================
422 SALOMEDS::TMPFile* GEOM_Superv_i::Save(SALOMEDS::SComponent_ptr theComponent,
424 CORBA::Boolean isMultiFile)
426 SALOMEDS::TMPFile_var aStreamFile;
427 return aStreamFile._retn();
430 //============================================================================
431 // function : SaveASCII()
433 //============================================================================
434 SALOMEDS::TMPFile* GEOM_Superv_i::SaveASCII(SALOMEDS::SComponent_ptr theComponent,
436 CORBA::Boolean isMultiFile)
438 SALOMEDS::TMPFile_var aStreamFile;
439 return aStreamFile._retn();
442 //============================================================================
445 //============================================================================
446 CORBA::Boolean GEOM_Superv_i::Load(SALOMEDS::SComponent_ptr theComponent,
447 const SALOMEDS::TMPFile& theStream,
449 CORBA::Boolean isMultiFile)
454 //============================================================================
455 // function : LoadASCII()
457 //============================================================================
458 CORBA::Boolean GEOM_Superv_i::LoadASCII(SALOMEDS::SComponent_ptr theComponent,
459 const SALOMEDS::TMPFile& theStream,
461 CORBA::Boolean isMultiFile)
466 //============================================================================
467 // function : Close()
469 //============================================================================
470 void GEOM_Superv_i::Close(SALOMEDS::SComponent_ptr theComponent)
474 //============================================================================
475 // function : ComponentDataType()
477 //============================================================================
478 char* GEOM_Superv_i::ComponentDataType()
483 //============================================================================
484 // function : IORToLocalPersistentID()
486 //============================================================================
487 char* GEOM_Superv_i::IORToLocalPersistentID(SALOMEDS::SObject_ptr theSObject,
488 const char* IORString,
489 CORBA::Boolean isMultiFile,
490 CORBA::Boolean isASCII)
495 //============================================================================
496 // function : LocalPersistentIDToIOR()
497 // purpose : Create/Load CORBA object from a persistent ref (an entry)
498 // : Used when a study is loaded
499 // : The IOR (IORName) of object created is returned
500 //============================================================================
501 char* GEOM_Superv_i::LocalPersistentIDToIOR(SALOMEDS::SObject_ptr theSObject,
502 const char* aLocalPersistentID,
503 CORBA::Boolean isMultiFile,
504 CORBA::Boolean isASCII)
509 //============================================================================
510 // function : CanPublishInStudy
512 //============================================================================
513 CORBA::Boolean GEOM_Superv_i::CanPublishInStudy(CORBA::Object_ptr theIOR)
515 if (CORBA::is_nil(myGeomEngine))
517 return myGeomEngine->CanPublishInStudy(theIOR);
520 //============================================================================
521 // function : PublishInStudy
523 //============================================================================
524 SALOMEDS::SObject_ptr GEOM_Superv_i::PublishInStudy(SALOMEDS::Study_ptr theStudy,
525 SALOMEDS::SObject_ptr theSObject,
526 CORBA::Object_ptr theObject,
527 const char* theName) throw (SALOME::SALOME_Exception)
529 if (CORBA::is_nil(myGeomEngine))
531 return myGeomEngine->PublishInStudy(theStudy, theSObject, theObject, theName);
534 //============================================================================
535 // function : PublishNamedShapesInStudy
537 //============================================================================
539 GEOM_Superv_i::PublishNamedShapesInStudy(SALOMEDS::Study_ptr theStudy,
540 //SALOMEDS::SObject_ptr theSObject,
541 CORBA::Object_ptr theObject)
543 if (CORBA::is_nil(myGeomEngine))
545 return myGeomEngine->PublishNamedShapesInStudy(theStudy, theObject);
548 //============================================================================
549 // function : CanCopy()
551 //============================================================================
552 CORBA::Boolean GEOM_Superv_i::CanCopy(SALOMEDS::SObject_ptr theObject)
557 //============================================================================
558 // function : CopyFrom()
560 //============================================================================
561 SALOMEDS::TMPFile* GEOM_Superv_i::CopyFrom(SALOMEDS::SObject_ptr theObject, CORBA::Long& theObjectID)
563 SALOMEDS::TMPFile_var aStreamFile;
564 return aStreamFile._retn();
567 //============================================================================
568 // function : CanPaste()
570 //============================================================================
571 CORBA::Boolean GEOM_Superv_i::CanPaste(const char* theComponentName, CORBA::Long theObjectID)
576 //============================================================================
577 // function : PasteInto()
579 //============================================================================
580 SALOMEDS::SObject_ptr GEOM_Superv_i::PasteInto(const SALOMEDS::TMPFile& theStream,
581 CORBA::Long theObjectID,
582 SALOMEDS::SObject_ptr theObject)
584 SALOMEDS::SObject_var aNewSO;
585 return aNewSO._retn();
588 //================= Primitives Construction : BasicOperations =================
589 //=============================================================================
591 //=============================================================================
592 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointXYZ(CORBA::Double theX,
596 beginService( " GEOM_Superv_i::MakePointXYZ" );
597 MESSAGE("GEOM_Superv_i::MakePointXYZ");
599 // make vertex and return
600 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointXYZ(theX, theY, theZ);
601 endService( " GEOM_Superv_i::MakePointXYZ" );
605 //=============================================================================
606 // MakePointWithReference:
607 //=============================================================================
608 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointWithReference (GEOM::GEOM_Object_ptr theReference,
613 beginService( " GEOM_Superv_i::MakePointWithReference" );
614 MESSAGE("GEOM_Superv_i::MakePointWithReference");
616 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointWithReference(theReference, theX, theY, theZ);
617 endService( " GEOM_Superv_i::MakePointWithReference" );
621 //=============================================================================
623 //=============================================================================
624 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
625 CORBA::Double theParameter)
627 beginService( " GEOM_Superv_i::MakePointOnCurve" );
628 MESSAGE("GEOM_Superv_i::MakePointOnCurve");
630 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurve(theRefCurve, theParameter);
631 endService( " GEOM_Superv_i::MakePointOnCurve" );
635 //=============================================================================
636 // MakePointOnCurveByLength:
637 //=============================================================================
638 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByLength (GEOM::GEOM_Object_ptr theRefCurve,
639 CORBA::Double theLength,
640 GEOM::GEOM_Object_ptr theStartPoint)
642 beginService( " GEOM_Superv_i::MakePointOnCurveByLength" );
643 MESSAGE("GEOM_Superv_i::MakePointOnCurveByLength");
645 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnCurveByLength(theRefCurve, theLength, theStartPoint);
646 endService( " GEOM_Superv_i::MakePointOnCurveByLength" );
650 //=============================================================================
651 // MakePointOnCurveByCoord
652 //=============================================================================
653 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnCurveByCoord (GEOM::GEOM_Object_ptr theRefCurve,
654 CORBA::Double theXParameter,
655 CORBA::Double theYParameter,
656 CORBA::Double theZParameter)
658 beginService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
659 MESSAGE("GEOM_Superv_i::MakePointOnCurveByCoord");
661 GEOM::GEOM_Object_ptr anObj =
662 myBasicOp->MakePointOnCurveByCoord(theRefCurve, theXParameter,
663 theYParameter, theZParameter);
664 endService( " GEOM_Superv_i::MakePointOnCurveByCoord" );
668 //=============================================================================
669 // MakePointOnSurface:
670 //=============================================================================
671 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurface (GEOM::GEOM_Object_ptr theRefSurface,
672 CORBA::Double theUParameter,
673 CORBA::Double theVParameter)
675 beginService( " GEOM_Superv_i::MakePointOnSurface" );
676 MESSAGE("GEOM_Superv_i::MakePointOnSurface");
678 GEOM::GEOM_Object_ptr anObj =
679 myBasicOp->MakePointOnSurface(theRefSurface, theUParameter, theVParameter);
680 endService( " GEOM_Superv_i::MakePointOnSurface" );
684 //=============================================================================
685 // MakePointOnSurfaceByCoord
686 //=============================================================================
687 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnSurfaceByCoord (GEOM::GEOM_Object_ptr theRefSurface,
688 CORBA::Double theXParameter,
689 CORBA::Double theYParameter,
690 CORBA::Double theZParameter)
692 beginService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
693 MESSAGE("GEOM_Superv_i::MakePointOnSurfaceByCoord");
695 GEOM::GEOM_Object_ptr anObj =
696 myBasicOp->MakePointOnSurfaceByCoord(theRefSurface, theXParameter,
697 theYParameter, theZParameter);
698 endService( " GEOM_Superv_i::MakePointOnSurfaceByCoord" );
702 //=============================================================================
703 // MakePointOnLinesIntersection:
704 //=============================================================================
705 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePointOnLinesIntersection (GEOM::GEOM_Object_ptr theRefLine1,
706 GEOM::GEOM_Object_ptr theRefLine2)
708 beginService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
709 MESSAGE("GEOM_Superv_i::MakePointOnLinesIntersection");
711 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePointOnLinesIntersection(theRefLine1, theRefLine2);
712 endService( " GEOM_Superv_i::MakePointOnLinesIntersection" );
716 //=============================================================================
717 // MakeTangentOnCurve:
718 //=============================================================================
719 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentOnCurve (GEOM::GEOM_Object_ptr theRefCurve,
720 CORBA::Double theParameter)
722 beginService( " GEOM_Superv_i::MakeTangentOnCurve" );
723 MESSAGE("GEOM_Superv_i::MakeTangentOnCurve");
725 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentOnCurve(theRefCurve, theParameter);
726 endService( " GEOM_Superv_i::MakeTangentOnCurve" );
730 //=============================================================================
732 //=============================================================================
733 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorDXDYDZ (CORBA::Double theDX,
737 beginService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
738 MESSAGE("GEOM_Superv_i::MakeVectorDXDYDZ");
740 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorDXDYDZ(theDX, theDY, theDZ);
741 endService( " GEOM_Superv_i::MakeVectorDXDYDZ" );
745 //=============================================================================
747 //=============================================================================
748 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeVectorTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
749 GEOM::GEOM_Object_ptr thePnt2)
751 beginService( " GEOM_Superv_i::MakeVectorTwoPnt" );
752 MESSAGE("GEOM_Superv_i::MakeVector");
754 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeVectorTwoPnt(thePnt1, thePnt2);
755 endService( " GEOM_Superv_i::MakeVectorTwoPnt" );
759 //=============================================================================
761 //=============================================================================
762 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
763 GEOM::GEOM_Object_ptr thePnt2)
765 beginService( " GEOM_Superv_i::MakeLineTwoPnt");
766 MESSAGE("GEOM_Superv_i::MakeLineTwoPnt");
768 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoPnt(thePnt1, thePnt2);
769 endService( " GEOM_Superv_i::MakeLineTwoPnt");
773 //=============================================================================
775 //=============================================================================
776 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeLineTwoFaces (GEOM::GEOM_Object_ptr theFace1,
777 GEOM::GEOM_Object_ptr theFace2)
779 beginService( " GEOM_Superv_i::MakeLineTwoFaces");
780 MESSAGE("GEOM_Superv_i::MakeLineTwoFaces");
782 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeLineTwoFaces(theFace1, theFace2);
783 endService( " GEOM_Superv_i::MakeLineTwoFaces");
787 //=============================================================================
788 // MakePlaneThreePnt:
789 //=============================================================================
790 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneThreePnt (GEOM::GEOM_Object_ptr thePnt1,
791 GEOM::GEOM_Object_ptr thePnt2,
792 GEOM::GEOM_Object_ptr thePnt3,
793 CORBA::Double theTrimSize)
795 beginService( " GEOM_Superv_i::MakePlaneThreePnt");
796 MESSAGE("GEOM_Superv_i::MakePlaneThreePnt");
798 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneThreePnt(thePnt1, thePnt2, thePnt3, theTrimSize);
799 endService( " GEOM_Superv_i::MakePlaneThreePnt");
803 //=============================================================================
805 //=============================================================================
806 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlanePntVec (GEOM::GEOM_Object_ptr thePnt,
807 GEOM::GEOM_Object_ptr theVec,
808 CORBA::Double theTrimSize)
810 beginService( " GEOM_Superv_i::MakePlanePntVec" );
811 MESSAGE("GEOM_Superv_i::MakePlanePntVec");
813 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlanePntVec(thePnt, theVec, theTrimSize);
814 endService( " GEOM_Superv_i::MakePlanePntVec" );
818 //=============================================================================
820 //=============================================================================
821 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneFace (GEOM::GEOM_Object_ptr theFace,
822 CORBA::Double theTrimSize)
824 beginService( " GEOM_Superv_i::MakePlaneFace" );
825 MESSAGE("GEOM_Superv_i::MakePlaneFace");
827 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneFace(theFace, theTrimSize);
828 endService( " GEOM_Superv_i::MakePlaneFace" );
832 //=============================================================================
834 //=============================================================================
835 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlane2Vec (GEOM::GEOM_Object_ptr theVec1,
836 GEOM::GEOM_Object_ptr theVec2,
837 CORBA::Double theTrimSize)
839 beginService( " GEOM_Superv_i::MakePlane2Vec" );
840 MESSAGE("GEOM_Superv_i::MakePlane2Vec");
842 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlane2Vec(theVec1, theVec2, theTrimSize);
843 endService( " GEOM_Superv_i::MakePlane2Vec" );
847 //=============================================================================
849 //=============================================================================
850 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePlaneLCS (GEOM::GEOM_Object_ptr theLCS,
851 CORBA::Double theTrimSize,
852 CORBA::Double theOrientation)
854 beginService( " GEOM_Superv_i::MakePlaneLCS" );
855 MESSAGE("GEOM_Superv_i::MakePlaneLCS");
857 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakePlaneLCS(theLCS, theTrimSize, theOrientation);
858 endService( " GEOM_Superv_i::MakePlaneLCS" );
862 //=============================================================================
864 //=============================================================================
865 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarker
866 (CORBA::Double theOX , CORBA::Double theOY , CORBA::Double theOZ,
867 CORBA::Double theXDX, CORBA::Double theXDY, CORBA::Double theXDZ,
868 CORBA::Double theYDX, CORBA::Double theYDY, CORBA::Double theYDZ)
870 beginService( " GEOM_Superv_i::MakeMarker" );
871 MESSAGE("GEOM_Superv_i::MakeMarker");
873 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarker(theOX, theOY, theOZ, theXDX, theXDY, theXDZ, theYDX, theYDY, theYDZ);
874 endService( " GEOM_Superv_i::MakeMarker" );
878 //=============================================================================
879 // MakeMarkerFromShape:
880 //=============================================================================
881 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerFromShape (GEOM::GEOM_Object_ptr theShape)
883 beginService( " GEOM_Superv_i::MakeMarkerFromShape" );
884 MESSAGE("GEOM_Superv_i::MakeMarkerFromShape");
886 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerFromShape(theShape);
887 endService( " GEOM_Superv_i::MakeMarkerFromShape" );
891 //=============================================================================
892 // MakeMarkerPntTwoVec:
893 //=============================================================================
894 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMarkerPntTwoVec (GEOM::GEOM_Object_ptr theOrigin,
895 GEOM::GEOM_Object_ptr theXVec,
896 GEOM::GEOM_Object_ptr theYVec)
898 beginService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
899 MESSAGE("GEOM_Superv_i::MakeMarkerPntTwoVec");
901 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeMarkerPntTwoVec(theOrigin, theXVec, theYVec);
902 endService( " GEOM_Superv_i::MakeMarkerPntTwoVec" );
906 //=============================================================================
907 // MakeTangentPlaneOnFace:
908 //=============================================================================
909 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTangentPlaneOnFace (GEOM::GEOM_Object_ptr theFace,
910 CORBA::Double theParameterU,
911 CORBA::Double theParameterV,
912 CORBA::Double theTrimSize)
914 beginService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
915 MESSAGE("GEOM_Superv_i::MakeTangentPlaneOnFace");
917 GEOM::GEOM_Object_ptr anObj = myBasicOp->MakeTangentPlaneOnFace(theFace, theParameterU,theParameterV,theTrimSize);
918 endService( " GEOM_Superv_i::MakeTangentPlaneOnFace" );
922 //================= Primitives Construction : 3DPrimOperations ================
923 //=============================================================================
925 //=============================================================================
926 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBox (CORBA::Double theX1,
933 beginService( " GEOM_Superv_i::MakeBox" );
934 MESSAGE("GEOM_Superv_i::MakeBox");
937 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(myBasicOp->MakePointXYZ(theX1, theY1, theZ1),
938 myBasicOp->MakePointXYZ(theX2, theY2, theZ2));
939 endService( " GEOM_Superv_i::MakeBox" );
943 //=============================================================================
945 //=============================================================================
946 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxDXDYDZ (CORBA::Double theDX,
950 beginService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
951 MESSAGE("GEOM_Superv_i::MakeBoxDXDYDZ");
953 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxDXDYDZ(theDX, theDY, theDZ);
954 endService( " GEOM_Superv_i::MakeBoxDXDYDZ" );
958 //=============================================================================
960 //=============================================================================
961 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoxTwoPnt (GEOM::GEOM_Object_ptr thePnt1,
962 GEOM::GEOM_Object_ptr thePnt2)
964 beginService( " GEOM_Superv_i::MakeBoxTwoPnt" );
965 MESSAGE("GEOM_Superv_i::MakeBoxTwoPnt");
967 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeBoxTwoPnt(thePnt1, thePnt2);
968 endService( " GEOM_Superv_i::MakeBoxTwoPnt" );
972 //=============================================================================
974 //=============================================================================
975 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceHW (CORBA::Double theH,
977 CORBA::Short theOrientation)
979 beginService( " GEOM_Superv_i::MakeFaceHW" );
980 MESSAGE("GEOM_Superv_i::MakeFaceHW");
982 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceHW(theH, theW, theOrientation);
983 endService( " GEOM_Superv_i::MakeFaceHW" );
987 //=============================================================================
989 //=============================================================================
990 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceObjHW (GEOM::GEOM_Object_ptr theObj,
994 beginService( " GEOM_Superv_i::MakeFaceObjHW" );
995 MESSAGE("GEOM_Superv_i::MakeFaceObjHW");
997 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeFaceObjHW(theObj, theH, theW);
998 endService( " GEOM_Superv_i::MakeFaceObjHW" );
1002 //=============================================================================
1004 //=============================================================================
1005 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskPntVecR (GEOM::GEOM_Object_ptr theCenter,
1006 GEOM::GEOM_Object_ptr theVector,
1009 beginService( " GEOM_Superv_i::MakeDiskPntVecR" );
1010 MESSAGE("GEOM_Superv_i::MakeDiskPntVecR");
1012 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskPntVecR(theCenter, theVector, theR);
1013 endService( " GEOM_Superv_i::MakeDiskPntVecR" );
1017 //=============================================================================
1018 // MakeDiskThreePnt:
1019 //=============================================================================
1020 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskThreePnt (GEOM::GEOM_Object_ptr thePnt1,
1021 GEOM::GEOM_Object_ptr thePnt2,
1022 GEOM::GEOM_Object_ptr thePnt3)
1024 beginService( " GEOM_Superv_i::MakeDiskThreePnt" );
1025 MESSAGE("GEOM_Superv_i::MakeDiskThreePnt");
1027 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskThreePnt(thePnt1, thePnt2, thePnt3);
1028 endService( " GEOM_Superv_i::MakeDiskThreePnt" );
1032 //=============================================================================
1034 //=============================================================================
1035 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDiskR (CORBA::Double theR,
1036 CORBA::Short theOrientation)
1038 beginService( " GEOM_Superv_i::MakeDiskR" );
1039 MESSAGE("GEOM_Superv_i::MakeDiskR");
1041 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeDiskR(theR, theOrientation);
1042 endService( " GEOM_Superv_i::MakeDiskR" );
1046 //=============================================================================
1047 // MakeCylinderPntVecRH:
1048 //=============================================================================
1049 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderPntVecRH (GEOM::GEOM_Object_ptr thePnt,
1050 GEOM::GEOM_Object_ptr theAxis,
1051 CORBA::Double theRadius,
1052 CORBA::Double theHeight)
1054 beginService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
1055 MESSAGE("GEOM_Superv_i::MakeCylinderPntVecRH");
1057 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderPntVecRH(thePnt, theAxis, theRadius, theHeight);
1058 endService( " GEOM_Superv_i::MakeCylinderPntVecRH" );
1062 //=============================================================================
1064 //=============================================================================
1065 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderRH (CORBA::Double theR,
1068 beginService( " GEOM_Superv_i::MakeCylinderRH" );
1069 MESSAGE("GEOM_Superv_i::MakeCylinderRH");
1071 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderRH(theR, theH);
1072 endService( " GEOM_Superv_i::MakeCylinderRH" );
1076 //=============================================================================
1077 // MakeCylinderPntVecRHA:
1078 //=============================================================================
1079 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderPntVecRHA (GEOM::GEOM_Object_ptr thePnt,
1080 GEOM::GEOM_Object_ptr theAxis,
1081 CORBA::Double theRadius,
1082 CORBA::Double theHeight,
1083 CORBA::Double theAngle)
1085 beginService( " GEOM_Superv_i::MakeCylinderPntVecRHA" );
1086 MESSAGE("GEOM_Superv_i::MakeCylinderPntVecRHA");
1088 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderPntVecRHA(thePnt, theAxis, theRadius, theHeight, theAngle);
1089 endService( " GEOM_Superv_i::MakeCylinderPntVecRHA" );
1093 //=============================================================================
1095 //=============================================================================
1096 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCylinderRHA (CORBA::Double theR,
1100 beginService( " GEOM_Superv_i::MakeCylinderRHA" );
1101 MESSAGE("GEOM_Superv_i::MakeCylinderRHA");
1103 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeCylinderRHA(theR, theH, theA);
1104 endService( " GEOM_Superv_i::MakeCylinderRHA" );
1108 //=============================================================================
1110 //=============================================================================
1111 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphere (CORBA::Double theX,
1114 CORBA::Double theRadius)
1116 beginService( " GEOM_Superv_i::MakeSphepe" );
1117 MESSAGE("GEOM_Superv_i::MakeSphepe");
1120 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(myBasicOp->MakePointXYZ(theX, theY, theZ), theRadius);
1121 endService( " GEOM_Superv_i::MakeSphepe" );
1125 //=============================================================================
1127 //=============================================================================
1128 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSphereR (CORBA::Double theR)
1130 beginService( " GEOM_Superv_i::MakeSphereR" );
1131 MESSAGE("GEOM_Superv_i::MakeSphereR");
1133 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSphereR(theR);
1134 endService( " GEOM_Superv_i::MakeSphereR" );
1138 //=============================================================================
1140 //=============================================================================
1141 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSpherePntR (GEOM::GEOM_Object_ptr thePnt,
1144 beginService( " GEOM_Superv_i::MakeSpherePntR" );
1145 MESSAGE("GEOM_Superv_i::MakeSpherePntR");
1147 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeSpherePntR(thePnt, theR);
1148 endService( " GEOM_Superv_i::MakeSpherePntR" );
1152 //=============================================================================
1153 // MakeTorusPntVecRR:
1154 //=============================================================================
1155 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusPntVecRR (GEOM::GEOM_Object_ptr thePnt,
1156 GEOM::GEOM_Object_ptr theVec,
1157 CORBA::Double theRMajor,
1158 CORBA::Double theRMinor)
1160 beginService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1161 MESSAGE("GEOM_Superv_i::MakeTorusPntVecRR");
1163 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusPntVecRR(thePnt, theVec, theRMajor, theRMinor);
1164 endService( " GEOM_Superv_i::MakeTorusPntVecRR" );
1168 //=============================================================================
1170 //=============================================================================
1171 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeTorusRR (CORBA::Double theRMajor,
1172 CORBA::Double theRMinor)
1174 beginService( " GEOM_Superv_i::MakeTorusRR" );
1175 MESSAGE("GEOM_Superv_i::MakeTorusRR");
1177 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeTorusRR(theRMajor, theRMinor);
1178 endService( " GEOM_Superv_i::MakeTorusRR" );
1182 //=============================================================================
1183 // MakeConePntVecR1R2H:
1184 //=============================================================================
1185 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConePntVecR1R2H (GEOM::GEOM_Object_ptr thePnt,
1186 GEOM::GEOM_Object_ptr theAxis,
1187 CORBA::Double theR1,
1188 CORBA::Double theR2,
1189 CORBA::Double theHeight)
1191 beginService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1192 MESSAGE("GEOM_Superv_i::MakeConePntVecR1R2H");
1194 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConePntVecR1R2H(thePnt, theAxis, theR1, theR2, theHeight);
1195 endService( " GEOM_Superv_i::MakeConePntVecR1R2H" );
1199 //=============================================================================
1201 //=============================================================================
1202 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeConeR1R2H (CORBA::Double theR1,
1203 CORBA::Double theR2,
1204 CORBA::Double theHeight)
1206 beginService( " GEOM_Superv_i::MakeConeR1R2H" );
1207 MESSAGE("GEOM_Superv_i::MakeConeR1R2H");
1209 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeConeR1R2H(theR1, theR2, theHeight);
1210 endService( " GEOM_Superv_i::MakeConeR1R2H" );
1214 //=============================================================================
1216 //=============================================================================
1217 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH (GEOM::GEOM_Object_ptr theBase,
1218 GEOM::GEOM_Object_ptr theVec,
1221 beginService( " GEOM_Superv_i::MakePrismVecH" );
1222 MESSAGE("GEOM_Superv_i::MakePrismVecH");
1224 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH(theBase, theVec, theH);
1225 endService( " GEOM_Superv_i::MakePrismVecH" );
1229 //=============================================================================
1230 // MakePrismVecH2Ways:
1231 //=============================================================================
1232 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismVecH2Ways (GEOM::GEOM_Object_ptr theBase,
1233 GEOM::GEOM_Object_ptr theVec,
1236 beginService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1237 MESSAGE("GEOM_Superv_i::MakePrismVecH2Ways");
1239 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismVecH2Ways(theBase, theVec, theH);
1240 endService( " GEOM_Superv_i::MakePrismVecH2Ways" );
1244 //=============================================================================
1246 //=============================================================================
1247 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt (GEOM::GEOM_Object_ptr theBase,
1248 GEOM::GEOM_Object_ptr thePoint1,
1249 GEOM::GEOM_Object_ptr thePoint2)
1251 beginService( " GEOM_Superv_i::MakePrismTwoPnt" );
1252 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt");
1254 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt(theBase, thePoint1, thePoint2);
1255 endService( " GEOM_Superv_i::MakePrismTwoPnt" );
1259 //=============================================================================
1260 // MakePrismTwoPnt2Ways:
1261 //=============================================================================
1262 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismTwoPnt2Ways (GEOM::GEOM_Object_ptr theBase,
1263 GEOM::GEOM_Object_ptr thePoint1,
1264 GEOM::GEOM_Object_ptr thePoint2)
1266 beginService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1267 MESSAGE("GEOM_Superv_i::MakePrismTwoPnt2Ways");
1269 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismTwoPnt2Ways(theBase, thePoint1, thePoint2);
1270 endService( " GEOM_Superv_i::MakePrismTwoPnt2Ways" );
1274 //=============================================================================
1276 //=============================================================================
1277 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ (GEOM::GEOM_Object_ptr theBase,
1278 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1280 beginService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1281 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ");
1283 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ(theBase, theDX, theDY, theDZ);
1284 endService( " GEOM_Superv_i::MakePrismDXDYDZ" );
1288 //=============================================================================
1290 //=============================================================================
1291 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePrismDXDYDZ2Ways (GEOM::GEOM_Object_ptr theBase,
1292 CORBA::Double theDX, CORBA::Double theDY, CORBA::Double theDZ)
1294 beginService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1295 MESSAGE("GEOM_Superv_i::MakePrismDXDYDZ2Ways");
1297 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePrismDXDYDZ2Ways(theBase, theDX, theDY, theDZ);
1298 endService( " GEOM_Superv_i::MakePrismDXDYDZ2Ways" );
1302 //=============================================================================
1304 //=============================================================================
1305 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipe (GEOM::GEOM_Object_ptr theBase,
1306 GEOM::GEOM_Object_ptr thePath)
1308 beginService( " GEOM_Superv_i::MakePipe" );
1309 MESSAGE("GEOM_Superv_i::MakePipe");
1311 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipe(theBase, thePath);
1312 endService( " GEOM_Superv_i::MakePipe" );
1316 //=============================================================================
1317 // MakeRevolutionAxisAngle:
1318 //=============================================================================
1319 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle (GEOM::GEOM_Object_ptr theBase,
1320 GEOM::GEOM_Object_ptr theAxis,
1321 CORBA::Double theAngle)
1323 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1324 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle");
1326 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle(theBase, theAxis, theAngle);
1327 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle" );
1331 //=============================================================================
1332 // MakeRevolutionAxisAngle:
1333 //=============================================================================
1334 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeRevolutionAxisAngle2Ways (GEOM::GEOM_Object_ptr theBase,
1335 GEOM::GEOM_Object_ptr theAxis,
1336 CORBA::Double theAngle)
1338 beginService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1339 MESSAGE("GEOM_Superv_i::MakeRevolutionAxisAngle2Ways");
1341 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeRevolutionAxisAngle2Ways(theBase, theAxis, theAngle);
1342 endService( " GEOM_Superv_i::MakeRevolutionAxisAngle2Ways" );
1346 //=============================================================================
1348 //=============================================================================
1349 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilling (GEOM::GEOM_Object_ptr theShape,
1350 CORBA::Long theMinDeg,
1351 CORBA::Long theMaxDeg,
1352 CORBA::Double theTol2D,
1353 CORBA::Double theTol3D,
1354 CORBA::Long theNbIter,
1355 GEOM::filling_oper_method theMethod,
1356 CORBA::Boolean theApprox)
1358 beginService( " GEOM_Superv_i::MakeFilling" );
1359 MESSAGE("GEOM_Superv_i::MakeFilling");
1361 GEOM::GEOM_Object_ptr anObj =
1362 my3DPrimOp->MakeFilling(theShape, theMinDeg, theMaxDeg, theTol2D, theTol3D,
1363 theNbIter, theMethod, theApprox);
1364 endService( " GEOM_Superv_i::MakeFilling" );
1368 //============================= BooleanOperations =============================
1369 //=============================================================================
1371 //=============================================================================
1372 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeBoolean
1373 (GEOM::GEOM_Object_ptr theShape1,
1374 GEOM::GEOM_Object_ptr theShape2,
1375 CORBA::Long theOperation)
1377 beginService( " GEOM_Superv_i::MakeBoolean" );
1378 // theOperation indicates the operation to be done:
1379 // 1 - Common, 2 - Cut, 3 - Fuse, 4 - Section
1380 MESSAGE("GEOM_Superv_i::MakeBoolean");
1382 GEOM::GEOM_Object_ptr anObj =
1383 myBoolOp->MakeBoolean(theShape1, theShape2, theOperation, false);
1384 endService( " GEOM_Superv_i::MakeBoolean" );
1388 //=============================================================================
1389 // MakeThruSections:
1390 //=============================================================================
1391 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeThruSections(const GEOM::ListOfGO& theSeqSections,
1392 CORBA::Boolean theModeSolid,
1393 CORBA::Double thePreci,
1394 CORBA::Boolean theRuled)
1396 beginService( " GEOM_Superv_i::MakeThruSections" );
1397 MESSAGE("GEOM_Superv_i::MakeThruSections");
1399 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakeThruSections(theSeqSections, theModeSolid,thePreci,theRuled);
1400 endService( " GEOM_Superv_i::MakeThruSections" );
1404 //=============================================================================
1406 //=============================================================================
1407 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithDifferentSections
1408 (const GEOM::ListOfGO& theBases,
1409 const GEOM::ListOfGO& theLocations,
1410 GEOM::GEOM_Object_ptr thePath,
1411 CORBA::Boolean theWithContact,
1412 CORBA::Boolean theWithCorrections)
1414 beginService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1415 MESSAGE("GEOM_Superv_i::MakePipeWithDifferentSections");
1417 GEOM::GEOM_Object_ptr anObj = my3DPrimOp->MakePipeWithDifferentSections(theBases,theLocations, thePath,theWithContact,theWithCorrections);
1418 endService( " GEOM_Superv_i::MakePipeWithDifferentSections" );
1423 //=============================================================================
1425 //=============================================================================
1426 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeWithShellSections
1427 (const GEOM::ListOfGO& theBases,
1428 const GEOM::ListOfGO& theSubBases,
1429 const GEOM::ListOfGO& theLocations,
1430 GEOM::GEOM_Object_ptr thePath,
1431 CORBA::Boolean theWithContact,
1432 CORBA::Boolean theWithCorrections)
1434 beginService( " GEOM_Superv_i::MakePipeWithShellSections" );
1435 MESSAGE("GEOM_Superv_i::MakePipeWithShellSections");
1437 GEOM::GEOM_Object_ptr anObj =
1438 my3DPrimOp->MakePipeWithShellSections(theBases, theSubBases,
1439 theLocations, thePath,
1440 theWithContact, theWithCorrections);
1441 endService( " GEOM_Superv_i::MakePipeWithShellSections" );
1446 //=============================================================================
1448 //=============================================================================
1449 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeShellsWithoutPath
1450 (const GEOM::ListOfGO& theBases,
1451 const GEOM::ListOfGO& theLocations)
1453 beginService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1454 MESSAGE("GEOM_Superv_i::MakePipeShellsWithoutPath");
1456 GEOM::GEOM_Object_ptr anObj =
1457 my3DPrimOp->MakePipeShellsWithoutPath(theBases,theLocations);
1458 endService( " GEOM_Superv_i::MakePipeShellsWithoutPath" );
1463 //=============================================================================
1465 //=============================================================================
1466 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePipeBiNormalAlongVector
1467 (GEOM::GEOM_Object_ptr theBase,
1468 GEOM::GEOM_Object_ptr thePath,
1469 GEOM::GEOM_Object_ptr theVec)
1471 beginService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1472 MESSAGE("GEOM_Superv_i::MakePipeBiNormalAlongVector");
1474 GEOM::GEOM_Object_ptr anObj =
1475 my3DPrimOp->MakePipeBiNormalAlongVector(theBase, thePath, theVec);
1476 endService( " GEOM_Superv_i::MakePipeBiNormalAlongVector" );
1481 //=============================================================================
1483 //=============================================================================
1484 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFuse
1485 (GEOM::GEOM_Object_ptr theShape1,
1486 GEOM::GEOM_Object_ptr theShape2)
1488 beginService( " GEOM_Superv_i::MakeFuse" );
1489 MESSAGE("GEOM_Superv_i::MakeFuse");
1491 GEOM::GEOM_Object_ptr anObj =
1492 myBoolOp->MakeBoolean(theShape1, theShape2, 3, false);
1493 endService( " GEOM_Superv_i::MakeFuse" );
1497 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCommon (GEOM::GEOM_Object_ptr theShape1,
1498 GEOM::GEOM_Object_ptr theShape2)
1500 beginService( " GEOM_Superv_i::MakeCommon" );
1501 MESSAGE("GEOM_Superv_i::MakeCommon");
1503 GEOM::GEOM_Object_ptr anObj =
1504 myBoolOp->MakeBoolean(theShape1, theShape2, 1, false);
1505 endService( " GEOM_Superv_i::MakeCommon" );
1509 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCut (GEOM::GEOM_Object_ptr theShape1,
1510 GEOM::GEOM_Object_ptr theShape2)
1512 beginService( " GEOM_Superv_i::MakeCut" );
1513 MESSAGE("GEOM_Superv_i::MakeCut");
1515 GEOM::GEOM_Object_ptr anObj =
1516 myBoolOp->MakeBoolean(theShape1, theShape2, 2, false);
1517 endService( " GEOM_Superv_i::MakeCut" );
1521 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSection (GEOM::GEOM_Object_ptr theShape1,
1522 GEOM::GEOM_Object_ptr theShape2)
1524 beginService( " GEOM_Superv_i::MakeCut" );
1525 MESSAGE("GEOM_Superv_i::MakeCut");
1527 GEOM::GEOM_Object_ptr anObj =
1528 myBoolOp->MakeBoolean(theShape1, theShape2, 4, false);
1529 endService( " GEOM_Superv_i::MakeCut" );
1533 //=============================================================================
1535 //=============================================================================
1536 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePartition (GEOM::GEOM_List_ptr theShapes,
1537 GEOM::GEOM_List_ptr theTools,
1538 GEOM::GEOM_List_ptr theKeepInside,
1539 GEOM::GEOM_List_ptr theRemoveInside,
1540 CORBA::Short theLimit,
1541 CORBA::Boolean theRemoveWebs,
1542 GEOM::GEOM_List_ptr theMaterials,
1543 CORBA::Short theKeepNonlimitShapes)
1545 beginService( " GEOM_Superv_i::MakePartition" );
1546 MESSAGE("GEOM_Superv_i::MakePartition");
1547 GEOM_List_i<GEOM::ListOfGO>* aListImplS =
1548 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in());
1549 GEOM_List_i<GEOM::ListOfGO>* aListImplT =
1550 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theTools, myPOA).in());
1551 GEOM_List_i<GEOM::ListOfGO>* aListImplKI =
1552 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theKeepInside, myPOA).in());
1553 GEOM_List_i<GEOM::ListOfGO>* aListImplRI =
1554 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theRemoveInside, myPOA).in());
1555 GEOM_List_i<GEOM::ListOfLong>* aListImplM =
1556 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theMaterials, myPOA).in());
1557 if (aListImplS && aListImplT && aListImplKI && aListImplRI && aListImplM) {
1559 GEOM::GEOM_Object_ptr anObj =
1560 myBoolOp->MakePartition(aListImplS->GetList(), aListImplT->GetList(),
1561 aListImplKI->GetList(), aListImplRI->GetList(),
1562 theLimit, theRemoveWebs, aListImplM->GetList(),
1563 theKeepNonlimitShapes);
1564 endService( " GEOM_Superv_i::MakePartition" );
1567 endService( " GEOM_Superv_i::MakePartition" );
1571 //=============================================================================
1572 // MakeHalfPartition:
1573 //=============================================================================
1574 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHalfPartition (GEOM::GEOM_Object_ptr theShape,
1575 GEOM::GEOM_Object_ptr thePlane)
1577 beginService( " GEOM_Superv_i::MakeHalfPartition" );
1578 MESSAGE("GEOM_Superv_i::MakeHalfPartition");
1580 GEOM::GEOM_Object_ptr anObj =
1581 myBoolOp->MakeHalfPartition(theShape, thePlane);
1582 endService( " GEOM_Superv_i::MakeHalfPartition" );
1586 //============================== InsertOperations =============================
1587 //=============================================================================
1589 //=============================================================================
1590 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCopy (GEOM::GEOM_Object_ptr theOriginal)
1592 beginService( " GEOM_Superv_i::MakeCopy" );
1593 MESSAGE("GEOM_Superv_i::MakeCopy");
1595 GEOM::GEOM_Object_ptr anObj = myInsOp->MakeCopy(theOriginal);
1596 endService( " GEOM_Superv_i::MakeCopy" );
1600 //=============================================================================
1602 //=============================================================================
1603 void GEOM_Superv_i::Export (GEOM::GEOM_Object_ptr theObject,
1604 const char* theFileName,
1605 const char* theFormatName)
1607 beginService( " GEOM_Superv_i::Export" );
1608 MESSAGE("GEOM_Superv_i::Export");
1610 myInsOp->Export(theObject, theFileName, theFormatName);
1611 endService( " GEOM_Superv_i::Export" );
1614 //=============================================================================
1616 //=============================================================================
1617 GEOM::GEOM_Object_ptr GEOM_Superv_i::ImportFile (const char* theFileName,
1618 const char* theFormatName)
1620 beginService( " GEOM_Superv_i::ImportFile" );
1621 MESSAGE("GEOM_Superv_i::ImportFile");
1623 GEOM::ListOfGO* aSeq = myInsOp->ImportFile(theFileName, theFormatName);
1624 GEOM::GEOM_Object_ptr anObj;
1626 if (aSeq->length() > 0) {
1627 anObj = aSeq->operator[](0);
1630 endService( " GEOM_Superv_i::ImportFile" );
1634 //=============================================================================
1635 // ImportTranslators:
1636 //=============================================================================
1637 void GEOM_Superv_i::ImportTranslators (GEOM::string_array_out theFormats,
1638 GEOM::string_array_out thePatterns)
1640 beginService( " GEOM_Superv_i::ImportTranslators" );
1641 MESSAGE("GEOM_Superv_i::ImportTranslators");
1643 myInsOp->ImportTranslators(theFormats, thePatterns);
1644 endService( " GEOM_Superv_i::ImportTranslators" );
1647 //=============================================================================
1648 // ExportTranslators:
1649 //=============================================================================
1650 void GEOM_Superv_i::ExportTranslators (GEOM::string_array_out theFormats,
1651 GEOM::string_array_out thePatterns)
1653 beginService( " GEOM_Superv_i::ExportTranslators" );
1654 MESSAGE("GEOM_Superv_i::ExportTranslators");
1656 myInsOp->ExportTranslators(theFormats, thePatterns);
1657 endService( " GEOM_Superv_i::ExportTranslators" );
1660 //============================= TransformOperations ===========================
1661 //=============================================================================
1662 // TranslateTwoPoints:
1663 //=============================================================================
1664 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPoints (GEOM::GEOM_Object_ptr theObject,
1665 GEOM::GEOM_Object_ptr thePoint1,
1666 GEOM::GEOM_Object_ptr thePoint2)
1668 beginService( " GEOM_Superv_i::TranslateTwoPoints" );
1669 MESSAGE("GEOM_Superv_i::TranslateTwoPoints");
1671 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPoints(theObject, thePoint1, thePoint2);
1672 endService( " GEOM_Superv_i::TranslateTwoPoints" );
1676 //=============================================================================
1677 // TranslateTwoPointsCopy:
1678 //=============================================================================
1679 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateTwoPointsCopy (GEOM::GEOM_Object_ptr theObject,
1680 GEOM::GEOM_Object_ptr thePoint1,
1681 GEOM::GEOM_Object_ptr thePoint2)
1683 beginService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1684 MESSAGE("GEOM_Superv_i::TranslateTwoPointsCopy");
1686 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateTwoPointsCopy(theObject, thePoint1, thePoint2);
1687 endService( " GEOM_Superv_i::TranslateTwoPointsCopy" );
1691 //=============================================================================
1693 //=============================================================================
1694 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZ (GEOM::GEOM_Object_ptr theObject,
1695 CORBA::Double theDX,
1696 CORBA::Double theDY,
1697 CORBA::Double theDZ)
1699 beginService( " GEOM_Superv_i::TranslateDXDYDZ" );
1700 MESSAGE("GEOM_Superv_i::TranslateDXDYDZ");
1702 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZ(theObject, theDX, theDY, theDZ);
1703 endService( " GEOM_Superv_i::TranslateDXDYDZ" );
1707 //=============================================================================
1708 // TranslateDXDYDZCopy:
1709 //=============================================================================
1710 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateDXDYDZCopy (GEOM::GEOM_Object_ptr theObject,
1711 CORBA::Double theDX,
1712 CORBA::Double theDY,
1713 CORBA::Double theDZ)
1715 beginService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1716 MESSAGE("GEOM_Superv_i::TranslateDXDYDZCopy");
1718 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateDXDYDZCopy(theObject, theDX, theDY, theDZ);
1719 endService( " GEOM_Superv_i::TranslateDXDYDZCopy" );
1723 //=============================================================================
1725 //=============================================================================
1726 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVector (GEOM::GEOM_Object_ptr theObject,
1727 GEOM::GEOM_Object_ptr theVector)
1729 beginService( " GEOM_Superv_i::TranslateVector" );
1730 MESSAGE("GEOM_Superv_i::TranslateVector");
1732 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVector(theObject, theVector);
1733 endService( " GEOM_Superv_i::TranslateVector" );
1737 //=============================================================================
1738 // TranslateVectorCopy:
1739 //=============================================================================
1740 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorCopy (GEOM::GEOM_Object_ptr theObject,
1741 GEOM::GEOM_Object_ptr theVector)
1743 beginService( " GEOM_Superv_i::TranslateVectorCopy" );
1744 MESSAGE("GEOM_Superv_i::TranslateVectorCopy");
1746 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorCopy(theObject, theVector);
1747 endService( " GEOM_Superv_i::TranslateVectorCopy" );
1751 //=============================================================================
1752 // TranslateVectorDistance:
1753 //=============================================================================
1754 GEOM::GEOM_Object_ptr GEOM_Superv_i::TranslateVectorDistance (GEOM::GEOM_Object_ptr theObject,
1755 GEOM::GEOM_Object_ptr theVector,
1756 CORBA::Double theDistance,
1757 CORBA::Boolean theCopy)
1759 beginService( " GEOM_Superv_i::TranslateVectorDistance" );
1760 MESSAGE("GEOM_Superv_i::TranslateVectorDistance");
1762 GEOM::GEOM_Object_ptr anObj = myTransfOp->TranslateVectorDistance(theObject,
1763 theVector, theDistance, theCopy);
1764 endService( " GEOM_Superv_i::TranslateVectorDistance" );
1768 //=============================================================================
1769 // MultiTranslate1D:
1770 //=============================================================================
1771 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate1D (GEOM::GEOM_Object_ptr theObject,
1772 GEOM::GEOM_Object_ptr theVector,
1773 CORBA::Double theStep,
1774 CORBA::Long theNbTimes)
1776 beginService( " GEOM_Superv_i::MultiTranslate1D" );
1777 MESSAGE("GEOM_Superv_i::MultiTranslate1D");
1779 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate1D(theObject, theVector, theStep, theNbTimes);
1780 endService( " GEOM_Superv_i::MultiTranslate1D" );
1784 //=============================================================================
1785 // MultiTranslate2D:
1786 //=============================================================================
1787 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiTranslate2D (GEOM::GEOM_Object_ptr theObject,
1788 GEOM::GEOM_Object_ptr theVector1,
1789 CORBA::Double theStep1,
1790 CORBA::Long theNbTimes1,
1791 GEOM::GEOM_Object_ptr theVector2,
1792 CORBA::Double theStep2,
1793 CORBA::Long theNbTimes2)
1795 beginService( " GEOM_Superv_i::MultiTranslate2D" );
1796 MESSAGE("GEOM_Superv_i::MultiTranslate2D");
1798 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiTranslate2D(theObject, theVector1, theStep1, theNbTimes1,
1799 theVector2, theStep2, theNbTimes2);
1800 endService( " GEOM_Superv_i::MultiTranslate2D" );
1804 //=============================================================================
1806 //=============================================================================
1807 GEOM::GEOM_Object_ptr GEOM_Superv_i::Rotate (GEOM::GEOM_Object_ptr theObject,
1808 GEOM::GEOM_Object_ptr theAxis,
1809 CORBA::Double theAngle)
1811 beginService( " GEOM_Superv_i::Rotate" );
1812 MESSAGE("GEOM_Superv_i::Rotate");
1814 GEOM::GEOM_Object_ptr anObj = myTransfOp->Rotate(theObject, theAxis, theAngle);
1815 endService( " GEOM_Superv_i::Rotate" );
1819 //=============================================================================
1821 //=============================================================================
1822 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateCopy (GEOM::GEOM_Object_ptr theObject,
1823 GEOM::GEOM_Object_ptr theAxis,
1824 CORBA::Double theAngle)
1826 beginService( " GEOM_Superv_i::RotateCopy" );
1827 MESSAGE("GEOM_Superv_i::RotateCopy");
1829 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateCopy(theObject, theAxis, theAngle);
1830 endService( " GEOM_Superv_i::RotateCopy" );
1833 //=============================================================================
1834 // RotateThreePoints:
1835 //=============================================================================
1836 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePoints (GEOM::GEOM_Object_ptr theObject,
1837 GEOM::GEOM_Object_ptr theCentPoint,
1838 GEOM::GEOM_Object_ptr thePoint1,
1839 GEOM::GEOM_Object_ptr thePoint2)
1841 beginService( " GEOM_Superv_i::RotateThreePoints" );
1842 MESSAGE("GEOM_Superv_i::RotateThreePoints");
1844 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePoints(theObject, theCentPoint, thePoint1, thePoint2);
1845 endService( " GEOM_Superv_i::RotateThreePoints" );
1849 //=============================================================================
1850 // RotateThreePointsCopy:
1851 //=============================================================================
1852 GEOM::GEOM_Object_ptr GEOM_Superv_i::RotateThreePointsCopy (GEOM::GEOM_Object_ptr theObject,
1853 GEOM::GEOM_Object_ptr theCentPoint,
1854 GEOM::GEOM_Object_ptr thePoint1,
1855 GEOM::GEOM_Object_ptr thePoint2)
1857 beginService( " GEOM_Superv_i::RotateThreePointsCopy" );
1858 MESSAGE("GEOM_Superv_i::RotateThreePointsCopy");
1860 GEOM::GEOM_Object_ptr anObj = myTransfOp->RotateThreePointsCopy(theObject, theCentPoint, thePoint1, thePoint2);
1861 endService( " GEOM_Superv_i::RotateThreePointsCopy" );
1865 //=============================================================================
1867 //=============================================================================
1868 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate1D (GEOM::GEOM_Object_ptr theObject,
1869 GEOM::GEOM_Object_ptr theAxis,
1870 CORBA::Long theNbTimes)
1872 beginService( " GEOM_Superv_i::MultiRotate1D" );
1873 MESSAGE("GEOM_Superv_i::MultiRotate1D");
1875 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate1D(theObject, theAxis, theNbTimes);
1876 endService( " GEOM_Superv_i::MultiRotate1D" );
1880 //=============================================================================
1882 //=============================================================================
1883 GEOM::GEOM_Object_ptr GEOM_Superv_i::MultiRotate2D (GEOM::GEOM_Object_ptr theObject,
1884 GEOM::GEOM_Object_ptr theAxis,
1885 CORBA::Double theAngle,
1886 CORBA::Long theNbTimes1,
1887 CORBA::Double theStep,
1888 CORBA::Long theNbTimes2)
1890 beginService( " GEOM_Superv_i::MultiRotate2D" );
1891 MESSAGE("GEOM_Superv_i::MultiRotate2D");
1893 GEOM::GEOM_Object_ptr anObj = myTransfOp->MultiRotate2D(theObject, theAxis, theAngle, theNbTimes1, theStep, theNbTimes2);
1894 endService( " GEOM_Superv_i::MultiRotate2D" );
1898 //=============================================================================
1900 //=============================================================================
1901 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlane (GEOM::GEOM_Object_ptr theObject,
1902 GEOM::GEOM_Object_ptr thePlane)
1904 beginService( " GEOM_Superv_i::MirrorPlane" );
1905 MESSAGE("GEOM_Superv_i::MirrorPlane");
1907 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlane(theObject, thePlane);
1908 endService( " GEOM_Superv_i::MirrorPlane" );
1912 //=============================================================================
1914 //=============================================================================
1915 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPlaneCopy (GEOM::GEOM_Object_ptr theObject,
1916 GEOM::GEOM_Object_ptr thePlane)
1918 beginService( " GEOM_Superv_i::MirrorPlaneCopy" );
1919 MESSAGE("GEOM_Superv_i::MirrorPlaneCopy");
1921 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPlaneCopy(theObject, thePlane);
1922 endService( " GEOM_Superv_i::MirrorPlaneCopy" );
1926 //=============================================================================
1928 //=============================================================================
1929 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxis (GEOM::GEOM_Object_ptr theObject,
1930 GEOM::GEOM_Object_ptr theAxis)
1932 beginService( " GEOM_Superv_i::MirrorAxis" );
1933 MESSAGE("GEOM_Superv_i::MirrorAxis");
1935 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxis(theObject, theAxis);
1936 endService( " GEOM_Superv_i::MirrorAxis" );
1940 //=============================================================================
1942 //=============================================================================
1943 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorAxisCopy (GEOM::GEOM_Object_ptr theObject,
1944 GEOM::GEOM_Object_ptr theAxis)
1946 beginService( " GEOM_Superv_i::MirrorAxisCopy" );
1947 MESSAGE("GEOM_Superv_i::MirrorAxisCopy");
1949 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorAxisCopy(theObject, theAxis);
1950 endService( " GEOM_Superv_i::MirrorAxisCopy" );
1954 //=============================================================================
1956 //=============================================================================
1957 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPoint (GEOM::GEOM_Object_ptr theObject,
1958 GEOM::GEOM_Object_ptr thePoint)
1960 beginService( " GEOM_Superv_i::MirrorPoint" );
1961 MESSAGE("GEOM_Superv_i::MirrorPoint");
1963 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPoint(theObject, thePoint);
1964 endService( " GEOM_Superv_i::MirrorPoint" );
1968 //=============================================================================
1970 //=============================================================================
1971 GEOM::GEOM_Object_ptr GEOM_Superv_i::MirrorPointCopy (GEOM::GEOM_Object_ptr theObject,
1972 GEOM::GEOM_Object_ptr thePoint)
1974 beginService( " GEOM_Superv_i::MirrorPoint" );
1975 MESSAGE("GEOM_Superv_i::MirrorPointCopy");
1977 GEOM::GEOM_Object_ptr anObj = myTransfOp->MirrorPointCopy(theObject, thePoint);
1978 endService( " GEOM_Superv_i::MirrorPoint" );
1982 //=============================================================================
1984 //=============================================================================
1985 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShape (GEOM::GEOM_Object_ptr theObject,
1986 CORBA::Double theOffset)
1988 beginService( " GEOM_Superv_i::OffsetShape" );
1989 MESSAGE("GEOM_Superv_i::OffsetShape");
1991 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShape(theObject, theOffset);
1992 endService( " GEOM_Superv_i::OffsetShape" );
1996 //=============================================================================
1998 //=============================================================================
1999 GEOM::GEOM_Object_ptr GEOM_Superv_i::OffsetShapeCopy (GEOM::GEOM_Object_ptr theObject,
2000 CORBA::Double theOffset)
2002 beginService( " GEOM_Superv_i::OffsetShapeCopy" );
2003 MESSAGE("GEOM_Superv_i::OffsetShapeCopy");
2005 GEOM::GEOM_Object_ptr anObj = myTransfOp->OffsetShapeCopy(theObject, theOffset);
2006 endService( " GEOM_Superv_i::OffsetShapeCopy" );
2010 //=============================================================================
2012 //=============================================================================
2013 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShape (GEOM::GEOM_Object_ptr theObject,
2014 GEOM::GEOM_Object_ptr thePoint,
2015 CORBA::Double theFactor)
2017 beginService( " GEOM_Superv_i::ScaleShape" );
2018 MESSAGE("GEOM_Superv_i::ScaleShape");
2020 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShape(theObject, thePoint, theFactor);
2021 endService( " GEOM_Superv_i::ScaleShape" );
2025 //=============================================================================
2027 //=============================================================================
2028 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeCopy (GEOM::GEOM_Object_ptr theObject,
2029 GEOM::GEOM_Object_ptr thePoint,
2030 CORBA::Double theFactor)
2032 beginService( " GEOM_Superv_i::ScaleShapeCopy" );
2033 MESSAGE("GEOM_Superv_i::ScaleShapeCopy");
2035 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeCopy(theObject, thePoint, theFactor);
2036 endService( " GEOM_Superv_i::ScaleShapeCopy" );
2040 //=============================================================================
2041 // ScaleShapeAlongAxes:
2042 //=============================================================================
2043 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxes (GEOM::GEOM_Object_ptr theObject,
2044 GEOM::GEOM_Object_ptr thePoint,
2045 CORBA::Double theFactorX,
2046 CORBA::Double theFactorY,
2047 CORBA::Double theFactorZ)
2049 beginService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
2050 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxes");
2052 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxes
2053 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
2054 endService( " GEOM_Superv_i::ScaleShapeAlongAxes" );
2058 //=============================================================================
2059 // ScaleShapeAlongAxesCopy:
2060 //=============================================================================
2061 GEOM::GEOM_Object_ptr GEOM_Superv_i::ScaleShapeAlongAxesCopy (GEOM::GEOM_Object_ptr theObject,
2062 GEOM::GEOM_Object_ptr thePoint,
2063 CORBA::Double theFactorX,
2064 CORBA::Double theFactorY,
2065 CORBA::Double theFactorZ)
2067 beginService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
2068 MESSAGE("GEOM_Superv_i::ScaleShapeAlongAxesCopy");
2070 GEOM::GEOM_Object_ptr anObj = myTransfOp->ScaleShapeAlongAxesCopy
2071 (theObject, thePoint, theFactorX, theFactorY, theFactorZ);
2072 endService( " GEOM_Superv_i::ScaleShapeAlongAxesCopy" );
2076 //=============================================================================
2078 //=============================================================================
2079 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShape (GEOM::GEOM_Object_ptr theObject,
2080 GEOM::GEOM_Object_ptr theStartLCS,
2081 GEOM::GEOM_Object_ptr theEndLCS)
2083 beginService( " GEOM_Superv_i::PositionShape" );
2084 MESSAGE("GEOM_Superv_i::PositionShape");
2086 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShape(theObject, theStartLCS, theEndLCS);
2087 endService( " GEOM_Superv_i::PositionShape" );
2091 //=============================================================================
2092 // PositionShapeCopy:
2093 //=============================================================================
2094 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionShapeCopy (GEOM::GEOM_Object_ptr theObject,
2095 GEOM::GEOM_Object_ptr theStartLCS,
2096 GEOM::GEOM_Object_ptr theEndLCS)
2098 beginService( " GEOM_Superv_i::PositionShapeCopy" );
2099 MESSAGE("GEOM_Superv_i::PositionShapeCopy");
2101 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionShapeCopy(theObject, theStartLCS, theEndLCS);
2102 endService( " GEOM_Superv_i::PositionShapeCopy" );
2106 //=============================================================================
2107 // PositionAlongPath:
2108 //=============================================================================
2109 GEOM::GEOM_Object_ptr GEOM_Superv_i::PositionAlongPath (GEOM::GEOM_Object_ptr theObject,
2110 GEOM::GEOM_Object_ptr thePath,
2111 CORBA::Double theDistance,
2112 CORBA::Boolean theCopy,
2113 CORBA::Boolean theReverse)
2115 beginService( " GEOM_Superv_i::PositionAlongPath" );
2116 MESSAGE("GEOM_Superv_i::PositionAlongPath");
2118 GEOM::GEOM_Object_ptr anObj = myTransfOp->PositionAlongPath(theObject, thePath, theDistance, theCopy, theReverse);
2119 endService( " GEOM_Superv_i::PositionAlongPath" );
2123 //=============================== ShapesOperations ============================
2124 //=============================================================================
2126 //=============================================================================
2127 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdge (GEOM::GEOM_Object_ptr thePnt1,
2128 GEOM::GEOM_Object_ptr thePnt2)
2130 beginService( " GEOM_Superv_i::MakeEdge" );
2131 MESSAGE("GEOM_Superv_i::MakeEdge");
2133 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeEdge(thePnt1, thePnt2);
2134 endService( " GEOM_Superv_i::MakeEdge" );
2138 //=============================================================================
2139 // MakeEdgeOnCurveByLength:
2140 //=============================================================================
2141 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEdgeOnCurveByLength (GEOM::GEOM_Object_ptr theRefCurve,
2142 CORBA::Double theLength,
2143 GEOM::GEOM_Object_ptr theStartPoint)
2145 beginService( " GEOM_Superv_i::MakeEdgeOnCurveByLength" );
2146 MESSAGE("GEOM_Superv_i::MakeEdgeOnCurveByLength");
2148 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeEdgeOnCurveByLength(theRefCurve, theLength, theStartPoint);
2149 endService( " GEOM_Superv_i::MakeEdgeOnCurveByLength" );
2153 //=============================================================================
2155 //=============================================================================
2156 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeWire (GEOM::GEOM_List_ptr theEdgesAndWires,
2157 CORBA::Double theTolerance)
2159 beginService( " GEOM_Superv_i::MakeWire" );
2160 MESSAGE("GEOM_Superv_i::MakeWire");
2161 if (GEOM_List_i<GEOM::ListOfGO>* aListImplEW =
2162 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theEdgesAndWires, myPOA).in())) {
2164 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeWire(aListImplEW->GetList(), theTolerance);
2165 endService( " GEOM_Superv_i::MakeWire" );
2168 endService( " GEOM_Superv_i::MakeWire" );
2172 //=============================================================================
2174 //=============================================================================
2175 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFace (GEOM::GEOM_Object_ptr theWire,
2176 CORBA::Boolean isPlanarWanted)
2178 beginService( " GEOM_Superv_i::MakeFace" );
2179 MESSAGE("GEOM_Superv_i::MakeFace");
2181 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFace(theWire, isPlanarWanted);
2182 endService( " GEOM_Superv_i::MakeFace" );
2186 //=============================================================================
2188 //=============================================================================
2189 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFaceWires (GEOM::GEOM_List_ptr theWires,
2190 CORBA::Boolean isPlanarWanted)
2192 beginService( " GEOM_Superv_i::MakeFaceWires" );
2193 MESSAGE("GEOM_Superv_i::MakeFaceWires");
2194 if (GEOM_List_i<GEOM::ListOfGO>* aListImplW =
2195 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theWires, myPOA).in())) {
2197 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeFaceWires(aListImplW->GetList(), isPlanarWanted);
2198 endService( " GEOM_Superv_i::MakeFaceWires" );
2201 endService( " GEOM_Superv_i::MakeFaceWires" );
2205 //=============================================================================
2207 //=============================================================================
2208 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeShell (GEOM::GEOM_List_ptr theFacesAndShells)
2210 beginService( " GEOM_Superv_i::MakeShell" );
2211 MESSAGE("GEOM_Superv_i::MakeShell");
2212 if (GEOM_List_i<GEOM::ListOfGO>* aListImplFS =
2213 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theFacesAndShells, myPOA).in())) {
2215 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeShell(aListImplFS->GetList());
2216 endService( " GEOM_Superv_i::MakeShell" );
2219 endService( " GEOM_Superv_i::MakeShell" );
2223 //=============================================================================
2225 //=============================================================================
2226 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShell (GEOM::GEOM_Object_ptr theShell)
2228 beginService( " GEOM_Superv_i::MakeSolidShell" );
2229 MESSAGE("GEOM_Superv_i::MakeSolidShell");
2231 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShell(theShell);
2232 endService( " GEOM_Superv_i::MakeSolidShell" );
2236 //=============================================================================
2238 //=============================================================================
2239 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSolidShells (GEOM::GEOM_List_ptr theShells)
2241 beginService( " GEOM_Superv_i::MakeSolidShells" );
2242 MESSAGE("GEOM_Superv_i::MakeSolidShells");
2243 if (GEOM_List_i<GEOM::ListOfGO>* aListImplS =
2244 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShells, myPOA).in())) {
2246 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeSolidShells(aListImplS->GetList());
2247 endService( " GEOM_Superv_i::MakeSolidShells" );
2250 endService( " GEOM_Superv_i::MakeSolidShells" );
2254 //=============================================================================
2256 //=============================================================================
2257 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCompound (GEOM::GEOM_List_ptr theShapes)
2259 beginService( " GEOM_Superv_i::MakeCompound" );
2260 MESSAGE("GEOM_Superv_i::MakeCompound");
2261 if (GEOM_List_i<GEOM::ListOfGO>* aListImpl =
2262 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theShapes, myPOA).in())) {
2264 GEOM::GEOM_Object_ptr anObj = myShapesOp->MakeCompound(aListImpl->GetList());
2265 endService( " GEOM_Superv_i::MakeCompound" );
2268 endService( " GEOM_Superv_i::MakeCompound" );
2272 //=============================================================================
2274 //=============================================================================
2275 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFaces (GEOM::GEOM_Object_ptr theShape,
2276 CORBA::Double theTolerance,
2277 CORBA::Boolean doKeepNonSolids)
2279 beginService( " GEOM_Superv_i::MakeGlueFaces" );
2280 MESSAGE("GEOM_Superv_i::MakeGlueFaces");
2282 GEOM::GEOM_Object_ptr anObj =
2283 myShapesOp->MakeGlueFaces(theShape, theTolerance, doKeepNonSolids);
2284 endService( " GEOM_Superv_i::MakeGlueFaces" );
2288 //=============================================================================
2290 //=============================================================================
2291 GEOM::GEOM_List_ptr GEOM_Superv_i::GetGlueFaces (GEOM::GEOM_Object_ptr theShape,
2292 CORBA::Double theTolerance)
2294 beginService( " GEOM_Superv_i::GetGlueFaces" );
2295 MESSAGE("GEOM_Superv_i::GetGlueFaces");
2297 GEOM::ListOfGO* aList = myShapesOp->GetGlueFaces(theShape, theTolerance);
2298 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2299 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2300 endService( " GEOM_Superv_i::GetGlueFaces" );
2301 return aListPtr->_this();
2304 //=============================================================================
2305 // MakeGlueFacesByList:
2306 //=============================================================================
2307 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeGlueFacesByList (GEOM::GEOM_Object_ptr theShape,
2308 CORBA::Double theTolerance,
2309 const GEOM::ListOfGO& theFaces,
2310 CORBA::Boolean doKeepNonSolids,
2311 CORBA::Boolean doGlueAllEdges)
2313 beginService( " GEOM_Superv_i::MakeGlueFacesByList" );
2314 MESSAGE("GEOM_Superv_i::MakeGlueFacesByList");
2316 GEOM::GEOM_Object_ptr anObj =
2317 myShapesOp->MakeGlueFacesByList(theShape, theTolerance, theFaces,
2318 doKeepNonSolids, doGlueAllEdges);
2319 endService( " GEOM_Superv_i::MakeGlueFacesByList" );
2323 //=============================================================================
2325 //=============================================================================
2326 GEOM::GEOM_List_ptr GEOM_Superv_i::MakeExplode (GEOM::GEOM_Object_ptr theShape,
2327 CORBA::Long theShapeType,
2328 CORBA::Boolean isSorted)
2330 beginService( " GEOM_Superv_i::MakeExplode" );
2331 MESSAGE("GEOM_Superv_i::MakeExplode");
2334 GEOM::ListOfGO* aList = myShapesOp->MakeExplode(theShape, theShapeType, isSorted);
2335 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2336 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2337 endService( " GEOM_Superv_i::MakeExplode" );
2338 return aListPtr->_this();
2341 //=============================================================================
2343 //=============================================================================
2344 CORBA::Long GEOM_Superv_i::NumberOfFaces (GEOM::GEOM_Object_ptr theShape)
2346 beginService( " GEOM_Superv_i::NumberOfFaces" );
2347 MESSAGE("GEOM_Superv_i::NumberOfFaces");
2349 CORBA::Long aRes = myShapesOp->NumberOfFaces(theShape);
2350 endService( " GEOM_Superv_i::NumberOfFaces" );
2354 //=============================================================================
2356 //=============================================================================
2357 CORBA::Long GEOM_Superv_i::NumberOfEdges (GEOM::GEOM_Object_ptr theShape)
2359 beginService( " GEOM_Superv_i::NumberOfEdges" );
2360 MESSAGE("GEOM_Superv_i::NumberOfEdges");
2362 CORBA::Long aRes = myShapesOp->NumberOfEdges(theShape);
2363 endService( " GEOM_Superv_i::NumberOfEdges" );
2368 //=============================================================================
2369 // ChangeOrientation:
2370 //=============================================================================
2371 GEOM::GEOM_Object_ptr GEOM_Superv_i::ChangeOrientation (GEOM::GEOM_Object_ptr theShape)
2373 beginService( " GEOM_Superv_i::ChangeOrientation" );
2374 MESSAGE("GEOM_Superv_i::ChangeOrientation");
2376 GEOM::GEOM_Object_ptr anObj = myShapesOp->ChangeOrientation(theShape);
2377 endService( " GEOM_Superv_i::ChangeOrientation" );
2382 //=============================================================================
2383 // GetShapesOnShape:
2384 //=============================================================================
2385 GEOM::GEOM_List_ptr GEOM_Superv_i::GetShapesOnShape
2386 (GEOM::GEOM_Object_ptr theCheckShape,
2387 GEOM::GEOM_Object_ptr theShape,
2388 CORBA::Short theShapeType,
2389 GEOM::shape_state theState)
2391 beginService( " GEOM_Superv_i::GetShapesOnShape" );
2392 MESSAGE("GEOM_Superv_i::GetShapesOnShape");
2394 GEOM::ListOfGO* aList =
2395 myShapesOp->GetShapesOnShape(theCheckShape, theShape, theShapeType, theState);
2396 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aList));
2397 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
2398 endService( " GEOM_Superv_i::GetShapesOnShape" );
2399 return aListPtr->_this();
2403 //=============================================================================
2404 // GetShapesOnShapeAsCompound:
2405 //=============================================================================
2406 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetShapesOnShapeAsCompound
2407 (GEOM::GEOM_Object_ptr theCheckShape,
2408 GEOM::GEOM_Object_ptr theShape,
2409 CORBA::Short theShapeType,
2410 GEOM::shape_state theState)
2412 beginService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2413 MESSAGE("GEOM_Superv_i::GetShapesOnShapeAsCompound");
2415 GEOM::GEOM_Object_ptr anObj =
2416 myShapesOp->GetShapesOnShapeAsCompound(theCheckShape, theShape, theShapeType, theState);
2417 endService( " GEOM_Superv_i::GetShapesOnShapeAsCompound" );
2422 //=============================== BlocksOperations ============================
2423 //=============================================================================
2424 // MakeQuad4Vertices:
2425 //=============================================================================
2426 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad4Vertices (GEOM::GEOM_Object_ptr thePnt1,
2427 GEOM::GEOM_Object_ptr thePnt2,
2428 GEOM::GEOM_Object_ptr thePnt3,
2429 GEOM::GEOM_Object_ptr thePnt4)
2431 beginService( " GEOM_Superv_i::MakeQuad4Vertices" );
2432 MESSAGE("GEOM_Superv_i::MakeQuad4Vertices");
2434 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad4Vertices(thePnt1, thePnt2, thePnt3, thePnt4);
2435 endService( " GEOM_Superv_i::MakeQuad4Vertices" );
2439 //=============================================================================
2441 //=============================================================================
2442 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad (GEOM::GEOM_Object_ptr theEdge1,
2443 GEOM::GEOM_Object_ptr theEdge2,
2444 GEOM::GEOM_Object_ptr theEdge3,
2445 GEOM::GEOM_Object_ptr theEdge4)
2447 beginService( " GEOM_Superv_i::MakeQuad" );
2448 MESSAGE("GEOM_Superv_i::MakeQuad");
2450 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad(theEdge1, theEdge2, theEdge3, theEdge4);
2451 endService( " GEOM_Superv_i::MakeQuad" );
2455 //=============================================================================
2457 //=============================================================================
2458 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeQuad2Edges (GEOM::GEOM_Object_ptr theEdge1,
2459 GEOM::GEOM_Object_ptr theEdge2)
2461 beginService( " GEOM_Superv_i::MakeQuad2Edges" );
2462 MESSAGE("GEOM_Superv_i::MakeQuad2Edges");
2464 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeQuad2Edges(theEdge1, theEdge2);
2465 endService( " GEOM_Superv_i::MakeQuad2Edges" );
2469 //=============================================================================
2471 //=============================================================================
2472 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa (GEOM::GEOM_Object_ptr theFace1,
2473 GEOM::GEOM_Object_ptr theFace2,
2474 GEOM::GEOM_Object_ptr theFace3,
2475 GEOM::GEOM_Object_ptr theFace4,
2476 GEOM::GEOM_Object_ptr theFace5,
2477 GEOM::GEOM_Object_ptr theFace6)
2479 beginService( " GEOM_Superv_i::MakeHexa" );
2480 MESSAGE("GEOM_Superv_i::MakeHexa");
2482 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa(theFace1, theFace2, theFace3, theFace4, theFace5, theFace6);
2483 endService( " GEOM_Superv_i::MakeHexa" );
2487 //=============================================================================
2489 //=============================================================================
2490 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeHexa2Faces (GEOM::GEOM_Object_ptr theFace1,
2491 GEOM::GEOM_Object_ptr theFace2)
2493 beginService( " GEOM_Superv_i::MakeHexa2Faces" );
2494 MESSAGE("GEOM_Superv_i::MakeHexa2Faces");
2496 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeHexa2Faces(theFace1, theFace2);
2497 endService( " GEOM_Superv_i::MakeHexa2Faces" );
2501 //=============================================================================
2503 //=============================================================================
2504 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetPoint (GEOM::GEOM_Object_ptr theShape,
2508 CORBA::Double theEpsilon)
2510 beginService( " GEOM_Superv_i::GetPoint" );
2511 MESSAGE("GEOM_Superv_i::GetPoint");
2513 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetPoint(theShape, theX, theY, theZ, theEpsilon);
2514 endService( " GEOM_Superv_i::GetPoint" );
2518 //=============================================================================
2520 //=============================================================================
2521 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdge (GEOM::GEOM_Object_ptr theShape,
2522 GEOM::GEOM_Object_ptr thePoint1,
2523 GEOM::GEOM_Object_ptr thePoint2)
2525 beginService( " GEOM_Superv_i::GetEdge" );
2526 MESSAGE("GEOM_Superv_i::GetEdge");
2528 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdge(theShape, thePoint1, thePoint2);
2529 endService( " GEOM_Superv_i::GetEdge" );
2533 //=============================================================================
2534 // GetEdgeNearPoint:
2535 //=============================================================================
2536 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetEdgeNearPoint (GEOM::GEOM_Object_ptr theShape,
2537 GEOM::GEOM_Object_ptr thePoint)
2539 beginService( " GEOM_Superv_i::GetEdgeNearPoint" );
2540 MESSAGE("GEOM_Superv_i::GetEdgeNearPoint");
2542 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetEdgeNearPoint(theShape, thePoint);
2543 endService( " GEOM_Superv_i::GetEdgeNearPoint" );
2547 //=============================================================================
2549 //=============================================================================
2550 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByPoints (GEOM::GEOM_Object_ptr theShape,
2551 GEOM::GEOM_Object_ptr thePoint1,
2552 GEOM::GEOM_Object_ptr thePoint2,
2553 GEOM::GEOM_Object_ptr thePoint3,
2554 GEOM::GEOM_Object_ptr thePoint4)
2556 beginService( " GEOM_Superv_i::GetFaceByPoints" );
2557 MESSAGE("GEOM_Superv_i::GetFaceByPoints");
2559 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByPoints(theShape, thePoint1, thePoint2, thePoint3, thePoint4);
2560 endService( " GEOM_Superv_i::GetFaceByPoints" );
2564 //=============================================================================
2566 //=============================================================================
2567 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByEdges (GEOM::GEOM_Object_ptr theShape,
2568 GEOM::GEOM_Object_ptr theEdge1,
2569 GEOM::GEOM_Object_ptr theEdge2)
2571 beginService( " GEOM_Superv_i::GetFaceByEdges" );
2572 MESSAGE("GEOM_Superv_i::GetFaceByEdges");
2574 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByEdges(theShape, theEdge1, theEdge2);
2575 endService( " GEOM_Superv_i::GetFaceByEdges" );
2579 //=============================================================================
2581 //=============================================================================
2582 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetOppositeFace (GEOM::GEOM_Object_ptr theBlock,
2583 GEOM::GEOM_Object_ptr theFace)
2585 beginService( " GEOM_Superv_i::GetOppositeFace" );
2586 MESSAGE("GEOM_Superv_i::GetOppositeFace");
2588 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetOppositeFace(theBlock, theFace);
2589 endService( " GEOM_Superv_i::GetOppositeFace" );
2593 //=============================================================================
2594 // GetFaceNearPoint:
2595 //=============================================================================
2596 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceNearPoint (GEOM::GEOM_Object_ptr theShape,
2597 GEOM::GEOM_Object_ptr thePoint)
2599 beginService( " GEOM_Superv_i::GetFaceNearPoint" );
2600 MESSAGE("GEOM_Superv_i::GetFaceNearPoint");
2602 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceNearPoint(theShape, thePoint);
2603 endService( " GEOM_Superv_i::GetFaceNearPoint" );
2607 //=============================================================================
2608 // GetFaceByNormale:
2609 //=============================================================================
2610 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetFaceByNormale (GEOM::GEOM_Object_ptr theBlock,
2611 GEOM::GEOM_Object_ptr theVector)
2613 beginService( " GEOM_Superv_i::GetFaceByNormale" );
2614 MESSAGE("GEOM_Superv_i::GetFaceByNormale");
2616 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetFaceByNormale(theBlock, theVector);
2617 endService( " GEOM_Superv_i::GetFaceByNormale" );
2621 //=============================================================================
2622 // IsCompoundOfBlocks:
2623 //=============================================================================
2624 CORBA::Boolean GEOM_Superv_i::IsCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2625 CORBA::Long theMinNbFaces,
2626 CORBA::Long theMaxNbFaces,
2627 CORBA::Long& theNbBlocks)
2629 beginService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2630 MESSAGE("GEOM_Superv_i::IsCompoundOfBlocks");
2632 CORBA::Boolean aRes = myBlocksOp->IsCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces, theNbBlocks);
2633 endService( " GEOM_Superv_i::IsCompoundOfBlocks" );
2637 //=============================================================================
2638 // CheckCompoundOfBlocks:
2639 //=============================================================================
2640 CORBA::Boolean GEOM_Superv_i::CheckCompoundOfBlocks
2641 (GEOM::GEOM_Object_ptr theCompound,
2642 GEOM::GEOM_IBlocksOperations::BCErrors_out theErrors)
2644 beginService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2645 MESSAGE("GEOM_Superv_i::CheckCompoundOfBlocks");
2647 CORBA::Boolean aRes = myBlocksOp->CheckCompoundOfBlocks(theCompound, theErrors);
2648 endService( " GEOM_Superv_i::CheckCompoundOfBlocks" );
2652 //=============================================================================
2654 //=============================================================================
2655 char* GEOM_Superv_i::PrintBCErrors (GEOM::GEOM_Object_ptr theCompound,
2656 const GEOM::GEOM_IBlocksOperations::BCErrors& theErrors)
2658 beginService( " GEOM_Superv_i::PrintBCErrors" );
2659 MESSAGE("GEOM_Superv_i::PrintBCErrors");
2661 char* anErrors = myBlocksOp->PrintBCErrors(theCompound, theErrors);
2662 endService( " GEOM_Superv_i::PrintBCErrors" );
2666 //=============================================================================
2667 // ExplodeCompoundOfBlocks:
2668 //=============================================================================
2669 GEOM::GEOM_List_ptr GEOM_Superv_i::ExplodeCompoundOfBlocks (GEOM::GEOM_Object_ptr theCompound,
2670 CORBA::Long theMinNbFaces,
2671 CORBA::Long theMaxNbFaces)
2673 beginService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2674 MESSAGE("GEOM_Superv_i::ExplodeCompoundOfBlocks");
2676 GEOM::ListOfGO* aBlocks = myBlocksOp->ExplodeCompoundOfBlocks(theCompound, theMinNbFaces, theMaxNbFaces);
2677 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2678 endService( " GEOM_Superv_i::ExplodeCompoundOfBlocks" );
2679 return aListPtr->_this();
2682 //=============================================================================
2683 // GetBlockNearPoint:
2684 //=============================================================================
2685 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockNearPoint (GEOM::GEOM_Object_ptr theCompound,
2686 GEOM::GEOM_Object_ptr thePoint)
2688 beginService( " GEOM_Superv_i::GetBlockNearPoint" );
2689 MESSAGE("GEOM_Superv_i::GetBlockNearPoint");
2691 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockNearPoint(theCompound, thePoint);
2692 endService( " GEOM_Superv_i::GetBlockNearPoint" );
2696 //=============================================================================
2698 //=============================================================================
2699 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetBlockByParts (GEOM::GEOM_Object_ptr theCompound,
2700 GEOM::GEOM_List_ptr theParts)
2702 beginService( " GEOM_Superv_i::GetBlockByParts" );
2703 MESSAGE("GEOM_Superv_i::GetBlockByParts");
2704 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2705 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2707 GEOM::GEOM_Object_ptr anObj = myBlocksOp->GetBlockByParts(theCompound, aListImplP->GetList());
2708 endService( " GEOM_Superv_i::GetBlockByParts" );
2711 endService( " GEOM_Superv_i::GetBlockByParts" );
2715 //=============================================================================
2716 // GetBlocksByParts:
2717 //=============================================================================
2718 GEOM::GEOM_List_ptr GEOM_Superv_i::GetBlocksByParts (GEOM::GEOM_Object_ptr theCompound,
2719 GEOM::GEOM_List_ptr theParts)
2721 beginService( " GEOM_Superv_i::GetBlocksByParts" );
2722 MESSAGE("GEOM_Superv_i::GetBlocksByParts");
2723 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2724 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(theParts, myPOA).in())) {
2727 GEOM::ListOfGO* aBlocks = myBlocksOp->GetBlocksByParts(theCompound, aListImplP->GetList());
2728 GEOM_List_i<GEOM::ListOfGO>* aListPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aBlocks));
2729 endService( " GEOM_Superv_i::GetBlocksByParts" );
2730 return aListPtr->_this();
2732 endService( " GEOM_Superv_i::GetBlocksByParts" );
2736 //=============================================================================
2737 // MakeMultiTransformation1D:
2738 //=============================================================================
2739 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation1D (GEOM::GEOM_Object_ptr theBlock,
2740 CORBA::Long theDirFace1,
2741 CORBA::Long theDirFace2,
2742 CORBA::Long theNbTimes)
2744 beginService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2745 MESSAGE("GEOM_Superv_i::MakeMultiTransformation1D");
2747 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation1D(theBlock, theDirFace1, theDirFace2, theNbTimes);
2748 endService( " GEOM_Superv_i::MakeMultiTransformation1D" );
2752 //=============================================================================
2753 // MakeMultiTransformation2D:
2754 //=============================================================================
2755 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeMultiTransformation2D
2756 (GEOM::GEOM_Object_ptr theBlock,
2757 CORBA::Long theDirFace1U,
2758 CORBA::Long theDirFace2U,
2759 CORBA::Long theNbTimesU,
2760 CORBA::Long theDirFace1V,
2761 CORBA::Long theDirFace2V,
2762 CORBA::Long theNbTimesV)
2764 beginService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2765 MESSAGE("GEOM_Superv_i::MakeMultiTransformation2D");
2767 GEOM::GEOM_Object_ptr anObj = myBlocksOp->MakeMultiTransformation2D(theBlock,
2768 theDirFace1U, theDirFace2U, theNbTimesU,
2769 theDirFace1V, theDirFace2V, theNbTimesV);
2770 endService( " GEOM_Superv_i::MakeMultiTransformation2D" );
2774 //=============================== CurvesOperations ============================
2775 //=============================================================================
2776 // MakeCirclePntVecR:
2777 //=============================================================================
2778 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCirclePntVecR (GEOM::GEOM_Object_ptr theCenter,
2779 GEOM::GEOM_Object_ptr theVector,
2782 beginService( " GEOM_Superv_i::MakeCirclePntVecR" );
2783 MESSAGE("GEOM_Superv_i::MakeCirclePntVecR");
2785 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCirclePntVecR(theCenter, theVector, theR);
2786 endService( " GEOM_Superv_i::MakeCirclePntVecR" );
2790 //=============================================================================
2791 // MakeCircleThreePnt:
2792 //=============================================================================
2793 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleThreePnt (GEOM::GEOM_Object_ptr thePnt1,
2794 GEOM::GEOM_Object_ptr thePnt2,
2795 GEOM::GEOM_Object_ptr thePnt3)
2797 beginService( " GEOM_Superv_i::MakeCircleThreePnt" );
2798 MESSAGE("GEOM_Superv_i::MakeCircleThreePnt");
2800 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleThreePnt(thePnt1, thePnt2, thePnt3);
2801 endService( " GEOM_Superv_i::MakeCircleThreePnt" );
2804 //=============================================================================
2805 // MakeCircleCenter2Pnt:
2806 //=============================================================================
2807 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeCircleCenter2Pnt (GEOM::GEOM_Object_ptr thePnt1,
2808 GEOM::GEOM_Object_ptr thePnt2,
2809 GEOM::GEOM_Object_ptr thePnt3)
2811 beginService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2812 MESSAGE("GEOM_Superv_i::MakeCircleCenter2Pnt");
2814 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeCircleCenter2Pnt(thePnt1, thePnt2, thePnt3);
2815 endService( " GEOM_Superv_i::MakeCircleCenter2Pnt" );
2819 //=============================================================================
2821 //=============================================================================
2822 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipse (GEOM::GEOM_Object_ptr theCenter,
2823 GEOM::GEOM_Object_ptr theVector,
2824 CORBA::Double theRMajor,
2825 CORBA::Double theRMinor)
2827 beginService( " GEOM_Superv_i::MakeEllipse" );
2828 MESSAGE("GEOM_Superv_i::MakeEllipse");
2830 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipse(theCenter, theVector, theRMajor, theRMinor);
2831 endService( " GEOM_Superv_i::MakeEllipse" );
2835 //=============================================================================
2837 //=============================================================================
2838 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeEllipseVec (GEOM::GEOM_Object_ptr theCenter,
2839 GEOM::GEOM_Object_ptr theVector,
2840 CORBA::Double theRMajor,
2841 CORBA::Double theRMinor,
2842 GEOM::GEOM_Object_ptr theVectorMajor)
2844 beginService( " GEOM_Superv_i::MakeEllipseVec" );
2845 MESSAGE("GEOM_Superv_i::MakeEllipseVec");
2847 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeEllipseVec(theCenter, theVector, theRMajor, theRMinor, theVectorMajor);
2848 endService( " GEOM_Superv_i::MakeEllipseVec" );
2852 //=============================================================================
2854 //=============================================================================
2855 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArc (GEOM::GEOM_Object_ptr thePnt1,
2856 GEOM::GEOM_Object_ptr thePnt2,
2857 GEOM::GEOM_Object_ptr thePnt3)
2859 beginService( " GEOM_Superv_i::MakeArc" );
2860 MESSAGE("GEOM_Superv_i::MakeArc");
2862 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArc(thePnt1, thePnt2, thePnt3);
2863 endService( " GEOM_Superv_i::MakeArc" );
2867 //=============================================================================
2869 //=============================================================================
2870 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcCenter (GEOM::GEOM_Object_ptr theCenter,
2871 GEOM::GEOM_Object_ptr thePnt1,
2872 GEOM::GEOM_Object_ptr thePnt2,
2873 CORBA::Boolean theSense)
2875 beginService( " GEOM_Superv_i::MakeArcCenter" );
2876 MESSAGE("GEOM_Superv_i::MakeArcCenter");
2878 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcCenter(theCenter, thePnt1, thePnt2,theSense);
2879 endService( " GEOM_Superv_i::MakeArcCenter" );
2883 //=============================================================================
2884 // MakeArcOfEllipse:
2885 //=============================================================================
2886 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArcOfEllipse (GEOM::GEOM_Object_ptr thePnt1,
2887 GEOM::GEOM_Object_ptr thePnt2,
2888 GEOM::GEOM_Object_ptr thePnt3)
2890 beginService( " GEOM_Superv_i::MakeArcOfEllipse" );
2891 MESSAGE("GEOM_Superv_i::MakeArcOfEllipse");
2893 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeArcOfEllipse(thePnt1, thePnt2, thePnt3);
2894 endService( " GEOM_Superv_i::MakeArcOfEllipse" );
2898 //=============================================================================
2900 //=============================================================================
2901 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakePolyline (GEOM::GEOM_List_ptr thePoints,
2902 CORBA::Boolean theIsClosed)
2904 beginService( " GEOM_Superv_i::MakePolyline" );
2905 MESSAGE("GEOM_Superv_i::MakePolyline");
2906 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2907 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2909 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakePolyline(aListImplP->GetList(), theIsClosed);
2910 endService( " GEOM_Superv_i::MakePolyline" );
2913 endService( " GEOM_Superv_i::MakePolyline" );
2917 //=============================================================================
2918 // MakeSplineBezier:
2919 //=============================================================================
2920 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineBezier (GEOM::GEOM_List_ptr thePoints,
2921 CORBA::Boolean theIsClosed)
2923 beginService( " GEOM_Superv_i::MakeSplineBezier" );
2924 MESSAGE("GEOM_Superv_i::MakeSplineBezier");
2925 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2926 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2928 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineBezier(aListImplP->GetList(), theIsClosed);
2929 endService( " GEOM_Superv_i::MakeSplineBezier" );
2932 endService( " GEOM_Superv_i::MakeSplineBezier" );
2936 //=============================================================================
2937 // MakeSplineInterpolation:
2938 //=============================================================================
2939 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSplineInterpolation (GEOM::GEOM_List_ptr thePoints,
2940 CORBA::Boolean theIsClosed,
2941 CORBA::Boolean theDoReordering)
2943 beginService( " GEOM_Superv_i::MakeSplineInterpolation" );
2944 MESSAGE("GEOM_Superv_i::MakeSplineInterpolation");
2945 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
2946 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thePoints, myPOA).in())) {
2948 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSplineInterpolation(aListImplP->GetList(), theIsClosed, theDoReordering);
2949 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2952 endService( " GEOM_Superv_i::MakeSplineInterpolation" );
2956 //=============================================================================
2958 //=============================================================================
2959 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSketcher (const char* theCommand,
2960 GEOM::GEOM_List_ptr theWorkingPlane)
2962 beginService( " GEOM_Superv_i::MakeSketcher" );
2963 MESSAGE("GEOM_Superv_i::MakeSketcher");
2964 if (GEOM_List_i<GEOM::ListOfDouble>* aListImplWP =
2965 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theWorkingPlane, myPOA).in())) {
2967 GEOM::GEOM_Object_ptr anObj = myCurvesOp->MakeSketcher(theCommand, aListImplWP->GetList());
2968 endService( " GEOM_Superv_i::MakeSketcher" );
2971 endService( " GEOM_Superv_i::MakeSketcher" );
2975 //=============================================================================
2977 //=============================================================================
2978 GEOM::GEOM_Object_ptr GEOM_Superv_i::Make3DSketcher ( GEOM::GEOM_List_ptr theCoordinates)
2980 beginService( " GEOM_Superv_i::Make3DSketcher" );
2981 MESSAGE("GEOM_Superv_i::Make3DSketcher");
2982 if (GEOM_List_i<GEOM::ListOfDouble>* aListImpl =
2983 dynamic_cast<GEOM_List_i<GEOM::ListOfDouble>*>(GetServant(theCoordinates, myPOA).in())) {
2985 GEOM::GEOM_Object_ptr anObj = myCurvesOp->Make3DSketcher(aListImpl->GetList());
2986 endService( " GEOM_Superv_i::Make3DSketcher" );
2989 endService( " GEOM_Superv_i::Make3DSketcher" );
2993 //=============================== LocalOperations =============================
2994 //=============================================================================
2996 //=============================================================================
2997 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletAll (GEOM::GEOM_Object_ptr theShape,
3000 beginService( " GEOM_Superv_i::MakeFilletAll" );
3001 MESSAGE("GEOM_Superv_i::MakeFilletAllMakeSketcher");
3003 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletAll(theShape, theR);
3004 endService( " GEOM_Superv_i::MakeFilletAll" );
3008 //=============================================================================
3010 //=============================================================================
3011 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdges (GEOM::GEOM_Object_ptr theShape,
3013 GEOM::GEOM_List_ptr theEdges)
3015 beginService( " GEOM_Superv_i::MakeFilletEdges" );
3016 MESSAGE("GEOM_Superv_i::MakeFilletEdges");
3017 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
3018 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3020 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdges(theShape, theR, aListImplE->GetList());
3021 endService( " GEOM_Superv_i::MakeFilletEdges" );
3024 endService( " GEOM_Superv_i::MakeFilletEdges" );
3028 //=============================================================================
3029 // MakeFilletEdges R1 R2:
3030 //=============================================================================
3031 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletEdgesR1R2 (GEOM::GEOM_Object_ptr theShape,
3032 CORBA::Double theR1,
3033 CORBA::Double theR2,
3034 GEOM::GEOM_List_ptr theEdges)
3036 beginService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
3037 MESSAGE("GEOM_Superv_i::MakeFilletEdgesR1R2");
3038 if (GEOM_List_i<GEOM::ListOfLong>* aListImplE =
3039 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3041 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletEdgesR1R2(theShape, theR1,
3042 theR2, aListImplE->GetList());
3043 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
3046 endService( " GEOM_Superv_i::MakeFilletEdgesR1R2" );
3050 //=============================================================================
3052 //=============================================================================
3053 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFaces (GEOM::GEOM_Object_ptr theShape,
3055 GEOM::GEOM_List_ptr theFaces)
3057 beginService( " GEOM_Superv_i::MakeFilletFaces" );
3058 MESSAGE("GEOM_Superv_i::MakeFilletFaces");
3059 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3060 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3062 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFaces(theShape, theR, aListImplF->GetList());
3063 endService( " GEOM_Superv_i::MakeFilletFaces" );
3066 endService( " GEOM_Superv_i::MakeFilletFaces" );
3070 //=============================================================================
3071 // MakeFilletFaces R1 R2:
3072 //=============================================================================
3073 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFilletFacesR1R2 (GEOM::GEOM_Object_ptr theShape,
3074 CORBA::Double theR1,
3075 CORBA::Double theR2,
3076 GEOM::GEOM_List_ptr theFaces)
3078 beginService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
3079 MESSAGE("GEOM_Superv_i::MakeFilletFacesR1R2");
3080 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3081 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3083 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFilletFacesR1R2(theShape, theR1, theR2,
3084 aListImplF->GetList());
3085 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
3088 endService( " GEOM_Superv_i::MakeFilletFacesR1R2" );
3092 //=============================================================================
3094 //=============================================================================
3095 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet2D (GEOM::GEOM_Object_ptr theShape,
3097 GEOM::GEOM_List_ptr theVertexes)
3099 beginService( " GEOM_Superv_i::MakeFillet2D" );
3100 MESSAGE("GEOM_Superv_i::MakeFillet2D");
3101 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
3102 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
3104 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet2D(theShape, theR, aListImplV->GetList());
3105 endService( " GEOM_Superv_i::MakeFillet2D" );
3108 endService( " GEOM_Superv_i::MakeFillet2D" );
3112 //=============================================================================
3114 //=============================================================================
3115 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeFillet1D (GEOM::GEOM_Object_ptr theShape,
3117 GEOM::GEOM_List_ptr theVertexes,
3118 CORBA::Boolean doIgnoreSecantVertices)
3120 beginService( " GEOM_Superv_i::MakeFillet1D" );
3121 MESSAGE("GEOM_Superv_i::MakeFillet1D");
3122 if (GEOM_List_i<GEOM::ListOfLong>* aListImplV =
3123 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theVertexes, myPOA).in())) {
3125 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeFillet1D
3126 (theShape, theR, aListImplV->GetList(), doIgnoreSecantVertices);
3127 endService( " GEOM_Superv_i::MakeFillet1D" );
3130 endService( " GEOM_Superv_i::MakeFillet1D" );
3134 //=============================================================================
3136 //=============================================================================
3137 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferAll (GEOM::GEOM_Object_ptr theShape, CORBA::Double theD)
3139 beginService( " GEOM_Superv_i::MakeChamferAll" );
3140 MESSAGE("GEOM_Superv_i::MakeChamferAll");
3142 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferAll(theShape, theD);
3143 endService( " GEOM_Superv_i::MakeChamferAll" );
3147 //=============================================================================
3149 //=============================================================================
3150 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdge (GEOM::GEOM_Object_ptr theShape,
3151 CORBA::Double theD1, CORBA::Double theD2,
3152 CORBA::Long theFace1, CORBA::Long theFace2)
3154 beginService( " GEOM_Superv_i::MakeChamferEdge" );
3155 MESSAGE("GEOM_Superv_i::MakeChamferEdge");
3157 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdge(theShape, theD1, theD2, theFace1, theFace2);
3158 endService( " GEOM_Superv_i::MakeChamferEdge" );
3162 //=============================================================================
3163 // MakeChamferEdgeAD:
3164 //=============================================================================
3165 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgeAD (GEOM::GEOM_Object_ptr theShape,
3166 CORBA::Double theD, CORBA::Double theAngle,
3167 CORBA::Long theFace1, CORBA::Long theFace2)
3169 beginService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3170 MESSAGE("GEOM_Superv_i::MakeChamferEdgeAD");
3172 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgeAD(theShape, theD, theAngle, theFace1, theFace2);
3173 endService( " GEOM_Superv_i::MakeChamferEdgeAD" );
3177 //=============================================================================
3178 // MakeChamferFaces:
3179 //=============================================================================
3180 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFaces (GEOM::GEOM_Object_ptr theShape,
3181 CORBA::Double theD1, CORBA::Double theD2,
3182 GEOM::GEOM_List_ptr theFaces)
3184 beginService( " GEOM_Superv_i::MakeChamferFaces" );
3185 MESSAGE("GEOM_Superv_i::MakeChamferFaces");
3186 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3187 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3189 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFaces(theShape, theD1, theD2, aListImplF->GetList());
3190 endService( " GEOM_Superv_i::MakeChamferFaces" );
3193 endService( " GEOM_Superv_i::MakeChamferFaces" );
3197 //=============================================================================
3198 // MakeChamferFacesAD:
3199 //=============================================================================
3200 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferFacesAD (GEOM::GEOM_Object_ptr theShape,
3201 CORBA::Double theD, CORBA::Double theAngle,
3202 GEOM::GEOM_List_ptr theFaces)
3204 beginService( " GEOM_Superv_i::MakeChamferFacesAD" );
3205 MESSAGE("GEOM_Superv_i::MakeChamferFacesAD");
3206 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3207 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theFaces, myPOA).in())) {
3209 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferFacesAD(theShape, theD, theAngle, aListImplF->GetList());
3210 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3213 endService( " GEOM_Superv_i::MakeChamferFacesAD" );
3217 //=============================================================================
3218 // MakeChamferEdges:
3219 //=============================================================================
3220 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdges (GEOM::GEOM_Object_ptr theShape,
3221 CORBA::Double theD1, CORBA::Double theD2,
3222 GEOM::GEOM_List_ptr theEdges)
3224 beginService( " GEOM_Superv_i::MakeChamferEdges" );
3225 MESSAGE("GEOM_Superv_i::MakeChamferEdges");
3226 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3227 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3229 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdges(theShape, theD1, theD2, aListImplF->GetList());
3230 endService( " GEOM_Superv_i::MakeChamferEdges" );
3233 endService( " GEOM_Superv_i::MakeChamferEdges" );
3237 //=============================================================================
3238 // MakeChamferEdgesAD:
3239 //=============================================================================
3240 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeChamferEdgesAD (GEOM::GEOM_Object_ptr theShape,
3241 CORBA::Double theD, CORBA::Double theAngle,
3242 GEOM::GEOM_List_ptr theEdges)
3244 beginService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3245 MESSAGE("GEOM_Superv_i::MakeChamferEdgesAD");
3246 if (GEOM_List_i<GEOM::ListOfLong>* aListImplF =
3247 dynamic_cast<GEOM_List_i<GEOM::ListOfLong>*>(GetServant(theEdges, myPOA).in())) {
3249 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeChamferEdgesAD(theShape, theD, theAngle, aListImplF->GetList());
3250 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3253 endService( " GEOM_Superv_i::MakeChamferEdgesAD" );
3257 //=============================================================================
3259 //=============================================================================
3260 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeArchimede (GEOM::GEOM_Object_ptr theShape,
3261 CORBA::Double theWeight,
3262 CORBA::Double theWaterDensity,
3263 CORBA::Double theMeshingDeflection)
3265 beginService( " GEOM_Superv_i::MakeArchimede" );
3266 MESSAGE("GEOM_Superv_i::MakeArchimede");
3268 GEOM::GEOM_Object_ptr anObj = myLocalOp->MakeArchimede(theShape, theWeight, theWaterDensity, theMeshingDeflection);
3269 endService( " GEOM_Superv_i::MakeArchimede" );
3273 //=============================================================================
3274 // GetSubShapeIndexMakeFilletAll:
3275 //=============================================================================
3276 CORBA::Long GEOM_Superv_i::GetSubShapeIndex (GEOM::GEOM_Object_ptr theShape,
3277 GEOM::GEOM_Object_ptr theSubShape)
3279 beginService( " GEOM_Superv_i::GetSubShapeIndex" );
3280 MESSAGE("GEOM_Superv_i::GetSubShapeIndexMakeArchimede");
3282 CORBA::Long aRes = myLocalOp->GetSubShapeIndex(theShape, theSubShape);
3283 endService( " GEOM_Superv_i::GetSubShapeIndex" );
3287 //=============================== GroupOperations =============================
3288 //=============================================================================
3290 //=============================================================================
3291 GEOM::GEOM_Object_ptr GEOM_Superv_i::CreateGroup (GEOM::GEOM_Object_ptr theMainShape,
3292 CORBA::Long theShapeType)
3294 beginService( " GEOM_Superv_i::CreateGroup" );
3295 MESSAGE("GEOM_Superv_i::CreateGroup");
3297 GEOM::GEOM_Object_ptr anObj = myGroupOp->CreateGroup(theMainShape, theShapeType);
3298 endService( " GEOM_Superv_i::CreateGroup" );
3302 //=============================================================================
3304 //=============================================================================
3305 void GEOM_Superv_i::AddObject (GEOM::GEOM_Object_ptr theGroup,
3306 CORBA::Long theSubShapeId)
3308 beginService( " GEOM_Superv_i::AddObject" );
3309 MESSAGE("GEOM_Superv_i::AddObject");
3311 myGroupOp->AddObject(theGroup, theSubShapeId);
3312 endService( " GEOM_Superv_i::AddObject" );
3315 //=============================================================================
3317 //=============================================================================
3318 void GEOM_Superv_i::RemoveObject (GEOM::GEOM_Object_ptr theGroup,
3319 CORBA::Long theSubShapeId)
3321 beginService( " GEOM_Superv_i::RemoveObject" );
3322 MESSAGE("GEOM_Superv_i::RemoveObject");
3324 myGroupOp->RemoveObject(theGroup, theSubShapeId);
3325 endService( " GEOM_Superv_i::RemoveObject" );
3328 //=============================================================================
3330 //=============================================================================
3331 CORBA::Long GEOM_Superv_i::GetType (GEOM::GEOM_Object_ptr theGroup)
3333 beginService( " GEOM_Superv_i::GetType" );
3334 MESSAGE("GEOM_Superv_i::GetType");
3336 CORBA::Long aResult = myGroupOp->GetType(theGroup);
3337 endService( " GEOM_Superv_i::GetType" );
3341 //=============================================================================
3343 //=============================================================================
3344 GEOM::GEOM_Object_ptr GEOM_Superv_i::GetMainShape (GEOM::GEOM_Object_ptr theGroup)
3346 beginService( " GEOM_Superv_i::GetMainShape" );
3347 MESSAGE("GEOM_Superv_i::GetMainShape");
3349 GEOM::GEOM_Object_ptr anObj = myGroupOp->GetMainShape(theGroup);
3350 endService( " GEOM_Superv_i::GetMainShape" );
3354 //=============================================================================
3356 //=============================================================================
3357 GEOM::GEOM_List_ptr GEOM_Superv_i::GetObjects (GEOM::GEOM_Object_ptr theGroup)
3359 beginService( " GEOM_Superv_i::GetObjects" );
3360 MESSAGE("GEOM_Superv_i::GetObjects");
3363 GEOM::ListOfLong* aList = myGroupOp->GetObjects(theGroup);
3364 GEOM_List_i<GEOM::ListOfLong>* aListPtr = new GEOM_List_i<GEOM::ListOfLong>(*(aList));
3365 MESSAGE(" List of "<<aListPtr->GetList().length()<<" element(s)");
3366 endService( " GEOM_Superv_i::GetObjects" );
3367 return aListPtr->_this();
3370 //=============================================================================
3372 //=============================================================================
3373 CORBA::Boolean GEOM_Superv_i::ExportXAO (GEOM::GEOM_Object_ptr shape,
3374 const GEOM::ListOfGO& groups, const GEOM::ListOfFields& fields,
3375 const char* author, const char* fileName)
3377 beginService( " GEOM_Superv_i::ExportXAO" );
3378 MESSAGE("GEOM_Superv_i::ExportXAO");
3380 CORBA::Boolean isGood = myInsOp->ExportXAO(shape, groups, fields, author, fileName);
3381 endService( " GEOM_Superv_i::ExportXAO" );
3385 //=============================================================================
3387 //=============================================================================
3388 CORBA::Boolean GEOM_Superv_i::ImportXAO (const char* fileName, GEOM::GEOM_Object_out shape,
3389 GEOM::ListOfGO_out subShapes, GEOM::ListOfGO_out groups, GEOM::ListOfFields_out fields)
3394 //=============================== Advanced Operations =============================
3395 //=============================================================================
3397 //=============================================================================
3398 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShape
3399 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3400 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3401 CORBA::Boolean theHexMesh)
3403 beginService( " GEOM_Superv_i::MakePipeTShape" );
3404 MESSAGE("GEOM_Superv_i::MakePipeTShape");
3407 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShape(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh);
3408 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3409 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3410 endService( " GEOM_Superv_i::MakePipeTShape" );
3411 return aSeqPtr->_this();
3414 //=============================================================================
3415 // MakePipeTShapeWithPosition
3416 //=============================================================================
3417 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeWithPosition
3418 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3419 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2, CORBA::Boolean theHexMesh,
3420 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3422 beginService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3423 MESSAGE("GEOM_Superv_i::MakePipeTShapeWithPosition");
3426 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theHexMesh, theP1, theP2, theP3);
3427 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3428 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3429 endService( " GEOM_Superv_i::MakePipeTShapeWithPosition" );
3430 return aSeqPtr->_this();
3433 //=============================================================================
3434 // MakePipeTShapeChamfer
3435 //=============================================================================
3436 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamfer
3437 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3438 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3439 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh)
3441 beginService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3442 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamfer");
3445 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamfer(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh);
3446 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3447 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3448 endService( " GEOM_Superv_i::MakePipeTShapeChamfer" );
3449 return aSeqPtr->_this();
3452 //=============================================================================
3453 // MakePipeTShapeChamferWithPosition
3454 //=============================================================================
3455 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeChamferWithPosition
3456 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3457 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3458 CORBA::Double theH, CORBA::Double theW, CORBA::Boolean theHexMesh,
3459 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3461 beginService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3462 MESSAGE("GEOM_Superv_i::MakePipeTShapeChamferWithPosition");
3465 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeChamferWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theH, theW, theHexMesh, theP1, theP2, theP3);
3466 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3467 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3468 endService( " GEOM_Superv_i::MakePipeTShapeChamferWithPosition" );
3469 return aSeqPtr->_this();
3472 //=============================================================================
3473 // MakePipeTShapeFillet
3474 //=============================================================================
3475 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFillet
3476 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3477 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3478 CORBA::Double theRF, CORBA::Boolean theHexMesh)
3480 beginService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3481 MESSAGE("GEOM_Superv_i::MakePipeTShapeFillet");
3484 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFillet(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh);
3485 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3486 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3487 endService( " GEOM_Superv_i::MakePipeTShapeFillet" );
3488 return aSeqPtr->_this();
3491 //=============================================================================
3492 // MakePipeTShapeFilletWithPosition
3493 //=============================================================================
3494 GEOM::GEOM_List_ptr GEOM_Superv_i::MakePipeTShapeFilletWithPosition
3495 (CORBA::Double theR1, CORBA::Double theW1, CORBA::Double theL1,
3496 CORBA::Double theR2, CORBA::Double theW2, CORBA::Double theL2,
3497 CORBA::Double theRF, CORBA::Boolean theHexMesh,
3498 GEOM::GEOM_Object_ptr theP1, GEOM::GEOM_Object_ptr theP2, GEOM::GEOM_Object_ptr theP3)
3500 beginService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3501 MESSAGE("GEOM_Superv_i::MakePipeTShapeFilletWithPosition");
3504 GEOM::ListOfGO* aSeq = myAdvancedOp->MakePipeTShapeFilletWithPosition(theR1, theW1, theL1, theR2, theW2, theL2, theRF, theHexMesh, theP1, theP2, theP3);
3505 GEOM_List_i<GEOM::ListOfGO>* aSeqPtr = new GEOM_List_i<GEOM::ListOfGO>(*(aSeq));
3506 MESSAGE(" List of "<<aSeqPtr->GetList().length()<<" element(s)");
3507 endService( " GEOM_Superv_i::MakePipeTShapeFilletWithPosition" );
3508 return aSeqPtr->_this();
3511 //=============================================================================
3513 //=============================================================================
3514 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDividedDisk (CORBA::Double theR, CORBA::Double theRatio,
3515 CORBA::Short theOrientation, GEOM::pattern thePattern)
3517 beginService( " GEOM_Superv_i::MakeDividedDisk" );
3518 MESSAGE("GEOM_Superv_i::MakeDividedDisk");
3520 GEOM::GEOM_Object_ptr anObj = myAdvancedOp->MakeDividedDisk(theR, theRatio, theOrientation, thePattern);
3521 endService( " GEOM_Superv_i::MakeDividedDisk" );
3525 //=============================================================================
3526 // MakeDividedCylinder
3527 //=============================================================================
3528 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeDividedCylinder (CORBA::Double theR,
3530 GEOM::pattern thePattern)
3532 beginService( " GEOM_Superv_i::MakeDividedCylinder" );
3533 MESSAGE("GEOM_Superv_i::MakeDividedCylinder");
3535 GEOM::GEOM_Object_ptr anObj = myAdvancedOp->MakeDividedCylinder(theR, theH, thePattern);
3536 endService( " GEOM_Superv_i::MakeDividedCylinder" );
3540 //=============================================================================
3541 // MakeSmoothingSurface
3542 //=============================================================================
3543 GEOM::GEOM_Object_ptr GEOM_Superv_i::MakeSmoothingSurface (GEOM::GEOM_List_ptr thelPoints)
3545 beginService( " GEOM_Superv_i::MakeSmoothingSurface" );
3546 MESSAGE("GEOM_Superv_i::MakeSmoothingSurface");
3548 if (GEOM_List_i<GEOM::ListOfGO>* aListImplP =
3549 dynamic_cast<GEOM_List_i<GEOM::ListOfGO>*>(GetServant(thelPoints, myPOA).in())) {
3551 GEOM::GEOM_Object_ptr anObj = myAdvancedOp->MakeSmoothingSurface(aListImplP->GetList(), 2, 8, 0.);
3552 endService( " GEOM_Superv_i::MakeSmoothingSurface" );
3555 endService( " GEOM_Superv_i::MakeSmoothingSurface" );
3559 /*@@ insert new functions before this line @@ do not remove this line @@*/
3561 //=====================================================================================
3563 //=====================================================================================
3567 __declspec( dllexport )
3569 PortableServer::ObjectId * GEOM_SupervEngine_factory(CORBA::ORB_ptr orb,
3570 PortableServer::POA_ptr poa,
3571 PortableServer::ObjectId * contId,
3572 const char *instanceName,
3573 const char * interfaceName)
3575 GEOM_Superv_i * myGEOM_Superv_i = new GEOM_Superv_i(orb, poa, contId, instanceName, interfaceName);
3576 //Don't understand the reason why this component is registered ???
3577 // myGEOM_Superv_i->register_name("/myGEOM_Superv");
3578 return myGEOM_Superv_i->getId() ;