 
			
				08/07/2005, 09:20
			
			
			     |  
      |    |    |    Fecha de Ingreso: agosto-2003  Ubicación: Acapulco  
						Mensajes: 34
					  Antigüedad: 22 años, 2 meses Puntos: 0     |        |  
  |      dibujar flechas        alguien de ustedes sabra como dibujar una flecha en un canvas, hasta el momento puedo dibujarla cuando la linea es horizontal, pero si esta linea le cambio su pendiente el triengulito del final se mantiene como si fuera la linea horizontal, es decir no gira junto con la peniente, no se si me entiendan pero las mando parte del código para que me ayuden     
saludos 
Jazmín   
graffBuf es de tipo grafico y es publico en  
la variable tipo es solo porque dibujo dos tipos de flechas punteadas o no.   
 public void crearFlecha(int x1, int y1, int x2, int y2, int tipo){ 
    //vectores para dibujar el triangulo de la flecha 
    int puntosX[] = {x2, x2-7, x2-7,x2}; 
    int puntosY[] = {y2, y2-7,y2+7,y2}; 
    if(tipo==2) { 
      float dash1[] = {5.0f}; //punteado 
      BasicStroke dashed = new BasicStroke(2.0f, BasicStroke.CAP_BUTT, BasicStroke.JOIN_MITER, 10.0f, dash1, 0.0f); 
      grafBuff.setStroke(dashed); 
    } 
    else{ 
      if (tipo == 1)  
        grafBuff.setStroke(new BasicStroke(2.0f)); //ancho 
    } 
    grafBuff.setColor(Color.black); 
    grafBuff.drawLine(x1,y1,x2,y2); 
    GeneralPath filledPolygon = new GeneralPath(GeneralPath.WIND_EVEN_ODD,puntosX.leng  th); 
    filledPolygon.moveTo(puntosX[0],puntosY[0]); 
    for (int index = 1;index < puntosX.length;index++) { 
      filledPolygon.lineTo(puntosX[index], puntosY[index]); 
    } 
    filledPolygon.closePath(); 
    grafBuff.fill(filledPolygon); 
    grafBuff.setColor(Color.gray); 
    grafBuff.setStroke(new BasicStroke(1.0f)); //defaulf   
  }           |