Парни, помогите решить ребус.. В 2ТЭ116 скрипте Трама есть часть, отвечающая за работу стрелок манометра температуры масла и воды:
- Код: Выделить всё
//управление стрелками температуры воды и масла
float at_m = st_temp_m1.SetValue();
float at_w = st_temp_v1.SetValue();
float posm = at_m + thr*0.00055;
float posw = at_w + thr*0.00065;
float dt_m = 28 - posm;
float dt_w = 30 - posw;
float posm2 = at_m + (thr/thr+2)*0.05;
float posw2 = at_w + (thr/thr+2)*0.05;
float cp_m = posm2 - at_m;
float cp_w = posw2 - at_w;
if(cd.rabota)
{
if(sbros_nagruzki)
{
st_temp_m1.SetValue(at_m + dt_m*0.0002);
st_temp_v1.SetValue(at_w + dt_w*0.00022);
}
else
{
st_temp_m1.SetValue(posm + dt_m*0.00014);
st_temp_v1.SetValue(posw + dt_w*0.00017);
}
}
else
{
st_temp_m1.SetValue(at_m - cp_m*1.0);
st_temp_v1.SetValue(at_m - cp_w*1.2);
}
at_m = st_temp_m2.GetValue();
at_w = st_temp_v2.GetValue();
posm = at_m + thr*0.00055;
posw = at_w + thr*0.00065;
dt_m = 28 - posm;
dt_w = 30 - posw;
posm2 = at_m + (thr/thr+2)*0.05;
posw2 = at_w + (thr/thr+2)*0.05;
cp_m = posm2 - at_m;
cp_w = posw2 - at_w;
if(cd.switchOn9)// если вторая секция запущена
{
if(sbros_nagruzki)
{
st_temp_m2.SetValue(at_m + dt_m*0.0006);
st_temp_v2.SetValue(at_w + dt_w*0.00066);
}
else
{
st_temp_m2.SetValue(posm + dt_m*0.00014);
st_temp_v2.SetValue(posw + dt_w*0.00017);
}
}
else
{
st_temp_m2.SetValue(at_m - cp_m*1.0);
st_temp_v2.SetValue(at_m - cp_w*1.2);
}
Задача заключается в том, что бы изменить начальное значение температуры. Сейчас ноль, и по воде, и по маслу, т.к. (как я понимаю) st_temp_m1.SetValue() и st_temp_v1.SetValue() есть начальное положение стрелки, т.е. 0. Хочу сделать началом, скажем 55 по маслу и 60 по воде, а далее согласно алгоритма, рост до 80 по маслу, 90 по воде. Сломал голову. ПОМОГИТЕ..