Erros e avisos de conversão de desenho

O Serviço de conversão do Azure Mapas permite converter pacotes de desenho carregados em dados de mapa. Os pacotes de desenho devem aderir aos Requisitos do pacote de desenho. Caso um ou mais requisitos não forem atendidos, o Serviço de conversão retorna erros ou avisos. Este artigo lista os códigos de erro e de aviso de conversão com recomendações sobre como resolvê-los. Ele também apresenta alguns exemplos de desenhos que podem fazer com que o Serviço de conversão retorne esses códigos.

O Serviço de conversão será bem-sucedido se houver algum aviso de conversão. No entanto, é recomendável que você analise e resolva todos os avisos. Um aviso indica que parte da conversão foi ignorada ou corrigida automaticamente. Não resolver os avisos pode resultar em erros em processos futuros.

Avisos gerais

geometryWarning

Descrição do geometryWarning

Um geometryWarning ocorrerá quando o desenho contiver uma entidade inválida. Uma entidade inválida é aquela que não está em conformidade com as restrições geométricas. Os exemplos de uma entidade inválida são um polígono de interseção automática ou uma polilinha aberta em uma camada que dá suporte apenas a geometria fechada.

O serviço de conversão não consegue criar um recurso de mapa a partir de uma entidade inválida e, portanto, ignora-o.

Exemplos do geometryWarning

  • As duas imagens a seguir mostram exemplos de polígonos com autointerseção.

    Example of a self-intersecting polygon, example one.

    Example of a self-intersecting polygon, example two.

  • A imagem a seguir mostra uma polilinha aberta. Suponha que a camada tenha suporte apenas a geometrias fechadas.

    Example of an open PolyLine

Como corrigir o geometryWarning

Inspecione o geometryWarning de cada entidade para verificar se ele segue restrições geométricas.

unexpectedGeometryInLayer

Descrição do unexpectedGeometryInLayer

Um aviso de unexpectedGeometryInLayer ocorre quando o desenho contém uma geometria incompatível com o tipo de geometria esperado em uma determinada camada. Quando o Serviço de conversão retorna um aviso unexpectedGeometryInLayer, ele ignora essa geometria.

Exemplo de unexpectedGeometryInLayer

A imagem a seguir mostra uma polilinha aberta. Suponha que a camada tenha suporte apenas a geometrias fechadas.

Example of an open PolyLine

Como corrigir o unexpectedGeometryInLayer

Inspecione cada aviso unexpectedGeometryInLayer e mova a geometria incompatível para uma camada compatível. Caso não seja compatível com nenhuma das outras camadas, ela deverá ser removida.

unsupportedFeatureRepresentation

Descrição do unsupportedFeatureRepresentation

O aviso de unsupportedFeatureRepresentation ocorre quando o desenho contém um tipo de entidade sem suporte.

Exemplo de unsupportedFeatureRepresentation

A imagem a seguir exibe um tipo de entidade sem suporte como um objeto de texto de várias linhas em uma camada de rótulo.

Example of a multi-line text object on label layer

Como corrigir o unsupportedFeatureRepresentation

Verifique se os arquivos DWG contêm apenas tipos de entidade com suporte. Os tipos com suporte são listados na seção Requisitos de arquivos de desenho no artigo Requisitos do pacote de desenho.

automaticRepairPerformed

Descrição de automaticRepairPerformed

O aviso de automaticRepairPerformed ocorre quando o Serviço de conversão repara a geometria inválida automaticamente.

Exemplos de automaticRepairPerformed

  • A imagem a seguir mostra como o Serviço de conversão reparou um polígono de autointerseção em uma geometria válida.

    Example of a self-intersecting polygon repaired

  • A imagem a seguir mostra o Serviço de conversão ajustando o primeiro e o último vértice de uma polilinha aberta para criar uma polilinha fechada, na qual o primeiro e o último vértice tinham menos de 1 mm de distância.

    Example of a snapped PolyLine

  • A imagem a seguir mostra como, em uma camada que dá suporte apenas a polilinhas fechadas, o Serviço de conversão reparou várias polilinhas abertas. Para evitar o descarte das polilinhas abertas, o serviço as combinou em uma única polilinha fechada.

    Example of open Polylines combined into a single closed PolyLine

Como corrigir o automaticRepairPerformed

