Migrando amostras SDK para o IDE de macros do Revit

O Revit SDK contém duas pastas de amostras:

\Revit SDK <versão>\Software Development Kit\Samples\...

\Revit SDK <versão>\Software Development Kit\Macro Samples\...

Os programas na pasta \Samples\ do SDK usam o Revit API padrão. Nos referimos a estas amostras como a codificação de amostra SDK, distintas das amostras de macros do Revit.

Se desejar usar a codificação de amostra SDK para macros, serão necessárias modificações. Siga as etapas nesta seção. Para uma linguagem de programação, iremos mostra exemplos C#. No entanto, estas instruções também se aplicam para versões VB.Net das amostras SDK.

Etapas iniciais

As etapas iniciais para migrar amostras API padrão do SDK para seu IDE de macros de projeto do Revit são similares às da seção Integrar macros no IDE do Revit. No entanto, em vez de copiar arquivos das pastas \Macro Samples\<nome da amostra>\... do SDK, você irá copiar os arquivos nas pastas \Samples\<nome da amostra>\... do SDK.

Para rever, as etapas são:

  1. No IDE, adicione as referências requeridas.
  2. No IDE, crie pastas para as amostras SDK que deseja migrar
  3. No Windows Explorer, copie os arquivos de amostras API do SDK para as pastas do sistema de arquivos correspondentes
  4. No IDE, adicione arquivos existentes na macro do projeto

Atualize a codificação de amostra SDK

No IDE de macros do Revit, a interface IExternalCommand não está disponível e não é usada. Na codificação de mostra API do SDK, é preciso atualizar a classe que herda a mesma desta interface:

Exemplo de codificação antes da edição

A amostra de codificação a seguir é de um programa que usa o Revit API padrão:

Exemplo de codificação após a edição

No IDE de macros do Revit, é preciso atualizar a codificação como segue. Este exemplo mostra uma macro a nível de aplicativo. O método RunSampleRooms() é a entrada para esta amostra de macro. Observe que usamos o apontador this para substituir o commandData.Application.

Notas adicionais sobre a migração para amostras API padrão SDK