*
* @param bezKonst Die Bezierkonstante.
*/
public void bezier(final double bezKonst) {
double bezK = bezKonst;
Polygon2D bez;
Vektor2D v1, v2, v3, v4;
ArrayList<Integer> mark = new ArrayList<Integer>(4);
if (bezK > 1) {
bezK = fmg.fmg8.graphVis.zeichenModi.Konstanten.BEZ_NORMAL;
}
if (this.mark1 != null
&& this.mark2 != null
&& !this.mark1.equals(this.mark2)
&& this.markierte.size() == 4) {
mark.addAll(this.markierte);
Collections.sort(this.markierte, new IntComp());
v1 = this.pfeilPol.get(mark.get(0));
v2 = this.pfeilPol.get(mark.get(1));
v3 = this.pfeilPol.get(mark.get(2));
v4 = this.pfeilPol.get(mark.get(3));
bez = Geometrie2D.bezierKurve(v1, v2, v3, v4, bezK);
Polygon2D polNeu = new Polygon2D();
ArrayList<Double> dickenNeu = new ArrayList<Double>();
boolean platziert = false;
for (int i = 0; i < this.pfeilPol.size(); i++) {
if (!this.between(mark.get(0), mark.get(3), i)) {
polNeu.add(this.pfeilPol.get(i));
dickenNeu.add(this.dicken.get(i));
} else if (!platziert) {
for (int n = 0; n < bez.size(); n++) {
polNeu.add(bez.get(n));
dickenNeu.add(this.dicken.get(i));
}
platziert = true;
}
}