Пример #1
0
}
// Переносим влияние параметров друг на друга
foreach ($delta_flu as $param => $value) {
    $_SESSION['diag'][$param] += $value;
}
// Переносим изменения от лекарств
foreach ($delta_influable as $param => $value) {
    $_SESSION['diag'][$param] += $value;
}
// Возможно - меняем АД гап
if (rand(0, 10) > 5) {
    boundAdd($_SESSION['diag']['AD_gap'], 0.01 * rand(-1, 1), 1.4, 1.6);
}
foreach ($_SESSION['systems'] as $system => &$system_data) {
    $system_data['html_color'] = rgb2html100($system_data['color']);
    $system_data['stress_color'] = polynom_value($system_data['stress'], array(0 => '#00CC00', 800 => '#FF0000', 1000 => '#000000', 1001 => '#000000'));
    $system_data['crit_range'] = round(Vect::length(Vect::diffVector($system_data['color'], $_SESSION['crit_color'])), 1);
}
// Определяем предположительные диагностические значения
$est_range = Autodoc::$estimate_range;
foreach ($est_range as $param => &$value) {
    //	if ($param != 'temp') continue;
    $value *= $_SESSION['blood']['lost'] / 1000;
    if ($param == 'temp') {
        $value = round($value, 1);
    } else {
        $value = round($value);
    }
    //	value - длина диапазона
    //	Не нужен разброс
    if ($param == 'temp' && $value <= 0.1 || $value <= 1) {
Пример #2
0
 public static function getDiagColor($param, $value)
 {
     $value_colors = array('low_death' => '#000000', 'low_terminal' => '#FF0000', 'low_norm' => '#00DD00', 'high_norm' => '#00DD00', 'high_terminal' => '#FF0000', 'high_death' => '#000000');
     $levels = Autodoc::$diag_results[$param]['levels'];
     foreach ($levels as $level => $num) {
         $arr[$num] = $value_colors[$level];
     }
     $vals = array_keys($arr);
     if ($value <= min($vals) || $value >= max($vals)) {
         return '#000000';
     }
     $arr[($levels['low_terminal'] + $levels['low_norm']) / 2] = '#DDDD00';
     $arr[($levels['high_terminal'] + $levels['high_norm']) / 2] = '#DDDD00';
     ksort($arr);
     return polynom_value($value, $arr);
 }