Para corrigir um aviso de automaticRepairPerformed, execute as seguintes ações:

  1. Inspecione a geometria de cada aviso e o texto de aviso específico.
  2. Determine se o reparo automatizado está correto.
  3. Se o reparo estiver correto, continue. Caso contrário, vá até o arquivo de design e resolva o aviso manualmente.

Dica

Para suprimir um aviso no futuro, faça alterações no desenho original para que ele corresponda ao desenho reparado.

Avisos de manifesto

redundantAttribution

Descrição do redundantAttribution

O aviso de redundantAttribution ocorre quando o manifesto contém propriedades de objeto redundantes ou conflitantes.

Exemplos de redundantAttribution

  • O exemplo JSON a seguir contém dois ou mais objetos unitProperties com o mesmo name.

    "unitProperties": [
        {
            "unitName": "L1-100",
            "categoryName": "room.office"
        },
        {
            "unitName": "L1-101",
            "categoryName": "room.office"
        },
        {
            "unitName": "L1-101",
            "categoryName": "room.office"
        }
    ]
    
  • No trecho de código JSON a seguir, dois ou mais objetos zoneProperties têm o mesmo name.

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

Como corrigir o redundantAttribution

Para corrigir um aviso *redundantAttribution, remova as propriedades de objeto redundantes ou conflitantes.

manifestWarning

Descrição do manifestWarning

Um manifestWarning ocorre quando o manifesto contém objetos unitProperties ou zoneProperties que não são usados durante a conversão.

Exemplos do manifestWarning

  • O manifesto contém um objeto unitProperties com um unitName que não tem nenhum rótulo correspondente em uma camada unitLabel.

  • O manifesto contém um objeto zoneProperties com um zoneName que não tem nenhum rótulo correspondente em uma camada zoneLabel.

Como corrigir o manifestWarning

Para corrigir um manifestWarning, remova o objeto unitProperties ou zoneProperties do manifesto ou adicione um rótulo de unidade/zona ao desenho para que o objeto de propriedades seja usado durante a conversão.

Avisos de parede

wallOutsideLevel

Descrição do wallOutsideLevel

O aviso de wallOutsideLevel ocorre quando o desenho contém uma geometria de parede fora dos limites de um contorno de nível.

Exemplo de wallOutsideLevel

  • A imagem a seguir mostra uma parede interna, em vermelho, fora do limite de nível, em amarelo.

    Example of interior wall outside the level boundary

  • A imagem a seguir mostra uma parede externa, em vermelho, fora do limite de nível, em amarelo.

    Example of exterior wall outside the level boundary

Como corrigir o wallOutsideLevel

Para corrigir um aviso de wallOutsideLevel, expanda a geometria do nível para incluir todas as paredes. Ou modifique os limites de parede para ajustá-los ao limite de nível.

Avisos de unidade

unitOutsideLevel

Descrição do unitOutsideLevel

Um aviso de unitOutsideLevel ocorre quando o desenho contém uma geometria de unidade fora dos limites do contorno de nível.

Exemplo de unitOutsideLevel

Na imagem a seguir, a geometria da unidade, em vermelho, excede os limites do limite de nível, em amarelo.

Example of unit exceeding the level boundary

Como corrigir o unitOutsideLevel

Para corrigir um aviso de unitOutsideLevel, expanda o limite de nível para incluir todas as unidades. Ou modifique a geometria da unidade para ajustá-la ao limite de nível.

partiallyOverlappingUnit

Descrição do partiallyOverlappingUnit

Um aviso de partiallyOverlappingUnit ocorre quando o desenho contém uma geometria de unidade parcialmente sobreposta a outra geometria de unidade. O Serviço de conversão descarta as unidades sobrepostas.

Cenários de exemplo do partiallyOverlappingUnit

Na imagem a seguir, a unidade de sobreposição está realçada em vermelho. UNIT110 e HALLWAY são descartados.

Example of overlapping units

Como corrigir o partiallyOverlappingUnit

Para corrigir um aviso partiallyOverlappingUnit, redesenhe cada unidade parcialmente sobreposta para que ela não se sobreponha a nenhuma outra unidade.

Avisos de porta

doorOutsideLevel

Descrição do doorOutsideLevel

Um aviso de doorOutsideLevel ocorre quando o desenho contém uma geometria de porta fora dos limites da geometria de nível.

