Pular para o conteúdo principal

ObjectARX - Diretórios e Arquivos

Para iniciar temos que saber o que vem a ser o ObjectARX, na verdade nada mais é do que um pacote de informações que vem juntas como Header, C++ Lib's, exemplos e outras coisas que vem junto com tudo que você baixa para o .NET.


Você pode baixar o pacote em função da sua versão neste link da Autodesk, é o mesmo pacote que você utiliza das dll para o .NET.

Entendendo as Pastas

A primeira coisa é entender as pastas, tradicionalmente quando você executa o instalador nada mais do que a pasta é descompactada na raiz do Windows C:\, isso é bom porque independente do computador o VS aponta para a mesma pasta.

ClassMap 

O diretório ClassMap contém um desenho do AutoCAD que ilustra a hierarquia de classes ObjectARX. É interesante que ele mostra em CAD o diagrama, sem dúvida um trabalho enorme que você pode imprimir em A1 e colocar no teto do seu quarto...

docs 

O diretório docs contém os arquivos de ajuda on-line ObjectARX. O arquivo principal é arxdoc.chm, que inclui todos os outros arquivos de ajuda.
A maior parte das informações eu estou tomando de lá, mais exatamente do arxdoc.chm

inc 

O diretório inc contém os arquivos de cabeçalho comuns ObjectARX. Para você que não está familiarizado com o C/C++, sempre pode ser feito um arquivo header que contem definições técnicas para aplicação nos programas, isso significa definições, inclusões de outros arquivos, podem conter estruturas grandes.

inc-win32/inc-x64  

O diretório inc-win32 contém os arquivos de cabeçalho ObjectARX para sistemas operacionais de 32 bits e o  O diretório inc-x64 contém os arquivos de cabeçalho ObjectARX para sistemas operacionais de 64 bits. É para 32bits e 64bits nem todas as definições são invariantes a plataforma ainda...

lib-win32/lib-x64 

O diretório lib-win32 contém os arquivos de biblioteca ObjectARX para sistemas operacionais de 32 bits. Idem para o diretório lib-x64.

Redistrib 

O diretório Redistrib contém um conjunto de DLLs, alguns dos quais podem ser necessários para uma aplicação ObjectARX para ser executado. Os desenvolvedores devem copiar as DLLs que eles precisam para o desenvolvimento de aplicativos para um diretório no caminho de busca do AutoCAD, e empacotar as DLLs necessárias com seus aplicativos ObjectARX para distribuição. Redistrib-win32 é para sistemas operacionais de 32 bits, enquanto Redistrib-x64 é para sistemas operacionais de 64 bits.

samples

O diretório de amostras contém exemplos de aplicações ObjectARX. As amostras são agrupadas em subpastas de acordo com seu foco programático. Um arquivo de resumo Readme é fornecido no diretório raiz, além de os arquivos Leia-me nos subdiretórios tem exemplos isolados. O conjunto mais legal está no subdiretório polysamp que tem algumas funções que podem ser rapidamente testas.

utils 

O diretório utils contém subdiretórios para aplicações que são extensões para ObjectARX, incluindo Brep para a representação de fronteira que eu particularmente ainda não consegui usar.



Uma boa vantagem que eu não citei no post anterior é que as aplicações em ARX, *.arx, podem ser descarregadas, ou seja, você usa o comando APPLOAD para carregar um pacote de funções em ARX e usar o APPLOAD para descarregar também! Assim você não precisa ficara brindo e fechando o AutoCAD toda a vez que quiser modificar profundamente a aplicação, acelera um pouco essa fase de teste e debug do programa.

Comentários

Postagens mais visitadas deste blog

Numeração Automática no AutoCAD

Sem dúvida esse é uma ferramenta única que fazia falta a tempos e foi introduzida recentemente no AutoCAD, na última década… Em 2013 tinha feito um programa para criar uma bolinhas de numeração automática usando o conceito de Leader eu fazia um controle dos números dos itens na mão mesmo, depois de um tempo resolvi fazer um menuzinho para controlar o conteúdo do número dos bullets, hoje isso não é mais necessário, existe um comando no próprio AutoCAD para isso e faz parte das Ferramentas Expressas do AutoCAD. Gosto de compartilhar ferramentas e dicas que tendem a ser menos conhecidas ou subutilizadas, mas ainda podem fornecer um impulso para sua produtividade e fluxo de trabalho e que eu mesmo me surpreendi quando as encontrei Hoje, quero apresentar outra ferramenta, a numeração automática. Como o nome indica, o comando Numeração automática permite que você adicione automaticamente um número às etiquetas ou texto em um desenho. Vou mostrar como a numeração automática pode ser usada par...

Alterar a cor de fundo do AutoCAD

Eu sou um adepto do fundo preto, tudo que eu posso mudo a cor do fundo para preto. Nas ultimas versões do AutoCAD tenho notado que não é mais o padrão o fundo preto absoluto, é um cinza escuro. As vezes gosto também de mudar a cor do Layout de branco para preto afinal de contas quando trabalhamos com penas e contraste no model space preto, ver um desenho no layout é impossível.  Você pode mudar sua cor de fundo do AutoCAD para a cor que quiser. Definindo cores personalizadas Primeiro, vá para o menu Opções (botão Aplicativo> Opções), selecione a guia Exibição e clique no botão Cores. Agora você deve ver a caixa de diálogo Cores da janela de desenho: Agora você pode atualizar as cores de qualquer elemento da interface. Isso incluí o plano de fundo em qualquer contexto (selecione Model e Layout). Você pode escolher qualquer uma das predefinições, ou você pode escolher a partir de todo o espectro (basta escolher a opção Selecionar Cor ...). Se você não gost...

Unindo blocos em AutoCAD utilizando .NET

Hoje me deparai com uma necessidade de unir blocos com propriedades então resolvi fazer um comando para realizar esses procedimento. A principio esse procedimento não é tão complexo de ser executado individualmente mas por outro lado gostaria também de analisar um pouco melhor as possibilidades de se manipular blocos utilizando o AutoCAD. Abaixo o código que utilizei: using Autodesk.AutoCAD.ApplicationServices ; using Autodesk.AutoCAD.DatabaseServices ; using Autodesk.AutoCAD.EditorInput ; using Autodesk.AutoCAD.Runtime ; using System.Linq ; // This line is not mandatory, but improves loading performances [assembly: CommandClass(typeof(Merging_AutoCAD_blocks.Comandos))] namespace Merging_AutoCAD_blocks { public class Comandos { /// <summary> /// Uni dois ou mais blocos em um unico bloco. /// </summary> [CommandMethod("MERGBLKS")] public static void UnindoBlocos () {...