Guten Morgen liebe Mathegenies bzw. Coder!
Tach
Ich habe auch schon versucht das
Problem mit IntersectRect in den Griff zu bekommen, leider
ohne Erfolg.
? Du betrachtest Intervalle auf einem (eindimensionalen) Zeitstrahl. Inwiefern sollte IntersectRect dabei helfen?
Ich habe 2 Zeiträume gegeben. Jeder davon KANN sich mit dem
anderen Zeitraum irgendwo treffen. Ich brauche nicht den
genauen Tag bzw. die Stelle wo sich die Zeiträume treffen
sonder einfach nur ob.
Beispiel:
Zeitraum A 1.1.2011 bis 6.1.2011
Zeitraum B 2.1.2011 bis 5.1.2011
Zuerest meine Logik:
IF (A_von=>B_von AND A_bismin, Amax] und B=[B<sub>min</sub>, B<sub>max</sub>] überlappen genau dann, wenn Amin in B oder Bmin in A liegt.
IF A<sub>min</sub>min THEN
/\*-------------------------
_| A beginnt früher als B_
-------------------------\*/
IF B<sub>min</sub>max THEN
/\*-------------------------
_| B beginnt, bevor A endet_
-------------------------\*/
"überlappend"
ELSE
/\*-------------------------
_| B beginnt, nachdem A geendet hat_
-------------------------\*/
"nicht überlappend"
END IF
ELSE
/\*-------------------------
_| A beginnt später als B_
-------------------------\*/
IF A<sub>min</sub>max THEN
/\*-------------------------
_| A beginnt, bevor B endet_
-------------------------\*/
"überlappend"
ELSE
/\*-------------------------
_| A beginnt, nachdem B geendet hat_
-------------------------\*/
"nicht überlappend"
END IF
END IF
HTH
KHK