de34cfb7e8
- sistemate minuscole/maiuscole in #include.
224 lines
13 KiB
C++
224 lines
13 KiB
C++
//----------------------------------------------------------------------------
|
|
// EgalTech 2013-2019
|
|
//----------------------------------------------------------------------------
|
|
// File : GdbExecutor.h Data : 01.10.19 Versione : 2.1i3
|
|
// 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"
|
|
#include "Tool.h"
|
|
|
|
class PolyLine ;
|
|
class PolyArc ;
|
|
|
|
//----------------------------------------------------------------------------
|
|
class GdbExecutor : public IGdbExecutor
|
|
{
|
|
public : // ICmdExecutor
|
|
bool SetCmdParser( ICmdParser* pParser) override ;
|
|
bool AddStandardVariables( void) override ;
|
|
int Execute( const std::string& sCmd1, const std::string& sCmd2, const STRVECTOR& vsParams) override ;
|
|
|
|
public : // IGdbExecutor
|
|
~GdbExecutor( void) override ;
|
|
bool SetGeomDB( IGeomDB* pGdb) override ;
|
|
|
|
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 CurveArcToExplementary( 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 SurfTrimeshCheckConnection( const STRVECTOR& vsParams) ;
|
|
bool SurfTrimeshRemovePart( const STRVECTOR& vsParams) ;
|
|
bool SurfTrimeshClonePart( const STRVECTOR& vsParams) ;
|
|
bool SurfTrimeshGenCut( const STRVECTOR& vsParams) ;
|
|
bool SurfTrimeshAdd( const STRVECTOR& vsParams) ;
|
|
bool SurfTrimeshInters( const STRVECTOR& vsParams) ;
|
|
bool SurfTrimeshSubtract( const STRVECTOR& vsParams) ;
|
|
bool ExecuteVolZmap( const std::string& sCmd2, const STRVECTOR& vsParams) ;
|
|
//bool VolZmapCreate( const STRVECTOR& vsParams) ;
|
|
//bool VolZmapCreateFromFlatRegion( const STRVECTOR& vsParams) ;
|
|
//bool VolZmapCreateFromTriMesh( const STRVECTOR& vsParams) ;
|
|
//bool VolZmapMilling( const STRVECTOR& vsParams) ;
|
|
//bool VolZmapSetAdvTool( const STRVECTOR& vsParams) ;
|
|
//bool VolZmapSetGenTool( const STRVECTOR& vsParams) ;
|
|
//bool VolZmapDeepnessMeasure( const STRVECTOR& vsParams) ;
|
|
//bool VolZmapBBoxZmapIntersection( const STRVECTOR& vsParams) ;
|
|
//bool ExecuteVolZmapCut( const STRVECTOR& vsParams) ;
|
|
//bool ExecuteVolZmapCompact( const STRVECTOR& vsParams) ;
|
|
//bool ExecuteVolZmapEdges( const STRVECTOR& vsParams) ;
|
|
bool ExecuteIntersection( const std::string& sCmd2, const STRVECTOR& vsParams) ;
|
|
bool LineDiscInters( const STRVECTOR& vsParams) ;
|
|
bool RayDiscInters( const STRVECTOR& vsParams) ;
|
|
bool SegmentDiscInters( const STRVECTOR& vsParams) ;
|
|
bool LineSphereInters( const STRVECTOR& vsParams) ;
|
|
bool RaySphereInters( const STRVECTOR& vsParams) ;
|
|
bool SegmentSphereInters( const STRVECTOR& vsParams) ;
|
|
bool LineSemiSphereInters( const STRVECTOR& vsParams) ;
|
|
bool RaySemiSphereInters( const STRVECTOR& vsParams) ;
|
|
bool SegmentSemiSphereInters( const STRVECTOR& vsParams) ;
|
|
bool LinCompSemiSphereInters( const STRVECTOR& vsParams) ;
|
|
bool LineInfiniteCylinderInters( const STRVECTOR& vsParams) ;
|
|
bool RayInfiniteCylinderInters( const STRVECTOR& vsParams) ;
|
|
bool SegmentInfiniteCylinderInters( const STRVECTOR& vsParams) ;
|
|
bool LineCylinderInters( const STRVECTOR& vsParams) ;
|
|
bool RayCylinderInters( const STRVECTOR& vsParams) ;
|
|
bool SegmentCylinderInters( const STRVECTOR& vsParams) ;
|
|
bool SegmentConeInters( const STRVECTOR& vsParams) ;
|
|
bool LineTruncateConeInters( const STRVECTOR& vsParams) ;
|
|
bool RayTruncateConeInters( const STRVECTOR& vsParams) ;
|
|
bool SegmentTruncateConeInters( const STRVECTOR& vsParams) ;
|
|
bool LineTorusInters( const STRVECTOR& vsParams) ;
|
|
bool RayTorusInters( const STRVECTOR& vsParams) ;
|
|
bool SegmentTorusInters( const STRVECTOR& vsParams) ;
|
|
bool LinCompTorusPartInters( const STRVECTOR& vsParams) ;
|
|
bool ExecuteToolAvoidTriangle( const std::string& sCmd2, const STRVECTOR& vsParams) ;
|
|
bool ExecuteDistPointTrimesh( const std::string& sCmd2, 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 ;
|
|
} ;
|