Har ett stort problem! men kan du inte bara spara ner koordinaterna som du använder då (x1,y1), (x2, y2).. Ok, du menar att spara x, y koordinaterna pa lineTo vardena nedan, men fragan ar hur avlasa varje lineTo koordinat? då du resizar pilen borde du ju veta vad du har för värden då? OK, det har kan vara en losning, fragan ar hur ska man gora for att avlasa varje lineTo koordinat vid mousepressed pa varje pil? Ingen som kan svara pa det?? tja, om du förväntar dej svar i realtid så är inte ett forum det rätta sättet.. <ironi>det har ju ändå gått en hel timme sen ditt senaste inlägg..</ironi> hehe, tankte att det finns sakert nagon annan som har varit i samma problem situation... http://java.sun.com/j2se/1.4.2/docs/api/java/awt/geom/GeneralPath.html#getPathIterator(java.awt.geom.AffineTransform) Tack for lankarna Simon! Antingen sparar du pilens kooordinater och dess skala eller så räknar du om alla koordinater till värden mellan t.ex. noll och hundra. Då spelar skalan ingen roll...Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla idee
Jag har ett program som skapar flera pilar med hjalp av GeneralPath.
Problemet ar nu hur spara granserna for pilen i databasen for att sen kunna lasa fran databasen och aterskapa pilen igen. (Jag tanker mest pa den enklaste lagringen)
Som jag har tankt nu, tanker jag spara x, y, bredd, hojd och vinkel for pilen i databasen for att kunna aterskapa den igen. (vinkel om man har roterat pilen)
Genom att avlasa en pils granser genom att gora en mousepressed pa den kan man ta reda pa x, y och bredd och hojd som koden nedan visar:
public Rectangle getArrowBounds(GeneralPath arrow)
{
Rectangle r = arrow.getBounds();
return new Rectangle(r.x, r.y, r.width, r.height);
}
Tanker jag ratt eller ar jag ute och cyklar, finns det enklare losningar for det har?
Uppskattar alla tips och forslag!
<code java>
//sa har skapas en pil med GeneralPath
GeneralPath arrow = new GeneralPath();
arrow.moveTo(e.getX(), e.getY() + 10);
arrow.lineTo(e.getX() + 20, e.getY() + 10);
arrow.lineTo(e.getX() + 20, e.getY() + 0);
arrow.lineTo(e.getX() + 40, e.getY() + 20); //Size for arrow head
arrow.lineTo(e.getX() + 20, e.getY() + 40);
arrow.lineTo(e.getX() + 20, e.getY() + 30);
arrow.lineTo(e.getX() + 0, e.getY() + 30);
arrow.lineTo(e.getX() + 0, e.getY() + 10);
<code java>
Sv: Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla
Sv:Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla
Tank om man resizar pilen da ar det inte samma varden som nedan.
arrow.moveTo(e.getX(), e.getY() + 10);
arrow.lineTo(e.getX() + 20, e.getY() + 10);
arrow.lineTo(e.getX() + 20, e.getY() + 0);
arrow.lineTo(e.getX() + 40, e.getY() + 20); //Size for arrow head
arrow.lineTo(e.getX() + 20, e.getY() + 40);
arrow.lineTo(e.getX() + 20, e.getY() + 30);
arrow.lineTo(e.getX() + 0, e.getY() + 30);
arrow.lineTo(e.getX() + 0, e.getY() + 10); Sv: Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla
Sv:Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla
Sv: Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla
Sv:Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla
Sv: Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla
Har letat pa natet att avlasa en GeneralPath alla koordinater men har inte hittat nat an :(Sv:Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla
http://java.sun.com/j2se/1.4.2/docs/api/java/awt/geom/PathIterator.html#currentSegment(double[])Sv: Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla
Hade varit bra om de kunde visa med kodexempel i manualen :)Sv: Expert hjalp behovs: spara figuren i databasen, stor problem, behover enkla