Files
Dario Sassi bb5feba6c4 EgtExecutor 1.6o4 :
- aggiunte in EXE e Lua SplitCurveAtParam e SplitCurveAtCorners
- aggiunte in EXE e Lua AddMachining e CreateMachining
- migliorata gestione contorni di NstFlatParts.
2016-04-06 06:37:21 +00:00

215 lines
6.0 KiB
C++

//----------------------------------------------------------------------------
// EgalTech 2014-2015
//----------------------------------------------------------------------------
// File : AuxTools.cpp Data : 07.01.15 Versione : 1.6a1
// Contenuto : Funzioni ausiliarie.
//
//
//
// Modifiche : 07.01.15 DS Creazione modulo.
//
//
//----------------------------------------------------------------------------
#include "stdafx.h"
#include "EXE.h"
#include "EXE_Macro.h"
#include "AuxTools.h"
#include "/EgtDev/Include/EGkExtText.h"
#include "/EgtDev/Include/EMkDispositionConst.h"
#include "/EgtDev/Include/EXeConst.h"
#include "/EgtDev/Include/EGnStringUtils.h"
using namespace std ;
//----------------------------------------------------------------------------
string
StringToLuaString( const string& sText)
{
string sLuaText = sText ;
ReplaceString( sLuaText, "\\", "\\\\") ;
ReplaceString( sLuaText, "'", "\\'") ;
return sLuaText ;
}
//----------------------------------------------------------------------------
const string
IdToString( int nId)
{
GseContext* pCtx = GetCurrGseContext() ;
VERIFY_CTX( pCtx, "GDB_ID.NULL")
switch ( nId) {
case GDB_ID_ROOT : return "GDB_ID.ROOT" ;
case GDB_ID_NULL : return "GDB_ID.NULL" ;
case GDB_ID_SEL : return "GDB_ID.SEL" ;
case GDB_ID_GRID : return "GDB_ID.GRID" ;
case GDB_ID_CURRPART : return "GDB_ID.CP" ;
case GDB_ID_CURRLAYER : return "GDB_ID.CL" ;
default :
if ( nId == pCtx->m_nCurrPart)
return "GDB_ID.CP" ;
else if ( nId == pCtx->m_nCurrLayer)
return "GDB_ID.CL" ;
else
return ToString( nId) ;
}
}
//----------------------------------------------------------------------------
const string
IdListToString( const INTVECTOR& vIds)
{
string sIds ;
sIds.reserve( 6 * vIds.size()) ;
for ( size_t i = 0 ; i < vIds.size() ; ++ i)
sIds += ( vIds[i] != GDB_ID_SEL ? ToString( vIds[i]) : "GDB_ID.SEL") + "," ;
if ( ! sIds.empty())
sIds.pop_back() ;
return sIds ;
}
//----------------------------------------------------------------------------
const string
SelListToString( const SELVECTOR& vIds)
{
string sIds ;
sIds.reserve( 12 * vIds.size()) ;
for ( size_t i = 0 ; i < vIds.size() ; ++ i)
sIds += "{" + ToString( vIds[i]) + "}," ;
if ( ! sIds.empty())
sIds.pop_back() ;
return sIds ;
}
//----------------------------------------------------------------------------
const char*
NgeTypeToString( int nNgeType)
{
switch ( nNgeType) {
case GDB_SV_TXT : return "GDB_NT.TXT" ;
case GDB_SV_BIN : return "GDB_NT.BIN" ;
default :
case GDB_SV_CMPTXT : return "GDB_NT.CMPTXT" ;
}
}
//----------------------------------------------------------------------------
const char*
SepToString( int nSep)
{
switch ( nSep) {
default :
case SEP_STD : return "GDB_PT.STD" ;
case SEP_TG : return "GDB_PT.TG" ;
case SEP_PERP : return "GDB_PT.PERP" ;
case SEP_MINDIST : return "GDB_PT.MIND" ;
}
}
//----------------------------------------------------------------------------
const char*
InsToString( int nIns)
{
switch ( nIns) {
case GDB_FIRST_SON : return "GDB_IN.FIRST_SON" ;
default :
case GDB_LAST_SON : return "GDB_IN.LAST_SON" ;
case GDB_BEFORE : return "GDB_IN.BEFORE" ;
case GDB_AFTER : return "GDB_IN.AFTER" ;
}
}
//----------------------------------------------------------------------------
const char*
RefTypeToString( int nRefType)
{
switch ( nRefType) {
case RTY_GLOB : return "GDB_RT.GLOB" ;
default :
case RTY_LOC : return "GDB_RT.LOC" ;
case RTY_GRID : return "GDB_RT.GRID" ;
}
}
//----------------------------------------------------------------------------
const char*
ETxtInsPosToString( int nETxtInsPos)
{
switch ( nETxtInsPos) {
case ETXT_IPTL : return "GDB_TI.TL" ;
case ETXT_IPTC : return "GDB_TI.TC" ;
case ETXT_IPTR : return "GDB_TI.TR" ;
case ETXT_IPML : return "GDB_TI.ML" ;
case ETXT_IPMC : return "GDB_TI.MC" ;
case ETXT_IPMR : return "GDB_TI.MR" ;
default :
case ETXT_IPBL : return "GDB_TI.BL" ;
case ETXT_IPBC : return "GDB_TI.BC" ;
case ETXT_IPBR : return "GDB_TI.BR" ;
}
}
//----------------------------------------------------------------------------
const char*
OffsTypeToString( int nOffsType)
{
switch ( nOffsType) {
default :
case ICurve::OFF_FILLET : return "GDB_OT.FILLET" ;
case ICurve::OFF_CHAMFER : return "GDB_OT.CHAMFER" ;
case ICurve::OFF_EXTEND : return "GDB_OT.EXTEND" ;
}
}
//----------------------------------------------------------------------------
const char*
InterpTypeToString( int nIntpType)
{
switch ( nIntpType) {
case ITT_ARCS : return "GDB_PI.ARCS" ;
default :
case ITT_ARCS_CORNER : return "GDB_PI.ARCS_CORNER" ;
case ITT_CUBICS : return "GDB_PI.CUBICS" ;
}
}
//----------------------------------------------------------------------------
const char*
ApproxTypeToString( int nApprType)
{
switch ( nApprType) {
case APP_LINES : return "GDB_CA.LINES" ;
case APP_LEFT_LINES : return "GDB_CA.LEFT_LINES" ;
case APP_RIGHT_LINES : return "GDB_CA.RIGHT_LINES" ;
default :
case APP_ARCS : return "GDB_CA.ARCS" ;
}
}
//----------------------------------------------------------------------------
const char*
RawPartCornerPosToString( int nFlag)
{
switch ( nFlag) {
case MCH_CR_TL : return "MCH_CR.TL" ;
case MCH_CR_TR : return "MCH_CR.TR" ;
default :
case MCH_CR_BL : return "MCH_CR.BL" ;
case MCH_CR_BR : return "MCH_CR.BR" ;
}
}
//----------------------------------------------------------------------------
const char*
RawPartCenterPosToString( int nFlag)
{
switch ( nFlag) {
case MCH_CE_TC : return "MCH_CE.TC" ;
default :
case MCH_CE_ML : return "MCH_CE.ML" ;
case MCH_CE_MR : return "MCH_CE.MR" ;
case MCH_CE_BC : return "MCH_CE.BC" ;
case MCH_CE_MC : return "MCH_CE.MC" ;
}
}