Ir para conteúdo
Fórum Script Brasil

ANDRE BANDEIRA

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que ANDRE BANDEIRA postou

  1. Olá pessoal estou com uma dificuldade em fazer a ponta da seta, pensei em fazer duas retas, porem não tive ideia de como faze-la, uma vez que a seta pode estar na horizontal, vertical ou inclinada, minha ideia é fazer uma seta igual da imagem. O código que fiz até agora é o seguinte (ele desenha a reta mas não a ponta da seta): public final void desenharAresta(Graphics desenho) { dashed = new BasicStroke(1.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 10.0f, dash1, 0.0f); Graphics2D g2 = (Graphics2D) desenho; BasicStroke s =(BasicStroke) g2.getStroke(); g2.setStroke(dashed); int i, pontoXInicial, pontoYInicial, pontoXFinal, pontoYFinal; desenho.setColor(corAresta); //Define o ponto inicial da aresta (O centro da do verticeOrigem) pontoXInicial = getVerticeOrigem().getX() + getVerticeOrigem().getLargura()/2; pontoYInicial = getVerticeOrigem().getY() + getVerticeOrigem().getAltura()/2; //Define o ponto final (sem quebra) ou segundo ponto (com quebra) da aresta... if (getNumeroQuebras() > 0) { //(com quebra) pontoXFinal = getCoordenadaQuebraX(0); pontoYFinal = getCoordenadaQuebraY(0); } else { //(sem quebra) pontoXFinal = getVerticeDestino().getX() + getVerticeDestino().getLargura()/2; pontoYFinal = getVerticeDestino().getY() + getVerticeDestino().getAltura()/2; } desenho.drawLine(pontoXInicial, pontoYInicial, pontoXFinal, pontoYFinal); // desenho.drawLine(pontoXFinal-60, pontoYFinal-60, pontoXFinal-30, pontoYFinal-20); // desenho.drawLine(pontoXFinal-60, pontoYFinal+60, pontoXFinal-30, pontoYFinal-20); //Desenha a aresta com todas as quebras existentes at� o ponto final(verticeDestino)... for (i = 1; i <= getNumeroQuebras(); i++) { pontoXInicial = pontoXFinal; pontoYInicial = pontoYFinal; if (i == getNumeroQuebras()) { pontoXFinal = getVerticeDestino().getX() + getVerticeDestino().getLargura()/2; pontoYFinal = getVerticeDestino().getY() + getVerticeDestino().getAltura()/2; } else { pontoXFinal = getCoordenadaQuebraX(i); pontoYFinal = getCoordenadaQuebraY(i); } desenho.drawLine(pontoXInicial, pontoYInicial, pontoXFinal, pontoYFinal); } g2.setStroke(s); } Obrigado desde já se alguém puder me ajudar.
×
×
  • Criar Novo...