Icarus 2.4j4 :

- aggiunto Grid da Oggetto anche in Start Layer
- corretta gestione tipo slice in DB lavorazioni.
This commit is contained in:
DarioS
2022-10-28 20:39:40 +02:00
parent a6c10569e0
commit 2c04b2e5cc
7 changed files with 113 additions and 23 deletions
+1 -1
View File
@@ -1028,7 +1028,7 @@ Public Class ComboMachiningParam
Friend Overrides Sub WriteParamOnDb(nIndex As Integer)
Select Case Type
Case Params.SLICINGTYPE
WriteMachiningParam(nIndex, MAC_SLICING45, m_SelValue.Id)
WriteMachiningParam(nIndex, MAC_SLICINGTYPE, m_SelValue.Id)
Case Params.STRANDORDER
WriteMachiningParam(nIndex, MAC_STRANDORDER, m_SelValue.Id)
Case Params.DIRECTION
+1 -5
View File
@@ -204,7 +204,7 @@ Public Class Material
End Sub
Private Sub ReadAllParams()
'm_bSlicing45 = ReadMaterialParamDouble(m_nIndex, MAC_SLICING45, 0, CurrentMachine.sMachiningFilePath)
'm_nSlicingType = ReadMaterialParamDouble(m_nIndex, MAC_SLICINGTYPE, 0, CurrentMachine.sMachiningFilePath)
'm_dStrandH = ReadMaterialParamDouble(m_nIndex, MAC_STRANDH, 0, CurrentMachine.sMachiningFilePath)
'm_dStrandW = ReadMaterialParamDouble(m_nIndex, MAC_STRANDW, 0, CurrentMachine.sMachiningFilePath)
'm_nStrandCount = ReadMaterialParamDouble(m_nIndex, MAC_STRANDCOUNT, 0, CurrentMachine.sMachiningFilePath)
@@ -871,16 +871,12 @@ Public Class CheckMaterialParam
Sub New(Type As Params, nIndex As Integer)
MyBase.New(Type)
Select Case Type
'Case Params.SLICING45
' m_bValue = ReadMaterialParamDouble(nIndex, MAC_SLICING45, 0)
End Select
m_bOrigValue = m_bValue
End Sub
Friend Overrides Sub WriteParamOnDb(nIndex As Integer)
Select Case Type
'Case Params.SLICING45
' WriteMaterialParam(nIndex, MAC_SLICING45, If(m_bValue, 1, 0))
End Select
End Sub
+2 -2
View File
@@ -60,5 +60,5 @@ Imports System.Windows
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.4.10.3")>
<Assembly: AssemblyFileVersion("2.4.10.3")>
<Assembly: AssemblyVersion("2.4.10.4")>
<Assembly: AssemblyFileVersion("2.4.10.4")>
+41 -13
View File
@@ -1235,19 +1235,35 @@ Public Class MySceneHostVM
EgtSelect(e.Location, Scene.DIM_SEL, Scene.DIM_SEL, nSel)
Dim nId As Integer = EgtGetFirstObjInSelWin()
While nId <> GDB_ID.NULL
' Recupero l'identificativo del pezzo cui appartiene
Dim nPartId As Integer = EgtGetParent(nId)
Dim bFound As Boolean = False
If nPartId = Map.refStartMachPanelVM.nStartMachLayerId Then bFound = True
If Not bFound Then
nId = EgtGetNextObjInSelWin()
Continue While
' Se per Griglia da faccia di oggetto
If Map.refStartMachPanelVM.bCPlaneObj_IsActive Then
If EgtGetType( nId) = GDB_TY.SRF_MESH Then
m_nIdToSel = nId
Exit While
End If
Else
' Recupero l'identificativo del pezzo cui appartiene
Dim nPartId As Integer = EgtGetParent(nId)
Dim bFound As Boolean = False
If nPartId = Map.refStartMachPanelVM.nStartMachLayerId Then bFound = True
If bFound Then
m_nIdToSel = nId
Exit While
End If
End If
' Memorizzo Id da selezionare
m_nIdToSel = nId
Exit While
nId = EgtGetNextObjInSelWin()
End While
If m_nIdToSel <> GDB_ID.NULL Then
' recupero dati punto di selezione
Dim PtTemp As Point3d
Dim nAux As Integer
If EgtGetPointFromSelect(m_nIdToSel, e.Location, PtTemp, nAux) Then
' eseguo la selezione
EgtSelectObj(m_nIdToSel)
' dati ausiliari
EgtSetSelInfo(m_nIdToSel, nAux, PtTemp)
End If
End If
' Dati per drag
m_bDragToStart = True
End Sub
@@ -1268,10 +1284,22 @@ Public Class MySceneHostVM
Friend Sub StartMach_OnMouseUpScene(sender As Object, e As System.Windows.Forms.MouseEventArgs)
' Se eseguito drag
If Not m_bDragToStart Then
' Se selezione da eseguire
' Se selezione da eseguire
ElseIf m_nIdToSel <> GDB_ID.NULL Then
' Eseguo la selezione
Map.refStartMachPanelVM.SelStartFromId(m_nIdToSel)
If Map.refStartMachPanelVM.bCPlaneObj_IsActive Then
' eseguo comando
Map.refSceneHostVM.MainController.ExecuteCommand(Controller.CMD.GRID_OBJ)
Map.refStartMachPanelVM.ResetCPlaneObjIsActive()
' ripristino selezioni precedenti
For Each Id In Map.refStartMachPanelVM.PrevSelObjs
EgtSelectObj(Id)
Next
Map.refControllerInputPanelVM.ResetInputBox()
Else
' Eseguo la selezione
Map.refStartMachPanelVM.SelStartFromId(m_nIdToSel)
End If
End If
' Reset
m_bDrag = False
+1 -1
View File
@@ -83,7 +83,7 @@ Public Class SecondaryWindowVM
End Sub
Private Sub SplashScreenTimer_Tick()
If m_WaitAfterRender > 4 Then
If m_WaitAfterRender > 2 Then
' chiudo SplashScreen
Map.refSplashScreen.Close()
ElseIf m_WaitAfterRender >= 1 Then
@@ -207,6 +207,7 @@
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Button Command="{Binding CPlaneTop_Command}"
ToolTip="{Binding CPlaneTopToolTip}"
@@ -255,6 +256,12 @@
Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/GridViewPanel/CplaneORIGIN.png" Stretch="Uniform"/>
</Button>
<Button Grid.Column="8"
Command="{Binding CPlaneObj_Command}"
ToolTip="{Binding CPlaneObjToolTip}"
Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/GridViewPanel/CplaneOBJECT.png" Stretch="Uniform"/>
</Button>
</Grid>
</Border>
<!--<Popup IsOpen="{Binding IsChecked, ElementName=GridBtn}"
+60 -1
View File
@@ -421,7 +421,18 @@ Public Class StartMachPanelVM
Friend Sub OnKeyDown(Key As Forms.Keys)
If Key = Forms.Keys.Escape Then
' se attiva, disattivo griglia su oggetto
If m_bCPlaneObj_IsActive Then
m_bCPlaneObj_IsActive = False
ResetCPlaneObjIsActive()
' ripristino selezioni precedenti
For Each Id In Map.refShellNumberPanelVM.PrevSelObjs
EgtSelectObj(Id)
Next
EgtDraw()
' rimetto la selezione scena a null
Map.refSceneHostVM.MainScene.SetStatusNull()
End If
End If
End Sub
@@ -789,6 +800,54 @@ Public Class StartMachPanelVM
#End Region ' CPlaneOrigin
#Region "CPlaneObj"
Private m_bCPlaneObj_IsActive As Boolean = False
Friend ReadOnly Property bCPlaneObj_IsActive As Boolean
Get
Return m_bCPlaneObj_IsActive
End Get
End Property
Friend Sub ResetCPlaneObjIsActive()
m_bCPlaneObj_IsActive = False
End Sub
Private m_PrevSelObjs As New List(Of Integer)
Friend ReadOnly Property PrevSelObjs As List(Of Integer)
Get
Return m_PrevSelObjs
End Get
End Property
''' <summary>
''' Returns a command that do CPlanepObj.
''' </summary>
Public ReadOnly Property CPlaneObj_Command As ICommand
Get
If m_cmdCPlaneObj Is Nothing Then
m_cmdCPlaneObj = New Command(AddressOf CPlaneObj)
End If
Return m_cmdCPlaneObj
End Get
End Property
''' <summary>
''' Execute the CPlaneObj. This method is invoked by the CPlaneObjCommand.
''' </summary>
Public Sub CPlaneObj(ByVal param As Object)
If Map.refSceneHostVM.MainController.GetStep <> 0 Then Return
' salvo selezione precedente e deseleziono altri oggetti
Dim nSelObjId As Integer = EgtGetFirstSelectedObj()
While nSelObjId <> GDB_ID.NULL
m_PrevSelObjs.Add(nSelObjId)
nSelObjId = EgtGetNextSelectedObj()
End While
EgtDeselectAll()
m_bCPlaneObj_IsActive = True
' Map.refControllerInputPanelVM.PrepareInputBox("Grid from Selection", "Select the face of the object where to place the grid", "", False, False)
End Sub
#End Region ' CPlaneObj
#Region "DragMove"
Public ReadOnly Property DragMove_Command As ICommand