2012-08-09 13:58:02 +06:00
|
|
|
// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
|
2005-12-05 21:23:52 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
// 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.
|
2005-12-05 21:23:52 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
// 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.
|
2009-02-13 17:16:39 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
// 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
|
2009-02-13 17:16:39 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
|
2005-12-05 21:23:52 +05:00
|
|
|
//
|
2012-08-09 13:58:02 +06:00
|
|
|
|
2003-05-12 21:24:23 +06:00
|
|
|
// File : libGeometry_Swig.i
|
|
|
|
// Created : Tue Mar 26 15:04:48 2002
|
|
|
|
// Author : Nicolas REJNERI, Paul RASCLE
|
|
|
|
// Project : SALOME
|
|
|
|
// Module : GEOM
|
2009-02-13 17:16:39 +05:00
|
|
|
//
|
2003-05-19 13:19:45 +06:00
|
|
|
%module libGEOM_Swig
|
2003-05-12 21:24:23 +06:00
|
|
|
|
2012-10-08 17:16:36 +06:00
|
|
|
%{
|
|
|
|
#include "libGEOM_Swig.h"
|
|
|
|
%}
|
|
|
|
|
|
|
|
/*
|
|
|
|
managing C++ exception in the Python API
|
|
|
|
*/
|
|
|
|
%exception
|
|
|
|
{
|
|
|
|
class PyAllowThreadsGuard {
|
|
|
|
public:
|
|
|
|
// Py_BEGIN_ALLOW_THREADS
|
|
|
|
PyAllowThreadsGuard() { _save = PyEval_SaveThread(); }
|
|
|
|
// Py_END_ALLOW_THREADS
|
|
|
|
~PyAllowThreadsGuard() { PyEval_RestoreThread(_save); }
|
|
|
|
private:
|
|
|
|
PyThreadState *_save;
|
|
|
|
};
|
|
|
|
|
|
|
|
PyAllowThreadsGuard guard;
|
|
|
|
|
|
|
|
$action
|
|
|
|
}
|
|
|
|
|
|
|
|
class GEOM_Swig
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
GEOM_Swig();
|
|
|
|
~GEOM_Swig();
|
|
|
|
|
2013-02-12 17:35:16 +06:00
|
|
|
void createAndDisplayGO( const char* theEntry, bool theUpdateViewer = true );
|
|
|
|
void createAndDisplayFitAllGO( const char* theEntry );
|
|
|
|
void eraseGO( const char* theEntry, bool theUpdateViewer = true );
|
|
|
|
|
2012-10-08 17:16:36 +06:00
|
|
|
void UpdateViewer();
|
|
|
|
|
2013-02-12 17:35:16 +06:00
|
|
|
void setDisplayMode( const char* theEntry, int theMode, bool theUpdateViewer = true );
|
|
|
|
void setVectorsMode( const char* theEntry, bool theOn, bool theUpdateViewer = true );
|
|
|
|
void setColor( const char* theEntry, int theRed, int theGreen, int theBlue, bool theUpdateViewer = true );
|
|
|
|
void setTransparency( const char* theEntry, float theTransparency, bool theUpdateViewer = true );
|
|
|
|
void setIsos( const char* theEntry, int theNbU, int theNbV, bool theUpdateViewer = true );
|
|
|
|
void setDeflection( const char* theEntry, float theDeflection, bool theUpdateViewer = true );
|
|
|
|
void setMaterial( const char* theEntry, const char* theMaterial, bool theUpdateViewer = true );
|
|
|
|
void setMaterialProperty( const char* theEntry, const char* theMaterial, bool theUpdateViewer = true );
|
|
|
|
|
|
|
|
int getIndexTopology( const char* theSubIOR, const char* theMainIOR );
|
|
|
|
const char* getShapeTypeString( const char* theIOR );
|
|
|
|
const char* getShapeTypeIcon( const char* theIOR );
|
2012-10-08 17:16:36 +06:00
|
|
|
|
|
|
|
bool initGeomGen();
|
|
|
|
};
|
2003-05-12 21:24:23 +06:00
|
|
|
|