UA71 - United Airlines (UAL71) från Amsterdam till New York (2023)

27 augusti 2023

I tid
Detta flyg är planerat, det kommer att avgåpå 10 timmar.
amsterdam
AMS / EHAM

8h 5m
5 875 km / 3 626 mi

New York
MOLN / STEN

TERMINAL:C
PORT:128

UA71 - United Airlines (UAL71) från Amsterdam till New York (4)

Avresa 09:11CEST
3 min tidigt

Ankomst 11:20EDT

FLYGBOLAG

NAMN
United Airlines

IATA / ICAO
UA / UAL

LAND
Förenta staterna
Flygbolagsinformation
" : ""}UA71 - United Airlines (UAL71) från Amsterdam till New York (6)`; if (activeHex i markör) { liveMap.removeLayer(marker[activeHex]); } const m = L.marker(activeMarker.getLatLng(), { icon: L.divIcon({ className: 'flt-marker', html: htmlc }), alt: activeHex, opacitet: lp[3] ? 0.9 : 0.6 }).addTo(liveMap).on('klick', onPlaneClick); markör[activeHex] = m; document.getElementById(`mi-${activeHex}`).style.transform = `rotera(${lp[2]}grader)`; activeMarker = null; } activeHex = null; liveTrack = null; liveMarker = null; estTrack = null; document.getElementById('liveMapContainer').style.display = 'ingen';} /** * Beräknar om den nya positionen för en markör baserat på den förflutna tiden och dess tidigare tillstånd. * @param {Object} liveMap */async-funktion updateCalc(liveMap) { if (recalcInProg || liveMap.getZoom() < 6) { return; } recalcInProg = sant; for (const [nyckel, prevPos] av Object.entries(lastPos)) { if (skriv in markör && prevPos[3] >= 50 && !prevPos[6]) { const speed = prevPos[3] || 0; const interval = Date.now() - prevPos[4]; const dist = hastighet * intervall / 1000 / 3600 * 1852; if (avstånd < 20) { fortsätt; } // beräkna nästa position const lat1 = toRad(prevPos[0]); const lon1 = toRad(prevPos[1]); const brng = toRad(prevPos[2]); const lat2 = Math.asin(sin(lat1) * cos(dist / r_earth) + cos(lat1) * sin(dist / r_earth) * cos(brng)); const lon2 = lon1 + Math.atan2(sin(brng) * sin(dist / r_earth) * cos(lat1), cos(dist / r_earth) - sin(lat1) * sin(lat2)); const lat2d = toDeg(lat2); const lon2d = toDeg(lon2); lastPos[key] = [lat2d, lon2d, prevPos[2], prevPos[3], Date.now(), prevPos[5], prevPos[6], prevPos[7]]; markör[nyckel].setLatLng([lat2d, lon2d]); if (liveTrack && activeMarker == nyckel) { const l = liveTrack.getLatLngs(); l.push(L.latLng(lat2d, lon2d, prevPos[5])); prova { liveTrack.setLatLngs(l); } catch (e) { /* Fånga fel tyst. */ } if (activeDest) { const tn = L.latLng(lat2d, lon2d); liveMap.removeLayer(estTrack); const arcOptions = { färg: "ljusgrå", noClip: sant, hörn: 100 }; estTrack = t.lng < tn.lng ? L.Polyline.Arc(activeDest, tn, arcOptions) : L.Polyline.Arc(tn, activeDest, arcOptions); estTrack.addTo(liveMap); tracks.push(estTrack); } } } } recalcInProg = false;}/** * Hämtar data från en specifik URL, hanterar fel och returnerar JSON-svaret. * @param {string} url */async-funktion getData(url) { const response = await fetch(url, { headers: { Authorization: auth_token } }); if (!response.ok) { handleFetchErrors(response); returnera null; } if (sf === "") { document.getElementById("liveUpdErr").style.display = 'ingen'; document.getElementById("liveUpdNotFound").style.display = 'ingen'; } return response.json();}/** * Hanterar fel under hämtningsanrop * @param {Object}-svar */function handleFetchErrors(response) { if (sf !== "") return; const liveUpdErr = document.getElementById("liveUpdErr"); const liveUpdNotFound = document.getElementById("liveUpdNotFound"); const liveMapContainer = document.getElementById("liveMapContainer"); if (respons.status !== 404) { refreshsActive = falskt; liveUpdNotFound.style.display = 'ingen'; liveUpdErr.style.display = 'blockera'; liveMapContainer.style.display = 'ingen'; document.getElementById("liveUpdErrCode").innerText = respons.status; } else { liveUpdErr.style.display = 'ingen'; liveMapContainer.style.display = 'ingen'; liveUpdNotFound.style.display = 'blockera'; }}async funktion updateMap(liveMap, fromZoom, clickHex) { if (documentIsHidden()) return; const bounds = liveMap.getBounds(); const url = constructURL(bounds, liveMap.getZoom(), clickHex); if (updateInProgressOrTooSoon(fromZoom)) returnerar; recalcInProg = sant; lastUpdate = Date.now(); updateInProg = sant; const ld = await getData(url); if (!ld) { updateInProg = false; lämna tillbaka; } processMapData(liveMap, ld, fromZoom, clickHex);}funktion documentIsHidden() { return typeof document.hidden !== "odefinierad" && document.hidden;}funktion constructURL(bounds, zoom, clickHex) { const widthText = screenWidth > 1000 ? "stor liten"; const hexIncl = clickHex ? `?incl=${clickHex}&` : "?"; return `/en/live/map/${Math.floor(bounds['_northEast'].lat * 1e5)}/${Math.floor(bounds['_southWest'].lat * 1e5)}/` + ` ${Math.floor(bounds['_southWest'].lng * 1e5)}/${Math.floor(bounds['_northEast'].lng * 1e5)}/${zoom}/${widthText}` + hexInkl + `${Math.floor(Date.now() / 5000)}`;}funktion updateInProgressOrTooSoon(fromZoom) { if (updateInProg) { return true; } const freq = fromZoom ? minZoomFreq : minRefreshFreq; return Date.now() - lastUpdate < freq;}funktion processMapData(liveMap, ld, fromZoom, clickHex) { newMarker = {}; bågar = []; curArc = []; arcCol = ""; prevCoord = []; document.getElementById("nr_flights_disp").innerText = ld["f"]; document.getElementById("nr_flights_tot").innerText = ld["t"]; const st = screenWidth / ld["f"] > 5; const redraw = st !== hadTitles; for (const entr in ld["m"]) { const e = ld["m"][entr]; handleMarker(liveMap, e, redraw, st); } hadTitles = st; removeUusedMarkers(liveMap); updateInProg = false; recalcInProg = false; firstUpd = false; if (clickHex) { markör[clickHex].fire('klick'); }}function handleMarker(liveMap, e, redraw, st) { if (e[4] == null || e[5] == null) { return; } const currentPos = L.latLng(e[4], e[5]); if (rita om && e[0] i markör) { liveMap.removeLayer(marker[e[0]]); radera markör[e[0]]; } if (e[0] i markör) { updateExistingMarker(e, currentPos); } else { createNewMarker(liveMap, e, currentPos, st); }}funktionsuppdateringExistingMarker(e, currentPos) { const m = markör[e[0]]; m.setLatLng(currentPos); lastPos[e[0]] = [e[4], e[5], e[2], e[6], Date.now(), e[7], e[8], e[9]] ; newMarker[e[0]] = sant; document.getElementById("mi-" + e[0]).style.transform = "rotate(" + e[2] + "deg)";}funktion createNewMarker(liveMap, e, currentPos, st) { const htmlc = (st?"

