From 99eed1e3c7e7292aea91131baeb36f81e23e3e82 Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Tue, 26 Jun 2012 12:41:11 +0200 Subject: Initial refactor from kernel --- .../gui/graph/view/DefaultVertexRenderer.java | 60 ++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 src/main/java/com/c2kernel/gui/graph/view/DefaultVertexRenderer.java (limited to 'src/main/java/com/c2kernel/gui/graph/view/DefaultVertexRenderer.java') diff --git a/src/main/java/com/c2kernel/gui/graph/view/DefaultVertexRenderer.java b/src/main/java/com/c2kernel/gui/graph/view/DefaultVertexRenderer.java new file mode 100644 index 0000000..c8804e2 --- /dev/null +++ b/src/main/java/com/c2kernel/gui/graph/view/DefaultVertexRenderer.java @@ -0,0 +1,60 @@ +package com.c2kernel.gui.graph.view; + +import java.awt.FontMetrics; +import java.awt.Graphics2D; +import java.awt.Paint; +import java.awt.Polygon; + +import com.c2kernel.graph.model.GraphPoint; +import com.c2kernel.graph.model.Vertex; + + +public class DefaultVertexRenderer implements VertexRenderer +{ + private Paint mLinePaint = null; + private Paint mTextPaint = null; + private Paint mFillPaint = null; + + + public DefaultVertexRenderer(Paint linePaint, Paint textPaint, Paint fillPaint) + { + mLinePaint = linePaint; + mTextPaint = textPaint; + mFillPaint = fillPaint; + } + + + @Override + public void draw(Graphics2D g2d, Vertex vertex) + { + GraphPoint[] outlinePoints = vertex.getOutlinePoints(); + GraphPoint centrePoint = vertex.getCentrePoint(); + Polygon outline = new Polygon(); + + String vertexName = vertex.getName(); + FontMetrics metrics = g2d.getFontMetrics(); + int textWidth = metrics.stringWidth(vertexName); + int textHeight = metrics.getHeight(); + int textX = centrePoint.x - textWidth/2; + int textY = centrePoint.y + textHeight/3; + + int i = 0; + + + // Construct a shape in the outline of the vertex + for(i=0; i