示例#1
0
        public void EditAnalysis(Analysis analysis)
        {
            RemoveItem(analysis);

            Form form = null;

            if (analysis is AnalysisCasePallet)
            {
                form = new FormNewAnalysisCasePallet(this, analysis);
            }
            else if (analysis is AnalysisBoxCase)
            {
                form = new FormNewAnalysisBoxCase(this, analysis);
            }
            else if (analysis is AnalysisCylinderPallet)
            {
                form = new FormNewAnalysisCylinderPallet(this, analysis);
            }
            else if (analysis is AnalysisCylinderCase)
            {
                form = new FormNewAnalysisCylinderCase(this, analysis);
            }
            else
            {
                MessageBox.Show("Unexepected analysis type!");
                return;
            }
            if (DialogResult.OK == form.ShowDialog())
            {
            }
        }
示例#2
0
        public void EditAnalysis(AnalysisHomo analysis)
        {
            // search for any DockContentAnalysis window and close it
            var seq = (from view in Views
                       where view is DockContentAnalysisEdit && analysis == (view as DockContentAnalysisEdit).Analysis
                       select view);

            if (seq.Count() > 0)
            {
                seq.First().Close();
            }

            // instantiate a form to edit analysis
            Form form = null;

            if (analysis is AnalysisCasePallet analysisCasePallet)
            {
                form = new FormNewAnalysisCasePallet(this, analysisCasePallet);
            }
            else if (analysis is AnalysisBoxCase analysisBoxCase)
            {
                form = new FormNewAnalysisBoxCase(this, analysisBoxCase);
            }
            else if (analysis is AnalysisCylinderPallet analysisCylinderPallet)
            {
                form = new FormNewAnalysisCylinderPallet(this, analysisCylinderPallet);
            }
            else if (analysis is AnalysisCylinderCase analysisCylinderCase)
            {
                form = new FormNewAnalysisCylinderCase(this, analysisCylinderCase);
            }
            else if (analysis is AnalysisPalletTruck analysisPalletTruck)
            {
                form = new FormNewAnalysisPalletTruck(this, analysisPalletTruck);
            }
            else if (analysis is AnalysisCaseTruck analysisCaseTruck)
            {
                form = new FormNewAnalysisCaseTruck(this, analysisCaseTruck);
            }
            else if (analysis is AnalysisCylinderTruck analysisCylinderTruck)
            {
                form = new FormNewAnalysisCylinderTruck(this, analysisCylinderTruck);
            }
            else if (analysis is AnalysisHCylPallet analysisHCylPallet)
            {
                form = new FormNewAnalysisHCylPallet(this, analysisHCylPallet);
            }
            else if (analysis is AnalysisHCylTruck analysisHCylTruck)
            {
                form = new FormNewAnalysisHCylTruck(this, analysisHCylTruck);
            }
            else
            {
                MessageBox.Show("Unexepected analysis type!");
                return;
            }
            if (DialogResult.OK == form.ShowDialog())
            {
            }
        }
示例#3
0
        /// <summary>
        /// Creates a new palet analysis
        /// </summary>
        /// <returns>created palet analysis</returns>
        public void CreateNewAnalysisCasePalletUI()
        {
            if (!CanCreateAnalysisCasePallet && !CanCreateAnalysisBundlePallet)
            {
                return;
            }
            FormNewAnalysisCasePallet form = new FormNewAnalysisCasePallet(this, null);

            if (DialogResult.OK == form.ShowDialog())
            {
            }
        }
示例#4
0
        /// <summary>
        /// Creates a new palet analysis
        /// </summary>
        /// <returns>created palet analysis</returns>
        public CasePalletAnalysis CreateNewAnalysisCasePalletUI()
        {
            if (!CanCreateAnalysisCasePallet)
            {
                return(null);
            }
            FormNewAnalysisCasePallet form = new FormNewAnalysisCasePallet(this, null);

            if (DialogResult.OK == form.ShowDialog())
            {
            }
            return(null);
        }