" + e[9] + "

" : "") + "UA71 - United Airlines (UAL71) från Amsterdam till New York (7)"; const m = L.marker(currentPos, { icon: L.divIcon({ className: 'flt-marker', html: htmlc }), alt: e[0], opacitet: e[3] ? 0.9 : 0.6 }).addTo(liveMap).on('click', onPlaneClick); markör[e[0]] = m; newMarker[e[0]] = sant; lastPos[e[0]] = [e[4] , e[5], e[2], e[6], Date.now(), e[7], e[8], e[9]]; document.getElementById("mi-" + e[0] ]).style.transform = "rotate(" + e[2] + "deg)";}funktion removeUusedMarkers(liveMap) { for (konst m i markör) { if (!(m i newMarker) && m != activeHex ) { liveMap.removeLayer(marker[m]); ta bort markör[m]; } }}funktion påPlaneClick(e) { if (sf != "") { return; } updateInProg = true; const liveMap = e.target. _map; const hex = e.target.options.alt; if (hex == activeHex) { return; } updateTrack(liveMap, `/${lang}/live/track_hex/${hex}`, hex, e); }function onMoveend(e) { localStorage.setItem('livemapCenter', JSON.stringify(e.target.getCenter())); localStorage.setItem('livemapZoom', e.target.getZoom()); updateMap(e. sourceTarget, false); } function onZoomed(e) { updateMap(e.sourceTarget, true) }// Definiera en verktygsfunktion för att skapa en markörfunktion createMarker(latLng, iconClass, htmlContent, alt, opacitet) { return L.marker(latLng) , { icon: L.divIcon({ className: iconClass, html: htmlContent }), alt: alt, opacitet: opacitet, }).on('click', onPlaneClick);}funktion updateTrack(liveMap, url, hex, e ) { låt prevCoord = null; låt prevCoordFull = null; getData(url).then(function (ld) { if (!ld) { return; } const hadNoHex = hex === ""; if (hex === "" && url.includes("hex")) { hex = ld[0]; } else if (hex === "") { hex = ld[1]; } if (activeMarker && hex !== activeHex) { // Återställ gammal markör const lp = lastPos[activeHex] ; const htmlc = (hadTitlar ? "

