diff --git a/script/Appilcation.js b/script/Appilcation.js index e995aca..28cdb14 100644 --- a/script/Appilcation.js +++ b/script/Appilcation.js @@ -678,7 +678,7 @@ Application.prototype.TestAdjacencyMatrix = function (matrix, rowsObj, colsObj, Application.prototype.SetAdjacencyMatrix = function (matrix, separator = ",") { var res = true; - var r = {}; + var r = {}; var c = {}; if (!this.TestAdjacencyMatrix(matrix, r, c, separator)) { diff --git a/script/Graph.js b/script/Graph.js index 167062f..b1cb111 100644 --- a/script/Graph.js +++ b/script/Graph.js @@ -105,11 +105,13 @@ Graph.prototype.DeleteVertex = function(vertexObject) var index = this.vertices.indexOf(vertexObject); if (index > -1) { - for (var i = 0; i < this.edges.length; i++) + var clonedEdge = this.edges.slice(0); + + for (var i = 0; i < clonedEdge.length; i++) { - if (this.edges[i].vertex1 == vertexObject || this.edges[i].vertex2 == vertexObject) + if (clonedEdge[i].vertex1 == vertexObject || clonedEdge[i].vertex2 == vertexObject) { - this.DeleteEdge(this.edges[i]); + this.DeleteEdge(clonedEdge[i]); i--; } } @@ -461,9 +463,11 @@ Graph.prototype.SetAdjacencyMatrix = function (matrix, viewportSize, currentEnum { rows = rowsObj.rows; cols = colsObj.cols; - for (var i = 0; i < this.edges.length; i++) + + var clonedEdge = this.edges.slice(0); + for (var i = 0; i < clonedEdge.length; i++) { - this.DeleteEdge (this.edges[i]); + this.DeleteEdge (clonedEdge[i]); } var newVertexes = []; @@ -581,9 +585,10 @@ Graph.prototype.SetIncidenceMatrix = function (matrix, viewportSize, currentEnum { rows = rowsObj.rows; cols = colsObj.cols; - for (var i = 0; i < this.edges.length; i++) + var clonedEdge = this.edges.slice(0); + for (var i = 0; i < clonedEdge.length; i++) { - this.DeleteEdge (this.edges[i]); + this.DeleteEdge (clonedEdge[i]); } var newVertexes = []; var bWeightGraph = false;