コード例 #1
0
 private void onInputChanged(object sender, EventArgs e)
 {
     try
     {
         // get loaded pallet / truck
         PackableBrick   packable        = cbPallets.SelectedType as PackableBrick;
         TruckProperties truckProperties = cbTrucks.SelectedType as TruckProperties;
         if (null == packable || null == truckProperties)
         {
             return;
         }
         // compute
         LayerSolver    solver = new LayerSolver();
         List <Layer2D> layers = solver.BuildLayers(
             packable.OuterDimensions
             , new Vector2D(
                 truckProperties.InsideLength - 2.0 * uCtrlMinDistanceLoadWall.ValueX
                 , truckProperties.InsideWidth - 2.0 * uCtrlMinDistanceLoadWall.ValueY)
             , 0.0 /* offsetZ */
             , BuildConstraintSet()
             , checkBoxBestLayersOnly.Checked
             );
         // update control
         uCtrlLayerList.SingleSelection    = true;
         uCtrlLayerList.Packable           = packable;
         uCtrlLayerList.ContainerHeight    = truckProperties.InsideHeight - uCtrlMinDistLoadRoof.Value;
         uCtrlLayerList.FirstLayerSelected = true;
         uCtrlLayerList.LayerList          = LayerSolver.ConvertList(layers);
     }
     catch (Exception ex)
     {
         _log.Error(ex.ToString());
     }
 }
コード例 #2
0
 private void onInputChanged(object sender, EventArgs e)
 {
     try
     {
         // get case /pallet
         Packable         packable         = cbCases.SelectedType as Packable;
         PalletProperties palletProperties = cbPallets.SelectedType as PalletProperties;
         if (null == packable || null == palletProperties)
         {
             return;
         }
         // compute
         LayerSolver    solver = new LayerSolver();
         List <Layer2D> layers = solver.BuildLayers(
             packable.OuterDimensions
             , new Vector2D(palletProperties.Length + 2.0 * uCtrlOverhang.ValueX, palletProperties.Width + 2.0 * uCtrlOverhang.ValueY)
             , palletProperties.Height
             , BuildConstraintSet()
             , checkBoxBestLayersOnly.Checked);
         // update control
         uCtrlLayerList.Packable           = packable;
         uCtrlLayerList.ContainerHeight    = uCtrlMaximumHeight.Value - palletProperties.Height;
         uCtrlLayerList.FirstLayerSelected = true;
         uCtrlLayerList.LayerList          = LayerSolver.ConvertList(layers);
     }
     catch (Exception ex)
     {
         _log.Error(ex.ToString());
     }
 }
コード例 #3
0
 private void onInputChanged(object sender, EventArgs e)
 {
     try
     {
         // get cylinder / case
         CylinderProperties cylinder       = cbCylinders.SelectedType as CylinderProperties;
         BoxProperties      caseProperties = cbCases.SelectedType as BoxProperties;
         if (null == cylinder || null == caseProperties)
         {
             return;
         }
         // compute
         LayerSolver       solver = new LayerSolver();
         List <Layer2DCyl> layers = solver.BuildLayers(
             cylinder.RadiusOuter, cylinder.Height
             , new Vector2D(caseProperties.InsideLength, caseProperties.InsideWidth)
             , 0.0
             , BuildConstraintSet()
             , checkBoxBestLayersOnly.Checked
             );
         uCtrlLayerList.Packable           = cylinder;
         uCtrlLayerList.ContainerHeight    = caseProperties.InsideHeight;
         uCtrlLayerList.FirstLayerSelected = true;
         uCtrlLayerList.LayerList          = LayerSolver.ConvertList(layers);
     }
     catch (Exception ex)
     {
         _log.Error(ex.ToString());
     }
 }
コード例 #4
0
        private void onInputChanged(object sender, EventArgs e)
        {
            try
            {
                // get box / case
                PackableBrick packable       = cbBoxes.SelectedType as PackableBrick;
                BoxProperties caseProperties = cbCases.SelectedType as BoxProperties;
                if (null == packable || null == caseProperties)
                {
                    return;
                }

                // update orientation control
                uCtrlCaseOrientation.BProperties = packable;

                // compute
                LayerSolver    solver = new LayerSolver();
                List <Layer2D> layers = solver.BuildLayers(
                    packable.OuterDimensions
                    , new Vector2D(caseProperties.InsideLength, caseProperties.InsideWidth)
                    , 0.0 /* offsetZ */
                    , BuildContraintSet()
                    , checkBoxBestLayersOnly.Checked
                    );
                // update control
                uCtrlLayerList.Packable           = packable;
                uCtrlLayerList.ContainerHeight    = caseProperties.InsideHeight;
                uCtrlLayerList.FirstLayerSelected = true;
                uCtrlLayerList.LayerList          = LayerSolver.ConvertList(layers);
            }
            catch (Exception ex)
            {
                _log.Error(ex.ToString());
            }
        }