" + lp[7] + "

" : "") + "UA71 - United Airlines (UAL71) från Amsterdam till New York (8)"; liveMap.removeLayer(marker[activeHex]); const m = L.marker(activeMarker.getLatLng(), { icon: L.divIcon({ className: 'flt-marker', html: htmlc }), alt: activeHex , opacitet: lp[3] ? 0,9 : 0,6 }).addTo(liveMap).on('click', onPlaneClick); markör[activeHex] = m; document.getElementById("mi-" + activeHex).style.transform = "rotate(" + lp[2] + "deg)"; activeMarker = m; } // Sätt ny markör if (hex !== activeHex && e) { const lp = lastPos[hex]; const htmlc = (hadTitles) ?"

" + lp[7] + "

" : "") + "UA71 - United Airlines (UAL71) från Amsterdam till New York (9)"; const m = L.marker(e.target.getLatLng(), { icon: L.divIcon({ className: 'flt-marker', html: htmlc }), alt: hex, opacitet: ld[3] ? 0.9 : 0.6 }).addTo(liveMap).on('click', onPlaneClick); markör[hex] = m; liveMap.removeLayer(e.target); activeMarker = m; } refreshsActive = true; recalcInProg = true; arcs = []; curArc = []; arcCol = ""; prevCoord = []; spår = ld[23]; if (sf === "") { if (ld[0] !== "") { domElements .get("liveFlnr").href = `/${lang}/live/flight_details/${ld[10]}`; domElements.get("liveFlnr").innerText = ld[0]; } annat { domElements .get("liveFlnr").innerText = ""; domElements.get("liveFlnr").href = ""; } if (ld[21]) { domElements.get("liveAirline").innerText = ld[21 ]; } else { domElements.get("liveAirline").innerText = ""; } domElements.get("liveHex").innerText = ld[1]; if (ld[2] !== "" && ld[ 2] !== ld[0]) { domElements.get("liveCallsign").innerText = ld[2]; } else { domElements.get("liveCallsign").innerText = ""; } if (ld[3) ] !== "") { domElements.get("liveReg").href = `/${lang}/planes/${ld[3]}`; domElements.get("liveRegBlock").style.display = "block"; domElements.get("liveReg").innerText = ld[3]; } else { domElements.get("liveReg").innerText = "NA"; domElements.get("liveRegBlock").style.display = "ingen"; domElements.get("liveReg").href = ""; } if (ld[4] !== "NA") { domElements.get("liveDep").innerText = ld[5]; domElements.get("liveDepFlag").src = "/staticfiles/" + ld[6].toLowerCase() + ".svg"; domElements.get("liveDep").href = `/${lang}/airport/${ld[5]}/${ld[4]}`; domElements.get("liveDepTime").innerText = ld[11]; if (ld[19] && ld[19] !== "+0") { domElements.get("liveDepDelay").innerText = ld[19]; } else { domElements.get("liveDepDelay").innerText = ""; } } else { domElements.get("liveDep").innerText = "NA"; domElements.get("liveDepTime").innerText = ""; domElements.get("liveDepDelay").innerText = ""; } if (ld[7] !== "NA") { domElements.get("liveArr").innerText = ld[8]; domElements.get("liveArrFlag").src = "/staticfiles/" + ld[9].toLowerCase() + ".svg"; domElements.get("liveArr").href = `/${lang}/flygplats/${ld[8]}/${ld[7]}`; domElements.get("liveArrTime").innerText = ld[12]; if (ld[20] && ld[20] !== "+0") { domElements.get("liveArrDelay").innerText = ld[20]; } else { domElements.get("liveArrDelay").innerText = ""; } } else { domElements.get("liveArr").innerText = "NA"; domElements.get("liveArrTime").innerText = ""; domElements.get("liveArrDelay").innerText = ""; } if (ld[10] !== null) { domElements.get("liveLink").href = `/${lang}/live/flight_details/${ld[10]}`; domElements.get("liveLink").style.display = "blockera"; } else { domElements.get("liveLink").style.display = "ingen"; } const lt = spår[spår.längd - 1]; domElements.get("liveAlt").innerText = lt[3] + "ft"; domElements.get("liveSpeed").innerText = lt[5] + " kts"; domElements.get("liveTrack").innerText = lt[4] + "°"; if (ld[18] !== "") { domElements.get("planePic").src = ld[18]; domElements.get("planePic").style.display = "block"; } else { domElements.get("planePic").style.display = "ingen"; } if (ld[22]) { domElements.get("liveType").innerText = ld[22]; domElements.get("liveTypeBlock").style.display = "block"; } else { domElements.get("liveTypeBlock").style.display = "ingen"; domElements.get("liveType").innerText = "NA"; } } // uppdatera övre objekt om relevant const liveStatusInd = domElements.get("liveStatusInd"); if (liveStatusInd) { if (!domElements.has("liveTrackHB")) { domElements.set("liveAltHB", document.getElementById("liveAltHB")); domElements.set("liveSpeedHB", document.getElementById("liveSpeedHB")); domElements.set("liveTrackHB", document.getElementById("liveTrackHB")); domElements.set("liveDataHB", document.getElementById("liveDataHB")); } liveStatusInd.innerText = ld[17] ? "Live" : "Landade"; const lt = ld[23][ld[23].längd - 1]; domElements.get("depTimeLiveHB").innerText = ld[11]; domElements.get("arrTimeLiveHB").innerText = ld[12]; domElements.get("depDelHB").innerText = ld[19]; domElements.get("arrDelHB").innerText = ld[20]; domElements.get("liveAltHB").innerText = lt[3]; domElements.get("liveSpeedHB").innerText = lt[5]; domElements.get("liveTrackHB").innerText = lt[4]; if (!ld[17]) { domElements.get("liveDataHB").style.display = "ingen"; } } if (ld[13] !== null && ld[14] !== null && track.length > 0 && Math.abs(ld[13] - track[0][1] / 1e5) > 1 && Math.abs(ld[14] - spår[0][2] / 1e5) > 1) { arcs.push([[[ld[13], ld[14]], [spår[0][1] / 1e5, spår[0][2] / 1e5]], "ljusgrå", sant]); } prevCoord = null; prevCoordFull = null; lp = null; for (const entr in track) { const p = track[entr]; if (p[1] === noll || p[2] === noll) { fortsätt; } låt kol = "grön"; if (prevCoord && (Math.abs(prevCoord[0] - p[1] / 1e5) > 1 || Math.abs(prevCoord[1] - p[2] / 1e5) > 1)) { arcs.push( [curArc, arcCol, false]); arcCol = ""; arcs.push([[[prevCoord[0], prevCoord[1]], L.latLng(p[1] / 1e5, p[2] / 1e5, p[3])], "ljusgrå", sant]) ; curArc = [L.latLng(p[1] / 1e5, p[2] / 1e5, p[3])]; } else if (arcCol !== col) { if (curArc.length > 0) { arcs.push([curArc, arcCol, false]); } if (prevCoord) { curArc = [prevCoord]; } annat { curArc = []; } arcCol = kol; } prevCoordFull = [p[1] / 1e5, p[2] / 1e5, p[4], p[5], Date.now(), p[3], false, ld[0]]; prevCoord = L.latLng(p[1] / 1e5, p[2] / 1e5, p[3]); curArc.push(prevCoord); if (p[4] !== 0) { lastTrack = p[4]; } } if (curArc.length > 0) { arcs.push([curArc, arcCol]); } if (ld[15] !== null && ld[16] !== null && prevCoord && (Math.abs(prevCoord.lat - ld[15]) > 0.1 || Math.abs(prevCoord.lng - ld [16]) > 0.1)) { arcs.push([[prevCoord, [ld[15], ld[16]]], "ljusgrå", sant]); activeDest = L.latLng(ld[15], ld[16]); } för (const idx i spår) { spår[idx].remove(); } spår = []; for (const idx i bågar) { const a = bågar[idx]; if (a[2]) { if (a[0][0][1] > a[0][1][1]) { const temp = a[0][0]; a[0][0] = a[0][1]; a[0][1] = temp; } p = L.Polyline.Arc(a[0][0], a[0][1], { färg: a[1], noClip: sant, hörn: 100 }); estTrack = p; } else { p = L.hotline(a[0], { palett: { 0: 'lightgrå', 0.1: 'grön', 0.5: 'gul', 0.7: 'orange', 1: 'röd' }, min : 0, max: 36000, outlineWidth: 0, vikt: 4, noClip: true }); liveTrack = p; } p.addTo(liveMap); tracks.push(p); } if (prevCoordFull) { lastPos[hex] = prevCoordFull; } if (prevCoord) { if (e) { const i = e.sourceTarget; i.setLatLng(prevCoord); activeMarker = i; if (lastTrack) { document.getElementById("mi-" + hex).style.transform = "rotate(" + lastTrack + "deg)"; } if (!refreshs && !viewSet) { liveMap.setView(prevCoord, 8); } } else { if (!activeMarker) { activeMarker = L.marker(prevCoord, { icon: L.icon({ iconUrl: "/img/plane-icon_active.svg?20221124", iconSize: liveMap._zoom > 7 ? storlekar [0] : storlekar[1] }), rotationAngle: prevCoordFull[2], rotationOrigin: "center center", opacitet: 0,8, titel: hex }).addTo(liveMap); } annat { activeMarker.setLatLng(prevCoord); } } if (e || hadNoHex) { // Ställ endast in uppdatering vid första klick eller för liveflygspår (ingen hex angiven då) if (trackRefresh) { window.clearInterval(trackRefresh); } if (ld[17]) { trackRefresh = window.setInterval(function () { if (refreshsActive) { updateTrack(liveMap, url, hex, null); } }, 3000); } } } if (!refreshs && !viewSet) { liveMap.setView(prevCoord, 8); } if (sf === "") { domElements.get("liveMapContainer").style.display = 'blockera'; } activeHex = hex; updateInProg = false; recalcInProg = false; });} funktion buildLiveMap(liveMap,activeHex) { const osmUrl = 'https://a.tile.openstreetmap.org/{z}/{x}/{y}.png'; const osmAttrib = '© OpenStreetMap'; const osm = new L.TileLayer(osmUrl, { attribution: osmAttrib }); liveMap.attributionControl.setPrefix(''); liveMap.addLayer(osm); updateMap(liveMap, false,activeHex); liveMap.on('zoomend', påZoomad); liveMap.on('moveend', onMoveend); } funktion buildTrackMap(liveMap, url) { const osmUrl = 'https://a.tile.openstreetmap.org/{z}/{x}/{y}.png'; const osmAttrib = '© OpenStreetMap'; const osm = new L.TileLayer(osmUrl, { attribution: osmAttrib }); liveMap.attributionControl.setPrefix(''); liveMap.addLayer(osm); updateTrack(liveMap, url, "", null); } loadScript("/js/leaflet.js?20220411" ,function() { // ställ in kartkartan = new L.map('map-flight',{twoFingerZoom: true,sleep:false,minZoom:0} ); // skapa bricklagret med korrekt tillskrivning map.fitBounds([[40.6925,-74.16861],[52.3,4.765]]); viewSet = true; dep=[52.3,4.765]; arr=[40.6925,-74.1686 ]; var osmUrl='https://a.tile.openstreetmap.org/{z}/{x}/{y}.png'; var osmAttrib='© OpenStreetMap'; var osm = new L.TileLayer(osmUrl , {attribution: osmAttrib}); map.attributionControl.setPrefix(''); map.addLayer(osm); if (dep[1]

