public void GenerateBasicGraph()
        {
            MatrixMethod matrixMethod = new MatrixMethod(_parameters);

            _parameters.GeneratedBasicGraph         = new Graph(true);        //nowy graf
            _parameters.verticesBasicGeneratedGraph = new List <Vertex>();    //lista przechowująca wierzchołki

            _parameters.incidenceMatrix = matrixMethod.FillIncidenceMatrix(); //macierz incydencji
            _parameters.weightsMatrix   = matrixMethod.FillWeightsMatrix();   //macierz incydencji

            //wygenerowanie odpowiedniej ilości wierzchołków
            for (int i = 0; i < _parameters.NumberOfVertices; i++)
            {
                _parameters.verticesBasicGeneratedGraph.Add(new Vertex((i + 1).ToString(), i));
                _parameters.GeneratedBasicGraph.AddVertex(_parameters.verticesBasicGeneratedGraph[i]);
            }

            //generowanie krawędzi na podstawie macierzy
            EdgeMethod.GenerateEdges(_parameters.incidenceMatrix, _parameters.verticesBasicGeneratedGraph, _parameters.GeneratedBasicGraph);

            //suma jest zapisana w ostatniej kolumnie macierzy oraz we właściwości obiektu vertex(VertexDegree)<=potrzebne w naprawie
            VertexMethod.CalculateTheSum(_parameters.incidenceMatrix, _parameters.verticesBasicGeneratedGraph);

            //zapisanie wierzołków sąsiadujących ze sobą(potrzebne w naprawie)
            VertexMethod.SetVertexNeighbors(_parameters.incidenceMatrix, _parameters.verticesBasicGeneratedGraph);

            _parameters.UndirectedBasicGraph = new UndirectedBidirectionalGraph <Vertex, Edge>(_parameters.GeneratedBasicGraph);//coś jak canvas

            EdgeMethod.AddWeightsToGraph(_parameters.GeneratedBasicGraph, _parameters.weightsMatrix);
            EdgeMethod.AddWeightsTooltip(_parameters.GeneratedBasicGraph);

            matrixMethod.RefreshMatrixUi(_parameters.GeneratedBasicGraph);
        }