Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions src/graphtea/extensions/AlgorithmUtils.java
Original file line number Diff line number Diff line change
Expand Up @@ -908,4 +908,30 @@ public static Matrix getAverageTransMatrix (GraphModel g) {
}
return adj;
}

/** Concatenates two arrays into a new array of the same component type. */
public static <T> T[] concatArrays(T[] array1, T[] array2) {
T[] result = Arrays.copyOf(array1, array1.length + array2.length);
System.arraycopy(array2, 0, result, array1.length, array2.length);
return result;
}

/**
* Returns the eccentricity of every vertex: ecc[v] = max distance from v to any reachable vertex.
* Unreachable pairs (distance >= n+1 by FloydWarshall convention) are excluded; isolated vertices get 0.
*/
public static int[] getEccentricities(GraphModel g) {
FloydWarshall fw = new FloydWarshall();
int[][] dist = fw.getAllPairsShortestPathWithoutWeight(g);
int n = g.numOfVertices();
int[] ecc = new int[n];
for (int v = 0; v < n; v++) {
for (int u = 0; u < n; u++) {
if (u != v && dist[v][u] < n + 1 && dist[v][u] > ecc[v]) {
ecc[v] = dist[v][u];
}
}
}
return ecc;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -75,10 +75,6 @@ public String getDescription() {
return "Barycentric Subdivision Graph";
}

@Override
public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
3 changes: 0 additions & 3 deletions src/graphtea/extensions/actions/CircularVisualization.java
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,6 @@ public static void circularVisualize(int r, int x, int y, SubGraph g) {
}
}

public String checkParameters() {
return null;
}

@Override
public String getName() {
Expand Down
4 changes: 0 additions & 4 deletions src/graphtea/extensions/actions/Composition.java
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,6 @@ public void action(GraphData graphData) {
graphData.core.showGraph(g);
}

@Override
public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
4 changes: 0 additions & 4 deletions src/graphtea/extensions/actions/Disjunction.java
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,6 @@ public void action(GraphData graphData) {
graphData.core.showGraph(g);
}

@Override
public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
4 changes: 0 additions & 4 deletions src/graphtea/extensions/actions/LocalityLens.java
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,6 @@ public String getCategory() {
return "Visualization";
}

@Override
public String checkParameters() {
return null;
}
}

class MouseEventListener implements Listener {
Expand Down
4 changes: 0 additions & 4 deletions src/graphtea/extensions/actions/ParalineGraph.java
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,6 @@ public String getDescription() {
return "Paraline Graph";
}

@Override
public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
4 changes: 0 additions & 4 deletions src/graphtea/extensions/actions/Sum.java
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,6 @@ public void action(GraphData graphData) {
graphData.core.showGraph(g);
}

@Override
public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
3 changes: 0 additions & 3 deletions src/graphtea/extensions/actions/g6/G6CSVStringLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -75,9 +75,6 @@ public void action(GraphData graphData) {
}
}

public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
3 changes: 0 additions & 3 deletions src/graphtea/extensions/actions/g6/G6Checker.java
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,6 @@ public void action(GraphData graphData) {
}
}

public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
3 changes: 0 additions & 3 deletions src/graphtea/extensions/actions/g6/G6StringLoader.java
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,6 @@ public void action(GraphData graphData) {
}
}

public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,6 @@ public void action(GraphData graphData) {
graphData.core.showGraph(g);
}

@Override
public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
4 changes: 0 additions & 4 deletions src/graphtea/extensions/actions/product/CoronaProduct.java
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,6 @@ public void action(GraphData graphData) {
graphData.core.showGraph(g);
}

@Override
public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
4 changes: 0 additions & 4 deletions src/graphtea/extensions/actions/product/Join.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,6 @@ public void action(GraphData graphData) {
graphData.core.showGraph(g);
}

@Override
public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
4 changes: 0 additions & 4 deletions src/graphtea/extensions/actions/product/Union.java
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,6 @@ public void action(GraphData graphData) {
graphData.core.showGraph(g);
}

@Override
public String checkParameters() {
return null;
}

