protected void redraw() {

	if (graphic.get() != null) {
	    graphicContainer.getChildren().setAll(graphic.get());
	} else {
	    graphicContainer.getChildren().clear();
	}

	path.setFill(backgroundVisible.get() ? (mouseOn
		&& backgroundMouseOnFill.get() != null ? backgroundMouseOnFill
		.get() : backgroundFill.get()) : null);
	path.setStroke(strokeVisible.get() ? (mouseOn
		&& strokeMouseOnFill.get() != null ? strokeMouseOnFill.get()
		: strokeFill.get()) : null);

	path.setFillRule(FillRule.EVEN_ODD);

	computeCoordinates();

	updateCoordinates();

    }