Domanda

Ho creato un percorso di curve di Bézier e funziona benissimo per disegnare il tracciato. Ma io non so come posso disegnare i punti di controllo insieme al percorso. È quello possibile o devo tenere traccia di loro in un altro datastructure?

Aggiornamento:. La ragione di questo che voglio disegnare i punti di controllo, è che io lascerò all'utente di modificare le curve usando le maniglie sui punti di controllo

Sto creando il percorso con:

Path2D.Double path = new Path2D.Double();
path.moveTo(0,0);
path.curveTo(5, 6, 23, 12, 45, 54);
path.curveTo(34, 23, 12, 34, 2, 3);

E il disegno con:

g2.draw(path);

Ho testato con PathIterator come trashgod ha suggerito, ma sarà difficile da gestire le curve che modo se voglio che l'utente sia in grado di modificare i punti di controllo .

È stato utile?

Soluzione

È possibile ottenere un PathIterator per fare riferimento alla matrice di coordinate di ogni punto del Shape. È possibile utilizzare questi per disegnare ridimensionare maniglie e punti di controllo lungo la curva durante la modifica. Ecco un esempio di modifica utilizzando un'implementazione curva personalizzata.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top