Descripción
Al resolver capas de análisis de red con el tipo de forma de salida configurado como "Forma verdadera con medidas" en ArcMap, aparece el siguiente mensaje de error:
Error:
Advertencia: La geometría de salida para "Ubicación [número de ubicación de red] - Ubicación [número de ubicación de red]" de "Rutas" no presenta valores M porque el valor M máximo es superior al valor M máximo que puede admitir el dominio M.
Causa
El problema se produce cuando el valor de medición (valor m) de la capa de análisis de red supera el valor m máximo admitido por el dominio M. Los valores m se almacenan en un espacio de 4 bytes, por lo que el valor m máximo que se puede almacenar es 2,147,483,648 (2^31). Esta afirmación es válida siempre y cuando el valor m no contenga decimales. Un valor m para una ruta en Network Analyst se define con cuatro posiciones decimales de forma predeterminada para proporcionar suficiente precisión y para disminuir el espacio de almacenamiento. Por tanto, el máximo valor m que se puede almacenar para una ruta es 214,748.3648.
Solución o solución alternativa
Utilice una de las siguientes soluciones para corregir el problema:
Cambiar el parámetro Tipo de forma de salida a Forma verdadera
Cambie el Tipo de forma de salida de las propiedades de la capa de análisis de red a Forma verdadera. Esto se hace para excluir los valores m al resolver las capas de análisis de red. En los pasos siguientes se describe cómo cambiar el parámetro Tipo de forma de salida.
Nota:
La opción Forma verdadera proporciona la forma exacta de la ruta resultante, sin las mediciones de ruta. Al seleccionar la opción Forma verdadera, se detiene el mensaje de advertencia al resolver la capa de análisis de red, pero la ruta de salida no contiene valores m.
- En la ventana de Network Analyst, haga clic en el botón Propiedades de capa de análisis.
Se abre el cuadro de diálogo Propiedades de capa. - En el cuadro de diálogo Propiedades de capa, haga clic en la pestaña Configuración de análisis.
- Haga clic en la flecha desplegable de Tipo de forma de salida y seleccione Forma verdadera.
- Haga clic en Aplicar y luego en Aceptar.
- Ejecute el análisis de red en la capa de análisis de red. El mensaje de advertencia ya no se genera, pero la ruta de salida no contiene valores m.
Cambiar la unidad del atributo de coste del dataset de red a una unidad mayor
Al crear el dataset de red, cambie la unidad del atributo de coste del dataset de red utilizada como impedancia a una unidad mayor en el cuadro de diálogo Nuevo dataset de red. Por ejemplo, si el mensaje de advertencia aparece cuando el atributo de coste está configurado para usar una unidad pequeña, como metros, cambie la unidad del atributo de coste a kilómetros. En los siguientes pasos se describe cómo cambiar la unidad del atributo de coste al crear un dataset de red.
- Haga clic con el botón derecho en el dataset de red en la ventana Catálogo para abrir las Propiedades de dataset de red.
- En la pestaña Atributos, cambie la unidad del atributo de coste a una unidad mayor.
- Haga clic en la columna Unidades del atributo de coste y cambie la unidad a una medición mayor.
Por ejemplo, en la siguiente figura se muestra la Longitud de la ruta con el atributo de coste configurado en Metros, y la unidad del atributo se cambia a Kilómetros.
- Haga clic en Evaluadores.
- En el cuadro de diálogo Evaluadores, haga clic en la primera fila de origen y luego en Campo, debajo de la columna Tipo.
- Haga clic en el botón Propiedades del evaluador para asignar un evaluador de expresión de campo al origen.
- En el cuadro de diálogo Evaluadores de campo, escriba la expresión para cambiar la unidad del atributo de coste en el parámetro Valor.
Por ejemplo, para cambiar los valores de atributo de metros a kilómetros, se requiere la siguiente expresión:
Valor = [SHAPE_Length]/1000
- Haga clic en Aceptar.
- Haga clic en Aplicar y luego Aceptar para cerrar el cuadro de diálogo Evaluadores.
- Cree una capa de análisis de red y ejecute el análisis de red en la capa. Se genera una ruta de salida con los valores m.
Configurar el valor RouteMDomainPrecision en la ventana del Editor del Registro
Nota:
Utilice esta opción solamente si no funciona ninguna de las dos opciones anteriores.
Si ninguna de las opciones anteriores resulta viable, configure el valor RouteMDomainPrecision en la ventana del Editor del Registro para aumentar el valor m admitido por el dominio M. De forma predeterminada, el valor RouteMDomainPrecision está configurado en 10000 para proporcionar cuatro decimales de precisión. En los siguientes pasos se describe cómo configurar el valor RouteMDomainPrecision en la ventana del Editor del Registro.
- Haga clic en el menú Inicio de Windows y haga clic en Ejecutar.
- Escriba regedit en el cuadro de diálogo Ejecutar y haga clic en Aceptar.
- En la ventana del Editor del Registro, expanda la clave HKEY_CURRENT_USER\Software\ESRI\Desktop\.
- Haga clic en la clave NetworkAnalyst.
Haga clic con el botón derecho en la clave Desktop y luego en Nuevo > Clave para crear una nueva clave si la clave NetworkAnalyst no existe. Cambie el nombre de la nueva clave a NetworkAnalyst. - En la clave NetworkAnalyst, cree una clave de cadena de caracteres con el nombre RouteMDomainPrecision.
- Haga clic con el botón derecho en la clave NetworkAnalyst y seleccione Nuevo > Valor de cadena.
- Cambie el nombre de la clave de valor creada a RouteMDomainPrecision.
- Haga doble clic en la clave de valor RouteMDomainPrecision y cambie el parámetro Datos de valora un valor adecuado para cambiar la precisión del valor m.
Por ejemplo, establezca los Datos de valor en 100 para cambiar el valor de medición admitido a 21,474,836.48, o a 1000 para admitir valores m hasta 2,147,483.648.
- Haga clic en Aceptar.
- En ArcMap, vuelva a crear el dataset de red y cree de nuevo la capa de análisis de red.
- Ejecute el análisis de red en la capa de análisis de red. Se genera una ruta de salida con el valor m.