//---------------------------------------------------------------------------- // EgalTech 2014-2022 //---------------------------------------------------------------------------- // File : EXeConst.h Data : 11.01.22 Versione : 2.4a // Contenuto : Costanti generali per EgtExecuter. // // // // Modifiche : 24.11.14 DS Creazione modulo. // 05.05.15 DS Rinominato da EInConst.h. // //---------------------------------------------------------------------------- #pragma once //----------------- Costanti per tipo di file ---------------------------------- enum FileType { FT_NULL = 0, FT_NGE = 1, FT_NFE = 2, FT_DXF = 11, FT_STL = 12, FT_CNC = 13, FT_CSF = 14, FT_BTL = 15, FT_IMG = 16, FT_PNT = 17, FT_SVG = 18, FT_BTLX = 19, FT_3MF = 20, FT_OBJ = 21, FT_IGES = 31, FT_STEP = 32, FT_ACIS = 33, FT_PARASOLID = 34, FT_JT = 35, FT_VRML = 36, FT_C3D = 37, FT_TSC = 101, FT_LUA = 102} ; //----------------- Costanti tipo di punto selezionato ------------------------- enum EinSep { SEP_STD = 0, SEP_TG = 1, SEP_PERP = 2, SEP_MINDIST = 3} ; //----------------- Costanti tipo di riferimento di input ---------------------- enum RefType{ RTY_GLOB = 0, RTY_GRID = -3, // come GDB_ID_GRID RTY_LOC = -6} ; const int RTY_DEFAULT = RTY_LOC ; //----------------- Costanti tipo di interpolazione ---------------------------- enum InterpType{ ITT_ARCS = 0, // stima tg Akima, curve risultanti archi ITT_ARCS_CORNER = 1, // stima tg AkimaCorner, curve risultanti archi ITT_CUBICS = 2} ; // stima tg Bessel, curve risultanti Bezier cubiche //----------------- Costanti tipo di approssimazione di curve ------------------ enum ApprType{ APP_LINES = 0, // come ICurve::APL_STD APP_SPECIAL_LINES = 10, // come ICurve::APL_SPECIAL APP_LEFT_LINES = 1, // come ICurve::APL_LEFT APP_LEFT_CONVEX_LINES = 11, // come ICurve::APL_LEFT_CONVEX APP_RIGHT_LINES = 2, // come ICurve::APL_RIGHT APP_RIGHT_CONVEX_LINES = 12, // come ICurve::APL_RIGHT_CONVEX APP_ARCS = 3} ; //----------------- Costanti tipo punto intersezione Linea SurfTriMesh --------- enum SLiType { SLT_NONE = 0, SLT_IN = 1, SLT_OUT = 2, SLT_TG_INI = 3, SLT_TG_FIN = 4, SLT_TOUCH = 5} ; //----------------- Costanti tipo di costruzione di superficie rigata ---------- enum RuledType{ RUL_TYPE_ISOPAR = 0, // come ISurfTrimesh::RLT_ISOPAR RUL_TYPE_MINDIST = 1, // come ISurfTrimesh::RLT_MINDIST RUL_TYPE_ISOPAR_SMOOTH = 3} ; // come ISurfTrimesh::RLT_ISOPAR_SMOOTH enum CrvRegClass { CRC_NULL = 0, CRC_IN = 1, CRC_OUT = 2, CRC_ON = 3, CRC_INTERS = 4} ; //----------------- Costanti flag import CNC ----------------------------------- enum EicFlag { EIC_FLAG_NONE = 0, // come EImCncFlag::EICFLAG_NONE EIC_FLAG_CHAIN = 1, // come EImCncFlag::EICFLAG_CHAIN EIC_FLAG_SKIP_ZEROMACH = 2, // come EImCncFlag::EICFLAG_SKIP_ZEROMACH EIC_FLAG_SKIP_RAPID = 4} ; // come EImCncFlag::EICFLAG_SKIP_RAPID //----------------- Costanti flag import BTL ----------------------------------- enum EibFlag { EIB_FLAG_NONE = 0, // come EImBtlFlag::EIBFLAG_NONE EIB_FLAG_FLAT_POS = 1, // come EImBtlFlag::EIBFLAG_FLAT_POS EIB_FLAG_VERT_POS = 2, // come EImBtlFlag::EIBFLAG_VERT_POS EIB_FLAG_SPECIAL_TRIM = 4} ; // come EImBtlFlag::EIBFLAG_SPECIAL_TRIM //----------------- Costanti tipo costruzione pezzi piani ---------------------- enum FpcType{ FPC_NGE = 0, // costruzione da pezzo Nge FPC_REGION = 1, // costruzione da regione FPC_LAYER = 2, // costruzione da layer FPC_CLOSEDCURVE = 3} ; // costruzione da curva chiusa //----------------- Costanti tipo interferenza di lavorazioni piane ------------ enum FmiType{ FMI_NONE = 0, // nessuna interferenza FMI_LI = 1, // interferenza con attacco FMI_RM = 2, // interferenza con lavorazione ridotta FMI_LO = 4} ; // interferenza con uscita //----------------- Costanti risultato verifica tagli lama allungati ----------- enum CarRes{ CAR_INTERF = 0, // interferiscono entrambi gli allungamenti CAR_LI_OK = 1, // allungamento inizio va bene CAR_LO_OK = 2, // allungameno uscita va bene CAR_LI_LO_OK = 1 + 2} ; // entrambi gli allungamenti vanno bene //----------------- Costanti tipo Zoom ----------------------------------------- enum ZoomType { ZM_ALL = 1, // zoom tutto ZM_IN = 2, // ingrandisci ZM_OUT = 3} ; // rimpicciolisci //----------------- Costanti errore simulatore in cieco ------------------------ enum SimHideErr { SHE_NONE = 0, // nessun errore SHE_INIT = 1, // errore nell'avvio della simulazione SHE_OUTSTROKE = 2, // errore di extracorsa SHE_DIR_ERR = 3, // errore direzione utensile non raggiungibile SHE_COLLISION = 4, // errore collisione testa-pezzo SHE_SPECIAL = 5, // errore speciale/custom SHE_GENERAL = 6} ; // errore generico //----------------- Costanti per sostituzione direttorio e nome progetto -------------------- const std::string SUB_PROJECT_DIR = "%PRJDIR%" ; const std::string SUB_PROJECT_TITLE = "%PRJTITLE%" ; //----------------- Costanti per info in gruppi di lavoro ----------------------------------- const std::string GDL_NC_NAME = "NcName" ; // nome part program da generare