@@ -494,6 +494,15 @@ sline_sline_pos(const SLine *l1, const SLine *l2)
494
494
vector3d_spoint (& p [2 ], & v [1 ][0 ]);
495
495
vector3d_spoint (& p [3 ], & v [1 ][1 ]);
496
496
497
+ /* check connected lines */
498
+ if (FPgt (il2 -> length , 0.0 ) && (vector3d_eq (& v [0 ][0 ], & v [1 ][0 ]) ||
499
+ vector3d_eq (& v [0 ][0 ], & v [1 ][1 ]) ||
500
+ vector3d_eq (& v [0 ][1 ], & v [1 ][0 ]) ||
501
+ vector3d_eq (& v [0 ][1 ], & v [1 ][1 ])))
502
+ {
503
+ return PGS_LINE_CONNECT ;
504
+ }
505
+
497
506
/* Check, sl2 is at equator */
498
507
if (FPzero (p [2 ].lat ) && FPzero (p [3 ].lat ))
499
508
{
@@ -520,15 +529,6 @@ sline_sline_pos(const SLine *l1, const SLine *l2)
520
529
521
530
/* Now sl2 is not at equator */
522
531
523
- /* check connected lines */
524
- if (FPgt (il2 -> length , 0.0 ) && (vector3d_eq (& v [0 ][0 ], & v [1 ][0 ]) ||
525
- vector3d_eq (& v [0 ][0 ], & v [1 ][1 ]) ||
526
- vector3d_eq (& v [0 ][1 ], & v [1 ][0 ]) ||
527
- vector3d_eq (& v [0 ][1 ], & v [1 ][1 ])))
528
- {
529
- return PGS_LINE_CONNECT ;
530
- }
531
-
532
532
if (FPle (il2 -> length , seg_length ))
533
533
{
534
534
bool a1 = (FPge (p [2 ].lat , 0.0 ) && FPle (p [3 ].lat , 0.0 ));
0 commit comments