Menu Zavřít

Českým arénám se blýská na lepší časy. Nové sportovní haly nejen v Brně a Pardubicích přinášejí špičkovou architekturu i inspiraci z NHL

24. 4. 2025
Doba čtení: 6 minut
  • V Česku nastupuje nová éra sportovní architektury, která přinese moderní stadiony. Ty budou sloužit nejen jako místa pro fotbalová a hokejová utkání, ale také jako ikonické symboly měst a regionů
  • Nové multifunkční haly určené především pro potřeby hokejistů nabídne mimo jiné Jihlava, Opava, Brno či Pardubice. Dočkat by se jich mohli rovněž v Hluboké nad Vltavou a Praze
  • Arény nabídnou divákům moderní zázemí i tisíce míst k sezení. Využití každopádně naleznou i během kulturních akcí

Během uplynulé dekády se toho v oblasti výstavby velkých sportovních hal příliš mnoho neudálo. Naposledy v roce 2014 otevřeli v Třinci Werk Arenu, přičemž jedinou další významnější akcí byla rekonstrukce kladenského zimáku mezi lety 2021 a 2022. Nyní se nicméně podle všeho začíná blýskat na lepší časy. 

V příštích letech by se čeští sportovní fanoušci měli dočkat nových multifunkčních hal hned v několika zdejších městech. Ty budou sloužit primárně hokejovým klubům. A jedna z nich možná bude konkurovat dokonce i pražské O2 areně.

Outstream Placeholder

Nové či rekonstruované stadiony ale ani zdaleka nejsou jen o sportovních zážitcích. Jejich výstavba s sebou přinese též moderní technologie, komfortní zázemí pro diváky a v neposlední řadě i špičkovou architekturu. Podílejí se na nich totiž uznávaní čeští architekti ze studií jako QARTA Architektura, CHYBIK + KRISTOF, ov architekti nebo třeba A8000 či A plus.

Multifunkční aréna s běžeckým oválem

Již letos na podzim se dočkají nové arény v Jihlavě, která vyšla na dvě miliardy korun. Na investici se vedle samotného města podílí také Kraj Vysočina a Národní sportovní agentura. Horácká multifunkční hala podle návrhu ateliéru CHYBIK + KRISTOF, jež mimo jiné zaujme atletickým oválem na střeše budovy, nabídne nejen zázemí zdejšímu klubu HC Dukla Jihlava, ale i dalším sportům – a měla by také zvýšit atraktivitu města i celého kraje. Její kapacita pro hokejové zápasy činí 5 750 diváků, na koncerty se pak do ní vtěsná na 7,5 tisíce osob.

„Aréna bude dokončena v září a od začátku října se plánuje zahájení provozu. Lidé se mohou těšit zejména na domácí zápasy HC Dukla Jihlava i na zázemí pro mládežnické celky týmu včetně krasobruslařského oddílu. Nejen ledními sporty bude aréna živa, ale i mnoha kulturními a společenskými akcemi. Areál nenabízí jen samotný stadion, ale také fitness, tělocvičny a ubytování,“ popisuje pro Euro.cz jednatel Horácké multifunkční arény Martin Lindovský s tím, že unikátní řešení lze najít i na mantinelech, jež mají po celém obvodu kluziště disponovat LED technologií. Podobnou dle jeho slov mají zatím jen asi tři stadiony v Evropě.

Strategický projekt města Brna

O poznání ambicióznější sportovní projekt vyrůstá v Brně. Na tamním výstavišti by měla být již v příštím roce dokončena nová multifunkční hala vybavená špičkovými technologiemi nejen pro sportovní eventy. Arena Brno, která se stane domovským stánkem hokejové Komety, poskytne městu velké a moderní zázemí i pro řadu kulturních a kongresových akcí. Její kapacita bude více než 13 tisíc míst, přičemž pro hokejové účely se počítá se snížením na 12 700 diváků. I tak se ale dočasně stane po O2 areně druhou největší halou v Česku. Město také vybuduje zhruba 1 300 parkovacích míst a další související infrastrukturu.

O velikosti projektu vypovídá i jeho cena. Ta byla vyčíslena na 5,8 miliardy korun, přičemž výraznou část stavby financuje město. Stejně tak ale přispěje i Jihomoravské hejtmanství či Národní sportovní agentura.

