domingo, 16 de junho de 2013

AutoCAD Map 3D - Bulk Copy (Cópia em massa)

A opção Bulk Copy permite a cópia de uma feição fonte para outra, em formatos iguais ou diferentes. É possível copiar a feição fonte completa ou um subconjunto baseado em esquemas, classe de feição ou propriedades específicas.
A opção Bulk Copy é útil para:

  • Fazer por conta própria a cópia dos dados de um departamento para outro.
  • Alterações baseadas em arquivos (SDF e SHP) para multiusuários para armazenamentos baseados em bancos de dados (Microsoft SQL Server, MySQL ou Oracle) para o benefício de características avançadas como bloqueio e versionamento (transações longas).
  • Transformar facilmente sistemas de coordenadas.
  • Converter um esquema externo para um formato nativo.
Ao usar a opção Bulk Copy, é importante ter em mente:

  • O esquema copiado é criado se não existir uma feição fonte destino.
  • É possível configurar valores padrão para uma propriedade destino se a propriedade fonte não existir.
  • Os nomes dos esquemas, classes de feição e propriedades na feição fonte não precisam ser iguais aos nomes nas feições fonte destinos.
  • É possível salvar e ler um arquivo XML para configurar o mapeamento ente as feições fonte origem e destino.
  • Por padrão, a opção Bulk Copy interrompe o processamento quando encontra um erro de inserção (por exemplo, erro causado por violação de constraint ou tamanho pequeno de tablespace) ou um tipo de dado ou geometria diferente entre a origem e o destino; é possível usar opções de cópia para fazer o Bulk Copy ignorar esses erros e continuar processando.
Existem opções para copiar geometria sem nenhuma transformação de coordenadas.
Bulk Copy suporta as mesmas propriedades (dado, geometria, objeto e associação) que o Schema Editor, e retém os mesmos tipos de propriedades durante a cópia. Nem todos os fornecedores suportam todos os tipos de propriedades, somente a opção Bulk Copy de ignorar qualquer diferença e continuar copiando ou parar o processo se encontrar propriedades não suportadas.

Durante a cópia, a opção Bulk Copy retém o mesmo tipo de dado quando possível, mas expandirá a conversão se necessário. Por exemplo, se o tipo de dado da origem é byte, mas o destino não suporta esse tipo de dado, o Bulk Copy converterá o dado de byte para int16 (ou int32 ou o tipo mais próximo disponível). Bulk Copy copia as propriedades da geometria como são, exceto na conversão de arco para linha, quando o destino não aceita arco. Bulk Copy oferece as opções ignora / continua ou para / processa para dados e tipos de geometrias diferentes. Estas opções são úteis se uma conversão limitada for necessária; por exemplo, a origem contém dado int32, mas o destino suporta somente int16.

Bulk Copy usa as seguintes regras quando copia um identificador gerado automaticamente da feição fonte:
  • Se o identificar existe no esquema destino e não é gerado automaticamente, o identificador é copiado da feição fonte. 
  • Se o identificar existe no esquema destino e é gerado automaticamente, o identificador é gerado pelo fornecedor destino. 
  • Se o identificador não existe no esquema destino e este não suporta a geração automática de identificadores, o esquema é criado com o identificador de não geração automática e o identificador é copiado da feição fonte. 
  • Se o identificador não existe no esquema destino e este suporta a geração automática de identificadores, o esquema é criado com o identificador de auto geração e o identificador é gerado pelo fornecedor destino.
Neste post, usaremos a ferramenta Bulk Copy para criar cópias em massa de determinadas feições para a nova feição criada, arruamento.sdf.

Para entendermos melhor a finalidade desta tarefa, imaginemos que no decorrer da produção de um mapa, precisamos apresentar ao cliente toda a hidrografia de sua área pesquisada.

Usando o conceito Shapefile, deveríamos criar dois arquivos distintos para o mesmo fim, um na forma de polígono, onde os lagos, lagoas, etc. estariam sendo representados e outro arquivo na forma de linha, onde seguimentos lineares estariam sendo representados.

Um bom exemplo para ilustrar esta demanda seria os arquivos Shapefile gerados pela CPRM (Companhia de Pesquisa de Recursos Minerais), onde sua hidrografia se divide em Unifilar e Bifilar.
 
No arquivo SDF (Spatial Data File), estas feições poderão e deverão ser representadas em apenas um .SDF.
 

PASSO A PASSO

Crie um arquivo SDF de nome arruamento.
 
Neste passo a passo, popularemos o nosso arruamento.sdf com as bases de arruamentos dos Municípios de Betim, Ibirité e Belo Horizonte.
 
Para popular um arquivo SDF, proceda da seguinte forma:
 
Com os Esquemas criados e conectados, conecte os shapes contidos na pasta BULK COPY que são eles:

betim.shp
ibirite.shp
bh.shp
 
Dê o nome para a conexão de Arruamentos:
 
 
 
Este procedimento poderia ser feito através da importação dos Shapefiles pelo comando MapImport porém, este procedimento é lento e requer várias configurações que durante uma conexão via FDO, obtém o mesmo resultado e de forma mais rápida.
 
De volta à aba Map Explorer, clique no esquema Arruamento, vá em Tools e selecione Bulk Copy.
 
 
Abrirá a caixa de diálogo Bulk Copy:
 
 
Em FROM (De):
Em Source, escolha o shape que fornecerá as feições e tabelas,
Neste campo podemos escolher o shape ou no nosso caso, como estamos tratando de três bases distintas, usaremos a conexão Arruamentos:  
 
 
Em To (Para):
Em Source, escolha o shape que receberá as feições e tabelas,
Neste caso, o SDF que criamos para este projeto é o arruamento:
 
 
Para concluir a cópia em massa, clique em Copy Now, confirme a mensagem que surgirá clicando em Continue Bulk Copy e aguarde o processamento:
 
 
Processamento:
 
Resultado:
 
bh
 
  betim

  Ibirite


Adicionando as feições copiadas no map
Clique com o botão direito no esquema criado e vá até Edit Connection...
 
 
Abrirá a caixa de diálogo Data Connections by Provider.
 
 
Selecione as feições a serem carregadas e clique em Add to Map.

Desconecte e remova as feições (Shapes) do esquema Arruamentos.

Em Data Connections by Provider, clique com o botão direito do mouse sobre o esquema Arruamentos e selecione a opção Disconnect.

Após o processamento, clique novamente, com o botão direito e selecione Delete e dê OK.
Feche a caixa Data Connections by Provider.

Resultado:


Bom, é isso!
Nos próximos posts falaremos um pouco sobre Civil 3D, ArcGis e ERMapper (nesta ordem).