Necesito calcular la ubicación de las intersecciones entre varios intervalos de fechas y el número de intersecciones superpuestas. Entonces necesito mostrar qué rangos de fecha/hora se superponen a cada una de esas secciones que se intersectan. Es un poco más complicado que eso, así que haré todo lo posible para explicarlo dando un ejemplo. Estoy trabajando en VB.Net, pero los ejemplos de C# son aceptables y también trabajo en ambos.¿Calcula la ubicación y el número de intersecciones entre múltiples rangos de fecha/hora?
Tenemos varias tareas de alto riesgo que involucran el mismo sistema. A continuación tengo tres trabajos de ejemplo denominados HR1/2/3/4 con fecha/hora de inicio y finalización.
- HR1 {1/6/2010 10:00 - 1/6/2010 15:00}
- HR2 {1/6/2010 11:00 - 1/6/2010 18:00}
- HR3 {1/6/2010 12:00 - 1/6/2010 14:00}
- HR4 {1/6/2010 18:00 - 1/6/2010 20:00}
Lo que quiero que sea el resultado final se muestra a continuación. Tengo problemas para describirlo de cualquier forma excepto por ejemplo.
- HRE1 {1/6/2010 10:00 - 1/6/2010 11:00} - Intersects 1
- {Hora de finalización de Split 1, para facilitar la lectura solamente, no es necesario en solución}
- HRE1 {1/6/2010 11:00 - 1/6/2010 12:00} - Intersects 2
- HRE2 {1/6/2010 11:00 - 1/6/2010 12:00} - Intersects 2
- {Hora de finalización 2, solo para legibilidad, no es necesario en solución}
- HRE1 {1/6/2010 12:00 - 1/6/2010 14:00} - Intersects 3
- HRE2 {1/6/2010 12:00 - 1/6/2010 14:00} - Intersects 3
- HRE3 {1/6/2010 12:00 - 1/6/2010 14:00} - Intersects 3
- {Hora de finalización de Split 3, para facilitar la lectura solamente, no es necesario en solución } {
- HRE1 1/6/2010 14:00 - 1/6/2010 15:00} - intersecta 2
- HRE2 { 1/6/2010 14:00 - 1/6/2010 15:00} - Interseca 2
- {Hora de finalización División 4, para legibilidad solamente, no es necesario en solución}
- HRE2 {1/6/2010 15 : 00 - 1/6/2010 18:00} - Intersects 1
- {Hora de finalización de Split 5, para facilitar la lectura solamente, no es necesario en solución } {
- HR4 1/6/2010 18:00 - 1/6/2010 20:00} - intersecta 1
Cualquier ayuda sería muy apreciado.
¿Puedes resolver el problema con * dos * intervalos de tiempo? –