Exemplo de doorOutsideLevel

Na imagem a seguir, a geometria da porta, realçada em vermelho, sobrepõe o limite de nível, em amarelo.

Example of a door overlapping a level boundary

Como corrigir o doorOutsideLevel

Para corrigir um aviso de doorOutsideLevel, redesenhe a geometria da porta para que fique dentro dos limites do nível.

Avisos de zona

zoneWarning

Descrição de zoneWarning

Um zoneWarning ocorre quando uma zona não contém um rótulo. O Serviço de conversão descarta uma zona que não está rotulada.

Exemplo de zoneWarning

A imagem a seguir exibe uma zona que não contém um rótulo.

Example of a zone doesn't contain a label

Como corrigir o zoneWarning

Para corrigir um zoneWarning, verifique se cada zona tem um único rótulo.

Avisos de rótulo

labelWarning

Descrição de labelWarning

Um labelWarning ocorre quando o desenho contém um recurso de rótulos ambíguos ou contraditórios.

Um labelWarning ocorre devido a um ou mais dos seguintes motivos:

  • Um rótulo de unidade não está em nenhuma unidade.
  • Um rótulo de zona não está nenhuma zona.
  • Um rótulo de zona está dentro de duas ou mais zonas.

Exemplo de labelWarning

A imagem a seguir exibe um rótulo que está dentro de duas zonas.

Example of a label inside two zones

Como corrigir o labelWarning

Para corrigir um labelWarning, verifique se:

  • Todos os rótulos de unidade estão dentro de unidades.
  • Todos os rótulos de zona estão dentro de zonas.
  • Todos os rótulos de zona estão em apenas uma zona.

Erros do pacote de desenho

invalidArchiveFormat

Descrição de invalidArchiveFormat

Um erro invalidArchiveFormat ocorre quando o pacote de desenho está em um formato de arquivo inválido, como GZIP ou 7-zip. Só há suporte para o formato de arquivo ZIP.

Um erro invalidArchiveFormat também ocorre se o arquivo ZIP estiver vazio.

Como corrigir o invalidArchiveFormat

Para corrigir um erro invalidArchiveFormat, verifique se:

  • O nome do arquivo morto termina em .zip.
  • Seu arquivo ZIP contém dados.
  • Você pode abrir seu arquivo ZIP.

invalidUserData

Descrição do invalidUserData

Um erro invalidUserData ocorre quando o Serviço de conversão não consegue ler um objeto de dados do usuário que está no armazenamento.

Cenário de exemplo do invalidUserData

Você tentou carregar um pacote de desenho com um parâmetro udid incorreto.

Como corrigir o invalidUserData

Para corrigir um erro invalidUserData, verifique se:

  • Você forneceu um udid correto para o pacote carregado.
  • O Criador do Azure Mapas foi habilitado para a conta do Azure Mapas usada para carregar o pacote de desenho.
  • A solicitação de API ao serviço de conversão contém a chave de assinatura da conta do Azure Mapas que você usou para carregar o pacote de desenho.

dwgError

Descrição do dwgError

Um dwgError ocorre quando o pacote de desenho contém um problema com um ou mais arquivos DWG do arquivo ZIP carregado.

O dwgError ocorre quando o pacote de desenho contém um arquivo DWG que não pode ser aberto porque é inválido ou corrompido.

  • Um arquivo DWG não é um desenho válido do formato de arquivo DWG do AutoCAD.
  • Um arquivo DWG está corrompido.
  • Um arquivo DWG está listado no arquivo manifest.json, mas está ausente no arquivamento ZIP.

Como corrigir o dwgError

Para corrigir um dwgError, inspecione seu arquivo manifest.json confirme que:

  • Todos os arquivos DWG em seu arquivo ZIP são desenhos válidos no formato DWG e são abertos no AutoCAD. Remova ou corrija todos os desenhos inválidos.
  • A lista de arquivos DWG no manifest.json corresponde aos arquivos DWG no arquivo ZIP.

Erros de manifesto

invalidJsonFormat

Descrição do invalidJsonFormat

Um erro invalidJsonFormat ocorre quando o arquivo manifest.json não pode ser lido.

O _manifest. json_file não pode ser lido devido a erros de sintaxe ou de formatação JSON. Para saber mais sobre o formato JSON e a sintaxe, consulte O formato de intercâmbio de dados JSON (JavaScript Object Notation).

