private void ViewProjection()
        {
            viewRotate = true;
            _drawTheFirst();
            _projectionTransform = () =>
            {
                var coll   = (IEnumerable <IFacet>)_resultTransformationFacets.DeepClone();
                var rotate = _transformation.GetRotateFacets(coll, FiView, Teta, 0);

                foreach (var item in rotate)
                {
                    var arrises = item.ArristCollection.ToList();
                    item.FaceColor = IsBulb
                        ? _lightFace.RgbLigth(MainColor, item, new List <double> {
                        LightViewVector[1], -LightViewVector[0], -LightViewVector[2]
                    }, Ro > 0 && LightViewVector[2] > 0)
                        : MainColor;
                }
                var resColl = _transformation.ViewTransformation(rotate, 0, 0, Ro, Distance);

                var roberts = new RobertsAlgorithm();
                var res     =
                    roberts.HideLines(resColl,
                                      new Vertex(1000, 0, 0, Ro > 0 ? -Math.Abs(LightViewVector[2]) : Math.Abs(LightViewVector[2])))
                    .ToList();
                var resultFacet = res.Where(x => x.IsHidden != true).ToObservableCollection();

                var uiCollection = new ObservableCollection <UIElement>();
                foreach (var item in resultFacet)
                {
                    var arrises    = item.ArristCollection.ToList();
                    var listPoint  = arrises.Select(arris => new Point(arris.FirstVertex.X + CenterX, arris.FirstVertex.Y + CenterY)).ToList();
                    var detailPath = new Path
                    {
                        Fill   = item.FaceColor,
                        Stroke = item.FaceColor,
                        Data   = new CombinedGeometry(new PathGeometry(new []
                        {
                            new PathFigure(listPoint[listPoint.Count - 1],
                                           new []
                            {
                                new PolyLineSegment(listPoint, false)
                            }, true)
                        }), null)
                    };
                    uiCollection.Add(detailPath);
                }
                UiElementsCollection = uiCollection;
            };
            _projectionTransform();
        }