Mejoras Implementadas:

Uso de latitud y longitud: Cada región ahora tiene límites específicos. Coordenadas específicas por región: Basadas en divisiones más detalladas. Optimización para calidad: casos en los que una coordenada podría estar cerca del límite entre regiones.
 avatar
unknown
csharp
17 days ago
2.4 kB
6
Indexable
string MapCoordinatesToRegion(float latitude, float longitude)
{
    // Arica y Parinacota
    if (latitude >= -19.9187 && latitude <= -17.5000 && longitude >= -70.4600 && longitude <= -68.9000)
        return "Arica y Parinacota";

    // Tarapacá
    if (latitude > -21.0000 && latitude <= -19.9187 && longitude >= -70.6400 && longitude <= -68.5000)
        return "Tarapacá";

    // Antofagasta
    if (latitude > -25.0000 && latitude <= -21.0000 && longitude >= -70.7000 && longitude <= -67.0000)
        return "Antofagasta";

    // Atacama
    if (latitude > -27.3700 && latitude <= -25.0000 && longitude >= -70.9700 && longitude <= -68.9200)
        return "Atacama";

    // Coquimbo
    if (latitude > -32.0000 && latitude <= -27.3700 && longitude >= -71.6500 && longitude <= -69.6800)
        return "Coquimbo";

    // Valparaíso
    if (latitude > -33.6000 && latitude <= -32.0000 && longitude >= -71.9300 && longitude <= -70.0000)
        return "Valparaíso";

    // Metropolitana
    if (latitude > -34.1700 && latitude <= -33.6000 && longitude >= -71.2100 && longitude <= -70.2200)
        return "Metropolitana";

    // O'Higgins
    if (latitude > -35.0000 && latitude <= -34.1700 && longitude >= -72.0000 && longitude <= -70.5000)
        return "O'Higgins";

    // Maule
    if (latitude > -36.3300 && latitude <= -35.0000 && longitude >= -72.5600 && longitude <= -70.9700)
        return "Maule";

    // Biobío
    if (latitude > -38.4500 && latitude <= -36.3300 && longitude >= -73.0600 && longitude <= -71.1700)
        return "Biobío";

    // La Araucanía
    if (latitude > -39.5000 && latitude <= -38.4500 && longitude >= -73.8000 && longitude <= -71.3000)
        return "La Araucanía";

    // Los Ríos
    if (latitude > -40.5000 && latitude <= -39.5000 && longitude >= -73.9000 && longitude <= -71.6000)
        return "Los Ríos";

    // Los Lagos
    if (latitude > -44.0000 && latitude <= -40.5000 && longitude >= -74.6000 && longitude <= -71.9000)
        return "Los Lagos";

    // Aysén
    if (latitude > -49.0000 && latitude <= -44.0000 && longitude >= -75.7000 && longitude <= -71.2000)
        return "Aysén";

    // Magallanes y Antártica Chilena
    if (latitude > -55.0500 && latitude <= -49.0000 && longitude >= -75.2000 && longitude <= -67.0000)
        return "Magallanes y la Antártica Chilena";

    // Si no coincide con ninguna región
    return "Región no identificada";
}
Leave a Comment