public final void drawU(UGraphic ug) { ug = ug.apply( new UChangeColor( SkinParamUtils.getColor(getSkinParam(), ColorParam.classBorder, getStereo()))); ug = ug.apply( new UChangeBackColor( SkinParamUtils.getColor(getSkinParam(), ColorParam.classBackground, getStereo()))); if (url != null) { ug.startUrl(url); } final double sizeSmall = 14; final double diff = (SIZE - sizeSmall) / 2; final UEllipse circle1 = new UEllipse(sizeSmall, sizeSmall); if (getSkinParam().shadowing()) { // circle.setDeltaShadow(4); } ug.apply(new UStroke(1.5)).apply(new UTranslate(diff, diff)).draw(circle1); ug = ug.apply(new UChangeBackColor(null)); Point2D pos = bibliotekon.getShape(getEntity()).getPosition(); final List<Line> lines = bibliotekon.getAllLineConnectedTo(getEntity()); final UTranslate reverse = new UTranslate(pos).reverse(); final ConnectedCircle connectedCircle = new ConnectedCircle(SIZE / 2); for (Line line : lines) { Point2D pt = line.getMyPoint(getEntity()); pt = reverse.getTranslated(pt); connectedCircle.addSecondaryConnection(pt); } // connectedCircle.drawU(ug.apply(new UStroke(1.5))); connectedCircle.drawU(ug); // // final Dimension2D dimDesc = desc.calculateDimension(ug.getStringBounder()); // final double widthDesc = dimDesc.getWidth(); // // final double totalWidth = Math.max(widthDesc, SIZE); // // final double x = SIZE / 2 - widthDesc / 2; // final double y = SIZE; // desc.drawU(ug.apply(new UTranslate(x, y))); if (url != null) { ug.closeAction(); } }
private UGraphic drawOctagon(UGraphic ug) { final Shape shape = bibliotekon.getShape(getEntity()); final Shadowable octagon = shape.getOctagon(); if (getSkinParam().shadowing()) { octagon.setDeltaShadow(4); } ug = applyColors(ug); ug.apply(new UStroke(1.5)).draw(octagon); desc.drawU(ug.apply(new UTranslate(MARGIN, MARGIN))); return ug; }