Český pavilon pro EXPO 2025 je zkolaudovaný. První návštěvníky přivítá už za deset dní
Přečtěte si také:

Český pavilon pro EXPO 2025 je zkolaudovaný. První návštěvníky přivítá už za deset dní

Na projektu arény se podíleli architekti ze společností A plus a Arch.Design. Prvně jmenovaní jsou autory architektonického řešení, lidé z Arch.Design se pro změnu postarali o koordinaci technických rozvodů uvnitř haly. 

Na její polostrukturální skleněné fasádě jsou zásadním prvkem horizontální lamely a jejich světelná aktivita, která umožní pomocí barvy a intenzity světla předurčovat momentální využití haly. Výrazným prvkem obvodového pláště jsou i dvě velkoplošné promítací plochy, které mohou zprostředkovat dění uvnitř, případně dát prostor dalším sdělením. 

Vysněný projekt v Pardubicích

Jedna z nejmodernějších multifunkčních hal v Evropě se podle dosavadních zpráv chystá v Pardubicích. Změna územního plánu pro stavbu nové arény byla schválena, takže v cestě za vysněným projektem již investorovi a majiteli tamního hokejového klubu HC Dynamo Pardubice Petrovi Dědkovi nic nestojí.

O celkové kapacitě stadionu zatím rozhodnuto není. Ví se jen to, že nový domov Dynama pojme minimálně 15 tisíc lidí a měl původně vyjít na osm miliard. Majitel klubu k tomu ale loni v září na síti X napsal: „Na semináři zastupitelů Pardubic jsme prezentovali ekonomické přínosy chystané multifunkční haly pro město. Vychází z kapacity 22 tisíc diváků pro hokej. Celková investice do komplexu budov, který zahrnuje kromě arény, malou halu, hotel a parkovací dům, bude 10,5 miliardy korun.“ 

Nová chlouba Českých Budějovic. V areálu tamní výtopny vybudují moderní multifunkční komplex s vysokoškolskými kolejemi i dílnou
Přečtěte si také:

Nová chlouba Českých Budějovic. V areálu tamní výtopny vybudují moderní multifunkční komplex s vysokoškolskými kolejemi i dílnou

Na dotaz redakce Euro.cz, jak vypadá aktuální stav, tiskový mluvčí klubu Pavel Poulíček uvedl, že bližší informace nyní poskytnout nemůže, avšak budou k dispozici v příštích měsících.

Zmíněná multifunkční aréna by každopádně spolu s hotelem, tréninkovou halou a parkovacím domem měla vytvořit živou část města s rozsáhlou nabídkou služeb, obchodů a relaxačních ploch. V interní soutěži zvítězil projekt pardubické projekční kanceláře PPP ve spolupráci s architektonickou kanceláří ov architekti. A podobně jako v Brně bude fasáda haly krytá lamelami s LED pásky, tentokrát ale svislými, díky kterým se bude měnit barva stadionu podle typu události – červená pro zápasy Dynama, spektrum ostatních barev pro jakoukoliv jinou událost.

Návrh nového sportovní stánku vychází ze schématu tří různých nádob na společné podstavě. „Každá nádoba má jiný tvar a je jinak velká, ale všechny vycházejí ze stejného základu,“ píší ov architekti. Ti trojici objektů umístili do zadní části území, takže na okraji by měl vzniknout zelený prstenec, jenž bude sloužit jako filtr mezi plánovanou obytnou čtvrtí Nová Cihelna a multifunkčním areálem.

Hokejová tradice, kontinuita i budoucnost

Další zimní stadion bude otevřen ke konci dubna příštího roku v Opavě – jeho zprovoznění o čtyři měsíce posunuly loňské povodně. Rekonstrukce a přístavba vyjdou asi na 370 milionů korun, přičemž město se tak zbaví zchátralého sportoviště, které dostane novou, moderní tvář od ateliéru QARTA Architektura.

Developeři mění tvář Prahy. Passerinvest do roku 2029 investuje 21 miliard do multifunkčních projektů na Roztylech a Brumlovce
Přečtěte si také:

Developeři mění tvář Prahy. Passerinvest do roku 2029 investuje 21 miliard do multifunkčních projektů na Roztylech a Brumlovce

