diff --git a/EgtBEAMWALL.ViewerOptimizer/ItemParamList/PParameterListV.xaml b/EgtBEAMWALL.ViewerOptimizer/ItemParamList/PParameterListV.xaml index 37a1f7ec..13d14cb3 100644 --- a/EgtBEAMWALL.ViewerOptimizer/ItemParamList/PParameterListV.xaml +++ b/EgtBEAMWALL.ViewerOptimizer/ItemParamList/PParameterListV.xaml @@ -59,7 +59,9 @@ - + diff --git a/EgtBEAMWALL.ViewerOptimizer/ItemParamList/QParameterListV.xaml b/EgtBEAMWALL.ViewerOptimizer/ItemParamList/QParameterListV.xaml index 08de6399..fdee02f5 100644 --- a/EgtBEAMWALL.ViewerOptimizer/ItemParamList/QParameterListV.xaml +++ b/EgtBEAMWALL.ViewerOptimizer/ItemParamList/QParameterListV.xaml @@ -24,6 +24,7 @@ + @@ -54,6 +55,32 @@ + + + diff --git a/EgtBEAMWALL.ViewerOptimizer/LeftPanel/LeftPanelVM.vb b/EgtBEAMWALL.ViewerOptimizer/LeftPanel/LeftPanelVM.vb index 7948bf65..e2ca1ab5 100644 --- a/EgtBEAMWALL.ViewerOptimizer/LeftPanel/LeftPanelVM.vb +++ b/EgtBEAMWALL.ViewerOptimizer/LeftPanel/LeftPanelVM.vb @@ -664,6 +664,19 @@ Public Class LeftPanelVM If Not IsNothing(AddPartWndVM.sNAM) Then EgtBeamSetPartName(AddPartWndVM.sNAM) EgtBeamSetPartCount(AddPartWndVM.nCNT) EgtBeamSetPartBox(AddPartWndVM.dL, AddPartWndVM.dH, AddPartWndVM.dW) + ' se progetto pareti e vista ruotata + If nType = BWType.WALL AndAlso (CurrentMachine.ViewDir = 1 OrElse CurrentMachine.ViewDir = 3) Then + '' ruoto le pareti di 180 per raddrizzarle rispetto alla vista + 'NewPart.Rotation(True, Map.refProjectVM.BTLStructureVM.nPROJTYPE, 180, False) + ' recupero il box del pezzo + Dim nBoxLayerId As Integer = EgtGetFirstNameInGroup(nNewPartId, "Box") + Dim b3Solid As New BBox3d + EgtGetBBoxGlob(nBoxLayerId, GDB_BB.STANDARD, b3Solid) + Dim bOk As Boolean = EgtRotate(nNewPartId, b3Solid.Center, Vector3d.Z_AX, 180, GDB_RT.GLOB) + If bOk Then + EgtSetInfo(nNewPartId, BTL_PRT_ROTATED, 180) + End If + End If ' aggiungo dati pezzo Dim NewPart As BTLPartM = BTLPartM.CreateBTLPart(nNewPartId) ' aggiungo pezzo alla lista