Hola xic@s!
En mi aplicación tengo que dibujar sobre células y he pensado (y he hecho,ya que para otras funciones necesitaba hacerlo de esta manera) que para dibujar los bordes de las células ,pase el usuario el ratón por encima de los bordes y se le vaya dibujando una linea.Que pasa,que las lineas de mis células tienen que ser puntos(ya que son miles de puntos consecutivos) y el problema es que cuando se dibuja,los puntos me aparecen algo separados y no lo entiendo porque cuando se dibujan los bordes a partir de un fichero de texto con las coordenadas me las dibuja muy bien(tanto que parecen lineas) pero cuando lo hago yo libremente me dibuja algo asi:* * * * * * *
y yo lo que quiero es que sea asi **********tan juntos que parezca que sean líneas.Se me juntan un poco más si el usuario va pasando el ratón muy despacio pero eso no queda muy bien.
Alguien tiene alguna idea?
public void mouseDragged(java.awt.event.MouseEvent e)
{
switch(Pizarra.option)
{
case 5:boolean hayPunto=false;
for(Punto p : modelo.getPuntos())
{
if(Math.abs(p.getX() - e.getX()) < 12 &&
Math.abs(p.getY() - e.getY()) < 12)
{
hayPunto=true;
break;
}
}
if(!hayPunto)
{
modelo.añadirPuntos(new Punto(e.getX(),
e.getY()));
}
break;
}
}
public void paint(Graphics g)
{
super.paint(g);//pintar modelo
Graphics2D g2 = (Graphics2D) g;//hace un cast para pasarlo a este tipo
if(modelo!=null)
{
for(Punto p : modelo.getListaCentros())
{
if(p.getSeleccionado()==true)
{
g2.setColor(Pizarra.getColorSelec());
}
else
{
g2.setColor(Pizarra.getColorNormal());
}
g2.fillRect(p.getX(),p.getY(),10,10);
}//fin for
for(Poligono poli:modelo.getListaPoligonos())
{
if(poli.getCentro()!=null)
{
g2.fillRect(poli.getCentro().getX(),poli.getCentro ().getY(),
10,10);
}
ArrayList<Punto> puntos=poli.getPuntos();
for(Punto punt:puntos){
g2.fillOval(punt.getX(), punt.getY(), 5, 5);
}
}
for(Punto pu : modelo.getPuntos())
{
if(pu.getSeleccionado()==true)
{
g2.setColor(Pizarra.getColorSelec());
}
else
{
g2.setColor(Pizarra.getColorNormal());
}
g2.fillOval(pu.getX(), pu.getY(), 5, 5);
}//fin for
}//fin if modelo
}//fin método