/// <summary>
        /// Draws strip line in 3d.
        /// </summary>
        /// <param name="graph">Chart graphics.</param>
        /// <param name="rect">Strip rectangle.</param>
        /// <param name="horizontal">Indicates that strip is horizontal</param>
        private void Draw3DStrip(ChartGraphics graph, RectangleF rect, bool horizontal)
        {
            ChartArea             area          = this.Axis.ChartArea;
            GraphicsPath          path          = null;
            DrawingOperationTypes operationType = DrawingOperationTypes.DrawElement;

            if (this.Axis.Common.ProcessModeRegions)
            {
                operationType |= DrawingOperationTypes.CalcElementPath;
            }

            // Draw strip on the back/front wall
            path = graph.Fill3DRectangle(
                rect,
                area.IsMainSceneWallOnFront() ? area.areaSceneDepth : 0f,
                0,
                area.matrix3D,
                area.Area3DStyle.LightStyle,
                this.BackColor,
                this.BorderColor,
                this.BorderWidth,
                this.BorderDashStyle,
                operationType);

            if (this.Axis.Common.ProcessModeRegions)
            {
                this.Axis.Common.HotRegionsList.AddHotRegion(graph, path, false, this.ToolTip, null, null, null, this, ChartElementType.StripLines);
            }

            if (horizontal)
            {
                // Draw strip on the side wall (left or right)
                if (!area.IsSideSceneWallOnLeft())
                {
                    rect.X = rect.Right;
                }
                rect.Width = 0f;

                path = graph.Fill3DRectangle(
                    rect,
                    0f,
                    area.areaSceneDepth,
                    area.matrix3D,
                    area.Area3DStyle.LightStyle,
                    this.BackColor,
                    this.BorderColor,
                    this.BorderWidth,
                    this.BorderDashStyle,
                    operationType);
            }
            else if (area.IsBottomSceneWallVisible())
            {
                // Draw strip on the bottom wall (if visible)
                rect.Y      = rect.Bottom;
                rect.Height = 0f;

                path = graph.Fill3DRectangle(
                    rect,
                    0f,
                    area.areaSceneDepth,
                    area.matrix3D,
                    area.Area3DStyle.LightStyle,
                    this.BackColor,
                    this.BorderColor,
                    this.BorderWidth,
                    this.BorderDashStyle,
                    operationType);
            }

            if (this.Axis.Common.ProcessModeRegions)
            {
                this.Axis.Common.HotRegionsList.AddHotRegion(graph, path, false, this.ToolTip, null, null, null, this, ChartElementType.StripLines);
            }

            if (path != null)
            {
                path.Dispose();
            }
        }