- SGGeod pos(SGGeod::fromDegFt(lon, lat, last_apt_elev));
-
- if (rwy_no[0] == 'x') {
- // taxiway
- FGTaxiway* t = new FGTaxiway(rwy_no, pos, heading, length, width, surface_code);
- taxiways.push_back(t);
+
+ if (rwy_no[0] == 'x') { // Taxiway
+ cache->insertRunway(FGPositioned::TAXIWAY, rwy_no, pos_1, currentAirportID,
+ heading, length, width, 0.0, 0.0, surface_code);
+ } else if (rwy_no[0] == 'H') { // Helipad
+ SGGeod pos(SGGeod::fromDegFt(lon, lat, last_apt_elev));
+ cache->insertRunway(FGPositioned::HELIPAD, rwy_no, pos, currentAirportID,
+ heading, length, width, 0.0, 0.0, surface_code);