示例#5
0
 /// <summary>
 /// Creates a new palet analysis
 /// </summary>
 /// <returns>created palet analysis</returns>
 public void CreateNewAnalysisCasePalletUI()
 {
     if (!CanCreateAnalysisCasePallet && !CanCreateAnalysisBundlePallet)
     {
         return;
     }
     if (Properties.Settings.Default.DummyMode)
     {
         using (FormNewAnalysisCasePalletDM form = new FormNewAnalysisCasePalletDM(this, null))
             if (DialogResult.OK == form.ShowDialog())
             {
             }
     }
     else
     {
         using (FormNewAnalysisCasePallet form = new FormNewAnalysisCasePallet(this, null))
             if (DialogResult.OK == form.ShowDialog())
             {
             }
     }
 }
示例#6
0
        /// <summary>
        /// Creates a new palet analysis
        /// </summary>
        /// <returns>created palet analysis</returns>
        public CasePalletAnalysis CreateNewCasePalletAnalysisUI()
        {
            if (!CanCreateCasePalletAnalysis)
            {
                return(null);
            }

            FormNewAnalysisCasePallet form = new FormNewAnalysisCasePallet(this, null);

            if (DialogResult.OK == form.ShowDialog())
            {
            }

            /*
             * FormNewAnalysis form = new FormNewAnalysis(this);
             * form.Cases = Cases.ToArray();
             * form.Pallets = Pallets.ToArray();
             * form.Interlayers = Interlayers.ToArray();
             * form.PalletCorners = ListByType(typeof(PalletCornerProperties)).ToArray();
             * form.PalletCaps = ListByType(typeof(PalletCapProperties)).ToArray();
             * form.PalletFilms = ListByType(typeof(PalletFilmProperties)).ToArray();
             *
             * if (DialogResult.OK == form.ShowDialog())
             * {
             *  // build constraint set
             *  CasePalletConstraintSet constraintSet = new CasePalletConstraintSet();
             *  // overhang / underhang
             *  constraintSet.OverhangX = form.OverhangX;
             *  constraintSet.OverhangY = form.OverhangY;
             *  // allowed axes
             *  constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_X_N, form.AllowVerticalX);
             *  constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_X_P, form.AllowVerticalX);
             *  constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_Y_N, form.AllowVerticalY);
             *  constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_Y_P, form.AllowVerticalY);
             *  constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_Z_N, form.AllowVerticalZ);
             *  constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_Z_P, form.AllowVerticalZ);
             *  // allowed patterns
             *  constraintSet.ClearAllowedPatterns();
             *  foreach (string s in form.AllowedPatterns)
             *      constraintSet.SetAllowedPattern(s);
             *  // allow alternate layer
             *  constraintSet.AllowAlternateLayers = form.AllowAlternateLayers;
             *  constraintSet.AllowAlignedLayers = form.AllowAlignedLayers;
             *  // interlayers
             *  constraintSet.HasInterlayer = form.HasInterlayers;
             *  constraintSet.InterlayerPeriod = form.InterlayerPeriod;
             *  constraintSet.HasInterlayerAntiSlip = form.HasInterlayerAntiSlip;
             *  // stop criterion
             *  constraintSet.UseMaximumHeight = form.UseMaximumPalletHeight;
             *  constraintSet.UseMaximumNumberOfCases = form.UseMaximumNumberOfBoxes;
             *  constraintSet.UseMaximumPalletWeight = form.UseMaximumPalletWeight;
             *  constraintSet.UseMaximumWeightOnBox = form.UseMaximumLoadOnBox;
             *  constraintSet.MaximumHeight = form.MaximumPalletHeight;
             *  constraintSet.MaximumNumberOfItems = form.MaximumNumberOfBoxes;
             *  constraintSet.MaximumPalletWeight = form.MaximumPalletWeight;
             *  constraintSet.MaximumWeightOnBox = form.MaximumLoadOnBox;
             *  // number of solution kept
             *  constraintSet.UseNumberOfSolutionsKept = Properties.Settings.Default.KeepBestSolutions;
             *  if (constraintSet.UseNumberOfSolutionsKept)
             *      constraintSet.NumberOfSolutionsKept = Properties.Settings.Default.NoSolutionsToKeep;
             *  // number of pallet film turns
             *  constraintSet.PalletFilmTurns = form.PalletFilmTurns;
             *
             *  return CreateNewCasePalletAnalysis(
             *      form.AnalysisName, form.AnalysisDescription,
             *      form.SelectedBox, form.SelectedPallet,
             *      form.SelectedInterlayer, form.SelectedInterlayerAntiSlip,
             *      form.SelectedPalletCorners, form.SelectedPalletCap, form.SelectedPalletFilm,
             *      constraintSet,
             *      new CasePalletSolver());
             * }
             */
            return(null);
        }
