Created
August 13, 2014 19:18
-
-
Save nikoskip/2336cde7ec864a5ffcb9 to your computer and use it in GitHub Desktop.
Obtener tamaño contenedor final de acuerdo a items con distintas medidas
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Útil cuando se necesita calcular el tamaño de un paquete a enviar en el cual | |
* dentro van N productos con distintas medidas. | |
* | |
* Con este algoritmo se puede obtener el tamaño de la caja contenedora final necesaria. | |
*/ | |
$dimensiones = array(0, 0, 0); // Largo, alto, ancho | |
foreach ($items as $item) { | |
$largo = $item->largo; | |
$ancho = $item->ancho; | |
$alto = $item->alto; | |
if($dimensiones[0] === 0 and $dimensiones[1] === 0 and $dimensiones[2] === 0){ | |
$dimensiones[0] = $largo; | |
$dimensiones[1] = $alto; | |
$dimensiones[2] = $ancho; | |
} else { | |
if(abs($ancho - $dimensiones[2]) < abs($largo - $dimensiones[0])){ | |
$dimensiones[0] = $largo + $dimensiones[0]; | |
} else { | |
$dimensiones[2] = $ancho + $dimensiones[2]; | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment