2024 Kennedy Center - Millennium Stage Event Calendar
View the seating chart at Kennedy Center - Millennium Stage. TicketCity seating charts can help you find the best seats at Kennedy Center - Millennium Stage. Where available, the map is interactive and offers seat views when you hover or tap on a section below.
Kennedy Center - Millennium Stage seating chart coming soon.
Accommodations near Kennedy Center - Millennium Stage
Kennedy Center - Millennium Stage Address: 2700 F St NW Washington, DC 20566
TicketCity Ratings and Reviews
Trustpilot
' + '' + friendlyName + '' + '
'; $hoverBoxDetails.html(hoverBoxTemplate); //update background and text color of hover box with no image if (seatView == '') { $('.hoverBoxDetailsWrap').css('background', hoverBoxBackground); $('.hoverBoxDetailsWrap span').css('color', '#444'); } //remove hover box on mouse leave $('.hoverBoxDetails').on('mouseleave', function() { $('.hoverBoxDetails').remove(); }); } }, //close hover box on map closeHoverBox: function() { //ability to close hover box $('.hoverBoxDetails').remove(); //set timeout on hover functionality ampMapsConfig.hoverDisabled = true; setTimeout(function() { ampMapsConfig.hoverDisabled = false; }, 500); }, //highlight map with section groups highlightGroups: function(id) { $('.hoverBoxDetails').remove(); $('#map svg path[data-gid="' + id + '"]').attr('class', id + ' selectedAttr'); }, //clear highlighted groups from map clearGroupHighlights: function(id) { $('#map svg path[data-gid="' + id + '"].selectedAttr').attr('class', ''); }, //center text labels based on bbox positionSvgLabels: function () { var svgLabels = $('#map svg text'); $.each(svgLabels, function(i) { var tspan = $(this).children('tspan'); var y = $(this).attr('y'); var id = $(this).attr('id'); var bbox = document.getElementById(id).getBBox(); var bby = bbox.y; var bbheight = bbox.height; var dy = Math.abs(bby - (bby + bbheight / 2)); tspan.attr('dy', dy); }); }, //get bbox to build hover box initHoverBox: function (image, id, name, color) { $('.hoverBoxDetails').remove(); var bbox = document.getElementById(id).getBBox(); ampMaps.buildHoverBox(image, name, bbox, color); }};var ampMapsZoom = { resetMapZoom: function() { ampMapsConfig.svgPanZoomMap.reset(); }, beforePan: function(oldPan, newPan) { $('.hoverBoxDetails').remove(); ampMapsConfig.hoverDisabled = true; setTimeout(function() { ampMapsConfig.hoverDisabled = false; }, 500); var stopHorizontal = false; var stopVertical = false; var map = ampMapsConfig.svgPanZoomMap; var sizes = map.getSizes(); var leftLimit = -((sizes.viewBox.x + sizes.viewBox.width) * sizes.realZoom) + ampMapsConfig.panGutterWidth; var rightLimit = sizes.width - ampMapsConfig.panGutterWidth - (sizes.viewBox.x * sizes.realZoom); var topLimit = -((sizes.viewBox.y + sizes.viewBox.height) * sizes.realZoom) + ampMapsConfig.panGutterHeight; var bottomLimit = sizes.height - ampMapsConfig.panGutterHeight - (sizes.viewBox.y * sizes.realZoom); var customPan = {}; customPan.x = Math.max(leftLimit, Math.min(rightLimit, newPan.x)); customPan.y = Math.max(topLimit, Math.min(bottomLimit, newPan.y)); return customPan; }, setMapZoomOptions: function() { //set map pan zoom config options ampMapsConfig.svgPanZoomMap = svgPanZoom('#map svg', { viewportSelector: '.svg-pan-zoom_viewport', panEnabled: true, controlIconsEnabled: true, zoomEnabled: true, dblClickZoomEnabled: false, mouseWheelZoomEnabled: false, preventMouseEventsDefault: true, fit: true, contain: true, center: true, refreshRate: 'auto', customEventsHandler: { haltEventListeners: ['touchstart', 'touchend', 'touchmove', 'touchleave', 'touchcancel'], init: function(options) { var map = ampMapsConfig.svgPanZoomMap; var instance = options.instance; var initialScale = 1; var pannedX = 0; var pannedY = 0; //Init Hammer this.hammer = Hammer(options.svgElement, { inputClass: Hammer.SUPPORT_POINTER_EVENTS ? Hammer.PointerEventInput : Hammer.TouchInput }); //enable pinch zoom this.hammer.get('pinch').set({ enable: true }); //enable dbltap zoom this.hammer.on('doubletap', function(ev) { instance.zoomIn(); }); //handle pan this.hammer.on('panstart panmove', function(ev) { //on panstart reset panned values if (ev.type === 'panstart') { pannedX = 0; pannedY = 0; } //pan only the dif instance.panBy({ x: ev.deltaX - pannedX, y: ev.deltaY - pannedY }); pannedX = ev.deltaX; pannedY = ev.deltaY; }); //handle pinch zoom this.hammer.on('pinchstart pinchmove', function(ev) { // On pinch start remember initial zoom if (ev.type === 'pinchstart') { initialScale = instance.getZoom(); instance.zoomAtPoint(initialScale * ev.scale, { x: ev.center.x, y: ev.center.y }); } instance.zoomAtPoint(initialScale * ev.scale, { x: ev.center.x, y: ev.center.y }); }); // Prevent moving the page on some devices when panning over SVG options.svgElement.addEventListener('touchmove', function(e) { e.preventDefault(); }); }, destroy: function() { map.hammer.destroy(); } }, beforePan: ampMapsZoom.beforePan }); //set current zoom and initZoom ampMapsConfig.currPaperZoom = ampMapsConfig.svgPanZoomMap.getZoom(); }};//adjusts map size on window resize$(window).resize(function() { ampMaps.calcMapSize();});$(document).ready(function () { ampMaps.initAmpMaps();});