* v1.x * v2.y - v2.x * v1.y > konst
* gilt, mit konst = 0.0001.
*/
public Vektor2D schnPktSpezial(final Gerade2D h) {
final double nullKonst = 0.0001;
final Vektor2D p1 = this.stuetzPunkt;
final Vektor2D v1 = this.richtung;
final Vektor2D p2 = h.stuetzPunkt;
final Vektor2D v2 = h.richtung;
Vektor2D zwisch;
// Der Schnittpunkt der Geraden.
Vektor2D q = new Vektor2D(p1);
q.add(p2);
q.div(2);
if (v1.distanz(Vektor2D.NULL_VEKTOR) < nullKonst
|| v2.distanz(Vektor2D.NULL_VEKTOR) < nullKonst
|| Double.isNaN(v1.x) || Double.isNaN(v1.y)
|| Double.isNaN(v2.x) || Double.isNaN(v2.y)
|| Double.isNaN(p1.x) || Double.isNaN(p1.y)
|| Double.isNaN(p2.x) || Double.isNaN(p2.y)
) {
if (Double.isNaN(p1.x) || Double.isNaN(p1.y)) {
q = new Vektor2D(p2);
}
if (Double.isNaN(p2.x) || Double.isNaN(p2.y)) {
q = new Vektor2D(p1);
}
} else {
zwisch = this.schnPkt(h);
if (zwisch != null) {