DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ CalcDamageAreaRotation()

void ItemBase::CalcDamageAreaRotation ( float angle_deg,
out vector center,
out vector orientation )
inlineprotected

См. определение в файле BaseBuildingBase.c строка 1113

1114 {
1115 if ( angle_deg != 0 )
1116 {
1117 //orientation
1118 orientation[0] = orientation[0] - angle_deg;
1119
1120 //center
1121 vector rotate_axis;
1122 if ( MemoryPointExists( "rotate_axis" ) )
1123 {
1124 rotate_axis = ModelToWorld( GetMemoryPointPos( "rotate_axis" ) );
1125 }
1126 float r_center_x = ( Math.Cos( angle_deg * Math.DEG2RAD ) * ( center[0] - rotate_axis[0] ) ) - ( Math.Sin( angle_deg * Math.DEG2RAD ) * ( center[2] - rotate_axis[2] ) ) + rotate_axis[0];
1127 float r_center_z = ( Math.Sin( angle_deg * Math.DEG2RAD ) * ( center[0] - rotate_axis[0] ) ) + ( Math.Cos( angle_deg * Math.DEG2RAD ) * ( center[2] - rotate_axis[2] ) ) + rotate_axis[2];
1128 center[0] = r_center_x;
1129 center[2] = r_center_z;
1130 }
1131 }

Перекрестные ссылки Math::Cos(), Math::DEG2RAD и Math::Sin().