示例#7
0
        /// <summary>
        /// Creates a new palet analysis
        /// </summary>
        /// <returns>created palet analysis</returns>
        public CasePalletAnalysis CreateNewCasePalletAnalysisUI()
        {
            if (!CanCreateCasePalletAnalysis) return null;

            FormNewAnalysisCasePallet form = new FormNewAnalysisCasePallet(this, null);
            if (DialogResult.OK == form.ShowDialog())
            {
            }
            /*
            FormNewAnalysis form = new FormNewAnalysis(this);
            form.Cases = Cases.ToArray();
            form.Pallets = Pallets.ToArray();
            form.Interlayers = Interlayers.ToArray();
            form.PalletCorners = ListByType(typeof(PalletCornerProperties)).ToArray();
            form.PalletCaps = ListByType(typeof(PalletCapProperties)).ToArray();
            form.PalletFilms = ListByType(typeof(PalletFilmProperties)).ToArray();

            if (DialogResult.OK == form.ShowDialog())
            {
                // build constraint set
                CasePalletConstraintSet constraintSet = new CasePalletConstraintSet();
                // overhang / underhang
                constraintSet.OverhangX = form.OverhangX;
                constraintSet.OverhangY = form.OverhangY;
                // allowed axes
                constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_X_N, form.AllowVerticalX);
                constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_X_P, form.AllowVerticalX);
                constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_Y_N, form.AllowVerticalY);
                constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_Y_P, form.AllowVerticalY);
                constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_Z_N, form.AllowVerticalZ);
                constraintSet.SetAllowedOrthoAxis(HalfAxis.HAxis.AXIS_Z_P, form.AllowVerticalZ);
                // allowed patterns
                constraintSet.ClearAllowedPatterns();
                foreach (string s in form.AllowedPatterns)
                    constraintSet.SetAllowedPattern(s);
                // allow alternate layer
                constraintSet.AllowAlternateLayers = form.AllowAlternateLayers;
                constraintSet.AllowAlignedLayers = form.AllowAlignedLayers;
                // interlayers
                constraintSet.HasInterlayer = form.HasInterlayers;
                constraintSet.InterlayerPeriod = form.InterlayerPeriod;
                constraintSet.HasInterlayerAntiSlip = form.HasInterlayerAntiSlip;
                // stop criterion
                constraintSet.UseMaximumHeight = form.UseMaximumPalletHeight;
                constraintSet.UseMaximumNumberOfCases = form.UseMaximumNumberOfBoxes;
                constraintSet.UseMaximumPalletWeight = form.UseMaximumPalletWeight;
                constraintSet.UseMaximumWeightOnBox = form.UseMaximumLoadOnBox;
                constraintSet.MaximumHeight = form.MaximumPalletHeight;
                constraintSet.MaximumNumberOfItems = form.MaximumNumberOfBoxes;
                constraintSet.MaximumPalletWeight = form.MaximumPalletWeight;
                constraintSet.MaximumWeightOnBox = form.MaximumLoadOnBox;
                // number of solution kept
                constraintSet.UseNumberOfSolutionsKept = Properties.Settings.Default.KeepBestSolutions;
                if (constraintSet.UseNumberOfSolutionsKept)
                    constraintSet.NumberOfSolutionsKept = Properties.Settings.Default.NoSolutionsToKeep;
                // number of pallet film turns
                constraintSet.PalletFilmTurns = form.PalletFilmTurns;

                return CreateNewCasePalletAnalysis(
                    form.AnalysisName, form.AnalysisDescription,
                    form.SelectedBox, form.SelectedPallet,
                    form.SelectedInterlayer, form.SelectedInterlayerAntiSlip,
                    form.SelectedPalletCorners, form.SelectedPalletCap, form.SelectedPalletFilm,
                    constraintSet,
                    new CasePalletSolver());
            }
            */ 
            return null;
        }