Como corrigir o invalidJsonFormat

Para corrigir um erro invalidJsonFormat, use um linter de JSON para detectar e resolver erros JSON.

missingRequiredField

Descrição do missingRequiredField

Um erro missingRequiredField ocorre quando o arquivo manifest.json não tem dados necessários.

Como corrigir o missingRequiredField

Para corrigir um erro missingRequiredField, verifique se o manifesto contém todas as propriedades necessárias. Para obter uma lista completa do objeto de manifesto necessário, confira a seção sobre manifesto nos requisitos do pacote de desenho.

missingManifest

Descrição do missingManifest

O erro missingManifest ocorre quando o arquivo manifest.json está ausente no arquivo ZIP.

Um erro missingManifest ocorre devido a um ou mais dos seguintes motivos:

  • O arquivo manifest.json tem erro de grafia.
  • O arquivo manifest.json está ausente.
  • O manifest.json não está dentro do diretório raiz do arquivo ZIP.

Como corrigir o missingManifest

Para corrigir um erro missingManifest, confirme se o arquivo tem um nome manifest.json no nível raiz do arquivo ZIP.

conflict

Descrição do conflict

O erro conflict ocorre quando o arquivo manifest.json contém informações conflitantes.

Cenário de exemplo para conflict

O Serviço de conversão retorna um erro conflict quando mais de um nível for definido com o mesmo ordinal de nível. O trecho de código JSON a seguir exibe dois níveis definidos com o mesmo ordinal.

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

Como corrigir o conflict

Para corrigir um erro conflict, inspecione o manifest.json e remova todas as informações conflitantes.

invalidGeoreference

Descrição do invalidGeoreference

O erro invalidGeoreference ocorre quando um arquivo manifest.json contém uma referência de georeferência inválida.

Um erro invalidGeoreference ocorre devido a um ou mais dos seguintes motivos:

  • O usuário está georeferenciando um valor de latitude ou longitude que está fora do intervalo.
  • O usuário está georeferenciando um valor de rotação que está fora do intervalo.

Cenário de exemplo do invalidGeoreference

No trecho de código JSON a seguir, a latitude está acima do limite superior.

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

Como corrigir o invalidGeoreference

Para corrigir um erro invalidGeoreference, verifique se os valores georeferenciados estão dentro do intervalo.

Importante

No GeoJSON, a ordem das coordenadas é longitude e latitude. Caso não use a ordem correta, poderá referenciar um valor de latitude ou longitude fora do intervalo acidentalmente.

Erros de parede

wallErrors

Descrição do wallError

O wallError ocorre quando o desenho contém um erro ao tentar criar um recurso de parede.

Cenário de exemplo para wallError

A imagem a seguir exibe um recurso de parede que não se sobrepõe a nenhuma unidade.

Example of Wall feature that doesn't overlap any units

Como corrigir o wallError

Para corrigir um erro wallError, redesenhe a parede para que ela se sobreponha a pelo menos uma unidade. Ou crie uma nova unidade que se sobreponha à parede.

Erros de penetração vertical

verticalPenetrationError

Descrição do verticalPenetrationError

O verticalPenetrationError ocorre quando o desenho contém um recurso de penetração vertical ambíguo.

Um erro verticalPenetrationError ocorre devido a um ou mais dos seguintes motivos:

  • O desenho contém uma área de penetração vertical sem esse tipo de área sobreposta em nenhum dos níveis acima ou abaixo dela.
  • O pacote de desenho contém um nível com dois ou mais recursos de penetração vertical presentes que se sobrepõem a um único recurso de penetração vertical em outro nível diretamente acima ou abaixo dele.

Cenário de exemplo do verticalPenetrationError

A imagem a seguir exibe uma área de penetração vertical sem esse tipo de área sobreposta em níveis acima ou abaixo dela.

Example of a vertical penetration 1

A imagem a seguir exibe uma área de penetração vertical que sobrepõe mais de uma área de penetração vertical em um nível adjacente.

Example of a vertical penetration 2

Como corrigir o verticalPenetrationError

Para corrigir um erro verticalPenetrationError, leia sobre como usar um recurso de penetração vertical no artigo Requisitos do pacote de desenho.

Próximas etapas