Files
EgtGeomKernel/GdbExecutor.h
T
Dario Sassi 07405f7de6 EgtGeomKernel 1.6b3 :
- aggiunta gestione buchi alle triangolazione di poligoni
- creazione suerfici trimesh da regioni con buchi.
2015-02-11 11:38:50 +00:00

177 lines
10 KiB
C++

//----------------------------------------------------------------------------
// EgalTech 2013-2013
//----------------------------------------------------------------------------
// File : GdbExecutor.h Data : 25.11.13 Versione : 1.3a1
// Contenuto : Dichiarazione della classe GdbExecutor.
//
//
//
// Modifiche : 27.03.13 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
#pragma once
#include "OutTsc.h"
#include "/EgtDev/Include/EgkGdbExecutor.h"
#include "/EgtDev/Include/EgtPerfCounter.h"
#include "/EgtDev/Include/EgtExecMgr.h"
#include "/EgtDev/Include/EgkGeoCollection.h"
class PolyLine ;
class PolyArc ;
//----------------------------------------------------------------------------
class GdbExecutor : public IGdbExecutor
{
public : // ICmdExecutor
virtual bool SetCmdParser( ICmdParser* pParser) ;
virtual bool AddStandardVariables( void) ;
virtual int Execute( const std::string& sCmd1, const std::string& sCmd2, const STRVECTOR& vsParams) ;
public : // IGdbExecutor
~GdbExecutor( void) ;
virtual bool SetGeomDB( IGeomDB* pGdb) ;
public :
GdbExecutor( void) ;
private :
bool AddGeoObj( const std::string& sId, const std::string& sIdParent, IGeoObj* pGeoObj) ;
int GetIdParam( const std::string& sParam, bool bNewAllowed = false) ;
bool GetNamesParam( const std::string& sParam, INTVECTOR& vnNames) ;
bool GetVectorParam( const std::string& sParam, const Frame3d& frVect, Vector3d& vtV) ;
bool GetPointParam( const std::string& sParam, const Frame3d& frPnt, Point3d& ptP) ;
bool GetPointsParam( const std::string& sParam, const Frame3d& frPnt, PolyLine& PL) ;
bool GetPointWParam( const std::string& sParam, const Frame3d& frPnt, Point3d& ptP, double& dW) ;
bool GetPointWsParam( const std::string& sParam, const Frame3d& frPnt, PolyArc& PA) ;
bool GetLengthParam( const std::string& sParam, double& dLen) ;
bool GetDirParam( const std::string& sParam, const Frame3d& frDir, double& dDir) ;
bool GetFrameParam( const std::string& sParam, const Frame3d& frRef, Frame3d& frF) ;
bool GetColorParam( const std::string& sParam, bool& bByParent, Color& cCol) ;
bool GetMaterialParam( const std::string& sParam, bool& bByParent, int& nMat) ;
bool GetStringParam( const std::string& sParam, std::string& sString) ;
bool ExecuteGroup( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecutePoint( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteVector( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool VectorMake( const STRVECTOR& vsParams) ;
bool VectorBaseVector( const STRVECTOR& vsParams) ;
bool VectorFromSpherical( const STRVECTOR& vsParams) ;
bool VectorDifference( const STRVECTOR& vsParams) ;
bool VectorCrossProduct( const STRVECTOR& vsParams) ;
bool VectorModifyBase( const STRVECTOR& vsParams) ;
bool ExecuteFrame( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteCurveLine( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool CurveLineMake( const STRVECTOR& vsParams) ;
bool CurveLineVersorLength( const STRVECTOR& vsParams) ;
bool CurveLineDirLength( const STRVECTOR& vsParams) ;
bool CurveLinePointTgCurve( const STRVECTOR& vsParams) ;
bool CurveLineTgTwoArcs( const STRVECTOR& vsParams) ;
bool CurveLineMinPointCurve( const STRVECTOR& vsParams) ;
bool ExecuteCurveCircle( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteCurveArc( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool CurveCircleMake( const STRVECTOR& vsParams) ;
bool CurveCirclePlaneXY( const STRVECTOR& vsParams) ;
bool CurveArcMake( const STRVECTOR& vsParams) ;
bool CurveArcPlaneXY( const STRVECTOR& vsParams) ;
bool CurveArcCircle3P( const STRVECTOR& vsParams, bool bCirc) ;
bool CurveArc2PDi( const STRVECTOR& vsParams) ;
bool CurveArc2PRS( const STRVECTOR& vsParams) ;
bool CurveArcC2P( const STRVECTOR& vsParams) ;
bool CurveCircleCenterTgArc( const STRVECTOR& vsParams) ;
bool CurveArcCenterTgArcP( const STRVECTOR& vsParams) ;
bool CurveArcPDiTgArc( const STRVECTOR& vsParams) ;
bool CurveArcInvertNormal( const STRVECTOR& vsParams) ;
bool CurveArcChangeRadius( const STRVECTOR& vsParams) ;
bool CurveArcChangeDeltaN( const STRVECTOR& vsParams) ;
bool CurveArcToAdditional( const STRVECTOR& vsParams) ;
bool CurveArcFlip( const STRVECTOR& vsParams) ;
bool ExecuteCurveBez( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteCurveCompo( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool CurveCompoMake( const STRVECTOR& vsParams) ;
bool CurveCompoFromPoints( const STRVECTOR& vsParams) ;
bool CurveCompoFromPointBulges( const STRVECTOR& vsParams) ;
bool CurveCompoFromPointInterpolation( const STRVECTOR& vsParams) ;
bool CurveCompoFromCurveApproximation( const STRVECTOR& vsParams) ;
bool CurveCompoFromSplit( const STRVECTOR& vsParams) ;
bool CurveCompoFromPolygon( const STRVECTOR& vsParams, int nType) ;
bool CurveCompoFromBiarc( const STRVECTOR& vsParams) ;
bool CurveCompoAddCurve( const STRVECTOR& vsParams, bool bEndOrStart) ;
bool CurveCompoExtractCurve( const STRVECTOR& vsParams, bool bEndOrStart) ;
bool CurveCompoChangeStart( const STRVECTOR& vsParams) ;
bool ExecuteSurfTriMesh( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool SurfTriMeshBegin( const STRVECTOR& vsParams) ;
bool SurfTriMeshAddVertex( const STRVECTOR& vsParams) ;
bool SurfTriMeshAddTriangle( const STRVECTOR& vsParams) ;
bool SurfTriMeshEnd( const STRVECTOR& vsParams) ;
bool SurfTriMeshByTriangleSoup( const STRVECTOR& vsParams) ;
bool SurfTriMeshByFlatContour( const STRVECTOR& vsParams) ;
bool SurfTriMeshByExtrusion( const STRVECTOR& vsParams) ;
bool SurfTriMeshByTwoPaths( const STRVECTOR& vsParams) ;
bool SurfTriMeshByScrewing( bool bMove, const STRVECTOR& vsParams) ;
bool SurfTriMeshChangeSmoothAng( const STRVECTOR& vsParams) ;
bool SurfTriMeshDoCompacting( const STRVECTOR& vsParams) ;
bool SurfTriMeshDoSewing( const STRVECTOR& vsParams) ;
bool ExecuteText( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool TextSimple( const STRVECTOR& vsParams) ;
bool TextComplete( const STRVECTOR& vsParams) ;
bool TextModifyText( const STRVECTOR& vsParams) ;
bool TextChangeFont( const STRVECTOR& vsParams) ;
bool TextFlip( const STRVECTOR& vsParams) ;
bool TextMir( const STRVECTOR& vsParams) ;
bool TextOutline( const STRVECTOR& vsParams) ;
bool TextSplitOnLineBreak( const STRVECTOR& vsParams) ;
bool ExecuteLevel( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteMode( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteStatus( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteSelect( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteDeselect( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteMaterial( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool MaterialColor( const STRVECTOR& vsParams) ;
bool MaterialMaterial( const STRVECTOR& vsParams) ;
bool MaterialDefault( const STRVECTOR& vsParams) ;
bool ExecuteName( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteInfo( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteMatLibrary( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteCopy( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteRelocate( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteErase( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteTranslate( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteRotate( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteScale( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteMirror( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteShear( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteCurveModify( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool CurveModifyInvert( const STRVECTOR& vsParams) ;
bool CurveModifyStartPoint( const STRVECTOR& vsParams) ;
bool CurveModifyEndPoint( const STRVECTOR& vsParams) ;
bool CurveModifyExtrusion( const STRVECTOR& vsParams) ;
bool CurveModifyThickness( const STRVECTOR& vsParams) ;
bool CurveModifyTrim( const STRVECTOR& vsParams, int nTrimType) ;
bool ExecuteCurveCopy( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool CurveCopyByParamRange( const STRVECTOR& vsParams) ;
bool CurveCopyBySplitClass( const STRVECTOR& vsParams) ;
bool CurveCopyByChain( const STRVECTOR& vsParams) ;
bool ExecuteSurfModify( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool SurfModifyInvert( const STRVECTOR& vsParams) ;
bool ExecuteNew( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteLoad( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteSave( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteOutTextIcci( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool ExecuteOutTsc( const std::string& sCmd2, const STRVECTOR& vsParams) ;
bool OutGroupTsc( int nId, int nFlag, int nLev = 0) ;
private :
enum SeLp { SL, EL, SP, EP, SEP} ;
private :
IGeomDB* m_pGDB ;
ICmdParser* m_pParser ;
ExecManager<GdbExecutor> m_ExecMgr ;
OutTsc m_OutTsc ;
std::string m_sId ;
std::string m_sParentId ;
IGeoObj* m_pGeoObj ;
} ;