@Override
public String getCategory() {
Expand Down
3 changes: 0 additions & 3 deletions src/graphtea/extensions/generators/CocktailPartyGraph.java
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,6 @@ public GPoint[] getVertexPositions() {
return PositionGenerators.circle(5, 5, 100000, 100000, 2*n);
}

public String checkParameters() {
return null;
}

public GraphModel generateGraph() {
return GraphGenerator.getGraph(false, this);
Expand Down
9 changes: 2 additions & 7 deletions src/graphtea/extensions/generators/ExampleChainGraph1.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
// Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology
// Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/
package graphtea.extensions.generators;
import graphtea.extensions.AlgorithmUtils;

import graphtea.graph.graph.Edge;
import graphtea.graph.graph.GPoint;
Expand All @@ -16,7 +17,6 @@
import graphtea.plugins.graphgenerator.core.SimpleGeneratorInterface;
import graphtea.plugins.graphgenerator.core.extension.GraphGeneratorExtension;

import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;

Expand Down Expand Up @@ -59,16 +59,11 @@ public Edge[] getEdges() {
return ret;
}

static <T> T[] concatWithArrayCopy(T[] array1, T[] array2) {
T[] result = Arrays.copyOf(array1, array1.length + array2.length);
System.arraycopy(array2, 0, result, array1.length, array2.length);
return result;
}

public GPoint[] getVertexPositions() {
GPoint[] p1 = PositionGenerators.line(5, 5, 10000, 10000, n);
GPoint[] p2 = PositionGenerators.line(20, 5, 10000, 10000, n);
return concatWithArrayCopy(p1,p2);
return AlgorithmUtils.concatArrays(p1,p2);
}

public String checkParameters() {
Expand Down
9 changes: 2 additions & 7 deletions src/graphtea/extensions/generators/ExampleChainGraph2.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
// Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology
// Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/
package graphtea.extensions.generators;
import graphtea.extensions.AlgorithmUtils;

import graphtea.graph.graph.Edge;
import graphtea.graph.graph.GPoint;
Expand All @@ -16,7 +17,6 @@
import graphtea.plugins.graphgenerator.core.SimpleGeneratorInterface;
import graphtea.plugins.graphgenerator.core.extension.GraphGeneratorExtension;

import java.util.Arrays;
import java.util.ArrayList;
import java.util.List;

Expand Down Expand Up @@ -65,16 +65,11 @@ public Edge[] getEdges() {
return ret.toArray(ee);
}

static <T> T[] concatWithArrayCopy(T[] array1, T[] array2) {
T[] result = Arrays.copyOf(array1, array1.length + array2.length);
System.arraycopy(array2, 0, result, array1.length, array2.length);
return result;
}

public GPoint[] getVertexPositions() {
GPoint[] p1 = PositionGenerators.line(5, 5, 10000, 10000, n);
GPoint[] p2 = PositionGenerators.line(1000, 5, 10000, 10000, n);
return concatWithArrayCopy(p1,p2);
return AlgorithmUtils.concatArrays(p1,p2);
}

public String checkParameters() {
Expand Down
9 changes: 2 additions & 7 deletions src/graphtea/extensions/generators/ExampleChainGraph4.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
// Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology
// Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/
package graphtea.extensions.generators;
import graphtea.extensions.AlgorithmUtils;

import graphtea.graph.graph.Edge;
import graphtea.graph.graph.GPoint;
Expand All @@ -16,7 +17,6 @@
import graphtea.plugins.graphgenerator.core.SimpleGeneratorInterface;
import graphtea.plugins.graphgenerator.core.extension.GraphGeneratorExtension;

import java.util.Arrays;
import java.util.ArrayList;
import java.util.List;

Expand Down Expand Up @@ -73,17 +73,12 @@ public Edge[] getEdges() {
return ret.toArray(ee);
}

static <T> T[] concatWithArrayCopy(T[] array1, T[] array2) {
T[] result = Arrays.copyOf(array1, array1.length + array2.length);
System.arraycopy(array2, 0, result, array1.length, array2.length);
return result;
}

public GPoint[] getVertexPositions() {
GPoint[] p1 = PositionGenerators.line(5, 5, 10000, 10000, n);
GPoint[] p2 = PositionGenerators.line(4000, 5, 10000, 10000, n);
GPoint[] p3 = PositionGenerators.line(2000, 800, 10000, 10000, n-1);
return concatWithArrayCopy(concatWithArrayCopy(p1,p2), p3);
return AlgorithmUtils.concatArrays(AlgorithmUtils.concatArrays(p1,p2), p3);
}

public String checkParameters() {
Expand Down
9 changes: 2 additions & 7 deletions src/graphtea/extensions/generators/ExampleChainGraph5.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
// Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology
// Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/
package graphtea.extensions.generators;
import graphtea.extensions.AlgorithmUtils;

import graphtea.graph.graph.Edge;
import graphtea.graph.graph.GPoint;
Expand All @@ -16,7 +17,6 @@
import graphtea.plugins.graphgenerator.core.SimpleGeneratorInterface;
import graphtea.plugins.graphgenerator.core.extension.GraphGeneratorExtension;

import java.util.Arrays;
import java.util.ArrayList;
import java.util.List;

Expand Down Expand Up @@ -73,17 +73,12 @@ public Edge[] getEdges() {
return ret.toArray(ee);
}

static <T> T[] concatWithArrayCopy(T[] array1, T[] array2) {
T[] result = Arrays.copyOf(array1, array1.length + array2.length);
System.arraycopy(array2, 0, result, array1.length, array2.length);
return result;
}

public GPoint[] getVertexPositions() {
GPoint[] p1 = PositionGenerators.line(5, 5, 10000, 10000, n);
GPoint[] p2 = PositionGenerators.line(4000, 5, 10000, 10000, n);
GPoint[] p3 = PositionGenerators.line(2000, 800, 10000, 10000, n-1);
return concatWithArrayCopy(concatWithArrayCopy(p1,p2), p3);
return AlgorithmUtils.concatArrays(AlgorithmUtils.concatArrays(p1,p2), p3);
}

public String checkParameters() {
Expand Down
9 changes: 2 additions & 7 deletions src/graphtea/extensions/generators/ExampleChainGraph6.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
// Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology
// Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/
package graphtea.extensions.generators;
import graphtea.extensions.AlgorithmUtils;

import graphtea.graph.graph.Edge;
import graphtea.graph.graph.GPoint;
Expand All @@ -16,7 +17,6 @@
import graphtea.plugins.graphgenerator.core.SimpleGeneratorInterface;
import graphtea.plugins.graphgenerator.core.extension.GraphGeneratorExtension;

import java.util.Arrays;
import java.util.ArrayList;
import java.util.List;

Expand Down Expand Up @@ -66,16 +66,11 @@ public Edge[] getEdges() {
return ret.toArray(ee);
}

static <T> T[] concatWithArrayCopy(T[] array1, T[] array2) {
T[] result = Arrays.copyOf(array1, array1.length + array2.length);
System.arraycopy(array2, 0, result, array1.length, array2.length);
return result;
}

public GPoint[] getVertexPositions() {
GPoint[] p1 = PositionGenerators.line(5, 5, 10000, 10000, n);
GPoint[] p2 = PositionGenerators.line(4000, 5, 10000, 10000, n);
return concatWithArrayCopy(p1,p2);
return AlgorithmUtils.concatArrays(p1,p2);
}

public String checkParameters() {
Expand Down
9 changes: 2 additions & 7 deletions src/graphtea/extensions/generators/ExampleChainGraph7.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
// Copyright (C) 2008 Mathematical Science Department of Sharif University of Technology
// Distributed under the terms of the GNU General Public License (GPL): http://www.gnu.org/licenses/
package graphtea.extensions.generators;
import graphtea.extensions.AlgorithmUtils;

import graphtea.graph.graph.Edge;
import graphtea.graph.graph.GPoint;
Expand All @@ -16,7 +17,6 @@
import graphtea.plugins.graphgenerator.core.SimpleGeneratorInterface;
import graphtea.plugins.graphgenerator.core.extension.GraphGeneratorExtension;

import java.util.Arrays;
import java.util.ArrayList;
import java.util.List;

Expand Down Expand Up @@ -69,16 +69,11 @@ public Edge[] getEdges() {
return ret.toArray(ee);
}

static <T> T[] concatWithArrayCopy(T[] array1, T[] array2) {
T[] result = Arrays.copyOf(array1, array1.length + array2.length);
System.arraycopy(array2, 0, result, array1.length, array2.length);
return result;
}

public GPoint[] getVertexPositions() {
GPoint[] p1 = PositionGenerators.line(5, 5, 10000, 10000, 2*n);
GPoint[] p2 = PositionGenerators.line(4000, 5, 10000, 10000, n + 1);
return concatWithArrayCopy(p1,p2);
return AlgorithmUtils.concatArrays(p1,p2);
}

public String checkParameters() {
Expand Down
Loading
Loading