Nový krytý hokejový stadion s kapacitou okolo jednoho tisíce diváků plánují také v Hluboké nad Vltavou. Vzniknout by měl na místě současného otevřeného zimního stadionu z roku 2000. Architektonické studio A8000 navrhlo prosvětlenou transparentní halu, která ctí charakter místa a výhledy na historické panorama města s novogotickým Zámkem Hluboká. Projekt, který by měl vyjít na 360 milionů korun, architekti konzultovali s bývalými i současnými hráči NHL. 

CIF25

V současné době má město k dispozici 160 milionů a o zbylé částce jedná s investory. Starosta města Tomáš Jirsa však věří, že se ji podaří sehnat a na nový stadion se těší. Pro Euro.cz k tomu nadšeně doplnil: „Náš stadion, to bude Bentley mezi zimáky. Projektoval ho Martin Krupauer z A8000, který nyní koordinuje projekt Pražské filharmonie!“ 

V neposlední řadě je potřeba zmínit rovněž Prahu, neboť i zde by se fanoušci měli v budoucnu dočkat nového hokejového stadionu, který bude sloužit především univerzitnímu sportu (ale také širší veřejnosti). V polovině dubna bylo podepsáno memorandum o spolupráci mezi hlavním městem, čtyřmi pražskými vysokými školami a spolkem Univerzitní stadion Praha. Společným cílem je vybudovat halu, pro kterou se vedení Prahy nyní pokusí najít vhodný pozemek.

  • Našli jste v článku chybu?
