* @author Dennis Eichhorn * @copyright 2013 Dennis Eichhorn * @license OMS License 1.0 * @version 1.0.0 * @link http://orange-management.com */ namespace phpOMS\Math\Shape\D2; /** * Circle shape. * * @category Framework * @package phpOMS\DataStorage\Database * @author OMS Development Team * @author Dennis Eichhorn * @license OMS License 1.0 * @link http://orange-management.com * @since 1.0.0 */ class Circle implements D2ShapeInterface { /** * Area * * @param float $r Radius * * @return float * * @since 1.0.0 * @author Dennis Eichhorn */ public static function getSurface(float $r) { return pi() * $r ** 2; } /** * Circumference * * @param float $r Radius * * @return float * * @since 1.0.0 * @author Dennis Eichhorn */ public static function getPerimeter(float $r) { return 2 * pi() * $r; } /** * Radius * * @param float $surface Surface * * @return float * * @since 1.0.0 * @author Dennis Eichhorn */ public static function getRadiusBySurface(float $surface) { return sqrt($surface / pi()); } /** * Radius * * @param float $C Circumference * * @return float * * @since 1.0.0 * @author Dennis Eichhorn */ public static function getRadiusByPerimeter(float $C) { return $C / (2 * pi()); } }