Ignore:
Timestamp:
01/16/18 15:40:43 (20 months ago)
Author:
rhanghof
Message:

#2817:

  • The items can be rotated and tilted now.
  • Added pruning of extreme points in packed bins.
  • Added new packer which packs items by positioning them on the point with the minimum of wasted space. He uses rotating and tilting of items.
  • Added classes for sorting given items.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2817-BinPackingSpeedup/HeuristicLab.Problems.BinPacking.Views/3.3/Container3DView.xaml.cs

    r15554 r15617  
    1 /* HeuristicLab
    2  * Copyright (C) 2002-2016 Joseph Helm and Heuristic and Evolutionary Algorithms Laboratory (HEAL)
     1#region License Information
     2/* HeuristicLab
     3 * Copyright (C) 2002-2018 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
    34 *
    45 * This file is part of HeuristicLab.
     
    1516 *
    1617 * You should have received a copy of the GNU General Public License
    17  * along with HeuristicLab. If not, see<http://www.gnu.org/licenses/> .
     18 * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
    1819 */
     20#endregion
    1921
    2022using System;
     
    139141        var selectedModel = new GeometryModel3D { Geometry = new MeshGeometry3D(), Material = material };
    140142        AddSolidCube((MeshGeometry3D)selectedModel.Geometry, selectedPos.X, selectedPos.Y, selectedPos.Z,
    141           selectedPos.Rotated ? selectedItem.Value.Depth : selectedItem.Value.Width,
    142           selectedItem.Value.Height,
    143           selectedPos.Rotated ? selectedItem.Value.Width : selectedItem.Value.Depth);
     143          selectedItem.Value.DepthInView,
     144          selectedItem.Value.HeightInView,
     145          selectedItem.Value.DepthInView);
    144146        modelGroup.Children.Add(selectedModel);
    145147
     
    147149          var position = packing.Positions[item.Key];
    148150
    149           var w = position.Rotated ? item.Value.Depth : item.Value.Width;
    150           var h = item.Value.Height;
    151           var d = position.Rotated ? item.Value.Width : item.Value.Depth;
     151          var w = item.Value.WidthInView;
     152          var h = item.Value.HeightInView;
     153          var d = item.Value.DepthInView;
    152154
    153155          var model = new GeometryModel3D { Geometry = new MeshGeometry3D(), Material = hiddenMaterial };
     
    161163          var position = packing.Positions[item.Key];
    162164
    163           var w = position.Rotated ? item.Value.Depth : item.Value.Width;
    164           var h = item.Value.Height;
    165           var d = position.Rotated ? item.Value.Width : item.Value.Depth;
     165          var w = item.Value.WidthInView;
     166          var h = item.Value.HeightInView;
     167          var d = item.Value.DepthInView;
    166168
    167169          var model = new GeometryModel3D { Geometry = new MeshGeometry3D() };
Note: See TracChangeset for help on using the changeset viewer.