'; document.getElementById('outstream-iframe').onload = function () { setupIframe(); } replayScreen = document.getElementById('iinfoOutstreamReplay'); iinfoOutstreamPosition = document.getElementById('iinfoOutstreamPosition'); outstreamContainer = document.getElementsByClassName('outstream-container')[0]; setupReplayScreen(); } function setupIframe() { outstreamDocument = document.getElementById('outstream-iframe').contentWindow.document; let el = outstreamDocument.createElement('style'); outstreamDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:-5px;right:25px}"; videoContent = outstreamDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; if ( location.href.indexOf('rejstriky.finance.cz') !== -1 || location.href.indexOf('finance-rejstrik') !== -1 || location.href.indexOf('firmy.euro.cz') !== -1 || location.href.indexOf('euro-rejstrik') !== -1 || location.href.indexOf('/rejstrik/') !== -1 || location.href.indexOf('/rejstrik-firem/') !== -1) { outstreamDirectPlayed = true; soundAllowed = true; iinfoVastUrlIndex = 0; } if (!outstreamDirectPlayed) { console.log('OUTSTREAM direct'); setUpIMA(true); } else { if (soundAllowed) { const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('OUTSTREAM sound allowed'); setUpIMA(false); }).catch(function () { console.log('OUTSTREAM sound forbidden'); renderBanner(); }); } } else { renderBanner(); } } } function getWrapper() { let articleWrapper = document.querySelector('.rs-outstream-placeholder'); // Outstream Placeholder from RedSys manipulation if (articleWrapper && articleWrapper.style.display !== 'block') { articleWrapper.innerHTML = ""; articleWrapper.style.display = 'block'; } // Don't render OutStream on homepages if (articleWrapper === null) { if (document.querySelector('body.p-index')) { return null; } } if (articleWrapper === null) { articleWrapper = document.getElementById('iinfo-outstream'); } if (articleWrapper === null) { articleWrapper = document.querySelector('.layout-main__content .detail__article p:nth-of-type(6)'); } if (articleWrapper === null) { // Euro, Autobible, Zdravi articleWrapper = document.querySelector('.o-article .o-article__text p:nth-of-type(6)'); } if (articleWrapper === null) { articleWrapper = document.getElementById('sidebar'); } if (!articleWrapper) { console.error("Outstream wrapper of article was not found."); } return articleWrapper; } function setupDimensions() { outstreamWidth = Math.min(iinfoOutstreamPosition.offsetWidth, 480); outstreamHeight = Math.min(iinfoOutstreamPosition.offsetHeight, 320); } /** * Sets up IMA ad display container, ads loader, and makes an ad request. */ function setUpIMA(direct) { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); if (direct) { adsRequest.adTagUrl = directVast; console.log('Outstream DIRECT CAMPAING advert: ' + directVast); videoContent.muted = true; videoContent.volume = 0; outstreamDirectPlayed = true; } else { adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Outstream advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; } // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = outstreamWidth; // adsRequest.linearAdSlotHeight = outstreamHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function setupReplayScreen() { replayScreen.addEventListener('click', function () { iinfoOutstreamPosition.remove(); iinfoVastUrlIndex = 0; outstreamInit(); }); } /** * Sets the 'adContainer' div as the IMA ad display container. */ function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. outstreamDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( outstreamDocument.getElementById('adContainer'), videoContent); } function unmuteAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); outstreamDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); outstreamDocument.getElementById('adMuteBtn').innerHTML = ''; } } /** * Loads the video content and initializes IMA ad playback. */ function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(outstreamWidth, outstreamHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } /** * Handles the ad manager loading and sets ad event listeners. * @param { !google.ima.AdsManagerLoadedEvent } adsManagerLoadedEvent */ function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } /** * Handles actions taken in response to ad events. * @param { !google.ima.AdEvent } adEvent */ function onAdEvent(adEvent) { // Retrieve the ad from the event. Some events (for example, // ALL_ADS_COMPLETED) don't have ad object associated. const ad = adEvent.getAd(); console.log('Outstream event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: // This is the first event sent for an ad - it is possible to // determine whether the ad is a video ad or an overlay. if (!ad.isLinear()) { // Position AdDisplayContainer correctly for overlay. // Use ad.width and ad.height. videoContent.play(); } outstreamDocument.getElementById('adContainer').style.width = '100%'; outstreamDocument.getElementById('adContainer').style.maxWidth = '640px'; outstreamDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); // This event indicates the ad has started - the video player // can adjust the UI, for example display a pause button and // remaining time. if (ad.isLinear()) { // For a linear ad, a timer can be started to poll for // the remaining time. intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } outstreamDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (outstreamLastError === 303) { if (isBanner) { renderBanner(); } else { replayScreen.style.display = 'flex'; } } break; case google.ima.AdEvent.Type.COMPLETE: // This event indicates the ad has finished - the video player // can perform appropriate UI actions, such as removing the timer for // remaining time detection. if (ad.isLinear()) { clearInterval(intervalTimer); } if (isBanner) { renderBanner(); } else { replayScreen.style.display = 'flex'; } break; } } /** * Handles ad errors. * @param { !google.ima.AdErrorEvent } adErrorEvent */ function onAdError(adErrorEvent) { // Handle the error logging. console.log(adErrorEvent.getError()); outstreamLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { renderBanner(); } } function renderBanner() { if (isBanner) { console.log('Outstream: Render Banner'); iinfoOutstreamPosition.innerHTML = ""; iinfoOutstreamPosition.style.height = "330px"; iinfoOutstreamPosition.appendChild(bannerDiv); } else { console.log('Outstream: Banner is not set'); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoOutstreamPosition.remove(); outstreamInit(); } else { return false; } adVolume = 1; return true; } /** * Pauses video content and sets up ad UI. */ function onContentPauseRequested() { videoContent.pause(); // This function is where you should setup UI for showing ads (for example, // display ad timer countdown, disable seeking and more.) // setupUIForAds(); } /** * Resumes video content and removes ad UI. */ function onContentResumeRequested() { videoContent.play(); // This function is where you should ensure that your UI is ready // to play content. It is the responsibility of the Publisher to // implement this function when necessary. // setupUIForContent(); } function onActiveView() { if (outstreamContainer) { const containerOffset = outstreamContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (outstreamPaused) { adsManager.resume(); outstreamPaused = false; } return true; } else { if (!outstreamPaused) { adsManager.pause(); outstreamPaused = true; } } } return false; } let outstreamInitInterval; if (typeof cpexPackage !== "undefined") { outstreamInitInterval = setInterval(tryToInitializeOutstream, 100); } else { const wrapper = getWrapper(); if (wrapper) { let outstreamInitialized = false; window.addEventListener('scroll', () => { if (!outstreamInitialized) { const containerOffset = wrapper.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight / 1 && containerOffset.bottom > 0.0) { outstreamInit(); outstreamInitialized = true; } } }); } } function tryToInitializeOutstream() { const wrapper = getWrapper(); if (wrapper) { const containerOffset = wrapper.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight / 1 && containerOffset.bottom > 0.0) { if (cpexPackage.adserver.displayed) { clearInterval(outstreamInitInterval); outstreamInit(); } } } else { clearInterval(outstreamInitInterval); } } }
OSZAR »