From f42954a45bea9f3e40090447804f33f12c080640 Mon Sep 17 00:00:00 2001 From: OszkarSemerath Date: Sat, 24 Mar 2018 21:44:49 -0400 Subject: upgraded attribute support for the graph solver --- .../PartialInterpretation2Graphviz.xtend | 37 ++++++++++++++++++++-- 1 file changed, 35 insertions(+), 2 deletions(-) (limited to 'Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.visualisation') diff --git a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.visualisation/src/hu/bme/mit/inf/dslreasoner/visualisation/pi2graphviz/PartialInterpretation2Graphviz.xtend b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.visualisation/src/hu/bme/mit/inf/dslreasoner/visualisation/pi2graphviz/PartialInterpretation2Graphviz.xtend index e4ff4146..95e1f74d 100644 --- a/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.visualisation/src/hu/bme/mit/inf/dslreasoner/visualisation/pi2graphviz/PartialInterpretation2Graphviz.xtend +++ b/Solvers/VIATRA-Solver/hu.bme.mit.inf.dslreasoner.visualisation/src/hu/bme/mit/inf/dslreasoner/visualisation/pi2graphviz/PartialInterpretation2Graphviz.xtend @@ -29,6 +29,8 @@ import static guru.nidi.graphviz.model.Factory.* import static extension hu.bme.mit.inf.dslreasoner.util.CollectionsUtil.* import java.awt.image.BufferedImage +import java.util.Collection +import org.eclipse.xtext.xbase.lib.Functions.Function1 class GraphvizVisualisation implements PartialInterpretationVisualiser { @@ -44,6 +46,16 @@ class GraphvizVisualisation implements PartialInterpretationVisualiser { visualisePartialInterpretation(partialInterpretation,false) } + def private getElements(PartialInterpretation model) { + return + model.problem.elements + + model.newElements + + model.booleanelements+ + model.integerelements+ + model.stringelement+ + model.realelements + } + def private visualisePartialInterpretation(PartialInterpretation partialInterpretation, boolean concretizationOnly) { val problem = partialInterpretation.problem @@ -51,7 +63,7 @@ class GraphvizVisualisation implements PartialInterpretationVisualiser { val oldElements = problem.elements val newElements = partialInterpretation.newElements //val prototypeElements = #[partialInterpretation.openWorldElementPrototype] - val allElements = problem.elements + partialInterpretation.newElements + val allElements = getElements(partialInterpretation) // Indexing types val mustTypes = new HashMap> @@ -90,7 +102,18 @@ class GraphvizVisualisation implements PartialInterpretationVisualiser { elements2ID.put(newElement,id) elements2Node.put(newElement,image) } - // Prototype elements +// for(booleanElementIndex: 0.. void drawDataTypes(Collection collection, Function1 namer, HashMap elements2Node, HashMap elements2ID) { + for(booleanElementIndex: 0.. mustTypes, Set mayTypes) { var tableStyle = ''' CELLSPACING="0" BORDER="2" CELLBORDER="0" CELLPADDING="1" STYLE="ROUNDED"''' if(typeColoringStyle==TypeColoringStyle::AVERAGE) { -- cgit v1.2.3-54-g00ecf