Beispiel #1
0
        /// <summary>
        /// Rotates the parcel in a way that Length becomes the longest side and Height becomes the shortest side
        /// </summary>
        /// <param name="d"></param>
        /// <returns>Parcel dimensions after rotation</returns>
        public static ParcelDimensions Rotate(this ParcelDimensions d)
        {
            var rotated = new List <int>()
            {
                d.Length,
                d.Breadth,
                d.Height
            }
            .OrderByDescending(x => x)
            .ToList();

            return(new ParcelDimensions()
            {
                Length = rotated[0],
                Breadth = rotated[1],
                Height = rotated[2]
            });
        }
Beispiel #2
0
 public ParcelSettings()
 {
     MaxDimensions = new ParcelDimensions();
 }
Beispiel #3
0
 /// <summary>
 /// Checks if a parcel with given dimensions fits into a container
 /// </summary>
 /// <param name="parcel"></param>
 /// <param name="container"></param>
 /// <returns></returns>
 public static bool FitsInto(this ParcelDimensions parcel, ParcelDimensions container)
 {
     return(parcel.Length <= container.Length &&
            parcel.Breadth <= container.Breadth &&
            parcel.Height <= container.Height);
 }
Beispiel #4
0
 /// <summary>
 /// Volume of a parcel
 /// </summary>
 /// <param name="d"></param>
 /// <returns>Volume of a parcel in mm^3</returns>
 public static int Volume(this ParcelDimensions d)
 {
     return(d.Length * d.Breadth * d.Height);
 }