Diferença entre as funções Copiar recursos e Classe de recurso para Classe de recurso?

13

Eu tenho uma classe de recurso dentro de um conjunto de dados de recurso em um banco de dados geográfico de arquivos (FGDB) e preciso de uma cópia dele em outro FGDB.

No ArcGIS 10.1, usei a ferramenta "Copy Features" e ela parece ser a mesma (de acordo com a ferramenta "Feature Compare"). Usando a ferramenta "Classe de recurso para classe de recurso", recebo as seguintes mensagens de "Comparação de recursos":

Field: Field OBJECTID domain fixed is different (Base: false, Test: true).
Field: Field Shape domain fixed is different (Base: false, Test: true).

Alguém tem alguma idéia sobre as diferenças entre "Recursos de cópia" e "Classe de recurso para classe de recurso"? O que significam as mensagens da Comparação de recursos?

Dan
fonte

Respostas:

16

A ferramenta Classe de recurso para Classe de recurso é uma ferramenta de conversão . A idéia é converter uma classe de recurso em um formato (por exemplo, shapefile) para outro (por exemplo, geodatabase). Ele também permite que o usuário controle o Mapa do Campo - ou seja, quais campos serão copiados.

A ferramenta Copy Features simplesmente cria uma cópia exata dos recursos de entrada. Nota - esta ferramenta também pode ser usada para conversão de dados, mas não pode ser usada para manipular o Mapa de Campo.

Radar
fonte
9

A diferença mais básica é o nível em que cada uma das funções está trabalhando.

A ferramenta Classe de recurso para Classe de recurso está funcionando no Layernível, o que significa que, independentemente dos recursos selecionados, ele os trata como um todo. Uma nova classe de recurso será criada. Isso significa que você tem controle sobre a estrutura da nova classe de características, incluindo a adição e exclusão de campos. Você pode escolher um subconjunto de recursos para copiar, mas a ênfase está na própria estrutura da camada.

Por outro lado, a ferramenta Recursos de cópia está funcionando no Featurenível individual . Aqui, o foco é pegar um subconjunto de recursos de uma camada e copiá-los e todos os seus atributos para uma nova camada. Copiar os recursos significa pegar todos os atributos também.

Existem prós e contras em cada abordagem. Ambas as ferramentas criarão uma nova classe de recurso, seja com um novo nome ou se você tiver a configuração de geoprocessamento correta, substituindo uma classe de recurso existente. A Feature Class to Feature Classferramenta permite mapear campos, mas restringe você a uma SQLconsulta para exportar qualquer tipo de subconjunto de recursos. A Copy Featuresferramenta permite selecionar um ou todos os recursos da classe featureclass, se houver feature layeruma seleção aplicada a ele. A desvantagem é que não há controle sobre a estrutura da classe de característica de saída. HT para blah238 para o esclarecimento.

Editar - 13/5/2013

Depois de examinar mais de perto sua segunda pergunta e os comentários de outras pessoas sobre publicá-la como segunda pergunta, parece que ela está diretamente relacionada à comparação de benefícios entre as duas ferramentas.

Os resultados da ferramenta Comparação de recursos mostram que ObjectIDo Shapecampo e são diferentes. Não tenho certeza dos parâmetros que você escolheu para esta ferramenta, mas no documento da Ajuda , ele afirma que deseja escolher os Sortpedidos apropriados para garantir a comparação dos mesmos recursos.

Provavelmente, é uma suposição segura de que você usou o ObjectID como o recurso de classificação ou apenas o padrão, pois as duas classes de recursos têm os mesmos recursos. Isso traz uma diferença crítica entre as duas ferramentas:

Copy Features Mantém o ObjectID dos recursos que estão sendo copiados. Feature Class to Feature Classgera um novo ObjectID para cada recurso. Isso remove quaisquer falhas na numeração consecutiva que ocorrem quando os recursos são excluídos ou combinados com outros.

Portanto, a ferramenta Comparação de recursos está vendo diferenças no campo ObjectID, porque eles não têm mais os mesmos números, e no campo Shape, porque dois recursos com o mesmo ObjectID agora podem não ser mais idênticos.

Exemplo: duas camadas, cada uma com 100 recursos. O ObjectID varia de 1 a 100. Em algum momento, o Recurso 98 é excluído, deixando 99 Recursos Vamos examinar os últimos 5 recursos em cada camada:

Original    Copy Feat    Feat to Feat  
    95          95             95  
    96          96             96  
    97          97             97  
    99          99             98  
   100         100             99

Como você pode ver, 98 está ausente em uma camada, acionando a incompatibilidade do ObjectID. O ObjectID 99 agora se refere a diferentes recursos, acionando a incompatibilidade de formas.

Existem algumas situações em que é útil manter um ObjectID. Geralmente, é onde a ESRI construiu links internos entre recursos ou camadas, como em Classes de relacionamento ou Redes geométricas .

Get Spatial
fonte
5
Eu acho que as duas ferramentas criarão uma nova classe de recurso ou substituirão uma existente. A diferença é que os Recursos de cópia respeitam as seleções de recursos e só copiarão os recursos selecionados se a entrada for uma camada de recursos com uma seleção. Nem adicionará recursos a uma classe de recurso existente. Para isso, você precisaria usar o Append ou um InsertCursor.
Blah238
1
Você tem alguma idéia de por que o Compare Feature retornaria uma diferença entre o arquivo de origem e o arquivo gerado por "Feature Class to Feature Class"?
Dan
@ Dan - eu adicionei um pouco do que acho que explica os resultados da Comparação de recursos. Espero que ajude.
Get Spatial
Outra razão pela qual Comparar os destaques pode encontrar diferenças na forma é por causa do flutuante de precisão ponto, ver: gis.stackexchange.com/questions/40481/...
Abaixo do Radar