Ошибки и предупреждения, связанные с преобразованием рисунков

Служба преобразования Azure Карты позволяет преобразовать отправленные пакеты рисования в данные карты. Пакеты рисунков должны соответствовать требованиям к пакету рисунков. Если одно или несколько требований не выполнены, служба преобразования возвращает ошибки или предупреждения. В этой статье перечислены коды ошибок и предупреждений в результате преобразования и рекомендации по их устранению. Здесь также приводятся некоторые примеры рисунков, которые могут привести к возврату этих кодов службой преобразования.

Служба преобразования завершается успешно, если есть предупреждения о преобразовании. Однако рекомендуется просмотреть все предупреждения и устранять указанные в них проблемы. Предупреждение означает, что часть преобразования была пропущена или исправлена автоматически. Если не разрешить проблему, ставшую причиной предупреждения, это может привести к ошибкам в последующих процессах.

Предупреждения общего характера

geometryWarning

Описание для geometryWarning

Предупреждение geometryWarning возникает, когда рисунок содержит недопустимую сущность. Недопустимая сущность — это сущность, которая не согласуется с ограничениями для геометрии. Примеры недопустимой сущности — это самопересекающаяся многоугольник или открытая PolyLine на слое, который поддерживает только закрытую геометрию.

Службе преобразования не удается создать функцию схемы из недопустимой сущности — вместо этого она игнорируется.

Примеры для geometryWarning

  • В следующих двух изображениях показаны примеры самопересекающихся многоугольников.

    Example of a self-intersecting polygon, example one.

    Example of a self-intersecting polygon, example two.

  • На следующем рисунке показан открытый PolyLine. Допустим, что слой поддерживает только замкнутую геометрию.

    Example of an open PolyLine

Как устранить ошибку geometryWarning

Проверьте geometryWarning для каждой сущности, чтобы убедиться, что она соответствует ограничениям на геометрию.

unexpectedGeometryInLayer

Описание для unexpectedGeometryInLayer

Предупреждение unexpectedGeometryInLayer возникает, если рисунок содержит геометрию, несовместимую с ожидаемым типом геометрии для данного слоя. Когда служба преобразования возвращает неожиданное предупреждениеGeometryInLayer , оно игнорирует геометрию.

Пример для unexpectedGeometryInLayer

На следующем рисунке показан открытый PolyLine. Допустим, что слой поддерживает только замкнутую геометрию.

Example of an open PolyLine

Как устранить ошибку unexpectedGeometryInLayer

Проверьте все предупреждения unexpectedGeometryInLayer и переместите несовместимую геометрию в совместимый слой. Если она несовместима с другими слоями, ее следует удалить.

unsupportedFeatureRepresentation

Описание для unsupportedFeatureRepresentation

Предупреждение unsupportedFeatureRepresentation возникает, если рисунок содержит неподдерживаемый тип сущности.

Пример для unsupportedFeatureRepresentation

На следующем рисунке показан неподдерживаемый тип сущности в виде многострочного текстового объекта на слое меток.

Example of a multi-line text object on label layer

Как устранить ошибку unsupportedFeatureRepresentation

Убедитесь, что DWG-файлы содержат только поддерживаемые типы сущностей. Поддерживаемые типы перечислены в разделе "Требования к файлам рисования" в статье о требованиях к пакету документа.

automaticRepairPerformed

Описание для automaticRepairPerformed

Предупреждение automaticRepairPerformed возникает, когда служба преобразования автоматически восстанавливает недопустимую геометрию.

Примеры для automaticRepairPerformed

  • На рисунке ниже показано, как служба преобразования восстановила самопересекающийся многоугольник в допустимую геометрию.

    Example of a self-intersecting polygon repaired

  • На следующем рисунке показана служба преобразования с привязкой первой и последней вершины открытой PolyLine для создания закрытой PolyLine, где первая и последняя вершина была меньше 1 мм друг от друга.

    Example of a snapped PolyLine

  • На следующем рисунке показано, как в слое, поддерживающем только закрытые PolyLines, служба преобразования исправила несколько открытых PolyLines. Чтобы избежать не карта открытия PolyLines, служба объединила их в одну закрытую PolyLine.

    Example of open Polylines combined into a single closed PolyLine

Как устранить ошибку automaticRepairPerformed

Чтобы устранить предупреждение automaticRepairPerformed, выполните следующие действия.

  1. Изучите геометрию каждого предупреждения и текст самого предупреждения.
  2. Определите, правильно ли используется автоматическое восстановление.
  3. Если восстановление прошло правильно, продолжайте. В противном случае перейдите в файл проекта и устраните предупреждение вручную.

