geom/idl/GEOM_Kinematic.idl
2004-05-18 12:21:20 +00:00

138 lines
4.1 KiB
Plaintext

// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// version 2.1 of the License.
//
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
//
//
//
// File : GEOM_Kinematic.idl
// Author : Damien COQUERET
#ifndef __GEOM_Kinematic__
#define __GEOM_Kinematic__
#include "SALOME_Exception.idl"
#include "GEOM_Shape.idl"
module GEOM
{
typedef sequence<double> ListOfDouble;
//-----------------------------------------------------------------//
// interface GEOM_Contact methods //
//-----------------------------------------------------------------//
interface GEOM_Contact {
long GetType()
raises (SALOME::SALOME_Exception);
GEOM::GEOM_Shape GetShape1()
raises (SALOME::SALOME_Exception);
GEOM::GEOM_Shape GetShape2()
raises (SALOME::SALOME_Exception);
double GetStep()
raises (SALOME::SALOME_Exception);
GEOM::ListOfDouble GetPosition()
raises (SALOME::SALOME_Exception);
GEOM::ListOfDouble GetAngularRange()
raises (SALOME::SALOME_Exception);
GEOM::ListOfDouble GetLinearRange()
raises (SALOME::SALOME_Exception);
void SetPosition(in double P0x, in double P0y, in double P0z,
in double VXx, in double VXy, in double VXz,
in double VYx, in double VYy, in double VYz,
in double VZx, in double VZy, in double VZz)
raises (SALOME::SALOME_Exception);
void SetAngularRange(in double MinValX, in double MaxValX,
in double MinValY, in double MaxValY,
in double MinValZ, in double MaxValZ)
raises (SALOME::SALOME_Exception);
void SetLinearRange(in double MinValX, in double MaxValX,
in double MinValY, in double MaxValY,
in double MinValZ, in double MaxValZ)
raises (SALOME::SALOME_Exception);
attribute string Name;
attribute string ShapeId;
attribute string StudyShapeId;
};
typedef sequence<GEOM_Contact> ListOfContact;
//-----------------------------------------------------------------//
// interface GEOM_Assembly methods //
//-----------------------------------------------------------------//
interface GEOM_Assembly {
void AddContact(in GEOM::GEOM_Contact aContact)
raises (SALOME::SALOME_Exception);
GEOM::ListOfContact GetContactList()
raises (SALOME::SALOME_Exception);
long NbContacts()
raises (SALOME::SALOME_Exception);
attribute string Name;
attribute string ShapeId;
attribute string StudyShapeId;
};
//-----------------------------------------------------------------//
// interface GEOM_Animation methods //
//-----------------------------------------------------------------//
interface GEOM_Animation {
GEOM::GEOM_Assembly GetAssembly()
raises (SALOME::SALOME_Exception);
GEOM::GEOM_Shape GetFrame()
raises (SALOME::SALOME_Exception);
double GetDuration()
raises (SALOME::SALOME_Exception);
long GetNbSeq()
raises (SALOME::SALOME_Exception);
GEOM::ListOfDouble GetDisplacement(in GEOM_Contact aContact)
raises (SALOME::SALOME_Exception);
void SetDisplacement(in GEOM_Contact aContact,
in GEOM::ListOfDouble aList)
raises (SALOME::SALOME_Exception);
attribute string Name;
attribute string ShapeId;
attribute string StudyShapeId;
};
};
#endif