| 1126 | //****************************************************************************** |
| 1127 | |
| 1128 | bool FGInitialCondition::Load_v1(Element* document) |
| 1129 | { |
| 1130 | bool result = true; |
| 1131 | |
| 1132 | if (document->FindElement("longitude")) |
| 1133 | SetLongitudeRadIC(document->FindElementValueAsNumberConvertTo("longitude", "RAD")); |
| 1134 | if (document->FindElement("elevation")) |
| 1135 | SetTerrainElevationFtIC(document->FindElementValueAsNumberConvertTo("elevation", "FT")); |
| 1136 | |
| 1137 | if (document->FindElement("altitude")) // This is feet above ground level |
| 1138 | SetAltitudeAGLFtIC(document->FindElementValueAsNumberConvertTo("altitude", "FT")); |
| 1139 | else if (document->FindElement("altitudeAGL")) // This is feet above ground level |
| 1140 | SetAltitudeAGLFtIC(document->FindElementValueAsNumberConvertTo("altitudeAGL", "FT")); |
| 1141 | else if (document->FindElement("altitudeMSL")) // This is feet above sea level |
| 1142 | SetAltitudeASLFtIC(document->FindElementValueAsNumberConvertTo("altitudeMSL", "FT")); |
| 1143 | |
| 1144 | result = LoadLatitude(document); |
| 1145 | |
| 1146 | FGColumnVector3 vOrient = orientation.GetEuler(); |
| 1147 | |
| 1148 | if (document->FindElement("phi")) |
| 1149 | vOrient(ePhi) = document->FindElementValueAsNumberConvertTo("phi", "RAD"); |
| 1150 | if (document->FindElement("theta")) |
| 1151 | vOrient(eTht) = document->FindElementValueAsNumberConvertTo("theta", "RAD"); |
| 1152 | if (document->FindElement("psi")) |
| 1153 | vOrient(ePsi) = document->FindElementValueAsNumberConvertTo("psi", "RAD"); |
| 1154 | |
| 1155 | orientation = FGQuaternion(vOrient); |
| 1156 | |
| 1157 | if (document->FindElement("ubody")) |
| 1158 | SetUBodyFpsIC(document->FindElementValueAsNumberConvertTo("ubody", "FT/SEC")); |
| 1159 | if (document->FindElement("vbody")) |
| 1160 | SetVBodyFpsIC(document->FindElementValueAsNumberConvertTo("vbody", "FT/SEC")); |
| 1161 | if (document->FindElement("wbody")) |
| 1162 | SetWBodyFpsIC(document->FindElementValueAsNumberConvertTo("wbody", "FT/SEC")); |
| 1163 | if (document->FindElement("vnorth")) |
| 1164 | SetVNorthFpsIC(document->FindElementValueAsNumberConvertTo("vnorth", "FT/SEC")); |
| 1165 | if (document->FindElement("veast")) |
| 1166 | SetVEastFpsIC(document->FindElementValueAsNumberConvertTo("veast", "FT/SEC")); |
| 1167 | if (document->FindElement("vdown")) |
| 1168 | SetVDownFpsIC(document->FindElementValueAsNumberConvertTo("vdown", "FT/SEC")); |
| 1169 | if (document->FindElement("vc")) |
| 1170 | SetVcalibratedKtsIC(document->FindElementValueAsNumberConvertTo("vc", "KTS")); |
| 1171 | if (document->FindElement("vt")) |
| 1172 | SetVtrueKtsIC(document->FindElementValueAsNumberConvertTo("vt", "KTS")); |
| 1173 | if (document->FindElement("mach")) |
| 1174 | SetMachIC(document->FindElementValueAsNumber("mach")); |
| 1175 | if (document->FindElement("gamma")) |
| 1176 | SetFlightPathAngleDegIC(document->FindElementValueAsNumberConvertTo("gamma", "DEG")); |
| 1177 | if (document->FindElement("roc")) |
| 1178 | SetClimbRateFpsIC(document->FindElementValueAsNumberConvertTo("roc", "FT/SEC")); |
| 1179 | if (document->FindElement("vground")) |
| 1180 | SetVgroundKtsIC(document->FindElementValueAsNumberConvertTo("vground", "KTS")); |
| 1181 | if (document->FindElement("alpha")) |
| 1182 | SetAlphaDegIC(document->FindElementValueAsNumberConvertTo("alpha", "DEG")); |
| 1183 | if (document->FindElement("beta")) |
| 1184 | SetBetaDegIC(document->FindElementValueAsNumberConvertTo("beta", "DEG")); |
| 1185 | if (document->FindElement("vwind")) |
nothing calls this directly
no test coverage detected