Совет

Чтобы на будущее отключить предупреждения, внесите изменения в исходный рисунок, чтобы исходный рисунок соответствовал исправленному.

Предупреждения о манифесте

redundantAttribution

Описание для redundantAttribution

Предупреждение redundantAttribution возникает, когда манифест содержит избыточные или конфликтующие свойства объекта.

Примеры для redundantAttribution

  • Следующий пример JSON содержит два или более unitProperties объектов с одинаковыми name.

    "unitProperties": [
        {
            "unitName": "L1-100",
            "categoryName": "room.office"
        },
        {
            "unitName": "L1-101",
            "categoryName": "room.office"
        },
        {
            "unitName": "L1-101",
            "categoryName": "room.office"
        }
    ]
    
  • В следующем фрагменте JSON два или более zoneProperties объектов имеют одинаковые nameзначения.

     "zoneProperties": [
        {
            "zoneName": "Assembly Area 1",
            "categoryName": "zone.assembly"
        },
        {
            "zoneName": "Assembly Area 2",
            "categoryName": "zone.assembly"
        },
        {
            "zoneName": "Assembly Area 2",
            "categoryName": "zone.assembly"
        }
    

Как устранить ошибку redundantAttribution

Чтобы устранить предупреждение redundantAttribution, удалите избыточные или конфликтующие свойства объекта.

manifestWarning

Описание для manifestWarning

Предупреждение manifestWarning возникает, когда манифест содержит неиспользуемые во время преобразования объекты unitProperties или zoneProperties.

Примеры для manifestWarning

  • Манифест содержит объект unitProperties с параметром unitName, который не имеет совпадающей метки в слое unitLabel.

  • Манифест содержит объект zoneProperties с параметром zoneName, который не имеет совпадающей метки в слое zoneLabel.

Как устранить ошибку manifestWarning

Чтобы исправить предупреждение manifestWarning, удалите неиспользуемый объект unitProperties или zoneProperties из манифеста или добавьте к рисунку метку секции или зоны, чтобы объект свойств использовался во время преобразования.

Предупреждения о стенах

wallOutsideLevel

Описание для wallOutsideLevel

Предупреждение wallOutsideLevel возникает, когда рисунок содержит геометрию стены за пределами контура уровня.

Пример для wallOutsideLevel

  • На следующем рисунке показана внутренняя стена с красной, за пределами границы желтого уровня.

    Example of interior wall outside the level boundary

  • На рисунке ниже показана наружная стена красного цвета за желтой границей уровня.

    Example of exterior wall outside the level boundary

Как устранить ошибку wallOutsideLevel

Чтобы устранить предупреждение wallOutsideLevel, увеличьте геометрию уровня, чтобы она охватывала все стены. Или измените границы стены, чтобы они поместились внутри границы уровня.

Предупреждения о секциях

unitOutsideLevel

Описание для unitOutsideLevel

Предупреждение unitOutsideLevel возникает, когда рисунок содержит геометрию секции за пределами контура уровня.

Пример для unitOutsideLevel

На следующем рисунке геометрия секции (показана красным), выходит за границы уровня (показан желтым).

Example of unit exceeding the level boundary

Как устранить ошибку unitOutsideLevel

Чтобы исправить предупреждение unitOutsideLevel, растяните границу уровня, чтобы она охватывала все секции. Или измените геометрию секции, чтобы она поместилась внутри границы уровня.

partiallyOverlappingUnit

Описание для partiallyOverlappingUnit

Предупреждение появляется partiallyOverlappingUnit, если рисунок содержит геометрию секции, которая частично перекрывается с другой геометрией секции. Служба преобразования отклоняет перекрывающиеся секции.

Пример сценария partiallyOverlappingUnit

На рисунке ниже перекрывающиеся секции выделены красным цветом. UNIT110 и HALLWAY отбрасываются.

Example of overlapping units

Как устранить ошибку partiallyOverlappingUnit

Чтобы исправить предупреждение partiallyOverlappingUnit, перерисуйте все частично перекрывающиеся секции, чтобы они не перекрывались между собой.

Предупреждения о дверях

doorOutsideLevel

Описание для doorOutsideLevel

Предупреждение doorOutsideLevel возникает, когда рисунок содержит геометрию двери за пределами геометрии уровня.

Пример для doorOutsideLevel

На рисунке ниже геометрия двери, выделенная красным цветом, пересекается с желтой границей уровня.

Example of a door overlapping a level boundary

Как устранить ошибку doorOutsideLevel

Чтобы устранить предупреждение doorOutsideLevel, перерисуйте геометрию двери, чтобы она находилась внутри границ уровня.

Предупреждения о зонах

zoneWarning

Описание для zoneWarning

Предупреждение zoneWarning возникает, когда зона не содержит метку. Служба преобразования отклоняет зону, не имеющую меток.

Пример для zoneWarning

На рисунке ниже показана зона, которая не содержит метку.

Example of a zone doesn't contain a label

Как устранить ошибку zoneWarning

Чтобы устранить предупреждение zoneWarning, убедитесь, что каждая зона имеет одну метку.

Предупреждения о метках

labelWarning

Описание для labelWarning

Предупреждение labelWarning возникает, если рисунок содержит функцию неоднозначных или противоречивых меток.

Предупреждение labelWarning возникает по одной или нескольким из следующих причин:

  • Метка устройства не находится ни в одной из секций.
  • Метка зоны не находится ни в одной из зон.
  • Метка зоны находится внутри двух или более зон.

Пример для labelWarning

На рисунке ниже показана метка, которая находится внутри двух зон.

Example of a label inside two zones

Как устранить ошибку labelWarning

Чтобы устранить предупреждение labelWarning, убедитесь в том, что:

  • Все метки секций находятся внутри секций.
  • Все метки зон находятся внутри зон.
  • Все метки зон находятся в одной и только одной зоне.

Ошибки пакета рисунков

invalidArchiveFormat

Описание для invalidArchiveFormat

Ошибка invalidArchiveFormat возникает, когда пакет рисунков находится в архиве недопустимого формата, например GZIP или 7-Zip. Поддерживается только формат архивов ZIP.

Ошибка invalidArchiveFormat также возникает, если ZIP-архив пуст.

Как устранить ошибку invalidArchiveFormat

Чтобы исправить ошибку invalidArchiveFormat, убедитесь в том, что:

  • Имя файла архива заканчивается на .zip.
  • ZIP-архив содержит данные.
  • ZIP-архив не удается открыть.

invalidUserData

Описание для invalidUserData

Ошибка invalidUserData возникает, когда службе преобразования не удается прочитать объект пользовательских данных из хранилища.

Пример сценария для invalidUserData

Вы попытались отправить пакет рисования с неправильным udid параметром.

Как устранить ошибку invalidUserData

Чтобы исправить ошибку invalidUserData, убедитесь в том, что:

  • Вы указали правильный идентификатор udid для отправленного пакета.
  • Azure Карты Creator была включена для учетной записи Azure Карты, используемой для отправки пакета документа.
  • Запрос API к службе преобразования содержит ключ подписки в учетную запись Azure Карты, используемую для отправки пакета документа.

dwgError

Описание для dwgError

Ошибка dwgError возникает, когда пакет рисунков содержит ошибку одного или нескольких файлов DWG в отправленном ZIP-архиве.

Ошибка dwgError возникает, когда пакет рисунков содержит файл DWG, который не удается открыть, так как он недопустимый или поврежденный.

  • DWG-файл не является допустимым рисунком в формате файла AutoCAD DWG.
  • DWG-файл поврежден.
  • Файл DWG указан в файле manifest.json, но отсутствует в ZIP-архиве.

Как устранить ошибку dwgError

Чтобы исправить dwgError, проверьте файл манифеста manifest.json и убедитесь в том, что:

  • Все DWG-файлы в ZIP-архиве являются допустимыми рисунками в формате AutoCAD DWG; откройте каждый из них в программе AutoCAD. Удалите или исправьте все недопустимые рисунки.
  • DWG-файлы, указанные в файле manifest.json, совпадают с DWG-файлами в ZIP-архиве.

Ошибки манифеста

invalidJsonFormat

Описание для invalidJsonFormat

Ошибка invalidJsonFormat возникает, когда не удается прочитать файл manifest.json.

Не удалось прочитать файл "manifest.json" из-за ошибок форматирования или синтаксиса JSON. Дополнительные сведения о формате и синтаксисе JSON см. в формате обмена данными JavaScript (JSON).

Как устранить ошибку invalidJsonFormat

Чтобы исправить ошибку invalidJsonFormat, используйте средство поиска ошибок JSON, чтобы обнаружить и устранить ошибки JSON.

missingRequiredField

Описание для missingRequiredField

Ошибка missingRequiredField возникает, когда в файле manifest.json отсутствуют необходимые данные.

Как устранить ошибку missingRequiredField

Чтобы исправить ошибку missingRequiredField, убедитесь, что манифест содержит все необходимые свойства. Полный список обязательных объектов манифеста см . в разделе манифеста в разделе "Требования к пакету документа".

missingManifest

Описание для missingManifest

Ошибка missingManifest возникает, когда файл manifest.json отсутствует в ZIP-архиве.

Ошибка missingManifest возникает по одной или нескольким из следующих причин:

  • Файл manifest.json написан неправильно.
  • Файл manifest.json отсутствует.
  • Файл manifest.json находится не в корневом каталоге ZIP-архива.

Как устранить ошибку missingManifest

Чтобы устранить ошибку missingManifest, убедитесь, что архив содержит файл с именем manifest.json в корневом каталоге ZIP-архива.

conflict

Описание для conflict

Ошибка conflict возникает, если файл manifest.json содержит конфликтующие сведения.

Пример сценария для conflict

Служба преобразования возвращает ошибку конфликта при определении нескольких уровней с одинаковым порядком. В следующем фрагменте кода JSON показаны два уровня с одинаковым порядковым номером.

"buildingLevels":
{
    "levels": [
        {
            "levelName": "Ground",
            "ordinal": 0,
            "filename": "./Level_0.dwg"
        },
        {
            "levelName": "Parking",
            "ordinal": 0,
            "filename": "./Level_P.dwg"
        }
    ]
}

Как устранить ошибку conflict

Чтобы устранить ошибку conflict, проверьте файл manifest.json и удалите все конфликтующие сведения.

invalidGeoreference

Описание для invalidGeoreference

Ошибка invalidGeoreference возникает, когда файл manifest.json содержит недопустимую геоссылку.

Ошибка invalidGeoreference возникает по одной или нескольким из следующих причин:

  • Пользователь указывает на значение широты или долготы, находящиеся вне допустимого диапазона.
  • Пользователь указывает значение поворота геолокации, находящееся вне допустимого диапазона.

Пример сценария для invalidGeoreference

В следующем фрагменте КОДА JSON широта выше верхнего предела.

"georeference"
{
    "lat": 88.0,
    "lon": -122.132600,
    "angle": 0
},

Как устранить ошибку invalidGeoreference

Чтобы исправить ошибку invalidGeoreference, убедитесь, что значения в геоссылке попадают в правильный диапазон.

Важно!

В формате GeoJSON порядок координат: долгота и широта. Если вы не используете правильный порядок, возможно, вы случайно вызываете значение широты или долготы, которое выходит за пределы диапазона.

Ошибки стен

wallErrors

Описание для wallError

Ошибка wallError возникает, когда рисунок содержит ошибку при попытке создать функцию стены.

Пример сценария для wallError

На рисунке ниже показана функция стены, которая не пересекается ни с одной из секций.

Example of Wall feature that doesn't overlap any units

Как устранить ошибку wallError

Чтобы устранить ошибку wallError, перерисуйте стену, чтобы она перекрывалась по крайней мере с одной секцией. Или создайте новую секцию, которая будет перекрываться со стеной.

Ошибки вертикального ввода

verticalPenetrationError

Описание для verticalPenetrationError

Ошибка verticalPenetrationError возникает, когда рисунок содержит функцию неоднозначного вертикального ввода.

Ошибка verticalPenetrationError возникает по одной или нескольким из следующих причин:

  • Рисунок содержит вертикальный ввод без перекрывающихся областей вертикального ввода на любом из уровней выше или ниже этого.
  • Пакет рисунков содержит уровень с двумя или более функциями вертикального ввода, которые накладываются на одну функцию вертикального ввода на другом уровне непосредственно над или под этим уровнем.

Пример сценария для verticalPenetrationError

На следующем рисунке показана вертикальная область проникновения без перекрывающихся вертикальных областей проникновения на уровнях выше или ниже.

Example of a vertical penetration 1

На следующем рисунке показана область вертикального ввода, которая перекрывается с несколькими областями вертикального ввода на смежном уровне.

Example of a vertical penetration 2

Как устранить ошибку verticalPenetrationError

Чтобы устранить ошибку verticalPenetrationError, прочитайте о том, как использовать функцию вертикального ввода в статье Требования к пакету рисунков.

Следующие шаги