2010-04-08 16 views

Respuesta

5

Tienes que inicializar el TreeLayout después de agregar los vértices al gráfico, lo intenté y funcionó para mí.

que tiene que hacer algo como lo siguiente: (tenga en cuenta que este es un código de 1 año de edad que tuviera, puede encontrarse con que sea un poco pasado de moda)

Layout<GraphVertex, GraphEdge> layout; //create a layout 
layout = new TreeLayout<GraphVertex, GraphEdge>((Forest<GraphVertex, GraphEdge>) g); 
// initialize your layout using the graph you created, which has to be of type forest 
vv.setGraphLayout(layout); 
// set the layout of the visualization viewer you are using to be the layout you just created (the tree layout) 

GraphVertex es la clase que representa un vértice en el gráfico, GraphEdge representa los bordes en su gráfico.

+0

y cuál sería el tipo de datos de la variable g en su código de ejemplo? (Utilicé SparseGraph y el error de tiempo de ejecución es que SparseGraph no se puede convertir a edu.uci.ics.jung.graph.Forest) – bikashg

+0

@bikashg Debe ser algo que implemente [Forest] (http: //jung.sourceforge. net/doc/api/edu/uci/ics/jung/graph/Forest.html) interfaz, como estos: DelegateForest, DelegateTree, OrderedKAryTree (de la documentación), en mi caso tuve mi propia implementación de la interfaz de Forest. –

+0

sí, eso lo hizo. Gracias. – bikashg

Cuestiones relacionadas