Trimming 3.1h2 :
- spostate le costanti in EgtConst nella tabella MCH_TRIMMING.
This commit is contained in:
+13
-13
@@ -17,9 +17,9 @@ if not GlobVar.IsTrimmingLayer( nCurrLayerId) then
|
||||
EgtOutBox( ERROR_BEZIER_CREATION .. 'Not a valid Trimming Layer', 'Error', 'ERROR', 'OK')
|
||||
return
|
||||
end
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, KEY_SURF_ANG_TOL, 'd')
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_ANG_TOL, 'd')
|
||||
local bOk = ( dLinTol ~= nil and dAngTol ~= nil and dAngFaceTol ~= nil)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_BEZIER_CREATION .. 'No Trimming Machining created', 'Error', 'ERROR', 'OK')
|
||||
@@ -31,14 +31,14 @@ local vIdToErase = {}
|
||||
local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
local sName = EgtGetName( nId)
|
||||
if sName == RULED_BZ_NAME then table.insert( vIdToErase, nId) end
|
||||
if sName == MCH_TRIMMING.RULED_BZ_NAME then table.insert( vIdToErase, nId) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
EgtErase( vIdToErase)
|
||||
|
||||
-- Recupero la Tolleranza Lineare ed Angolare con cui sono stati approssimati gli Edges
|
||||
local dEdgeLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL_EDGES, 'd')
|
||||
local dEdgeAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL_EDGES, 'd')
|
||||
local dEdgeLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL_EDGES, 'd')
|
||||
local dEdgeAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL_EDGES, 'd')
|
||||
if dEdgeLinTol == nil or dEdgeAngTol == nil then
|
||||
EgtOutBox( ERROR_BEZIER_CREATION .. 'Edge Approx tollerance not found', 'Error', 'ERROR', 'OK')
|
||||
return
|
||||
@@ -57,8 +57,8 @@ if nLayerStoredSyncId and nLayerStoredSyncId ~= GDB_ID.NULL then
|
||||
while nId do
|
||||
local sName = EgtGetName( nId)
|
||||
local nType = EgtGetType( nId)
|
||||
if sName ~= EDGES_NAME and ( nType == GDB_TY.CRV_COMPO or nType == GDB_TY.CRV_BEZ or nType == GDB_TY.CRV_LINE or nType == GDB_TY.CRV_ARC) then
|
||||
EgtSetName( nId, SYNC_LINE_NAME)
|
||||
if sName ~= MCH_TRIMMING.EDGES_NAME and ( nType == GDB_TY.CRV_COMPO or nType == GDB_TY.CRV_BEZ or nType == GDB_TY.CRV_LINE or nType == GDB_TY.CRV_ARC) then
|
||||
EgtSetName( nId, MCH_TRIMMING.SYNC_LINE_NAME)
|
||||
table.insert( vIdSyncLines, nId)
|
||||
end
|
||||
nId = EgtGetNext( nId)
|
||||
@@ -75,7 +75,7 @@ end
|
||||
-- Recupero le Curve di Bordo dal Layer di Trimming corrente
|
||||
nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
if EgtGetName( nId) == EDGES_NAME then table.insert( vIdEdges, nId) end
|
||||
if EgtGetName( nId) == MCH_TRIMMING.EDGES_NAME then table.insert( vIdEdges, nId) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
|
||||
@@ -94,8 +94,8 @@ for i = 1, #vIdEdges, 2 do
|
||||
-- Calcolo la Superficie di Bezier Ruled
|
||||
-- [ Per ora non passo superfici di riferimento per eventuale Invert()]
|
||||
-- scrivo l'info che mi identifica la curva aparametro V0 e la curva a parametro V1
|
||||
EgtSetInfo( nEdge1Id, KEY_BORDER_ORDER, KEY_FIRST_BORDER)
|
||||
EgtSetInfo( nEdge2Id, KEY_BORDER_ORDER, KEY_SECOND_BORDER)
|
||||
EgtSetInfo( nEdge1Id, MCH_TRIMMING.KEY_BORDER_ORDER, MCH_TRIMMING.KEY_FIRST_BORDER)
|
||||
EgtSetInfo( nEdge2Id, MCH_TRIMMING.KEY_BORDER_ORDER, MCH_TRIMMING.KEY_SECOND_BORDER)
|
||||
local nSurfBzId = EgtTrimmingGetRuledBezier( nCurrLayerId, {}, nEdge1Id, nEdge2Id, dLinTol, vIdSyncLines)
|
||||
if nSurfBzId == GDB_ID.NULL then
|
||||
EgtOutBox( ERROR_BEZIER_CREATION .. 'Creating Bezier Surf failed', 'Error', 'ERROR', 'OK')
|
||||
@@ -104,7 +104,7 @@ for i = 1, #vIdEdges, 2 do
|
||||
end
|
||||
|
||||
-- Assegno Colore e Name
|
||||
bOk = EgtSetColor( nSurfBzId, RULED_BZ_COLOR) and EgtSetName( nSurfBzId, RULED_BZ_NAME)
|
||||
bOk = EgtSetColor( nSurfBzId, RULED_BZ_COLOR) and EgtSetName( nSurfBzId, MCH_TRIMMING.RULED_BZ_NAME)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_BEZIER_CREATION .. 'Assign Surf Bezier Properties failed', 'Error', 'ERROR', 'OK')
|
||||
return
|
||||
@@ -114,7 +114,7 @@ end
|
||||
-- Nascondo le superfici di Selezione e metto il Focus sul Layer di Selezione
|
||||
nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
if EgtGetName( nId) == SELECTION_SURF_NAME then EgtSetStatus( nId, GDB_ST.OFF) end
|
||||
if EgtGetName( nId) == MCH_TRIMMING.SELECTION_SURF_NAME then EgtSetStatus( nId, GDB_ST.OFF) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
EgtSetCurrPartLayer( nCurrPartId, nCurrLayerId)
|
||||
|
||||
+24
-24
@@ -19,17 +19,17 @@ if not GlobVar.IsTrimmingLayer( nCurrLayerId) then
|
||||
end
|
||||
|
||||
-- Recupero le Tolleranze Impostate
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, KEY_SURF_ANG_TOL, 'd')
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_ANG_TOL, 'd')
|
||||
local bOk = ( dLinTol ~= nil and dAngTol ~= nil and dAngFaceTol ~= nil)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_EDGE_CREATION .. 'No Trimming Machining created', 'Error', 'ERROR', 'OK')
|
||||
return
|
||||
end
|
||||
local dEdgeLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL_EDGES, 'd')
|
||||
local dEdgeAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL_EDGES, 'd')
|
||||
local dEdgeThick = EgtGetInfo( nCurrLayerId, KEY_THICK_EDGES, 'd')
|
||||
local dEdgeLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL_EDGES, 'd')
|
||||
local dEdgeAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL_EDGES, 'd')
|
||||
local dEdgeThick = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_THICK_EDGES, 'd')
|
||||
|
||||
-- Determino il Tipo di Estrazione degli Edges
|
||||
local dLinTolForEdges = dLinTol
|
||||
@@ -46,9 +46,9 @@ if not vsVal or #vsVal ~= 4 then return end
|
||||
dEdgeLinTol = tonumber( vsVal[2])
|
||||
dEdgeAngTol = tonumber( vsVal[3])
|
||||
dEdgeThick = tonumber( vsVal[4])
|
||||
EgtSetInfo( nCurrLayerId, KEY_LIN_TOL_EDGES, dEdgeLinTol)
|
||||
EgtSetInfo( nCurrLayerId, KEY_ANG_TOL_EDGES, dEdgeAngTol)
|
||||
EgtSetInfo( nCurrLayerId, KEY_THICK_EDGES, dEdgeThick)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL_EDGES, dEdgeLinTol)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL_EDGES, dEdgeAngTol)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_THICK_EDGES, dEdgeThick)
|
||||
|
||||
-- Rendo invisibili gli altri Layer di Trimmatura e tutti i Layer Temporanei
|
||||
-- NB. Il focus va sul Layer corrente
|
||||
@@ -66,7 +66,7 @@ local vIdToErase = {}
|
||||
local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
local sName = EgtGetName( nId)
|
||||
if sName ~= SELECTION_SURF_NAME then table.insert( vIdToErase, nId)
|
||||
if sName ~= MCH_TRIMMING.SELECTION_SURF_NAME then table.insert( vIdToErase, nId)
|
||||
else EgtSetStatus( nId, GDB_ST.ON) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
@@ -74,7 +74,7 @@ EgtErase( vIdToErase)
|
||||
|
||||
-- Scorro le superfici di Selezione presenti e recupero il vettore di Selezione {nSurf, nFace}
|
||||
local vSel = {}
|
||||
local nSelSurfId = EgtGetFirstNameInGroup( nCurrLayerId, SELECTION_SURF_NAME)
|
||||
local nSelSurfId = EgtGetFirstNameInGroup( nCurrLayerId, MCH_TRIMMING.SELECTION_SURF_NAME)
|
||||
while nSelSurfId do
|
||||
-- Verifico che sia una Superficie TriMesh o Bezier
|
||||
local nType = EgtGetType( nSelSurfId)
|
||||
@@ -83,7 +83,7 @@ while nSelSurfId do
|
||||
return
|
||||
end
|
||||
table.insert( vSel, { nSelSurfId, -1})
|
||||
nSelSurfId = EgtGetNextName( nSelSurfId, SELECTION_SURF_NAME)
|
||||
nSelSurfId = EgtGetNextName( nSelSurfId, MCH_TRIMMING.SELECTION_SURF_NAME)
|
||||
end
|
||||
-- Se non ho superfici di Selezione errore
|
||||
if #vSel == 0 then
|
||||
@@ -103,7 +103,7 @@ if vsVal[1] == 'Extract Edges' then
|
||||
-- Assegno Colore e Name
|
||||
for i = 0, nCount - 1 do
|
||||
bOk = EgtSetColor( nFirstId + i, EDGES_COLOR) and
|
||||
EgtSetName( nFirstId + i, EDGES_NAME)
|
||||
EgtSetName( nFirstId + i, MCH_TRIMMING.EDGES_NAME)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_EDGE_CREATION .. 'Assign Raw Edges Properties failed', 'Error', 'ERROR', 'OK')
|
||||
return
|
||||
@@ -122,7 +122,7 @@ end
|
||||
-- Assegno Colore e Name
|
||||
for i = 0, nCount - 1 do
|
||||
bOk = EgtSetColor( nFirstId + i, EDGES_COLOR) and
|
||||
EgtSetName( nFirstId + i, EDGES_NAME)
|
||||
EgtSetName( nFirstId + i, MCH_TRIMMING.EDGES_NAME)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_EDGE_CREATION .. 'Assign Raw Edges Properties failed', 'Error', 'ERROR', 'OK')
|
||||
return
|
||||
@@ -130,9 +130,9 @@ for i = 0, nCount - 1 do
|
||||
end
|
||||
|
||||
-- Salvo le Tolleranze nel Layer di Trimming
|
||||
EgtSetInfo( nCurrLayerId, KEY_LIN_TOL_EDGES, dEdgeLinTol)
|
||||
EgtSetInfo( nCurrLayerId, KEY_ANG_TOL_EDGES, dEdgeAngTol)
|
||||
EgtSetInfo( nCurrLayerId, KEY_THICK_EDGES, dEdgeThick)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL_EDGES, dEdgeLinTol)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL_EDGES, dEdgeAngTol)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_THICK_EDGES, dEdgeThick)
|
||||
|
||||
-- Se più di due curve, definisco dei nuovi Layer di Trimming
|
||||
if nCount > 2 then
|
||||
@@ -144,12 +144,12 @@ if nCount > 2 then
|
||||
return
|
||||
end
|
||||
-- Copio proprietà
|
||||
bOk = EgtSetInfo( nNewTrimmingLayer, KEY_LIN_TOL, dLinTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, KEY_ANG_TOL, dAngTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, KEY_SURF_ANG_TOL, dAngFaceTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, KEY_LIN_TOL_EDGES, dEdgeLinTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, KEY_ANG_TOL_EDGES, dEdgeAngTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, KEY_THICK_EDGES, dEdgeThick)
|
||||
bOk = EgtSetInfo( nNewTrimmingLayer, MCH_TRIMMING.KEY_LIN_TOL, dLinTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, MCH_TRIMMING.KEY_ANG_TOL, dAngTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, MCH_TRIMMING.KEY_SURF_ANG_TOL, dAngFaceTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, MCH_TRIMMING.KEY_LIN_TOL_EDGES, dEdgeLinTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, MCH_TRIMMING.KEY_ANG_TOL_EDGES, dEdgeAngTol) and
|
||||
EgtSetInfo( nNewTrimmingLayer, MCH_TRIMMING.KEY_THICK_EDGES, dEdgeThick)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_EDGE_CREATION .. 'Saving Tolerances failed', 'Error', 'ERROR', 'OK')
|
||||
EgtErase( nNewTrimmingLayer)
|
||||
@@ -159,7 +159,7 @@ if nCount > 2 then
|
||||
local nOldId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nOldId do
|
||||
local sName = EgtGetName( nOldId)
|
||||
if sName ~= EDGES_NAME then
|
||||
if sName ~= MCH_TRIMMING.EDGES_NAME then
|
||||
local nNewId = EgtCopyGlob( nOldId, nNewTrimmingLayer)
|
||||
end
|
||||
nOldId = EgtGetNext( nOldId)
|
||||
|
||||
+11
-11
@@ -19,7 +19,7 @@ if not GlobVar.IsTrimmingLayer( nCurrLayerId) then
|
||||
end
|
||||
|
||||
-- Recupero le Info
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL, 'd')
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, 'd')
|
||||
|
||||
-- verifico che esista il layer temporaneo con la nuova superficie e i nuovi bordi
|
||||
local nEditSurfLayer = GlobVar.GetCurrentEditSurfLayer( nCurrPartId, nCurrLayerId)
|
||||
@@ -33,7 +33,7 @@ end
|
||||
local nNewSurf = GDB_ID.NULL
|
||||
local nId = EgtGetFirstInGroup(nEditSurfLayer)
|
||||
while nId do
|
||||
if EgtGetName(nId) == EDIT_SURF_NEWSURF_NAME then nNewSurf = nId end
|
||||
if EgtGetName(nId) == MCH_TRIMMING.EDIT_SURF_NEWSURF_NAME then nNewSurf = nId end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
|
||||
@@ -46,7 +46,7 @@ end
|
||||
local vNewBorder = {}
|
||||
nId = EgtGetFirstInGroup(nEditSurfLayer)
|
||||
while nId do
|
||||
if EgtGetName(nId) == EDIT_SURF_NEWBORDER_NAME then
|
||||
if EgtGetName(nId) == MCH_TRIMMING.EDIT_SURF_NEWBORDER_NAME then
|
||||
table.insert(vNewBorder, nId)
|
||||
end
|
||||
nId = EgtGetNext( nId)
|
||||
@@ -64,7 +64,7 @@ local vIdEdges = {}
|
||||
nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
-- verifico che sia una Curva e che sia di Bordo
|
||||
if EgtGetName( nId) == EDGES_NAME then
|
||||
if EgtGetName( nId) == MCH_TRIMMING.EDGES_NAME then
|
||||
table.insert( vIdEdges, nId)
|
||||
end
|
||||
nId = EgtGetNext( nId)
|
||||
@@ -99,19 +99,19 @@ if nLayerEditSyncId == nil or nLayerEditSyncId == GDB_ID.NULL then
|
||||
end
|
||||
|
||||
-- recupero le linee di Sync selezionate e le riporto al colore standard
|
||||
local vSyncSel = EgtGetInfo(nCurrLayerId, KEY_SYNC_LINES_REGOLARIZATION, "vs")
|
||||
local vSyncSel = EgtGetInfo(nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_REGOLARIZATION, "vs")
|
||||
|
||||
-- verifico che siano selezionate due curve nel layer delle Sync Lines
|
||||
if #vSyncSel == 2 then
|
||||
for i,nId in pairs( vSyncSel) do
|
||||
if EgtGetName(nId) == SYNC_LINE_NAME then
|
||||
if EgtGetName(nId) == MCH_TRIMMING.SYNC_LINE_NAME then
|
||||
EgtSetColor(nId, SYNC_LINE_COLOR)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- cancello l'info nel layer di trimming
|
||||
EgtRemoveInfo(nCurrLayerId, KEY_SYNC_LINES_REGOLARIZATION)
|
||||
EgtRemoveInfo(nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_REGOLARIZATION)
|
||||
|
||||
-- sposto i nuovi bordi e superficie e cambio colori e nomi
|
||||
EgtRelocate(nNewSurf, nCurrLayerId)
|
||||
@@ -122,9 +122,9 @@ EgtSetColor( nNewSurf, RULED_BZ_COLOR)
|
||||
EgtSetColor(vNewBorder[1],EDGES_COLOR)
|
||||
EgtSetColor(vNewBorder[2],EDGES_COLOR)
|
||||
|
||||
EgtSetName(nNewSurf, RULED_BZ_NAME)
|
||||
EgtSetName(vNewBorder[1],EDGES_NAME)
|
||||
EgtSetName(vNewBorder[2],EDGES_NAME)
|
||||
EgtSetName(nNewSurf, MCH_TRIMMING.RULED_BZ_NAME)
|
||||
EgtSetName(vNewBorder[1],MCH_TRIMMING.EDGES_NAME)
|
||||
EgtSetName(vNewBorder[2],MCH_TRIMMING.EDGES_NAME)
|
||||
|
||||
-- scorro le curve di edit e guardo a che parametro corrispondono
|
||||
-- richiedo a quel parametro l'isocurva sulla superficie nuova
|
||||
@@ -142,7 +142,7 @@ if nLayerEditSyncId ~= nil and nLayerEditSyncId ~= GDB_ID.NULL then
|
||||
ptStart = EgtSurfBezierGetPoint(nNewSurf, dU, 0.)
|
||||
local ptEnd = EgtSurfBezierGetPoint(nNewSurf, dU, 1.)
|
||||
local nNewIso = EgtLine( nEditSurfLayer, ptStart, ptEnd)
|
||||
EgtSetName(nNewIso, SYNC_LINE_NAME)
|
||||
EgtSetName(nNewIso, MCH_TRIMMING.SYNC_LINE_NAME)
|
||||
nId = EgtGetNext(nId)
|
||||
end
|
||||
EgtEmptyGroup( nLayerEditSyncId)
|
||||
|
||||
@@ -40,7 +40,7 @@ local vIdEdges = {}
|
||||
nId = EgtGetFirstInGroup( nTrimmingLayerId)
|
||||
while nId do
|
||||
-- verifico che sia una Curva e che sia di Bordo
|
||||
if EgtGetName( nId) == EDGES_NAME then
|
||||
if EgtGetName( nId) == MCH_TRIMMING.EDGES_NAME then
|
||||
-- Verifico che sia una Curva
|
||||
local nType = EgtGetType( nId)
|
||||
if nType ~= GDB_TY.CRV_LINE and nType ~= GDB_TY.CRV_ARC and nType ~= GDB_TY.CRV_BEZ and nType ~= GDB_TY.CRV_COMPO then
|
||||
|
||||
@@ -38,9 +38,9 @@ if not nLayerEditId or nLayerEditId == GDB_ID.NULL then
|
||||
end
|
||||
|
||||
-- Recupero le Info
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, KEY_SURF_ANG_TOL, 'd')
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_ANG_TOL, 'd')
|
||||
local bOk = ( dLinTol ~= nil and dAngTol ~= nil and dAngFaceTol ~= nil)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_EDIT_CURVE .. 'No Trimming Machining created', 'Error', 'ERROR', 'OK')
|
||||
@@ -58,7 +58,7 @@ while nId do
|
||||
local nObjId = EgtGetFirstInGroup( nId)
|
||||
while nObjId do
|
||||
local sName = EgtGetName( nObjId)
|
||||
if sName ~= SELECTION_SURF_NAME then EgtSetStatus( nObjId, GDB_ST.OFF) end
|
||||
if sName ~= MCH_TRIMMING.SELECTION_SURF_NAME then EgtSetStatus( nObjId, GDB_ST.OFF) end
|
||||
nObjId = EgtGetNext( nObjId)
|
||||
end
|
||||
end
|
||||
@@ -71,9 +71,9 @@ local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
local vnBzCrvId = {}
|
||||
while nId do
|
||||
local sName = EgtGetName( nId)
|
||||
if sName == EDGES_NAME then table.insert( vnBzCrvId, EgtCopyGlob( nId, nLayerEditId))
|
||||
if sName == MCH_TRIMMING.EDGES_NAME then table.insert( vnBzCrvId, EgtCopyGlob( nId, nLayerEditId))
|
||||
-- Rendo Visibili eventuali Superfici di Selezione
|
||||
elseif sName == SELECTION_SURF_NAME then EgtSetStatus( nId, GDB_ST.ON) end
|
||||
elseif sName == MCH_TRIMMING.SELECTION_SURF_NAME then EgtSetStatus( nId, GDB_ST.ON) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
-- Se non ho trovato curve, errore
|
||||
@@ -126,7 +126,7 @@ while nId do
|
||||
if nId < nFirstId then
|
||||
table.insert( vIdToErase, nId)
|
||||
else
|
||||
bOk = EgtSetColor( nId, EDGES_COLOR) and EgtSetName( nId, EDGES_NAME)
|
||||
bOk = EgtSetColor( nId, EDGES_COLOR) and EgtSetName( nId, MCH_TRIMMING.EDGES_NAME)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_EDIT_CURVE .. 'Assign Raw Edges Properties failed', 'Error', 'ERROR', 'OK')
|
||||
EgtSetStatus( nCurrLayerId, GDB_ST.ON)
|
||||
|
||||
+20
-20
@@ -18,9 +18,9 @@ if not GlobVar.IsTrimmingLayer( nCurrLayerId) then
|
||||
return
|
||||
end
|
||||
-- Recupero le Info
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, KEY_SURF_ANG_TOL, 'd')
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_ANG_TOL, 'd')
|
||||
local bOk = ( dLinTol ~= nil and dAngTol ~= nil and dAngFaceTol ~= nil)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_ORIENTING_CURVES .. 'No Trimming Machining created', 'Error', 'ERROR', 'OK')
|
||||
@@ -39,7 +39,7 @@ local vIdEdges = {}
|
||||
nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
-- verifico che sia una Curva e che sia di Bordo
|
||||
if EgtGetName( nId) == EDGES_NAME then
|
||||
if EgtGetName( nId) == MCH_TRIMMING.EDGES_NAME then
|
||||
-- Verifico che sia una Curva
|
||||
local nType = EgtGetType( nId)
|
||||
if nType ~= GDB_TY.CRV_LINE and nType ~= GDB_TY.CRV_ARC and nType ~= GDB_TY.CRV_BEZ and nType ~= GDB_TY.CRV_COMPO then
|
||||
@@ -71,7 +71,7 @@ if bOk then
|
||||
bOk = false
|
||||
else
|
||||
local sName = EgtGetName( nId)
|
||||
if sName == EDGES_NAME then nBorderMainId = nId
|
||||
if sName == MCH_TRIMMING.EDGES_NAME then nBorderMainId = nId
|
||||
elseif nFirstSyncLineId == GDB_ID.NULL then nFirstSyncLineId = nId
|
||||
else nSecondSyncLineId = nId end
|
||||
end
|
||||
@@ -105,16 +105,16 @@ if not nLayerSynEditId then nLayerSynEditId = GDB_ID.NULL end
|
||||
|
||||
-- -- Recupero le Informazioni di Orienting Curves utilizzate precedentemente
|
||||
-- local dThetaStart = ORIENTING_LINES_THETA_START
|
||||
-- local dStoredThetaStart = EgtGetInfo( nCurrLayerId, KEY_ORIENTING_THETA_START, 'd')
|
||||
-- local dStoredThetaStart = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_THETA_START, 'd')
|
||||
-- if dStoredThetaStart ~= nil then dThetaStart = dStoredThetaStart end
|
||||
-- local dPhiStart = ORIENTING_LINES_PHI_START
|
||||
-- local dStoredPhiStart = EgtGetInfo( nCurrLayerId, KEY_ORIENTING_PHI_START, 'd')
|
||||
-- local dStoredPhiStart = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_PHI_START, 'd')
|
||||
-- if dStoredPhiStart ~= nil then dPhiStart = dStoredPhiStart end
|
||||
-- local dThetaEnd = ORIENTING_LINES_THETA_END
|
||||
-- local dStoredThetaEnd = EgtGetInfo( nCurrLayerId, KEY_ORIENTING_THETA_END, 'd')
|
||||
-- local dStoredThetaEnd = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_THETA_END, 'd')
|
||||
-- if dStoredThetaEnd ~= nil then dThetaEnd = dStoredThetaEnd end
|
||||
-- local dPhiEnd = ORIENTING_LINES_PHI_END
|
||||
-- local dStoredPhiEnd = EgtGetInfo( nCurrLayerId, KEY_ORIENTING_PHI_END, 'd')
|
||||
-- local dStoredPhiEnd = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_PHI_END, 'd')
|
||||
-- if dStoredPhiEnd ~= nil then dPhiEnd = dStoredPhiEnd end
|
||||
|
||||
--
|
||||
@@ -130,10 +130,10 @@ local dLenS, dThetaStart, dPhiStart = SphericalFromVector( vtFirstDir)
|
||||
local dLenE, dThetaEnd, dPhiEnd = SphericalFromVector( vtSecondDir)
|
||||
|
||||
local dStartLen = ORIENTING_LINES_START_LEN
|
||||
local dStoredStartLen = EgtGetInfo( nCurrLayerId, KEY_ORIENTING_LINES_START_LEN, 'd')
|
||||
local dStoredStartLen = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_LINES_START_LEN, 'd')
|
||||
if dStoredStartLen ~= nil then dStartLen = dStoredStartLen end
|
||||
local dEndLen = ORIENTING_LINES_END_LEN
|
||||
local dStoredEndLen = EgtGetInfo( nCurrLayerId, KEY_ORIENTING_LINES_END_LEN, 'd')
|
||||
local dStoredEndLen = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_LINES_END_LEN, 'd')
|
||||
if dStoredEndLen ~= nil then dEndLen = dStoredEndLen end
|
||||
-- Chiedo i Parametri all'Utente
|
||||
local vsVal = EgtDialogBox( 'Orienting Curves', { 'Vertical Start Angle [0°-180°]', EgtNumToString( dThetaStart)},
|
||||
@@ -156,21 +156,21 @@ dStartLen = tonumber( vsVal[5])
|
||||
dEndLen = tonumber( vsVal[6])
|
||||
local bShorterSide = true
|
||||
if vsVal[7] == "0" then bShorterSide = false end
|
||||
EgtSetInfo( nCurrLayerId, KEY_ORIENTING_THETA_START, dThetaStart)
|
||||
EgtSetInfo( nCurrLayerId, KEY_ORIENTING_PHI_START, dPhiStart)
|
||||
EgtSetInfo( nCurrLayerId, KEY_ORIENTING_THETA_END, dThetaEnd)
|
||||
EgtSetInfo( nCurrLayerId, KEY_ORIENTING_PHI_END, dPhiEnd)
|
||||
EgtSetInfo( nCurrLayerId, KEY_ORIENTING_LINES_START_LEN, dStartLen)
|
||||
EgtSetInfo( nCurrLayerId, KEY_ORIENTING_LINES_END_LEN, dEndLen)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_THETA_START, dThetaStart)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_PHI_START, dPhiStart)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_THETA_END, dThetaEnd)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_PHI_END, dPhiEnd)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_LINES_START_LEN, dStartLen)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ORIENTING_LINES_END_LEN, dEndLen)
|
||||
|
||||
local sInfoBorder = EgtGetInfo( nMainEdgeId, KEY_BORDER_ORDER)
|
||||
local sInfoBorder = EgtGetInfo( nMainEdgeId, MCH_TRIMMING.KEY_BORDER_ORDER)
|
||||
if sInfoBorder == nil then
|
||||
EgtOutBox( ORIENTING_LINES_END_LEN .. 'Error : Borders order has not been established', 'Error', 'ERROR', 'OK')
|
||||
EgtErase( nLayerEditOrientingId)
|
||||
EgtSetCurrPartLayer( nCurrPartId, nCurrLayerId)
|
||||
return
|
||||
end
|
||||
local bMainIsFirstBorder = (sInfoBorder == KEY_FIRST_BORDER)
|
||||
local bMainIsFirstBorder = (sInfoBorder == MCH_TRIMMING.KEY_FIRST_BORDER)
|
||||
|
||||
-- Recupero le Curve di Orienting
|
||||
local nInterpStartId, nStartId, nEndId, nInterpEndId
|
||||
@@ -195,7 +195,7 @@ nId = EgtGetFirstInGroup( nLayerEditOrientingId)
|
||||
while nId do
|
||||
if nId == nInterpStartId or nId == nStartId or nId == nEndId or nId == nInterpEndId then EgtSetColor( nId, SpecialLineColor)
|
||||
else EgtSetColor( nId, LineColor) end
|
||||
EgtSetName( nId, ORIENTATION_LINE_NAME)
|
||||
EgtSetName( nId, MCH_TRIMMING.ORIENTATION_LINE_NAME)
|
||||
if bInvert then EgtInvertCurve(nId) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
|
||||
+13
-13
@@ -18,9 +18,9 @@ if not GlobVar.IsTrimmingLayer( nCurrLayerId) then
|
||||
return
|
||||
end
|
||||
-- Recupero le Info
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, KEY_SURF_ANG_TOL, 'd')
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_ANG_TOL, 'd')
|
||||
local bOk = ( dLinTol ~= nil and dAngTol ~= nil and dAngFaceTol ~= nil)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_EDIT_SYNC_CURVES .. 'No Trimming Machining created', 'Error', 'ERROR', 'OK')
|
||||
@@ -48,7 +48,7 @@ local vIdEdges = {}
|
||||
nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
-- verifico che sia una Curva e che sia di Bordo
|
||||
if EgtGetName( nId) == EDGES_NAME then
|
||||
if EgtGetName( nId) == MCH_TRIMMING.EDGES_NAME then
|
||||
-- Verifico che sia una Curva
|
||||
local nType = EgtGetType( nId)
|
||||
if nType ~= GDB_TY.CRV_LINE and nType ~= GDB_TY.CRV_ARC and nType ~= GDB_TY.CRV_BEZ and nType ~= GDB_TY.CRV_COMPO then
|
||||
@@ -68,9 +68,9 @@ if #vIdEdges ~= 2 then
|
||||
end
|
||||
|
||||
-- Chiedo i Parametri all'Utente
|
||||
local nSyncLinesNumber = EgtGetInfo( nCurrLayerId, KEY_SYNC_LINES_NUMBER, 'i')
|
||||
local bShowOnCorners = EgtGetInfo( nCurrLayerId, KEY_SYNC_LINES_SHOW_ON_CORNERS, 'b')
|
||||
local dSyncLinesAngTol = EgtGetInfo( nCurrLayerId, KEY_SYNC_LINES_NUMBER_ANG_TOL, 'd')
|
||||
local nSyncLinesNumber = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_NUMBER, 'i')
|
||||
local bShowOnCorners = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_SHOW_ON_CORNERS, 'b')
|
||||
local dSyncLinesAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_NUMBER_ANG_TOL, 'd')
|
||||
if not nSyncLinesNumber or nSyncLinesNumber < 0. then nSyncLinesNumber = SYNC_LINES_NUMBER end
|
||||
if bShowOnCorners == nil then bShowOnCorners = true end
|
||||
if bShowAllLines == nil then bShowAllLines = false end
|
||||
@@ -86,13 +86,13 @@ end
|
||||
bShowOnCorners = ( vsVal[1] == '1')
|
||||
dSyncLinesAngTol = tonumber( vsVal[2])
|
||||
nSyncLinesNumber = tonumber( vsVal[3])
|
||||
EgtSetInfo( nCurrLayerId, KEY_SYNC_LINES_NUMBER, nSyncLinesNumber)
|
||||
EgtSetInfo( nCurrLayerId, KEY_SYNC_LINES_SHOW_ON_CORNERS, bShowOnCorners)
|
||||
EgtSetInfo( nCurrLayerId, KEY_SYNC_LINES_NUMBER_ANG_TOL, dSyncLinesAngTol)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_NUMBER, nSyncLinesNumber)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_SHOW_ON_CORNERS, bShowOnCorners)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_NUMBER_ANG_TOL, dSyncLinesAngTol)
|
||||
|
||||
-- setto l'informazione sull'ordine dei bordi
|
||||
EgtSetInfo( vIdEdges[1], KEY_BORDER_ORDER, KEY_FIRST_BORDER)
|
||||
EgtSetInfo( vIdEdges[2], KEY_BORDER_ORDER, KEY_SECOND_BORDER)
|
||||
EgtSetInfo( vIdEdges[1], MCH_TRIMMING.KEY_BORDER_ORDER, MCH_TRIMMING.KEY_FIRST_BORDER)
|
||||
EgtSetInfo( vIdEdges[2], MCH_TRIMMING.KEY_BORDER_ORDER, MCH_TRIMMING.KEY_SECOND_BORDER)
|
||||
|
||||
-- Recupero le Curve di Sincronizzazione
|
||||
local nFirstId, nCount
|
||||
@@ -109,7 +109,7 @@ nId = EgtGetFirstInGroup( nLayerEditSyncId)
|
||||
while nId do
|
||||
if nId >= nFirstId then
|
||||
EgtSetColor( nId, SYNC_LINE_COLOR)
|
||||
EgtSetName( nId, SYNC_LINE_NAME)
|
||||
EgtSetName( nId, MCH_TRIMMING.SYNC_LINE_NAME)
|
||||
end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
|
||||
@@ -40,7 +40,7 @@ if not bDelete then EgtSetCurrPartLayer( nCurrPartId, nLayerEditId) return end
|
||||
local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
local vIdToErase = {}
|
||||
while nId do
|
||||
if EgtGetName( nId) == EDGES_NAME then table.insert( vIdToErase, nId) end
|
||||
if EgtGetName( nId) == MCH_TRIMMING.EDGES_NAME then table.insert( vIdToErase, nId) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
EgtErase( vIdToErase)
|
||||
@@ -49,7 +49,7 @@ EgtErase( vIdToErase)
|
||||
nId = EgtGetFirstInGroup( nLayerEditId)
|
||||
local vIdToRelocate = {}
|
||||
while nId do
|
||||
EgtSetName( nId, EDGES_NAME)
|
||||
EgtSetName( nId, MCH_TRIMMING.EDGES_NAME)
|
||||
table.insert( vIdToRelocate, nId)
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
|
||||
@@ -26,8 +26,8 @@ if ( not nLayerEditId or nLayerEditId == GDB_ID.NULL) then
|
||||
end
|
||||
|
||||
-- Recupero le Info
|
||||
local dEdgeLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL_EDGES, 'd')
|
||||
local dEdgeAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL_EDGES, 'd')
|
||||
local dEdgeLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL_EDGES, 'd')
|
||||
local dEdgeAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL_EDGES, 'd')
|
||||
local bOk = ( dEdgeLinTol ~= nil and dEdgeAngTol ~= nil)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_EDIT_SYNC_CURVES .. 'No Trimming Machining created', 'Error', 'ERROR', 'OK')
|
||||
@@ -53,7 +53,7 @@ local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
local vnBzCrvId = {}
|
||||
while nId do
|
||||
local sName = EgtGetName( nId)
|
||||
if sName == EDGES_NAME then table.insert( vnBzCrvId, nId) end
|
||||
if sName == MCH_TRIMMING.EDGES_NAME then table.insert( vnBzCrvId, nId) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
if #vnBzCrvId ~= 2 then
|
||||
@@ -81,16 +81,16 @@ EgtSetColor( nFirstSync, SYNC_LINE_INTERP_COLOR)
|
||||
EgtSetColor( nSecondSync, SYNC_LINE_INTERP_COLOR)
|
||||
-- salvo gli id come info nel layer
|
||||
local vBoundarySyncIds = { nFirstSync, nSecondSync}
|
||||
EgtSetInfo( nLayerEditId, KEY_BOUND_LINES_INTERPOLATION_IDS, vBoundarySyncIds)
|
||||
EgtSetInfo( nLayerEditId, MCH_TRIMMING.KEY_BOUND_LINES_INTERPOLATION_IDS, vBoundarySyncIds)
|
||||
if nFirstId ~= GDB_ID.NULL and nCount > 0 then
|
||||
local vNewIds = {}
|
||||
for i = 0, nCount do
|
||||
EgtSetColor( nFirstId + i, SYNC_LINE_INTERP_COLOR)
|
||||
EgtSetName( nFirstId + i, SYNC_LINE_NAME)
|
||||
EgtSetName( nFirstId + i, MCH_TRIMMING.SYNC_LINE_NAME)
|
||||
table.insert( vNewIds, nFirstId + i)
|
||||
end
|
||||
-- Memorizzo gli Id delle curve inserite
|
||||
EgtSetInfo( nLayerEditId, KEY_SYNC_LINES_INTERPOLATION_IDS, vNewIds)
|
||||
EgtSetInfo( nLayerEditId, MCH_TRIMMING.KEY_SYNC_LINES_INTERPOLATION_IDS, vNewIds)
|
||||
end
|
||||
|
||||
-- Metto il Focus sul Layer di Sincronizzazione delle curve
|
||||
|
||||
+3
-6
@@ -35,12 +35,9 @@ EgtSetCurrPartLayer( nCurrPartId, nCurrLayerId)
|
||||
local dLinTol = tonumber( vsVal[1])
|
||||
local dAngTol = tonumber( vsVal[2])
|
||||
local dAngFaceTol = tonumber( vsVal[3])
|
||||
KEY_LIN_TOL = 'LinTol'
|
||||
KEY_ANG_TOL = 'AngTol'
|
||||
KEY_SURF_ANG_TOL = 'SurfAngTol'
|
||||
bOk = EgtSetInfo( nCurrLayerId, KEY_LIN_TOL, dLinTol) and
|
||||
EgtSetInfo( nCurrLayerId, KEY_ANG_TOL, dAngTol) and
|
||||
EgtSetInfo( nCurrLayerId, KEY_SURF_ANG_TOL, dAngFaceTol)
|
||||
bOk = EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, dLinTol) and
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL, dAngTol) and
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_ANG_TOL, dAngFaceTol)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_CREATING_NEW_TRIMMING .. 'Saving Tolerances failed', 'Error', 'ERROR', 'OK')
|
||||
EgtErase( nCurrLayerId)
|
||||
|
||||
+9
-9
@@ -27,9 +27,9 @@ if not GlobVar.IsTrimmingLayer( nCurrLayerId) then
|
||||
return
|
||||
end
|
||||
-- Recupero le Info
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, KEY_SURF_ANG_TOL, 'd')
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_ANG_TOL, 'd')
|
||||
local bOk = ( dLinTol ~= nil and dAngTol ~= nil and dAngFaceTol ~= nil)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_REDUCE_TWIST .. 'No Trimming Machining created', 'Error', 'ERROR', 'OK')
|
||||
@@ -40,7 +40,7 @@ local vIdEdges = {}
|
||||
local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
-- verifico che sia una Curva e che sia di Bordo
|
||||
if EgtGetName( nId) == EDGES_NAME then
|
||||
if EgtGetName( nId) == MCH_TRIMMING.EDGES_NAME then
|
||||
-- Verifico che sia una Curva
|
||||
local nType = EgtGetType( nId)
|
||||
if nType ~= GDB_TY.CRV_LINE and nType ~= GDB_TY.CRV_ARC and nType ~= GDB_TY.CRV_BEZ and nType ~= GDB_TY.CRV_COMPO then
|
||||
@@ -85,7 +85,7 @@ local nSel = EgtGetFirstSelectedObj()
|
||||
local vSyncSel = {}
|
||||
while nSel do
|
||||
-- verifico che sia una curva e che sia nel layer delle SyncLines
|
||||
if EgtGetName( nSel) == SYNC_LINE_NAME then
|
||||
if EgtGetName( nSel) == MCH_TRIMMING.SYNC_LINE_NAME then
|
||||
table.insert(vSyncSel, nSel)
|
||||
else
|
||||
EgtOutBox( ERROR_REDUCE_TWIST .. 'Invalid Curve Selected', 'Error', 'ERROR', 'OK')
|
||||
@@ -104,7 +104,7 @@ end
|
||||
-- creo il layer e setto le info e colori
|
||||
local nEditSurfLayer = GlobVar.CreateEditSurfLayer( nCurrPartId, nCurrLayerId)
|
||||
local sInfoVal = EgtNumToString(vSyncSel[1])..","..EgtNumToString(vSyncSel[2])
|
||||
EgtSetInfo(nCurrLayerId, KEY_SYNC_LINES_REGOLARIZATION, sInfoVal)
|
||||
EgtSetInfo(nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_REGOLARIZATION, sInfoVal)
|
||||
EgtSetColor(vSyncSel[1], EDIT_SURF_SYNC_COLOR)
|
||||
EgtSetColor(vSyncSel[2], EDIT_SURF_SYNC_COLOR)
|
||||
|
||||
@@ -116,7 +116,7 @@ if nNewSurfId == nil or nNewSurfId == GDB_ID.NULL then
|
||||
EgtErase(nEditSurfLayer)
|
||||
return
|
||||
end
|
||||
EgtSetName(nNewSurfId,EDIT_SURF_NEWSURF_NAME)
|
||||
EgtSetName(nNewSurfId,MCH_TRIMMING.EDIT_SURF_NEWSURF_NAME)
|
||||
|
||||
---- richiedo i bordi alla nuova superficie e li metto nel layer temporaneo della modifica alla superficie
|
||||
local nCrv1 = EgtSurfBezierGetCurveU( nNewSurfId, 0., nEditSurfLayer)
|
||||
@@ -125,8 +125,8 @@ local vIdNewEdges = {nCrv1, nCrv2}
|
||||
|
||||
EgtSetColor( vIdNewEdges[1], EDIT_SURF_BORDER_COLOR)
|
||||
EgtSetColor( vIdNewEdges[2], EDIT_SURF_BORDER_COLOR)
|
||||
EgtSetName( vIdNewEdges[1], EDIT_SURF_NEWBORDER_NAME)
|
||||
EgtSetName( vIdNewEdges[2], EDIT_SURF_NEWBORDER_NAME)
|
||||
EgtSetName( vIdNewEdges[1], MCH_TRIMMING.EDIT_SURF_NEWBORDER_NAME)
|
||||
EgtSetName( vIdNewEdges[2], MCH_TRIMMING.EDIT_SURF_NEWBORDER_NAME)
|
||||
|
||||
-- nascondo i bordi e la superficie originale
|
||||
EgtSetStatus( nSurf, GDB_ST.OFF)
|
||||
|
||||
+1
-1
@@ -27,7 +27,7 @@ local vIdToErase = {}
|
||||
local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
local sName = EgtGetName( nId)
|
||||
if sName == RULED_BZ_NAME then table.insert( vIdToErase, nId) end
|
||||
if sName == MCH_TRIMMING.RULED_BZ_NAME then table.insert( vIdToErase, nId) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
EgtErase( vIdToErase)
|
||||
|
||||
@@ -44,7 +44,7 @@ EgtSetStatus( nCurrLayerId, GDB_ST.ON)
|
||||
-- Imposto le Curve di Bordo come visibili
|
||||
local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
if EgtGetName( nId) == EDGES_NAME then EgtSetStatus( nId, GDB_ST.ON) end
|
||||
if EgtGetName( nId) == MCH_TRIMMING.EDGES_NAME then EgtSetStatus( nId, GDB_ST.ON) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
|
||||
|
||||
@@ -31,11 +31,11 @@ local bRemove = EgtOutBox( 'Do you want to remove the last Interpolated Sync Lin
|
||||
if not bRemove then return end
|
||||
|
||||
-- resetto il colore delle linee di sync che identificavano l'area di interpolazione
|
||||
local vBoundarySyncIds = EgtGetInfo( nLayerEditId, KEY_BOUND_LINES_INTERPOLATION_IDS, 'vi')
|
||||
local vBoundarySyncIds = EgtGetInfo( nLayerEditId, MCH_TRIMMING.KEY_BOUND_LINES_INTERPOLATION_IDS, 'vi')
|
||||
if vBoundarySyncIds ~= nil and #vBoundarySyncIds ~= 0 then EgtSetColor( vBoundarySyncIds, SYNC_LINE_COLOR) end
|
||||
|
||||
-- Recupero le ultime Linee di Sincronizzazione aggiunte e le elimino
|
||||
local vLastInterpSyncIds = EgtGetInfo( nLayerEditId, KEY_SYNC_LINES_INTERPOLATION_IDS, 'vi')
|
||||
local vLastInterpSyncIds = EgtGetInfo( nLayerEditId, MCH_TRIMMING.KEY_SYNC_LINES_INTERPOLATION_IDS, 'vi')
|
||||
if vLastInterpSyncIds ~= nil and #vLastInterpSyncIds ~= 0 then EgtErase( vLastInterpSyncIds) end
|
||||
|
||||
-- Metto il focus sul Layer di Edit delle curve di Sincronizzazione
|
||||
|
||||
+2
-2
@@ -37,7 +37,7 @@ local vIdToErase = {}
|
||||
nId = EgtGetFirstInGroup( nTrimmingLayer)
|
||||
while nId do
|
||||
local sName = EgtGetName( nId)
|
||||
if sName ~= SELECTION_SURF_NAME then table.insert( vIdToErase, nId)
|
||||
if sName ~= MCH_TRIMMING.SELECTION_SURF_NAME then table.insert( vIdToErase, nId)
|
||||
else EgtSetStatus( nId, GDB_ST.ON) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
@@ -54,7 +54,7 @@ local nLayerOriEnditId = GlobVar.GetCurrentEditOrientationCurvesLayer( nCurrPart
|
||||
if nLayerOriEnditId ~= nil and nLayerOriEnditId ~= GDB_ID.NULL then EgtErase( nLayerOriEnditId) end
|
||||
|
||||
-- Recupero l'ultima(le ultime) Supercicie(i) aggiunta(e) e la(e) elimino
|
||||
local vLastSurfIds = EgtGetInfo( nTrimmingLayer, KEY_SELECTION_LAST_IDS, 'vi')
|
||||
local vLastSurfIds = EgtGetInfo( nTrimmingLayer, MCH_TRIMMING.KEY_SELECTION_LAST_IDS, 'vi')
|
||||
if vLastSurfIds ~= nil and #vLastSurfIds ~= 0 then EgtErase( vLastSurfIds) end
|
||||
|
||||
-- Aggiorno la grafica
|
||||
|
||||
+4
-4
@@ -34,7 +34,7 @@ local vIdEdges = {}
|
||||
local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
-- verifico che sia una Curva e che sia di Bordo
|
||||
if EgtGetName( nId) == EDGES_NAME then
|
||||
if EgtGetName( nId) == MCH_TRIMMING.EDGES_NAME then
|
||||
table.insert( vIdEdges, nId)
|
||||
end
|
||||
nId = EgtGetNext( nId)
|
||||
@@ -67,18 +67,18 @@ if nLayerEditSyncId == nil or nLayerEditSyncId == GDB_ID.NULL then
|
||||
end
|
||||
|
||||
-- recupero le linee di Sync selezionate e le riporto al colore standard
|
||||
local vSyncSel = EgtGetInfo(nCurrLayerId, KEY_SYNC_LINES_REGOLARIZATION, "vs")
|
||||
local vSyncSel = EgtGetInfo(nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_REGOLARIZATION, "vs")
|
||||
|
||||
-- verifico che siano selezionate due curve nel layer delle Sync Lines
|
||||
if #vSyncSel == 2 then
|
||||
for i,nId in pairs( vSyncSel) do
|
||||
if EgtGetName(nId) == SYNC_LINE_NAME then
|
||||
if EgtGetName(nId) == MCH_TRIMMING.SYNC_LINE_NAME then
|
||||
EgtSetColor(nId, SYNC_LINE_COLOR)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
-- cancello l'info nel layer di trimming
|
||||
EgtRemoveInfo(nCurrLayerId, KEY_SYNC_LINES_REGOLARIZATION)
|
||||
EgtRemoveInfo(nCurrLayerId, MCH_TRIMMING.KEY_SYNC_LINES_REGOLARIZATION)
|
||||
|
||||
EgtDraw()
|
||||
+28
-28
@@ -32,12 +32,12 @@ end
|
||||
|
||||
-- Chiedo l'operazione da svolgere su tale superficie e ricavo i parametri inseriti
|
||||
local dSize = STRIP_SIZE
|
||||
local dStoredSize = EgtGetInfo( nCurrLayerId, KEY_SURF_BORDER_SIZE, 'd')
|
||||
local dStoredSize = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_BORDER_SIZE, 'd')
|
||||
if dStoredSize ~= nil then dSize = dStoredSize end
|
||||
local dSizeTol = STRIP_SIZE_TOL
|
||||
local dStoredSizeTol = EgtGetInfo( nCurrLayerId, KEY_SURF_BORDER_SIZE_TOL, 'd')
|
||||
local dStoredSizeTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_BORDER_SIZE_TOL, 'd')
|
||||
if dStoredSizeTol ~= nil then dSizeTol = dStoredSizeTol end
|
||||
local nLastSelType = EgtGetInfo( nCurrLayerId, KEY_SELECTION_LAST_SELECTION_TYPE, 'i')
|
||||
local nLastSelType = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SELECTION_LAST_SELECTION_TYPE, 'i')
|
||||
local sLabels = { 'Insert Surface', 'Face Search', 'Surf Search'}
|
||||
local sTypeDBSel
|
||||
if nLastSelType ~= nil then
|
||||
@@ -56,16 +56,16 @@ local vsVal = EgtDialogBox( 'Seletion', { 'Type', sTypeDBSel},
|
||||
if not vsVal or #vsVal ~= 3 then return end
|
||||
dSize = tonumber( vsVal[2])
|
||||
dSizeTol = tonumber( vsVal[3])
|
||||
EgtSetInfo( nCurrLayerId, KEY_SURF_BORDER_SIZE, dSize)
|
||||
EgtSetInfo( nCurrLayerId, KEY_SURF_BORDER_SIZE_TOL, dSizeTol)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_BORDER_SIZE, dSize)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_BORDER_SIZE_TOL, dSizeTol)
|
||||
for i, sLabel in ipairs( sLabels) do
|
||||
if sLabel == vsVal[1] then EgtSetInfo( nCurrLayerId, KEY_SELECTION_LAST_SELECTION_TYPE, i) break end
|
||||
if sLabel == vsVal[1] then EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SELECTION_LAST_SELECTION_TYPE, i) break end
|
||||
end
|
||||
|
||||
-- Recupero le tolleranze impostate alla creazione del Layer di Trimming corrente
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, KEY_SURF_ANG_TOL, 'd')
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_ANG_TOL, 'd')
|
||||
local bOk = ( dLinTol ~= nil and dAngTol ~= nil and dAngFaceTol ~= nil)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_SELECTION .. 'Not a valid Trimming Layer', 'Error', 'ERROR', 'OK')
|
||||
@@ -88,7 +88,7 @@ local vIdToErase = {}
|
||||
local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
while nId do
|
||||
local sName = EgtGetName( nId)
|
||||
if sName ~= SELECTION_SURF_NAME then table.insert( vIdToErase, nId)
|
||||
if sName ~= MCH_TRIMMING.SELECTION_SURF_NAME then table.insert( vIdToErase, nId)
|
||||
else EgtSetStatus( nId, GDB_ST.ON) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
@@ -118,15 +118,15 @@ if vsVal[1] == 'Insert Surface' then
|
||||
end
|
||||
-- Dalle superfici già presenti nel Layer di selezione, rimuovo gli Id dei riferimenti ( per non duplicare superfici)
|
||||
local vOldSelSurfId = {}
|
||||
local nId = EgtGetFirstNameInGroup( nCurrLayerId, SELECTION_SURF_NAME)
|
||||
local nId = EgtGetFirstNameInGroup( nCurrLayerId, MCH_TRIMMING.SELECTION_SURF_NAME)
|
||||
while nId do
|
||||
local nObjType = EgtGetType( nId)
|
||||
if nObjType == GDB_TY.SRF_MESH or nObjType == GDB_TY.SRF_BEZ then
|
||||
-- Se la superficie selezionata precedentemente ha come riferimento una superficie, ne memorizzo l'Id
|
||||
local nRefSurfId = EgtGetInfo( nId, KEY_SELECTION_REF_SURF, 'i')
|
||||
local nRefSurfId = EgtGetInfo( nId, MCH_TRIMMING.KEY_SELECTION_REF_SURF, 'i')
|
||||
if nRefSurfId then table.insert( vOldSelSurfId, nRefSurfId) end
|
||||
end
|
||||
nId = EgtGetNextName( nId, SELECTION_SURF_NAME)
|
||||
nId = EgtGetNextName( nId, MCH_TRIMMING.SELECTION_SURF_NAME)
|
||||
end
|
||||
local setToRemove = {}
|
||||
for _, v in ipairs( vOldSelSurfId) do setToRemove[v] = true end
|
||||
@@ -145,14 +145,14 @@ if vsVal[1] == 'Insert Surface' then
|
||||
table.insert( vNewSurfIds, nInsertSurfId)
|
||||
-- Assegno Colore e Nome
|
||||
local bOk = EgtSetColor( nInsertSurfId, SELECTION_SURF_COLOR) and
|
||||
EgtSetInfo( nInsertSurfId, KEY_SELECTION_REF_SURF, vSurfIds[i]) and
|
||||
EgtSetName( nInsertSurfId, SELECTION_SURF_NAME)
|
||||
EgtSetInfo( nInsertSurfId, MCH_TRIMMING.KEY_SELECTION_REF_SURF, vSurfIds[i]) and
|
||||
EgtSetName( nInsertSurfId, MCH_TRIMMING.SELECTION_SURF_NAME)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_SELECTION .. 'Copying Surface failed', 'Error', 'ERROR', 'OK')
|
||||
return
|
||||
end
|
||||
end
|
||||
EgtSetInfo( nCurrLayerId, KEY_SELECTION_LAST_IDS, vNewSurfIds)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SELECTION_LAST_IDS, vNewSurfIds)
|
||||
|
||||
--------------------------------- Ricerca delle facce adiancenti --------------------------------
|
||||
-- [Tolleranza angolare di superficie]
|
||||
@@ -168,9 +168,9 @@ elseif vsVal[1] == 'Face Search' then
|
||||
end
|
||||
-- Assegno Colore, Info e Name
|
||||
bOk = EgtSetColor( nInsertSurfId, SELECTION_SURF_COLOR) and
|
||||
EgtSetInfo( nInsertSurfId, KEY_SELECTION_REF_SURF, nSelObjId) and
|
||||
EgtSetName( nInsertSurfId, SELECTION_SURF_NAME) and
|
||||
EgtSetInfo( nCurrLayerId, KEY_SELECTION_LAST_IDS, { nInsertSurfId})
|
||||
EgtSetInfo( nInsertSurfId, MCH_TRIMMING.KEY_SELECTION_REF_SURF, nSelObjId) and
|
||||
EgtSetName( nInsertSurfId, MCH_TRIMMING.SELECTION_SURF_NAME) and
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SELECTION_LAST_IDS, { nInsertSurfId})
|
||||
|
||||
-- Se invece è una Trimesh, recupero il primo triangolo selezionato
|
||||
else
|
||||
@@ -190,9 +190,9 @@ elseif vsVal[1] == 'Face Search' then
|
||||
end
|
||||
-- Assegno Colore, Info e Name
|
||||
bOk = EgtSetColor( nInsertSurfId, SELECTION_SURF_COLOR) and
|
||||
EgtSetInfo( nInsertSurfId, KEY_SELECTION_REF_SURF, nId) and
|
||||
EgtSetName( nInsertSurfId, SELECTION_SURF_NAME) and
|
||||
EgtSetInfo( nCurrLayerId, KEY_SELECTION_LAST_IDS, { nInsertSurfId})
|
||||
EgtSetInfo( nInsertSurfId, MCH_TRIMMING.KEY_SELECTION_REF_SURF, nId) and
|
||||
EgtSetName( nInsertSurfId, MCH_TRIMMING.SELECTION_SURF_NAME) and
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SELECTION_LAST_IDS, { nInsertSurfId})
|
||||
end
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_SELECTION .. 'Copying Surface failed', 'Error', 'ERROR', 'OK')
|
||||
@@ -229,15 +229,15 @@ elseif vsVal[1] == 'Surf Search' then
|
||||
table.insert( vSelSurfId, nSelObjId)
|
||||
-- Dalle superfici già presenti nel Layer di selezione, rimuovo gli Id dei riferimenti ( per non duplicare superfici)
|
||||
local vOldSelSurfId = {}
|
||||
local nId = EgtGetFirstNameInGroup( nCurrLayerId, SELECTION_SURF_NAME)
|
||||
local nId = EgtGetFirstNameInGroup( nCurrLayerId, MCH_TRIMMING.SELECTION_SURF_NAME)
|
||||
while nId do
|
||||
local nObjType = EgtGetType( nId)
|
||||
if nObjType == GDB_TY.SRF_MESH or nObjType == GDB_TY.SRF_BEZ then
|
||||
-- Se la superficie selezionata precedentemente ha come riferimento una superficie, ne memorizzo l'Id
|
||||
local nRefSurfId = EgtGetInfo( nId, KEY_SELECTION_REF_SURF, 'i')
|
||||
local nRefSurfId = EgtGetInfo( nId, MCH_TRIMMING.KEY_SELECTION_REF_SURF, 'i')
|
||||
if nRefSurfId then table.insert( vOldSelSurfId, nRefSurfId) end
|
||||
end
|
||||
nId = EgtGetNextName( nId, SELECTION_SURF_NAME)
|
||||
nId = EgtGetNextName( nId, MCH_TRIMMING.SELECTION_SURF_NAME)
|
||||
end
|
||||
local setToRemove = {}
|
||||
for _, v in ipairs( vOldSelSurfId) do setToRemove[v] = true end
|
||||
@@ -255,14 +255,14 @@ elseif vsVal[1] == 'Surf Search' then
|
||||
end
|
||||
table.insert( vNewInsertedSrfIds, nInsertSurfId)
|
||||
bOk = EgtSetColor( nInsertSurfId, SELECTION_SURF_COLOR) and
|
||||
EgtSetInfo( nInsertSurfId, KEY_SELECTION_REF_SURF, vSurfIds[nSurf]) and
|
||||
EgtSetName( nInsertSurfId, SELECTION_SURF_NAME)
|
||||
EgtSetInfo( nInsertSurfId, MCH_TRIMMING.KEY_SELECTION_REF_SURF, vSurfIds[nSurf]) and
|
||||
EgtSetName( nInsertSurfId, MCH_TRIMMING.SELECTION_SURF_NAME)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_SELECTION .. 'Copying Surface failed', 'Error', 'ERROR', 'OK')
|
||||
return
|
||||
end
|
||||
end
|
||||
EgtSetInfo( nCurrLayerId, KEY_SELECTION_LAST_IDS, vNewInsertedSrfIds)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SELECTION_LAST_IDS, vNewInsertedSrfIds)
|
||||
|
||||
end
|
||||
|
||||
|
||||
+17
-17
@@ -31,9 +31,9 @@ if nType ~= GDB_TY.SRF_BEZ and nType ~= GDB_TY.SRF_MESH then
|
||||
end
|
||||
|
||||
-- Recupero le tolleranze impostate alla creazione del Layer di Trimming corrente
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, KEY_SURF_ANG_TOL, 'd')
|
||||
local dLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL, 'd')
|
||||
local dAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL, 'd')
|
||||
local dAngFaceTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_ANG_TOL, 'd')
|
||||
local bOk = ( dLinTol ~= nil and dAngTol ~= nil and dAngFaceTol ~= nil)
|
||||
if not bOk then
|
||||
EgtOutBox( ERROR_SELECTION .. 'Not a valid Trimming Layer', 'Error', 'ERROR', 'OK')
|
||||
@@ -42,12 +42,12 @@ end
|
||||
|
||||
-- Chiedo l'operazione da svolgere su tale superficie e ricavo i parametri inseriti
|
||||
local dSize = STRIP_SIZE
|
||||
local dStoredSize = EgtGetInfo( nCurrLayerId, KEY_SURF_BORDER_SIZE, 'd')
|
||||
local dStoredSize = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_BORDER_SIZE, 'd')
|
||||
if dStoredSize ~= nil then dSize = dStoredSize end
|
||||
local dSizeTol = STRIP_SIZE_TOL
|
||||
local dStoredSizeTol = EgtGetInfo( nCurrLayerId, KEY_SURF_BORDER_SIZE_TOL, 'd')
|
||||
local dStoredSizeTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_BORDER_SIZE_TOL, 'd')
|
||||
if dStoredSizeTol ~= nil then dSizeTol = dStoredSizeTol end
|
||||
local nLastSelType = EgtGetInfo( nCurrLayerId, KEY_SELECTION_LAST_SELECTION_TYPE, 'i')
|
||||
local nLastSelType = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SELECTION_LAST_SELECTION_TYPE, 'i')
|
||||
local sLabels = { 'Insert Surface', 'Face Search', 'Surf Search'}
|
||||
local sTypeDBSel
|
||||
if nLastSelType ~= nil then
|
||||
@@ -63,9 +63,9 @@ end
|
||||
local dLinTolForEdges = dLinTol
|
||||
local dAngTolForEdges = dAngTol
|
||||
local dThickForEdges = EDGE_THICK
|
||||
local dEdgeLinTol = EgtGetInfo( nCurrLayerId, KEY_LIN_TOL_EDGES, 'd')
|
||||
local dEdgeAngTol = EgtGetInfo( nCurrLayerId, KEY_ANG_TOL_EDGES, 'd')
|
||||
local dEdgeThick = EgtGetInfo( nCurrLayerId, KEY_THICK_EDGES, 'd')
|
||||
local dEdgeLinTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL_EDGES, 'd')
|
||||
local dEdgeAngTol = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL_EDGES, 'd')
|
||||
local dEdgeThick = EgtGetInfo( nCurrLayerId, MCH_TRIMMING.KEY_THICK_EDGES, 'd')
|
||||
if dEdgeLinTol then dLinTolForEdges = dEdgeLinTol end
|
||||
if dEdgeAngTol then dAngTolForEdges = dEdgeAngTol end
|
||||
if dEdgeThick then dThickForEdges = dEdgeThick end
|
||||
@@ -78,17 +78,17 @@ local vsVal = EgtDialogBox( 'Seletion', { 'Type', sTypeDBSel},
|
||||
if not vsVal or #vsVal ~= 6 then return end
|
||||
dSize = tonumber( vsVal[2])
|
||||
dSizeTol = tonumber( vsVal[3])
|
||||
EgtSetInfo( nCurrLayerId, KEY_SURF_BORDER_SIZE, dSize)
|
||||
EgtSetInfo( nCurrLayerId, KEY_SURF_BORDER_SIZE_TOL, dSizeTol)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_BORDER_SIZE, dSize)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SURF_BORDER_SIZE_TOL, dSizeTol)
|
||||
for i, sLabel in ipairs( sLabels) do
|
||||
if sLabel == vsVal[1] then EgtSetInfo( nCurrLayerId, KEY_SELECTION_LAST_SELECTION_TYPE, i) break end
|
||||
if sLabel == vsVal[1] then EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_SELECTION_LAST_SELECTION_TYPE, i) break end
|
||||
end
|
||||
dEdgeLinTol = tonumber( vsVal[4])
|
||||
dEdgeAngTol = tonumber( vsVal[5])
|
||||
dEdgeThick = tonumber( vsVal[6])
|
||||
EgtSetInfo( nCurrLayerId, KEY_LIN_TOL_EDGES, dEdgeLinTol)
|
||||
EgtSetInfo( nCurrLayerId, KEY_ANG_TOL_EDGES, dEdgeAngTol)
|
||||
EgtSetInfo( nCurrLayerId, KEY_THICK_EDGES, dEdgeThick)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LIN_TOL_EDGES, dEdgeLinTol)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_ANG_TOL_EDGES, dEdgeAngTol)
|
||||
EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_THICK_EDGES, dEdgeThick)
|
||||
|
||||
-- Rendo invisibili gli altri Layer di Trimmatura e tutti i Layer Temporanei
|
||||
-- NB. Il focus va sul Layer corrente
|
||||
@@ -189,7 +189,7 @@ else
|
||||
bOk = bOk and nFirstId ~= nil and nFirstId ~= GDB_ID.NULL and nCount > 0
|
||||
if bOk then
|
||||
for i = 0, nCount - 1 do
|
||||
EgtSetName( i + nFirstId, EDGE_HOLE_NAME)
|
||||
EgtSetName( i + nFirstId, MCH_TRIMMING.EDGE_HOLE_NAME)
|
||||
EgtSetColor( i + nFirstId, EDGES_COLOR)
|
||||
end
|
||||
end
|
||||
@@ -198,7 +198,7 @@ end
|
||||
local nId = EgtGetFirstInGroup( nCurrLayerId)
|
||||
local vIdToErase = {}
|
||||
while nId do
|
||||
if EgtGetName( nId) ~= EDGE_HOLE_NAME then table.insert( vIdToErase, nId) end
|
||||
if EgtGetName( nId) ~= MCH_TRIMMING.EDGE_HOLE_NAME then table.insert( vIdToErase, nId) end
|
||||
nId = EgtGetNext( nId)
|
||||
end
|
||||
EgtErase( vIdToErase)
|
||||
|
||||
+104
-102
@@ -6,52 +6,52 @@ local TrimmingVar = {
|
||||
bInit = false
|
||||
}
|
||||
|
||||
-- *** ============================== COSTANTI ============================== ***
|
||||
-- -- *** ============================== COSTANTI ============================== ***
|
||||
|
||||
-- Chiavi Info Part/Layers
|
||||
KEY_LIN_TOL = 'LinTol'
|
||||
KEY_LIN_TOL_EDGES = 'LinTolEdges' -- Edges Extraction (modify)
|
||||
KEY_ANG_TOL_EDGES = 'AngTolEdges' -- Edges Extraction (modify)
|
||||
KEY_THICK_EDGES = 'ThickEdges' -- Edges Extraction (modify)
|
||||
KEY_ANG_TOL = 'AngTol'
|
||||
KEY_SURF_ANG_TOL = 'SurfAngTol'
|
||||
KEY_SURF_BORDER_SIZE = 'BorderSize' -- Selection
|
||||
KEY_SURF_BORDER_SIZE_TOL = 'BorderSizeTol' -- Selection
|
||||
KEY_SELECTION_REF_SURF = 'nRefSurf' -- Selection
|
||||
KEY_SELECTION_LAST_SELECTION_TYPE = 'LastSelType' -- Selection (type)
|
||||
KEY_SELECTION_LAST_IDS = 'vSelLastIds' -- Undo Selection
|
||||
KEY_REF_TRIMMING_LAYER = 'nRefTrimmingLayer' -- Trimming Layer Ref
|
||||
KEY_AUTO_TRIMMING = 'AutoTrim' -- AutoTrimming
|
||||
KEY_SYNC_LINES_NUMBER = 'SkimmingFactor' -- Skimming Sync Lines
|
||||
KEY_SYNC_LINES_SHOW_ON_CORNERS = 'SyncLineShowOnCorners' -- Skimming Sync Lines Show on Corners
|
||||
KEY_SYNC_LINES_NUMBER_ANG_TOL = 'SkimmingFactorAngTol' -- Skimming Sync Lines Tol
|
||||
KEY_SYNC_LINES_INTERPOLATION_IDS = 'SyncLineInterIds' -- Sync Lines Interpolation Ids
|
||||
KEY_BOUND_LINES_INTERPOLATION_IDS = 'BoundSyncLineInterIds' -- Sync Lines Interpolation Ids
|
||||
KEY_ORIENTING_LINES_START_LEN = 'OrientingLinesStartLen' -- Lunghezza Interpolazione Orienting Lines Iniziale
|
||||
KEY_ORIENTING_LINES_END_LEN = 'OrientingLinesEndLen' -- Lunghezza Interpolazione Orienting Lines Finale
|
||||
KEY_ORIENTING_THETA_START = 'OrientingThetaStart' -- Angolo Theta Start per Orienting Lines
|
||||
KEY_ORIENTING_PHI_START = 'OrientingPhiStart' -- Angolo Phi Start per Orienting Lines
|
||||
KEY_ORIENTING_THETA_END = 'OrientingThetaEnd' -- Angolo Theta End per Orienting Lines
|
||||
KEY_ORIENTING_PHI_END = 'OrientingPhiEnd' -- Angolo Phi End per Orienting Lines
|
||||
KEY_SYNC_LINES_REGOLARIZATION = 'SyncCurvesRef' -- curve di inizio e fine della zona da regolarizzare
|
||||
-- -- Chiavi Info Part/Layers
|
||||
-- MCH_TRIMMING.KEY_LIN_TOL = 'LinTol'
|
||||
-- MCH_TRIMMING.KEY_LIN_TOL_EDGES = 'LinTolEdges' -- Edges Extraction (modify)
|
||||
-- MCH_TRIMMING.KEY_ANG_TOL_EDGES = 'AngTolEdges' -- Edges Extraction (modify)
|
||||
-- MCH_TRIMMING.KEY_THICK_EDGES = 'ThickEdges' -- Edges Extraction (modify)
|
||||
-- MCH_TRIMMING.KEY_ANG_TOL = 'AngTol'
|
||||
-- MCH_TRIMMING.KEY_SURF_ANG_TOL = 'SurfAngTol'
|
||||
-- MCH_TRIMMING.KEY_SURF_BORDER_SIZE = 'BorderSize' -- Selection
|
||||
-- MCH_TRIMMING.KEY_SURF_BORDER_SIZE_TOL = 'BorderSizeTol' -- Selection
|
||||
-- MCH_TRIMMING.KEY_SELECTION_REF_SURF = 'nRefSurf' -- Selection
|
||||
-- MCH_TRIMMING.KEY_SELECTION_LAST_SELECTION_TYPE = 'LastSelType' -- Selection (type)
|
||||
-- MCH_TRIMMING.KEY_SELECTION_LAST_IDS = 'vSelLastIds' -- Undo Selection
|
||||
-- MCH_TRIMMING.KEY_REF_TRIMMING_LAYER = 'nRefTrimmingLayer' -- Trimming Layer Ref
|
||||
-- MCH_TRIMMING.KEY_AUTO_TRIMMING = 'AutoTrim' -- AutoTrimming
|
||||
-- MCH_TRIMMING.KEY_SYNC_LINES_NUMBER = 'SkimmingFactor' -- Skimming Sync Lines
|
||||
-- MCH_TRIMMING.KEY_SYNC_LINES_SHOW_ON_CORNERS = 'SyncLineShowOnCorners' -- Skimming Sync Lines Show on Corners
|
||||
-- MCH_TRIMMING.KEY_SYNC_LINES_NUMBER_ANG_TOL = 'SkimmingFactorAngTol' -- Skimming Sync Lines Tol
|
||||
-- MCH_TRIMMING.KEY_SYNC_LINES_INTERPOLATION_IDS = 'SyncLineInterIds' -- Sync Lines Interpolation Ids
|
||||
-- MCH_TRIMMING.KEY_BOUND_LINES_INTERPOLATION_IDS = 'BoundSyncLineInterIds' -- Sync Lines Interpolation Ids
|
||||
-- MCH_TRIMMING.KEY_ORIENTING_LINES_START_LEN = 'OrientingLinesStartLen' -- Lunghezza Interpolazione Orienting Lines Iniziale
|
||||
-- MCH_TRIMMING.KEY_ORIENTING_LINES_END_LEN = 'OrientingLinesEndLen' -- Lunghezza Interpolazione Orienting Lines Finale
|
||||
-- MCH_TRIMMING.KEY_ORIENTING_THETA_START = 'OrientingThetaStart' -- Angolo Theta Start per Orienting Lines
|
||||
-- MCH_TRIMMING.KEY_ORIENTING_PHI_START = 'OrientingPhiStart' -- Angolo Phi Start per Orienting Lines
|
||||
-- MCH_TRIMMING.KEY_ORIENTING_THETA_END = 'OrientingThetaEnd' -- Angolo Theta End per Orienting Lines
|
||||
-- MCH_TRIMMING.KEY_ORIENTING_PHI_END = 'OrientingPhiEnd' -- Angolo Phi End per Orienting Lines
|
||||
-- MCH_TRIMMING.KEY_SYNC_LINES_REGOLARIZATION = 'SyncCurvesRef' -- curve di inizio e fine della zona da regolarizzare
|
||||
|
||||
-- Chive per Tipologia di Layer
|
||||
KEY_LAYER_TYPE = 'Trimming_Layer_Type'
|
||||
KEY_LAYER_SELECTION = 'Trimming_Selection_Layer'
|
||||
KEY_LAYER_SELECTION_HOLES = 'Trimming_Selection_Holes_Layer'
|
||||
KEY_LAYER_EDIT_CURVES = 'Trimming_EditCurves_Layer'
|
||||
KEY_LAYER_SYNC_CURVES = 'Trimming_SyncCurves_Layer'
|
||||
KEY_LAYER_ORIENTATION_CURVES = 'Trimming_OrientationCurves_Layer'
|
||||
KEY_LAYER_EDIT_SURF = 'Trimming_EditSurf_Layer'
|
||||
-- -- Chive per Tipologia di Layer
|
||||
-- MCH_TRIMMING.KEY_LAYER_TYPE = 'Trimming_Layer_Type'
|
||||
-- MCH_TRIMMING.KEY_LAYER_SELECTION = 'Trimming_Selection_Layer'
|
||||
-- MCH_TRIMMING.KEY_LAYER_SELECTION_HOLES = 'Trimming_Selection_Holes_Layer'
|
||||
-- MCH_TRIMMING.KEY_LAYER_EDIT_CURVES = 'Trimming_EditCurves_Layer'
|
||||
-- MCH_TRIMMING.KEY_LAYER_SYNC_CURVES = 'Trimming_SyncCurves_Layer'
|
||||
-- MCH_TRIMMING.KEY_LAYER_ORIENTATION_CURVES = 'Trimming_OrientationCurves_Layer'
|
||||
-- MCH_TRIMMING.KEY_LAYER_EDIT_SURF = 'Trimming_EditSurf_Layer'
|
||||
|
||||
-- Generali
|
||||
PART_NAME = 'Trimming'
|
||||
LAYER_NAME_SELECTION = 'Trimming'
|
||||
LAYER_NAME_SELECTION_HOLES = 'TrimmingHoles'
|
||||
LAYER_NAME_EDIT_CURVES = 'EditCurves'
|
||||
LAYER_NAME_SYNC_CURVES = 'SyncCurves'
|
||||
LAYER_NAME_ORIENTATION_CURVES = 'OrientationCurves'
|
||||
LAYER_NAME_EDIT_SURF = 'EditSurf'
|
||||
-- -- Generali
|
||||
-- MCH_TRIMMING.PART_NAME = 'Trimming'
|
||||
-- MCH_TRIMMING.LAYER_NAME_SELECTION = 'Trimming'
|
||||
-- MCH_TRIMMING.LAYER_NAME_SELECTION_HOLES = 'TrimmingHoles'
|
||||
-- MCH_TRIMMING.LAYER_NAME_EDIT_CURVES = 'EditCurves'
|
||||
-- MCH_TRIMMING.LAYER_NAME_SYNC_CURVES = 'SyncCurves'
|
||||
-- MCH_TRIMMING.LAYER_NAME_ORIENTATION_CURVES = 'OrientationCurves'
|
||||
-- MCH_TRIMMING.LAYER_NAME_EDIT_SURF = 'EditSurf'
|
||||
ANG_FACE_TOL = 30.
|
||||
ANG_TOL = 15.
|
||||
LIN_TOL = 0.2
|
||||
@@ -67,46 +67,46 @@ ORIENTING_LINES_PHI_END = 90.0
|
||||
ORIENTING_LINES_START_LEN = 10.0
|
||||
ORIENTING_LINES_END_LEN = 10.0
|
||||
|
||||
-- Selezione delle superfici --
|
||||
SELECTION_SURF_NAME = 'Selected_Surf'
|
||||
SELECTION_TYPE = {
|
||||
INSERT = 'Insert',
|
||||
FACE_SEARCH = 'Search Faces',
|
||||
SURF_SEARCH = 'Search Surfaces'
|
||||
}
|
||||
SELECTION_NO_FACE = -1
|
||||
-- -- Selezione delle superfici --
|
||||
-- MCH_TRIMMING.SELECTION_SURF_NAME = 'Selected_Surf'
|
||||
-- MCH_TRIMMING.SELECTION_TYPE = {
|
||||
-- INSERT = 'Insert',
|
||||
-- FACE_SEARCH = 'Search Faces',
|
||||
-- SURF_SEARCH = 'Search Surfaces'
|
||||
-- }
|
||||
-- MCH_TRIMMING.SELECTION_NO_FACE = -1
|
||||
SELECTION_SURF_COLOR = Color3d( 255, 255, 185)
|
||||
|
||||
-- Creazione dei bordi Bezier --
|
||||
EDGES_NAME = 'Border'
|
||||
EDGE_HOLE_NAME = 'ButtonHole'
|
||||
-- -- Creazione dei bordi Bezier --
|
||||
-- MCH_TRIMMING.EDGES_NAME = 'Border'
|
||||
-- MCH_TRIMMING.EDGE_HOLE_NAME = 'ButtonHole'
|
||||
EDGES_COLOR = Color3d( 0, 128, 255)
|
||||
KEY_BORDER_ORDER = 'BorderOrder'
|
||||
KEY_FIRST_BORDER = 'BorderV0'
|
||||
KEY_SECOND_BORDER = 'BorderV1'
|
||||
-- MCH_TRIMMING.KEY_BORDER_ORDER = 'BorderOrder'
|
||||
-- MCH_TRIMMING.KEY_FIRST_BORDER = 'BorderV0'
|
||||
-- MCH_TRIMMING.KEY_SECOND_BORDER = 'BorderV1'
|
||||
|
||||
-- Edit dei bordi di Bezier --
|
||||
EDGES_EDIT_TYPE = {
|
||||
AUTOMATIC = 'Automatic',
|
||||
THICKNESS = 'Thickness'
|
||||
}
|
||||
-- -- Edit dei bordi di Bezier --
|
||||
-- MCH_TRIMMING.EDGES_EDIT_TYPE = {
|
||||
-- AUTOMATIC = 'Automatic',
|
||||
-- THICKNESS = 'Thickness'
|
||||
-- }
|
||||
|
||||
-- Creazione dei tratti di sincronizzazione
|
||||
SYNC_LINE_NAME = 'SyncLines'
|
||||
-- -- Creazione dei tratti di sincronizzazione
|
||||
-- MCH_TRIMMING.SYNC_LINE_NAME = 'SyncLines'
|
||||
SYNC_LINE_COLOR = Color3d( 0, 255, 0)
|
||||
SYNC_LINE_INTERP_COLOR = Color3d( 255, 165, 0)
|
||||
|
||||
-- Creazione dei tratti di orientamento
|
||||
ORIENTATION_LINE_NAME = 'OrientationLine'
|
||||
-- -- Creazione dei tratti di orientamento
|
||||
-- MCH_TRIMMING.ORIENTATION_LINE_NAME = 'OrientationLine'
|
||||
ORIENTATION_LINE_COLOR = Color3d( 255, 255, 0)
|
||||
|
||||
-- Creazione della Superficie Ruled di Bezier
|
||||
RULED_BZ_NAME = 'SurfBz'
|
||||
-- -- Creazione della Superficie Ruled di Bezier
|
||||
-- MCH_TRIMMING.RULED_BZ_NAME = 'SurfBz'
|
||||
RULED_BZ_COLOR = Color3d( 37, 37, 37)
|
||||
|
||||
-- Edit della superficie di Bezier
|
||||
EDIT_SURF_NEWSURF_NAME = 'NewSurf'
|
||||
EDIT_SURF_NEWBORDER_NAME = 'NewBorder'
|
||||
-- -- Edit della superficie di Bezier
|
||||
-- MCH_TRIMMING.EDIT_SURF_NEWSURF_NAME = 'NewSurf'
|
||||
-- MCH_TRIMMING.EDIT_SURF_NEWBORDER_NAME = 'NewBorder'
|
||||
EDIT_SURF_COLOR = Color3d( 0,128,0)
|
||||
EDIT_SURF_SYNC_COLOR = Color3d(255,0,128)
|
||||
EDIT_SURF_BORDER_COLOR = Color3d(128,128,255)
|
||||
@@ -171,11 +171,11 @@ function TrimmingVar.CreateTrimmingLayer( nCurrPartId, bForHoles)
|
||||
if bOk then
|
||||
TrimmingVar.IncrementCounter()
|
||||
if not bForHoles then
|
||||
local sName = LAYER_NAME_SELECTION .. ' ' .. TrimmingVar.nCounter
|
||||
bOk = EgtSetName( nCurrLayerId, sName) and EgtSetInfo( nCurrLayerId, KEY_LAYER_TYPE, KEY_LAYER_SELECTION)
|
||||
local sName = MCH_TRIMMING.LAYER_NAME_SELECTION .. ' ' .. TrimmingVar.nCounter
|
||||
bOk = EgtSetName( nCurrLayerId, sName) and EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LAYER_TYPE, MCH_TRIMMING.KEY_LAYER_SELECTION)
|
||||
else
|
||||
local sName = LAYER_NAME_SELECTION_HOLES .. ' ' .. TrimmingVar.nCounter
|
||||
bOk = EgtSetName( nCurrLayerId, sName) and EgtSetInfo( nCurrLayerId, KEY_LAYER_TYPE, KEY_LAYER_SELECTION_HOLES)
|
||||
local sName = MCH_TRIMMING.LAYER_NAME_SELECTION_HOLES .. ' ' .. TrimmingVar.nCounter
|
||||
bOk = EgtSetName( nCurrLayerId, sName) and EgtSetInfo( nCurrLayerId, MCH_TRIMMING.KEY_LAYER_TYPE, MCH_TRIMMING.KEY_LAYER_SELECTION_HOLES)
|
||||
end
|
||||
end
|
||||
if not bOk then
|
||||
@@ -189,8 +189,8 @@ end
|
||||
-- Funzione per verificare se un Layer è un Layer di Trimmatura
|
||||
function TrimmingVar.IsTrimmingLayer( nId)
|
||||
-- Verifico che la chiave del gruppo sia coerente
|
||||
local sLayerType = EgtGetInfo( nId, KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and ( sLayerType == KEY_LAYER_SELECTION or sLayerType == KEY_LAYER_SELECTION_HOLES))
|
||||
local sLayerType = EgtGetInfo( nId, MCH_TRIMMING.KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and ( sLayerType == MCH_TRIMMING.KEY_LAYER_SELECTION or sLayerType == MCH_TRIMMING.KEY_LAYER_SELECTION_HOLES))
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
@@ -198,8 +198,8 @@ end
|
||||
function TrimmingVar.IsTrimmingHoleLayer( nId)
|
||||
-- Verifico che sia un Layer di Trimmatura
|
||||
if not TrimmingVar.IsTrimmingLayer( nId) then return false end
|
||||
local sLayerType = EgtGetInfo( nId, KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == KEY_LAYER_SELECTION_HOLES)
|
||||
local sLayerType = EgtGetInfo( nId, MCH_TRIMMING.KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == MCH_TRIMMING.KEY_LAYER_SELECTION_HOLES)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
@@ -210,7 +210,7 @@ function TrimmingVar.GetTrimmingLayerRefId( nId)
|
||||
if TrimmingVar.IsTrimmingLayer( nId) then return nId end
|
||||
if TrimmingVar.IsEditCurvesLayer( nId) or TrimmingVar.IsEditSyncCurvesLayer( nId) or
|
||||
TrimmingVar.IsEditSurfLayer( nId) or TrimmingVar.CreateEditOrientationCurvesLayer( nId) then
|
||||
local nTrimmingLayerRef = EgtGetInfo( nId, KEY_REF_TRIMMING_LAYER, 'i')
|
||||
local nTrimmingLayerRef = EgtGetInfo( nId, MCH_TRIMMING.KEY_REF_TRIMMING_LAYER, 'i')
|
||||
if nTrimmingLayerRef ~= nil and TrimmingVar.IsTrimmingLayer( nTrimmingLayerRef) then return nTrimmingLayerRef end
|
||||
end
|
||||
return GDB_ID.NULL
|
||||
@@ -224,9 +224,9 @@ function TrimmingVar.CreateEditCurvesLayer( nCurrPartId, nCurrLayerId)
|
||||
local nEditLayerId = EgtGroup( nCurrPartId)
|
||||
local bOk = ( nEditLayerId ~= nil)
|
||||
if bOk then
|
||||
bOk = ( EgtSetName( nEditLayerId, LAYER_NAME_EDIT_CURVES) and
|
||||
EgtSetInfo( nEditLayerId, KEY_LAYER_TYPE, KEY_LAYER_EDIT_CURVES) and
|
||||
EgtSetInfo( nEditLayerId, KEY_REF_TRIMMING_LAYER, nCurrLayerId))
|
||||
bOk = ( EgtSetName( nEditLayerId, MCH_TRIMMING.LAYER_NAME_EDIT_CURVES) and
|
||||
EgtSetInfo( nEditLayerId, MCH_TRIMMING.KEY_LAYER_TYPE, MCH_TRIMMING.KEY_LAYER_EDIT_CURVES) and
|
||||
EgtSetInfo( nEditLayerId, MCH_TRIMMING.KEY_REF_TRIMMING_LAYER, nCurrLayerId))
|
||||
end
|
||||
if not bOk then
|
||||
EgtErase( nEditLayerId)
|
||||
@@ -240,8 +240,8 @@ end
|
||||
function TrimmingVar.IsEditCurvesLayer( nId)
|
||||
if nId == nil or nId == GDB_ID.NULL then return false end
|
||||
-- Verifico che la chiave del gruppo sia coerente
|
||||
local sLayerType = EgtGetInfo( nId, KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == KEY_LAYER_EDIT_CURVES)
|
||||
local sLayerType = EgtGetInfo( nId, MCH_TRIMMING.KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == MCH_TRIMMING.KEY_LAYER_EDIT_CURVES)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
@@ -265,9 +265,9 @@ function TrimmingVar.CreateEditSyncCurvesLayer( nCurrPartId, nCurrLayerId)
|
||||
local nEditSyncLayerId = EgtGroup( nCurrPartId)
|
||||
local bOk = ( nEditSyncLayerId ~= nil)
|
||||
if bOk then
|
||||
bOk = ( EgtSetName( nEditSyncLayerId, LAYER_NAME_SYNC_CURVES) and
|
||||
EgtSetInfo( nEditSyncLayerId, KEY_LAYER_TYPE, KEY_LAYER_SYNC_CURVES) and
|
||||
EgtSetInfo( nEditSyncLayerId, KEY_REF_TRIMMING_LAYER, nCurrLayerId) and
|
||||
bOk = ( EgtSetName( nEditSyncLayerId, MCH_TRIMMING.LAYER_NAME_SYNC_CURVES) and
|
||||
EgtSetInfo( nEditSyncLayerId, MCH_TRIMMING.KEY_LAYER_TYPE, MCH_TRIMMING.KEY_LAYER_SYNC_CURVES) and
|
||||
EgtSetInfo( nEditSyncLayerId, MCH_TRIMMING.KEY_REF_TRIMMING_LAYER, nCurrLayerId) and
|
||||
EgtSetColor( nEditSyncLayerId, SYNC_LINE_COLOR))
|
||||
end
|
||||
if not bOk then
|
||||
@@ -282,8 +282,8 @@ end
|
||||
function TrimmingVar.IsEditSyncCurvesLayer( nId)
|
||||
if nId == nil or nId == GDB_ID.NULL then return false end
|
||||
-- Verifico che la chiave del gruppo sia coerente
|
||||
local sLayerType = EgtGetInfo( nId, KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == KEY_LAYER_SYNC_CURVES)
|
||||
local sLayerType = EgtGetInfo( nId, MCH_TRIMMING.KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == MCH_TRIMMING.KEY_LAYER_SYNC_CURVES)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
@@ -311,9 +311,9 @@ function TrimmingVar.CreateEditOrientationCurvesLayer( nCurrPartId, nCurrLayerId
|
||||
local nEditOrientationLayerId = EgtGroup( nCurrPartId)
|
||||
local bOk = ( nEditOrientationLayerId ~= nil)
|
||||
if bOk then
|
||||
bOk = ( EgtSetName( nEditOrientationLayerId, LAYER_NAME_ORIENTATION_CURVES) and
|
||||
EgtSetInfo( nEditOrientationLayerId, KEY_LAYER_TYPE, KEY_LAYER_ORIENTATION_CURVES) and
|
||||
EgtSetInfo( nEditOrientationLayerId, KEY_REF_TRIMMING_LAYER, nCurrLayerId) and
|
||||
bOk = ( EgtSetName( nEditOrientationLayerId, MCH_TRIMMING.LAYER_NAME_ORIENTATION_CURVES) and
|
||||
EgtSetInfo( nEditOrientationLayerId, MCH_TRIMMING.KEY_LAYER_TYPE, MCH_TRIMMING.KEY_LAYER_ORIENTATION_CURVES) and
|
||||
EgtSetInfo( nEditOrientationLayerId, MCH_TRIMMING.KEY_REF_TRIMMING_LAYER, nCurrLayerId) and
|
||||
EgtSetColor( nEditOrientationLayerId, ORIENTATION_LINE_COLOR))
|
||||
end
|
||||
if not bOk then
|
||||
@@ -328,8 +328,8 @@ end
|
||||
function TrimmingVar.IsOrientationCurvesLayer( nId)
|
||||
if nId == nil or nId == GDB_ID.NULL then return false end
|
||||
-- Verifico che la chiave del gruppo sia coerente
|
||||
local sLayerType = EgtGetInfo( nId, KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == KEY_LAYER_ORIENTATION_CURVES)
|
||||
local sLayerType = EgtGetInfo( nId, MCH_TRIMMING.KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == MCH_TRIMMING.KEY_LAYER_ORIENTATION_CURVES)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
@@ -358,9 +358,9 @@ function TrimmingVar.CreateEditSurfLayer( nCurrPartId, nCurrLayerId)
|
||||
local nEditSurfLayerId = EgtGroup( nCurrPartId)
|
||||
local bOk = ( nEditSurfLayerId ~= nil)
|
||||
if bOk then
|
||||
bOk = ( EgtSetName( nEditSurfLayerId, LAYER_NAME_EDIT_SURF) and
|
||||
EgtSetInfo( nEditSurfLayerId, KEY_LAYER_TYPE, KEY_LAYER_EDIT_SURF) and
|
||||
EgtSetInfo( nEditSurfLayerId, KEY_REF_TRIMMING_LAYER, nCurrLayerId) and
|
||||
bOk = ( EgtSetName( nEditSurfLayerId, MCH_TRIMMING.LAYER_NAME_EDIT_SURF) and
|
||||
EgtSetInfo( nEditSurfLayerId, MCH_TRIMMING.KEY_LAYER_TYPE, MCH_TRIMMING.KEY_LAYER_EDIT_SURF) and
|
||||
EgtSetInfo( nEditSurfLayerId, MCH_TRIMMING.KEY_REF_TRIMMING_LAYER, nCurrLayerId) and
|
||||
EgtSetColor( nEditSurfLayerId, EDIT_SURF_COLOR))
|
||||
end
|
||||
if not bOk then
|
||||
@@ -375,8 +375,8 @@ end
|
||||
function TrimmingVar.IsEditSurfLayer( nId)
|
||||
if nId == nil or nId == GDB_ID.NULL then return false end
|
||||
-- Verifico che la chiave del gruppo sia coerente
|
||||
local sLayerType = EgtGetInfo( nId, KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == KEY_LAYER_EDIT_SURF)
|
||||
local sLayerType = EgtGetInfo( nId, MCH_TRIMMING.KEY_LAYER_TYPE, 's')
|
||||
return ( sLayerType ~= nil and sLayerType == MCH_TRIMMING.KEY_LAYER_EDIT_SURF)
|
||||
end
|
||||
|
||||
---------------------------------------------------------------------------
|
||||
@@ -417,14 +417,16 @@ end
|
||||
-- Funzione per convertire un Color3d ad una stringa "nR,nG,nB" [0-255],[0-255],[0-255]
|
||||
function TrimmingVar.GetStringFromColor( myColor)
|
||||
if not myColor then return nil end
|
||||
return ( "".. myColor:getRed().. ",".. myColor:getGreen().. ",".. myColor:getBlue())
|
||||
local cColor = Color3d( myColor)
|
||||
return ( "".. cColor:getRed().. ",".. cColor:getGreen().. ",".. cColor:getBlue())
|
||||
end
|
||||
|
||||
-----------------------------------------------------------------------------
|
||||
-- Funzione per convertire Colori da Classe3d a stringa per File.ini
|
||||
function TrimmingVar.GetColorForIniFile( myColor)
|
||||
if not myColor then return nil end
|
||||
return ( myColor:getRed().. ",".. myColor:getGreen().. ",".. myColor:getBlue())
|
||||
local cColor = Color3d( myColor)
|
||||
return ( "".. cColor:getRed().. ",".. cColor:getGreen().. ",".. cColor:getBlue())
|
||||
end
|
||||
|
||||
--======================== Utility =======================
|
||||
|
||||
Reference in New Issue
Block a user