src/Tools/Graphview/shapes.scala
changeset 59251 b12d76aa29fb
parent 59250 abe4c7cdac0e
child 59258 d5c9900636ef
equal deleted inserted replaced
59250:abe4c7cdac0e 59251:b12d76aa29fb
    54 
    54 
    55   object Dummy
    55   object Dummy
    56   {
    56   {
    57     private val identity = new AffineTransform()
    57     private val identity = new AffineTransform()
    58 
    58 
    59     def shape(m: Visualizer.Metrics, visualizer: Visualizer, node: Graph_Display.Node): Shape =
    59     def shape(m: Visualizer.Metrics, visualizer: Visualizer): Shape =
    60     {
    60     {
    61       val w = (m.space_width / 2).ceil
    61       val w = (m.space_width / 2).ceil
    62       new Rectangle2D.Double(- w, - w, 2 * w, 2 * w)
    62       new Rectangle2D.Double(- w, - w, 2 * w, 2 * w)
    63     }
    63     }
    64 
    64 
    65     def paint(gfx: Graphics2D, visualizer: Visualizer, node: Graph_Display.Node): Unit =
    65     def paint(gfx: Graphics2D, visualizer: Visualizer): Unit =
    66       paint_transformed(gfx, visualizer, node, identity)
    66       paint_transformed(gfx, visualizer, identity)
    67 
    67 
    68     def paint_transformed(gfx: Graphics2D, visualizer: Visualizer,
    68     def paint_transformed(gfx: Graphics2D, visualizer: Visualizer, at: AffineTransform)
    69       node: Graph_Display.Node, at: AffineTransform)
       
    70     {
    69     {
    71       val m = Visualizer.Metrics(gfx)
    70       val m = Visualizer.Metrics(gfx)
    72       val s = shape(m, visualizer, node)
    71       val s = shape(m, visualizer)
    73       val c = visualizer.node_color(node)
       
    74 
    72 
    75       gfx.setStroke(default_stroke)
    73       gfx.setStroke(default_stroke)
    76       gfx.setColor(c.border)
    74       gfx.setColor(visualizer.dummy_color)
    77       gfx.draw(at.createTransformedShape(s))
    75       gfx.draw(at.createTransformedShape(s))
    78     }
    76     }
    79   }
    77   }
    80 
    78 
    81   object Straight_Edge
    79   object Straight_Edge
    99 
    97 
   100       if (dummies) {
    98       if (dummies) {
   101         ds.foreach({
    99         ds.foreach({
   102             case (x, y) => {
   100             case (x, y) => {
   103               val at = AffineTransform.getTranslateInstance(x, y)
   101               val at = AffineTransform.getTranslateInstance(x, y)
   104               Dummy.paint_transformed(gfx, visualizer, Graph_Display.Node.dummy, at)
   102               Dummy.paint_transformed(gfx, visualizer, at)
   105             }
   103             }
   106           })
   104           })
   107       }
   105       }
   108 
   106 
   109       gfx.setStroke(default_stroke)
   107       gfx.setStroke(default_stroke)
   159 
   157 
   160         if (dummies) {
   158         if (dummies) {
   161           ds.foreach({
   159           ds.foreach({
   162               case (x, y) => {
   160               case (x, y) => {
   163                 val at = AffineTransform.getTranslateInstance(x, y)
   161                 val at = AffineTransform.getTranslateInstance(x, y)
   164                 Dummy.paint_transformed(gfx, visualizer, Graph_Display.Node.dummy, at)
   162                 Dummy.paint_transformed(gfx, visualizer, at)
   165               }
   163               }
   166             })
   164             })
   167         }
   165         }
   168 
   166 
   169         gfx.setStroke(default_stroke)
   167         gfx.setStroke(default_stroke)