PLAN

MODELL
N225UA Boeing B777-200

ICAO IDENTIFIER
A1F557

SÄTSKONFIGURATION
261 platser
40 Affärer221 Ekonomi

FÖRSTA FLYG
nov 2001
21 år sedan
Planinformation

ALLMÄN RUTINFO

FREKVENS:

dagligen
sön, mån, tis, ons, tor, fre, lör

DIREKT AVSTÅND
5 875 km3 651 mi

FAKTISKA AVSTÅND
6 180 km3 840 mi
+5 %

FLYGTID
8 timmar 5 min

FLYG / VECKA
7 flyg
PUNKTLIGHET
1 flyg/vecka försenat
83 % prestanda i tid
Fördröjningsstatistik

PLATSER / VECKA
273 platser/Flyg
8 197 platser/vecka
Ruttinfo

CO2-UTSLÄPP

Ekonomi
873 kg

Eco+
1 071 kg

Företag
2 842 kg

References

Top Articles
Latest Posts
Article information

Author: Sen. Emmett Berge

Last Updated: 10/20/2023

Views: 5879

Rating: 5 / 5 (80 voted)

Reviews: 87% of readers found this page helpful

Author information

Name: Sen. Emmett Berge

Birthday: 1993-06-17

Address: 787 Elvis Divide, Port Brice, OH 24507-6802

Phone: +9779049645255

Job: Senior Healthcare Specialist

Hobby: Cycling, Model building, Kitesurfing, Origami, Lapidary, Dance, Basketball

Introduction: My name is Sen. Emmett Berge, I am a funny, vast, charming, courageous, enthusiastic, jolly, famous person who loves writing and wants to share my knowledge and understanding with you.