You are on page 1of 46

Instituto Politcnico de Leiria

Escola Superior de Tecnologia e Gesto

Departamento de Engenharia Mecnica

PROJECTO INDUSTRIAL
GERAO AUTOMTICA DE DESENHOS 3D

Aluno
Rui Pinheiro de Jesus
Numero: em12720

Orientador
Jorge Miguel Peralta Siopa

Leiria, 8 de Julho de 2009

Gerao_automtica_desenhos_3D

ndice
1. 2. 3. 3.1 3.2 INTRODUO ...................................................................................................................................... 5 OBJECTIVOS ......................................................................................................................................... 6 MEMRIA DESCRITIVA E JUSTIFICATIVA.......................................................................... 7 SOLUO TRADICIONAL ........................................................................................................................... 7 SOLUO DE TRANSIO .......................................................................................................................... 8 Folha de clculo .............................................................................................................................. 8 Desenhos de Modelao ................................................................................................................ 12

3.2.1 3.2.2 3.3

SOLUO PROPOSTA............................................................................................................................... 13 Folha de clculo ............................................................................................................................ 13 Componentes de desenho ............................................................................................................... 19 Macro............................................................................................................................................. 21 Desenho de Modelao .................................................................................................................. 26

3.3.1 3.3.2 3.3.3 3.3.4 3.4 4. 4.1 4.2 4.3 4.4 4.5 5. 6.

CONSIDERAES FUNCIONAIS ................................................................................................................ 29 CONCLUSES E RECOMENDAES ........................................................................................ 30 SOLUO TRADICIONAL ......................................................................................................................... 30 SOLUO DE TRANSIO ........................................................................................................................ 30 SOLUO PROPOSTA............................................................................................................................... 30 RESULTADO PRTICO ............................................................................................................................. 31 RECOMENDAES PARA TRABALHOS FUTUROS ...................................................................................... 33 LISTA DE LINKS DE REFERNCIA .......................................................................................... 34 MACROS ................................................................................................................................................ 35

RUI PINHEIRO JESUS

PG. 2 de 46

Gerao_automtica_desenhos_3D

Lista de Figuras
Figura 3.1 Solues existentes ................................................................. 8 Figura 3.2 Folha de encomenda ............................................................... 9 Figura 3.3 Folha de clculo .................................................................... 10 Figura 3.4 Dados para inventor (modo 1) ................................................ 11 Figura 3.5 Dados para inventor (modo 2) ................................................ 11 Figura 3.6 Ocultar a folha (Dados para inventor) ...................................... 11 Figura 3.7 Apenas folha de encomenda ................................................... 12 Figura 3.8 Hiperligao ao desenho respectivo ......................................... 12 Figura 3.9 Folha de encomenda ............................................................. 14 Figura 3.10 Dados para inventor ............................................................ 15 Figura 3.11 Resultado de clculos .......................................................... 15 Figura 3.12 Valores importados.............................................................. 16 Figura 3.13 Clculos com tomadas de deciso.......................................... 16 Figura 3.14 Folha de encomenda ............................................................ 16 Figura 3.15 Folha de clculo .................................................................. 16 Figura 3.16 Clulas com dimenses ........................................................ 17 Figura 3.17 Clulas com quantidades ...................................................... 17 Figura 3.18 Clulas tipo mostra/no mostra ............................................ 17 Figura 3.19 Clulas com opes diversas................................................. 17 Figura 3.20 Hiperligao ao desenho ...................................................... 18 Figura 3.21 Segurana .......................................................................... 18 Figura 3.22 Dimenses de valores fixos e sob a forma de varivel .............. 19 Figura 3.23 Ficheiro de conjunto (Esquadro_Suporte_duplo.iam) ............... 20 Figura 3.24 Ficheiro de conjunto (Montagem_Esquadro_duplo.iam) ............ 20 Figura 3.25 Visual Basic Application ........................................................ 21
RUI PINHEIRO JESUS PG. 3 de 46

Gerao_automtica_desenhos_3D

Figura 3.26 Actualizao das variveis locais ........................................... 21 Figura 3.27 Apaga todas as ocorrncias .................................................. 22 Figura 3.28 Localizao dos ficheiros ...................................................... 22 Figura 3.29 Funo para inserir componentes .......................................... 22 Figura 3.30 Chamada da funo ............................................................. 22 Figura 3.31 Conjunto de variveis a passar funo ................................ 23 Figura 3.32 Condio de repetio e chamada da funo ........................... 23 Figura 3.33 Condio de teste e chamada da funo ................................. 24 Figura 3.34 Bloqueio dos componentes ................................................... 25 Figura 3.35 Bloqueio dos componentes ................................................... 25 Figura 3.37 Correr a macro ................................................................... 26 Figura 3.38 Carregar o projecto ............................................................. 27 Figura 3.39 Carregar a macro ................................................................ 27 Figura 3.40 Coleco de parmetros do desenho ...................................... 28 Figura 3.41 Coleco de parmetros importados ...................................... 28 Figura 3.42 Folha de parmetros ............................................................ 29

RUI PINHEIRO JESUS

PG. 4 de 46

Gerao_automtica_desenhos_3D

1. Introduo
Hoje em dia a indstria est obrigada a diminuir progressivamente os prazos de entrega dos seus produtos. Mesmo os produtos de produo contnua, so produzidos em menores quantidades mas com maior nvel de personalizao. A indstria tem todo o interesse em passar da produo de stock para a produo por encomenda (just in time). As tarefas de obteno dos desenhos de fabrico de um dado produto com algum grau de personalizao, dentro de uma determinada gama de dimenses e opes possveis, beneficiando de todos os clculos j executados para essas gamas, so rotineiras, quase sempre repetitivas e normalmente prvias em relao formalizao do contrato de fornecimento. Assim existe todo o interesse em que grande parte dos modelos 3D ou os desenhos desses produtos / componentes possam ser obtidos de forma quase automtica, sem perda de tempo e a custos mnimos. Durante toda a transio da produo de stock (Autodesk Autocad 2D) para a produo por encomenda (Autodesk Inventor 3D), surgiram alteraes e evolues nos softwares de desenho, que nos permitem equacionar e aproveitar todo o trabalho anteriormente criado. Apenas teremos que adaptar os projectos antigos e elaborar os novos projectos de acordo com as novas tecnologias. Ento se a modelao 3D surgir de forma rpida, resultado das opes seleccionadas pelo cliente, com a possibilidade deste visualizar as diversas opes, ento maiores sero as possibilidades de formalizao da encomenda.

RUI PINHEIRO JESUS

PG. 5 de 46

Gerao_automtica_desenhos_3D

2. Objectivos
Promover a obteno (quase) automtica dos desenhos de modelao e de fabrico de componentes para elaborao de um determinado produto standard, com diversas opes de concepo. Estas opes de concepo, esto

implementadas numa folha de clculo, (documento anexo ao contrato/proposta de fornecimento) a que o software de CAD recorre, por meio de ligaes externas ou algum programa, para gerao de forma (quase) automtica os desenhos necessrios. Visa este trabalho elaborar um mtodo ou guia, capaz de orientar um novo utilizador, de forma a criar quer a modelao (3D) dos componentes, quer a elaborao da macro para gerao automtica da modelao (3D) do desenho de conjunto, de modo a poder usufruir das capacidades de parametrizao do software Autodesk Inventor . A finalidade destas parametrizaes aplicas em modelaes existentes ou aplicadas em novas modelaes, a possibilidade do agente comercial poder a partir de uma folha de clculo, abrir o desenho de conjunto, correr a macro prdefinida, gerar automaticamente modelaes 3D para apresentar o produto ao cliente.

RUI PINHEIRO JESUS

PG. 6 de 46

Gerao_automtica_desenhos_3D

3. Memria descritiva e justificativa


Apresenta-se de seguida a soluo tradicional que vigora nas empresas e duas solues possveis que permitem agilizar/melhorar o processo, so elas: Soluo de transio e Soluo proposta. Estas duas solues tm em comum a utilizao de uma folha de clculo, mas tm de diferente: a soluo de transio usa ficheiros de modelao j anteriormente criados e a soluo proposta usa uma macro para aplicar os diversos elementos num ficheiro de modelao.

3.1 Soluo tradicional


O agente /departamento comercial discute o produto com o cliente. Aps ter chegado a acordo regressa empresa e passa a informao ao departamento de projecto/desenho, verbalmente ou atravs de esboos, para que este verifique a sua exequibilidade. Se o produto for exequvel, o departamento de projecto/desenho inicia a preparao do processo tcnico de fabrico a fim de desencadear a compra de materiais e iniciar a produo. Caso o produto no seja exequvel, o projecto informa o agente ou departamento comercial que volta a reunir com o cliente, a fim de lhe propor e discutir as alteraes necessrias ao produto. Se o cliente aceitar estas alteraes ao produto, pode aproveitar a ocasio para pedir mais algumas alteraes ou adaptaes que lhe sejam necessrias ou convenientes. As novas alteraes implicam novo estudo por parte do projecto para verificar exequibilidade. Se o cliente no aceitar as alteraes ao produto inicial, pode cancelar a encomenda.

RUI PINHEIRO JESUS

PG. 7 de 46

Gerao_automtica_desenhos_3D

3.2 Soluo de transio


A soluo de transio consiste em criar uma folha de encomenda atravs de uma folha de clculo, que para cada uma das opes existentes, permite abrir o respectivo ficheiro de modelao. Na fase de clculo e de ante-projecto criam-se ou usam-se desenhos de conjunto assembly de cada uma das solues existentes ou possveis. Mltiplos desenhos de conjunto de acordo com cada possibilidade.

Figura 3.1 Solues existentes

3.2.1 Folha de clculo


Cria-se uma folha de clculo com o Microsoft Office Excel, onde se editam as tabelas de valores (VariaveisBanco.xls). Este ficheiro deve ser criado em Microsoft Office 97-2003 para ser reconhecido pelo software Autodesk Inventor, no entanto pode ser editado por Microsoft Office 2007 em modo de compatibilidade e assim ser gravado (VariaveisBanco.xls). Tambm se pode editar esta folha de clculo com OpenOffice.org.Calc, desde que se mantenha a extenso original do ficheiro.

RUI PINHEIRO JESUS

PG. 8 de 46

Gerao_automtica_desenhos_3D

Figura 3.2 Folha de encomenda

RUI PINHEIRO JESUS

PG. 9 de 46

Gerao_automtica_desenhos_3D

Esta folha de clculo deve conter pelo menos duas folhas diferentes, arrumadas por esta ordem: Dados para inventor e Folha de encomenda.

Figura 3.3 Folha de clculo

As clulas da folha dados para inventor esto linkadas folha de encomenda. Assim quando se editam os contedos das clulas na folha de encomenda, as alteraes afectam tambm a folha de dados para inventor. Abre-se a folha de clculo, na folha Dados para inventor e definem-se as variveis necessrias para definir o produto. Estas variveis contm os valores que interessa passar para o Autodesk Inventor. De salientar que o Autodesk Inventor comea a ler na primeira folha, pares na vertical. L o nome da varivel na coluna A e os respectivos valores na coluna B, clulas A1 e B1, A2 e B2, A3 e B3. Pra de ler, quando na coluna A encontra uma clula vazia. Em relao ao preenchimento das diversas colunas da folha de Dados para inventor, tero que se seguir alguns procedimentos: modo 1 e modo 2. Modo1 - Preencher na coluna A o nome da primeira varivel e na coluna B o valor que queremos que a varivel assuma. A coluna C deve ficar vazia, a coluna D pode conter as unidades e a coluna E deve conter um breve comentrio, para melhor leitura e interpretao das variveis no futuro.

RUI PINHEIRO JESUS

PG. 10 de 46

Gerao_automtica_desenhos_3D

Figura 3.4 Dados para inventor (modo 1)

Modo2 - Coluna A o nome da primeira varivel, coluna B o valor da varivel, coluna C vazia e na coluna D um breve descritivo e as unidades respectivas, para melhor leitura e interpretao das variveis no futuro.

Figura 3.5 Dados para inventor (modo 2)

Este ficheiro deve conter a folha Dados para inventor em modo oculto para evitar que por descuido se possa mudar qualquer parmetro de stio.

Figura 3.6 Ocultar a folha (Dados para inventor)

RUI PINHEIRO JESUS

PG. 11 de 46

Gerao_automtica_desenhos_3D

Fica apenas a Folha de encomenda em aberto.

Figura 3.7 Apenas folha de encomenda

Abre-se a folha de clculo na folha Folha de encomenda. Em funo da opo seleccionada, aparecem apenas legendas para algumas clulas. Alteramse os valores destas clulas, com valores numricos lgicos, situados nos intervalos definidos. As clulas que no tiverem legenda no se aplicam para a opo seleccionada. Volta-se folha de dados para inventor e ligam-se as clulas da coluna B as clulas de dados da folha de encomenda, para que quando se altera na folha de encomenda, se altere em simultneo os valores da folha de dados para inventor. Ainda dentro da folha de clculo, em funo dos valores seleccionados, criam-se as hiperligaes para cada ficheiro de conjunto pr-definido (quadrado, redondo, triangular). Quantos mais desenhos houver mais hiperligaes ter de haver. No entanto, apenas fica visvel uma hiperligao, de acordo com a opo seleccionada.

Figura 3.8 Hiperligao ao desenho respectivo

3.2.2 Desenhos de Modelao


Quando se selecciona a hiperligao disponvel, o software Autodesk Inventor verso 2009, abre o ficheiro de conjunto respectivo, abre um dos vrios desenhos existentes. no entanto necessrio regenerar o desenho, para que este carregue os valores dos parmetros e actualize a modelao. Este mtodo permite-nos com poucas alteraes, usar desenhos j existentes, aproveitando parte do trabalho j executado para outros trabalhos no passado.
RUI PINHEIRO JESUS PG. 12 de 46

Gerao_automtica_desenhos_3D

3.3 Soluo proposta


Na soluo proposta cria-se uma macro, que para um nico ficheiro de inventor, permite satisfazer todas as opes da folha de encomenda. Para melhor se entender a soluo de estudo, criou-se um modelo de cobertura para estacionamento, que inclui a folha de encomenda, a macro e o desenho de modelao a apresentar ao cliente. Passaremos daqui em diante a apresentar a soluo de estudo recorrendo a este caso da cobertura de estacionamento.

3.3.1 Folha de clculo


Durante a fase de projecto e desenho cria-se uma folha de calculo com variveis especificas relativas s caractersticas especificas do produto a criar (VariaveisEstacionamento.xls). Esta folha de clculo, criada seguindo os mesmos princpios e o mesmo esquema que a folha de calculo da soluo de transio. Nesta folha de clculo definem-se e preenchem-se os valores da folha de encomenda.

RUI PINHEIRO JESUS

PG. 13 de 46

Gerao_automtica_desenhos_3D

Figura 3.9 Folha de encomenda

RUI PINHEIRO JESUS

PG. 14 de 46

Gerao_automtica_desenhos_3D

A primeira folha tem de ser Dados para inventor e deve estar em modo oculto para que no se mude qualquer clula de stio.

Figura 3.10 Dados para inventor

Em cada uma das clulas da coluna B, poder ser colocado um valor numrico, que pode ser: resultado de clculos, valores importados de outras folhas dentro do mesmo ficheiro ou no, ou clculos com tomadas de deciso resultantes de outras clulas.

Figura 3.11 Resultado de clculos

RUI PINHEIRO JESUS

PG. 15 de 46

Gerao_automtica_desenhos_3D

Figura 3.12 Valores importados

Figura 3.13 Clculos com tomadas de deciso

O software Autodesk Inventor comea a ler pares na vertical. L o nome da varivel na coluna A e os respectivos valores na coluna B, clulas A1 e B1, A2 e B2, A3 e B3. Pra de ler, quando na coluna A encontra uma clula vazia. Abre-se a folha de clculo, na folha Folha de encomenda e definem-se as variveis que so relevantes para o projecto.

Figura 3.14 Folha de encomenda

Fica apenas a Folha de encomenda acessvel para redefinir os valores a inserir nas clulas e para aceder ao ficheiro de modelao. Abre-se a folha de clculo na folha Folha de encomenda, alteram-se e redefinem-se os valores das clulas, com valores numricos situados em intervalos permitidos.

Figura 3.15 Folha de clculo

RUI PINHEIRO JESUS

PG. 16 de 46

Gerao_automtica_desenhos_3D

Na folha de encomenda podem-se preencher as clulas que se quiser, pois esta folha no ser lida directamente pelo software Autodesk Inventor. As clulas podero conter valores numricos ou texto. Os valores numricos podem ser: Dimenses

Figura 3.16 Clulas com dimenses

Quantidades

Figura 3.17 Clulas com quantidades

Tipo mostra/no mostra

Figura 3.18 Clulas tipo mostra/no mostra

Tipo opes diversas

Figura 3.19 Clulas com opes diversas

RUI PINHEIRO JESUS

PG. 17 de 46

Gerao_automtica_desenhos_3D

De modo a que no se ande procura de um ficheiro, cria-se dentro da folha de clculo uma hiperligao para aceder directamente ao desenho de montagem do estacionamento.

Figura 3.20 Hiperligao ao desenho

Ao seguir a hiperligao, automaticamente inicia o software Autodesk Inventor e abre o ficheiro seleccionado. Pode no entanto em funo do antivrus activo, surgir uma caixa de dilogo a pedir confirmao para abrir o documento.

Figura 3.21 Segurana

RUI PINHEIRO JESUS

PG. 18 de 46

Gerao_automtica_desenhos_3D

3.3.2 Componentes de desenho


Entenda-se desenho paramtrico, como um desenho que contm

dimenses que dependem de parmetros, neste caso so dimenses e quantidades. Quando se mudam os valores dos parmetros, as dimenses ou quantidades reproduzem os novos valores. Criam-se no Autodesk Inventor ficheiros paramtricos de componentes isolados (*.ipt) e de ficheiros de conjunto (*.iam): Quando so ficheiros tipo part (*.ipt), criam-se com as dimenses a dependerem de parmetros existentes no prprio desenho e outros importados da folha de calculo.

Figura 3.22 Dimenses de valores fixos e sob a forma de varivel

Quando os ficheiros so do tipo assembly (*.iam), tm os diversos componentes paramtricos restringidos uns relativamente aos outros. Considerese que sejam grupos de componentes transformados e aptos para montagem. Estes grupos j incluem os diversos componentes de fabrico que tm de ser construdos, tm tambm todos os acessrios de compra. (parafusos, porcas, motores.) Em funo das caractersticas e dimenses das diferentes solues possveis e tendo em conta que so produtos dentro de gamas perfeitamente definidas e calculadas, o desenhador recorre ao histrico (processos j
RUI PINHEIRO JESUS PG. 19 de 46

Gerao_automtica_desenhos_3D

anteriormente criados e executados), procura componentes idnticos ou iguais que se apliquem e copia os desenhos desses elementos para os usar no novo processo. Podem-se carregar elementos j anteriormente criados/executados e elementos alterados com novas dimenses. De salientar que os desenhos de componentes idnticos, devem de ser actualizados de forma a conterem em vez de valores fixos, valores sob a forma de variveis para poderem reproduzir os valores dados aos parmetros da folha de encomenda.

Figura 3.23 Ficheiro de conjunto (Esquadro_Suporte_duplo.iam)

De seguida criam-se ficheiros de conjunto (*.iam), j com os diversos componentes paramtricos montados em pequenas montagens, que incluem todos os componentes necessrios, desde os componentes a fabricar at aos parafusos, porcas, anilhas, motores, rolamentos,

Figura 3.24 Ficheiro de conjunto (Montagem_Esquadro_duplo.iam)

Serve isto para definir e quantificar os componentes que forem diferentes, em dimenses e em quantidades respectivamente.

RUI PINHEIRO JESUS

PG. 20 de 46

Gerao_automtica_desenhos_3D

3.3.3 Macro
Para criao da macro responsvel pela gerao do desenho 3D, recorremos programao em Visual Basic Application (VBA)

Figura 3.25 Visual Basic Application

Comeamos por definir e carregar diversas variveis tais como: definies do documento aberto, matriz de coordenadas, lista de parmetros activos no documento, entre outras. Estas variveis a carregar dependem do que se vai executar.

Figura 3.26 Actualizao das variveis locais

A macro ter de ler os parmetros importados da folha de clculo associada, actualizar automaticamente as dimenses (altura, largura e

comprimento) quantidades e elementos a inserir.

RUI PINHEIRO JESUS

PG. 21 de 46

Gerao_automtica_desenhos_3D

Quando se abrir o desenho, a macro ter obrigatoriamente de apagar todos os componentes que existem no desenho de modelao e introduzir os novos componentes.

Figura 3.27 Apaga todas as ocorrncias

Para se correr a macro, o projecto (inventor), os ficheiros de modelao e os ficheiros de acessrios/componentes tm de estar todos mesma na directoria pr-definida C:\PI\Estacionamento\. Caso a directoria seja diferente, ter de se indicar qual o caminho a seguir.

Figura 3.28 Localizao dos ficheiros

Como temos que inserir muitos componentes, fica mais razovel criar uma funo que recebe um pacote de variveis locais e insere os componentes no desenho de modelao.

Figura 3.29 Funo para inserir componentes

Para aceder funo, basta chama-la e passar-lhe as variveis.

Figura 3.30 Chamada da funo

RUI PINHEIRO JESUS

PG. 22 de 46

Gerao_automtica_desenhos_3D

Podemos criar coberturas de estacionamento de diversos tamanhos, formatos e ainda simples ou duplas: Se o estacionamento for simples, o cho tem apenas o comprimento para ocupar o lado da frente, caso contrrio tem de ocupar zona anterior e posterior. Conforme a quantidade de estacionamentos e largura seleccionadas, a macro ter de redimensionar o cho para ocupar toda a rea da cobertura do estacionamento. Colocar o cho do estacionamento no lugar definido pelas variveis locais XX, YY e ZZ.

Figura 3.31 Conjunto de variveis a passar funo

Consoante o nmero de lugares de estacionamento, do comprimento e da largura de cada, a macro corrige as dimenses dos limites (marcaes do cho) e coloca-as de um lado ou dos dois lados caso existam.

Apenas no caso de ser estacionamento dos dois lados e se estiver definido nos parmetros que para levar separador entre estacionamentos, coloca um tubo separador por cada grupo de quatro estacionamentos (2 estacionamentos de um lado e dois do outro lado)

Coloca no cho dos estacionamentos os aros das fundaes.

Figura 3.32 Condio de repetio e chamada da funo

RUI PINHEIRO JESUS

PG. 23 de 46

Gerao_automtica_desenhos_3D

Coloca no inicio dos estacionamentos o primeiro pilar. Em funo do que for definido na folha de encomenda, pode aplicar pilar em tubo redondo com bases soldadas para aplicao da cobertura, ou se a opo for quadrado, aplica um tubo quadrado com furaes para fixao da cobertura Se a opo seleccionada for estacionamento simples, coloca os pilares com aplicao da cobertura s de um lado. Se for duplo coloca os pilares com aplicao da cobertura dos dois lados. Se a opo indicar barras limitadoras de altura, coloca os pilares mais altos (compridos) para compensar o espao ocupado pela barra. De seguida coloca os conjuntos de pilares seguintes nas posies respectivas.

Se opo indicar um caixote do lixo, ento ter que o colocar onde estiver definido.

Figura 3.33 Condio de teste e chamada da funo

Se a varivel nmero de estacionamentos for 2 (dois) coloca um esquadro de suporte no primeiro pilar e coloca um mdulo de topo no segundo pilar. Se a varivel nmero de estacionamentos for 4 (quatro) ou mais, coloca um esquadro de suporte no primeiro pilar, coloca mdulos intermdios nas pernas intermdias e coloca um mdulo de topo no ltimo pilar. Se a opo seleccionada for estacionamento simples, coloca as coberturas com s de um lado. Se for duplo coloca as coberturas dos dois lados. Se a opo seleccionada for cobertura direita, coloca os mdulos de topo e os mdulos intermdios para aplicao de tela direita. Se for cobertura inclinada,

RUI PINHEIRO JESUS

PG. 24 de 46

Gerao_automtica_desenhos_3D

coloca os mdulos de topo e os mdulos intermdios para aplicao da cobertura com a tela inclinada. Apenas para efeito de visualizao/enquadramento, est considerado apresentar um indivduo (IMIKE), um automvel ligeiro de passageiros (BMWM6) e um veculo ligeiro de mercadorias (MERCEDES SPRINTER) Na colocao do veculo ligeiro de mercadorias deve-se confirmar a altura mnima da cobertura. Se altura superior altura do veculo, este ser colocado debaixo da cobertura. Caso a altura seja igual ou inferior, deixa ao veculo fora da cobertura e atravessado relativamente ao estacionamento.

A opo de apresentar estes elementos ou no, est contemplada na folha de encomenda.

No final de todos os elementos introduzidos, convm bloquear os elementos para que no sejam movidos acidentalmente e assim mudar o aspecto do conjunto.

Figura 3.34 componentes

Bloqueio dos

No final de todos os elementos introduzidos e bloqueados falta apenas executar um update e salvar o ficheiro de conjunto.

Figura 3.35 Bloqueio dos componentes

RUI PINHEIRO JESUS

PG. 25 de 46

Gerao_automtica_desenhos_3D

3.3.4 Desenho de Modelao


Quando se selecciona a hiperligao, automaticamente inicia o software Autodesk Inventor e abre o ficheiro. Aps abrir o ficheiro *.iam, este actualiza-se com os parmetros importados da folha de clculo (dimenses, quantidades e opes). no entanto necessrio correr a macro (Alt+F8) para que se actualize, de modo a reproduzir as dimenses digitadas na folha de encomenda.

Figura 3.36 Correr a macro

RUI PINHEIRO JESUS

PG. 26 de 46

Gerao_automtica_desenhos_3D

Caso no carregue automaticamente a macro, tem que se carregar manualmente o projecto (Alt+F8) e procurar o ficheiro.

Figura 3.37 Carregar o projecto

Figura 3.38 Carregar a macro

RUI PINHEIRO JESUS

PG. 27 de 46

Gerao_automtica_desenhos_3D

A macro usa os parmetros existentes dentro do desenho e os importados do ficheiro do Excel.

Figura 3.39 Coleco de parmetros do desenho

Figura 3.40 Coleco de parmetros importados

Caso existam componentes dentro do desenho, estes sero apagados durante o run da macro.

RUI PINHEIRO JESUS

PG. 28 de 46

Gerao_automtica_desenhos_3D

Dentro do ficheiro de conjunto, no fim de estar tudo inserido, tenho de editar o ficheiro da folha de clculo.

Figura 3.41 Folha de parmetros

De seguida fecha-se a folha de clculo e dentro do software inventor fazse um update para ficar tudo devidamente actualizado.

Este mtodo permite-nos criar um desenho de modelao, que depende dos intervalos de valores pr-definidos pelo projectista, seleccionados e validados pelo cliente.

3.4 Consideraes funcionais

Tem de se copiar a pasta que est no CD para o disco do computador C:\PI\.

O link existente na folha de clculo, foi testado e funciona com o software Autodesk Inventor. Verso R11, Verso 2008 e Verso 2009. No entanto com o software Autodesk Inventor. Verso 2010, no funcionou.

RUI PINHEIRO JESUS

PG. 29 de 46

Gerao_automtica_desenhos_3D

4. Concluses e recomendaes
4.1 Soluo tradicional
Este era o mtodo usado nos tempos do estirador e mais recentemente no tempo do AUTOCAD. De cada vez que era necessrio um desenho com elementos diferentes, quer em dimenses, quer em forma, tinha que ser redesenhado em 2D e impresso. Se para determinadas caractersticas, a encomenda no fosse exequvel, s se determinava a falha no projecto, passados alguns dias e normalmente j o cliente no se encontra acessvel para rever possveis alteraes. Alm de bastante tempo e trabalho dispendido na elaborao dos desenhos 2D, ainda tinha o incmodo de confrontar o cliente com alteraes. O cliente algumas vezes comprava algo que no estava a seu gosto, mas depois de produzido j no h volta a dar. Corria-se o risco do cliente no ficar satisfeito e podia-se afastar o cliente numa futura compra.

4.2 Soluo de transio


Este mtodo serve de elo de ligao (temporrio) entre a soluo tradicional e a soluo proposta, j que os desenhos dos componentes vo sendo parametrizados e possveis de ser usados na soluo proposta.

4.3 Soluo proposta


Este mtodo s e possvel de implementar na totalidade a partir do momento em que se usam softwares paramtricos e se recorre programao em Visual Basic Application (VBA).

RUI PINHEIRO JESUS

PG. 30 de 46

Gerao_automtica_desenhos_3D

Implica que na fase de ante-projecto, se gaste mais algum tempo a executar os diversos componentes necessrios para determinada modelao. Sejam estes componentes, ficheiros de desenhos (componentes e de conjunto) com dimenses paramtricas, seja a folha de clculo (folha de encomenda e dados para inventor) ou seja a macro em VBA.

4.4 Resultado prtico


O agente /departamento comercial apresenta o produto ao cliente. Abre o ficheiro Excel (VariaveisEstacionamento.xls) na Folha de

encomenda, define a soluo pretendida pelo cliente e preenche/altera os valores das clulas, com os valores permitidos. Grava o ficheiro Excel (VariaveisEstacionamento.xls). Dentro deste e atravs do respectivo link, abre o desenho de modelao 3D que est disponvel no final da folha. Dentro do desenho de modelao 3D, corre a macro. O cliente visualiza o produto e pede uma alterao. O agente comercial altera os valores das clulas de acordo com a alterao pedida e grava o ficheiro Excel. Volta para dentro do desenho de modelao 3D e corre novamente a macro. Permite que o cliente visualize o produto que est a solicitar, quanto forma, dimenses possveis e at geometrias disponveis. Aps a aprovao do cliente, pode imprimir imediatamente um desenho para que o cliente formalize a encomenda. (imagem 3D foto realista) Fecha o ficheiro Excel (VariaveisEstacionamento.xls). Atravs de correio electrnico, passa o conjunto de ficheiros (ficheiro Excel e desenho de modelao) para o projecto para que se emitam os desenhos 2D necessrios necessrios. para fabricao e desencadeiem a aquisio dos materiais

RUI PINHEIRO JESUS

PG. 31 de 46

Gerao_automtica_desenhos_3D

PRINCIPAL VANTAGEM reduo de tempo desde a encomenda at o incio de produo.

RUI PINHEIRO JESUS

PG. 32 de 46

Gerao_automtica_desenhos_3D

4.5 Recomendaes para trabalhos futuros

Seria interessante que em prximos trabalhos se conseguisse apenas com a utilizao de macros: Evoluir da modelao 3D, para a completa ligao e gerao dos desenhos finais 2D, to necessrios e indispensveis em serralharia. Actualizar alm do desenho 2D, actualizar tambm listas de peas, quantidades totais por mquina e no caso de vrias maquinar actualizar quantidades totais por encomenda. Imprimir todos os ficheiros de desenho 2D para PDF.

Com a chegada do software Autodesk Inventor. Verso 2010, melhorar a relao folha de clculo / desenho de modelao.

RUI PINHEIRO JESUS

PG. 33 de 46

Gerao_automtica_desenhos_3D

5. Lista de links de referncia

www.autodesk.com Informao sobre Autodesk Inventor .

www.apostilando.com.br Apontamentos sobre programao em linguagem Visual Basic Application

www.sdotson.com Exemplos de macros para Autodesk Inventor

www.exceler.org Site dedicado ao Microsoft Excel

www.teses.ufrj.br Diversas teses consultadas

www.3dcontentcentral.es Componentes para Autodesk Inventor (acessrios)

http://www.scribd.com Informao sobre API - Application Programming Interface (ou Interface de Programao de Aplicativos) de Autodesk Inventor .

RUI PINHEIRO JESUS

PG. 34 de 46

Gerao_automtica_desenhos_3D

6. Macros
Public Sub MontagemEstacionamento() '----------------------------------------------------Dim oAsmCompDef As AssemblyComponentDefinition Dim oTG As TransientGeometry Dim oMatrix As Matrix Dim oAssDoc As Inventor.AssemblyDocument Dim oParams As Parameters Dim XX, YY, ZZ, L, M Dim oOcc As ComponentOccurrence Dim fileoOcc As String Dim sItio As String

Set oAsmCompDef ThisApplication.ActiveDocument.ComponentDefinition Set oTG = ThisApplication.TransientGeometry Set oMatrix = oTG.CreateMatrix Set oAssDoc = ThisApplication.ActiveDocument Set oParams = oAssDoc.ComponentDefinition.Parameters '-------------------Directoria onde vai buscar os elementos a inserir sItio = "C:\PI\Estacionamento\" sIttio = "C:\PI\Acessorios\" '-------------------Apaga todos os objectos antigos do assembly For Each oOcc In oAsmCompDef.Occurrences oOcc.Delete Next '------------------cho XX = -60 YY = 0 ZZ = -0.9 fileoOcc = (sItio & "Chao1.ipt")

Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ)
RUI PINHEIRO JESUS PG. 35 de 46

Gerao_automtica_desenhos_3D

'------------------limites de estacionamento no cho For M = 1 To oParams.Item("N_LUG_LADO").Value / 2 * 10 XX = 1 YY = 6 + (M - 1) * oParams.Item("LARGURA").Value ZZ = 0.1 fileoOcc = (sItio & "Limites.ipt") Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) Next M If oParams.Item("SIMP_DUPLO").Value = 0.1 Then For M = 1 To oParams.Item("N_LUG_LADO").Value / 2 * 10 XX = -1 ' Define e insere na posio as barras limitadoras de altura.

YY = 6 + (M - 1) * oParams.Item("LARGURA").Value ZZ = 0.1 fileoOcc = (sItio & "Limites-MIR.ipt") Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) '------------------separador entre estacionamentos If oParams.Item("SEPARADOR").Value = 0.1 Then XX = 0 YY = oParams.Item("LARGURA").Value oParams.Item("LARGURA").Value ZZ = 0.1 fileoOcc = (sItio & "Separador.iam") Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ) End If Next M End If '------------------fundaes no cho For M = 1 To oParams.Item("N_PERNAS").Value * 10 XX = 0 YY = (M - 1) * oParams.Item("LARGURA").Value ZZ = 0.25 fileoOcc = (sItio & "AroFundacao.iam") oMatrix, oTG, oAsmCompDef, oParams, / 4 + (M 1) *

RUI PINHEIRO JESUS

PG. 36 de 46

Gerao_automtica_desenhos_3D

Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) Next M '------------------Pernas If oParams.Item("PERNA_QUAD_RED").Value = 0 Then For M = 1 To oParams.Item("N_PERNAS").Value * 10 XX = 0 YY = (M - 1) * oParams.Item("LARGURA").Value ZZ = 4.72 fileoOcc = (sItio & "Perna.Quadrada.iam") Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) Next M Else For M = 1 To oParams.Item("N_PERNAS").Value * 10 XX = 0 YY = (M - 1) * oParams.Item("LARGURA").Value ZZ = 4.72 fileoOcc = (sItio & "Perna.Redonda.iam") Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) Next M End If '------------------Colocao da cobertura L=2

If oParams.Item("PERNA_QUAD_RED").Value = 0 Then '------------------SIMPLES-QUAD Montagem_Esquadro_topo.iam XX = 8.4 YY = 0 ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_topo.iam") Else fileoOcc = (sItio & "Montagem_Esquadro_topo_INVER.iam")

RUI PINHEIRO JESUS

PG. 37 de 46

Gerao_automtica_desenhos_3D

End If Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) '------------------SIMPLES-QUAD Montagem_Esquadro_simples.iam If oParams.Item("N_PERNAS").Value = 0.2 Then XX = 8.4 YY = oParams.Item("LARGURA").Value ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_simples.iam") Else fileoOcc = (sItio & "Montagem_Esquadro_simples_INVER.iam") End If Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) Else '------------------SIMPLES-QUAD Montagem_Esquadro_duplo.iam For L = 2 To oParams.Item("N_PERNAS").Value * 10 - 1 XX = 8.4 YY = oParams.Item("LARGURA").Value * (L - 1) ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_duplo.iam") Else fileoOcc = (sItio & "Montagem_Esquadro_duplo_INVER.iam") End If Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ) Next L '------------------SIMPLES-QUAD Montagem_Esquadro_simples.iam XX = 8.4 YY = oParams.Item("LARGURA").Value * (L - 1) ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_simples.iam") oMatrix, oTG, oAsmCompDef, oParams,

RUI PINHEIRO JESUS

PG. 38 de 46

Gerao_automtica_desenhos_3D

Else fileoOcc = (sItio & "Montagem_Esquadro_simples_INVER.iam") End If Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) End If If oParams.Item("SIMP_DUPLO").Value = 0.1 Then '------------------DUPLO-QUAD Montagem_Esquadro_topo-MIR.iam XX = -8.4 YY = 0 ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_topo-MIR.iam") Else fileoOcc = (sItio & "Montagem_Esquadro_topo-MIR_INVER.iam") End If Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) '------------------DUPLO-QUAD Montagem_Esquadro_simples-MIR.iam If oParams.Item("N_PERNAS").Value = 0.2 Then XX = -8.4 YY = oParams.Item("LARGURA").Value ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_simples-MIR.iam") Else fileoOcc MIR_INVER.iam") End If Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ) Else '------------------DUPLO-QUAD Montagem_Esquadro_duplo-MIR.iam For L = 2 To oParams.Item("N_PERNAS").Value * 10 - 1 XX = -8.4 YY = oParams.Item("LARGURA").Value * (L - 1)
RUI PINHEIRO JESUS PG. 39 de 46

(sItio

&

"Montagem_Esquadro_simples-

oMatrix,

oTG,

oAsmCompDef,

oParams,

Gerao_automtica_desenhos_3D

ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_duplo-MIR.iam") Else fileoOcc MIR_INVER.iam") End If Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) Next L '------------------DUPLO-QUAD Montagem_Esquadro_simples-MIR.iam XX = -8.4 YY = oParams.Item("LARGURA").Value * (L - 1) ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_simples-MIR.iam") Else fileoOcc MIR_INVER.iam") End If Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ) End If End If Else '------------------SIMPLES-RED Montagem_Esquadro_topo.iam XX = 9.7 YY = 0 ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_topo.iam") Else fileoOcc = (sItio & "Montagem_Esquadro_topo_INVER.iam") End If Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ)
RUI PINHEIRO JESUS PG. 40 de 46

(sItio

&

"Montagem_Esquadro_duplo-

(sItio

&

"Montagem_Esquadro_simples-

oMatrix,

oTG,

oAsmCompDef,

oParams,

Gerao_automtica_desenhos_3D

'------------------SIMPLES-RED Montagem_Esquadro_simples.iam If oParams.Item("N_PERNAS").Value = 0.2 Then XX = 9.7 YY = oParams.Item("LARGURA").Value ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_simples.iam") Else fileoOcc = (sItio & "Montagem_Esquadro_simples_INVER.iam") End If Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) Else '------------------SIMPLES-RED Montagem_Esquadro_duplo.iam For L = 2 To oParams.Item("N_PERNAS").Value * 10 - 1 XX = 9.7 YY = oParams.Item("LARGURA").Value * (L - 1) ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_duplo.iam") Else fileoOcc = (sItio & "Montagem_Esquadro_duplo_INVER.iam") End If Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ) Next L '------------------SIMPLES-RED Montagem_Esquadro_simples.iam XX = 9.7 YY = oParams.Item("LARGURA").Value * (L - 1) ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_simples.iam") Else fileoOcc = (sItio & "Montagem_Esquadro_simples_INVER.iam") End If
RUI PINHEIRO JESUS PG. 41 de 46

oMatrix,

oTG,

oAsmCompDef,

oParams,

Gerao_automtica_desenhos_3D

Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) End If If oParams.Item("SIMP_DUPLO").Value = 0.1 Then '------------------DUPLO-RED Montagem_Esquadro_topo-MIR.iam XX = -9.7 YY = 0 ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_topo-MIR.iam") Else fileoOcc = (sItio & "Montagem_Esquadro_topo-MIR_INVER.iam") End If Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) '------------------DUPLO-RED Montagem_Esquadro_simples-MIR.iam If oParams.Item("N_PERNAS").Value = 0.2 Then XX = -9.7 YY = oParams.Item("LARGURA").Value ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_simples-MIR.iam") Else fileoOcc MIR_INVER.iam") End If Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ) Else '------------------DUPLO-RED Montagem_Esquadro_duplo-MIR.iam For L = 2 To oParams.Item("N_PERNAS").Value * 10 - 1 XX = -9.7 YY = oParams.Item("LARGURA").Value * (L - 1) ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_duplo-MIR.iam")
RUI PINHEIRO JESUS PG. 42 de 46

(sItio

&

"Montagem_Esquadro_simples-

oMatrix,

oTG,

oAsmCompDef,

oParams,

Gerao_automtica_desenhos_3D

Else fileoOcc MIR_INVER.iam") End If Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) Next L '------------------DUPLO-RED Montagem_Esquadro_simples-MIR.iam XX = -9.7 YY = oParams.Item("LARGURA").Value * (L - 1) ZZ = oParams.Item("COMP_PERNA").Value + 0.25 If oParams.Item("INCLINADO").Value = 0 Then fileoOcc = (sItio & "Montagem_Esquadro_simples-MIR.iam") Else fileoOcc MIR_INVER.iam") End If Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ) End If End If End If '------------------caixote do lixo If oParams.Item("CAIXOTE").Value = 0.1 Then XX = 0 YY = -30 ZZ = 0 fileoOcc = (sItio & "Caixote.ipt") Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) End If If oParams.Item("CAIXOTE").Value = 0.2 Then XX = 0 YY = -30 ZZ = 0 fileoOcc = (sItio & "Caixote.ipt")
RUI PINHEIRO JESUS PG. 43 de 46

(sItio

&

"Montagem_Esquadro_duplo-

(sItio

&

"Montagem_Esquadro_simples-

oMatrix,

oTG,

oAsmCompDef,

oParams,

Gerao_automtica_desenhos_3D

Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) XX = 0 YY = oParams.Item("LARGURA").Value * (L - 1) + 30 ZZ = 0 fileoOcc = (sItio & "Caixote.ipt") Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) End If If oParams.Item("CAIXOTE").Value = 0.3 Then XX = 0 YY = oParams.Item("LARGURA").Value * (L - 1) + 30 ZZ = 0 fileoOcc = (sItio & "Caixote.ipt") Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) End If '------------------barra limitadora de altura If oParams.Item("BARRA_LIMITADORA").Value = 0.1 Then For M = 1 To oParams.Item("N_PERNAS").Value * 10 - 1 XX = oParams.Item("COMPRIMENTO").Value + 4.05 YY = (M 1) * oParams.Item("LARGURA").Value / 2 oParams.Item("LARGURA").Value +

ZZ = oParams.Item("ALTURA").Value + 11.5 fileoOcc = (sItio & "Barra-Limitadora.iam") Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ) Next M If oParams.Item("SIMP_DUPLO").Value = 0.1 Then For M = 1 To oParams.Item("N_PERNAS").Value * 10 - 1 XX = -oParams.Item("COMPRIMENTO").Value + 4.05 YY = (M 1) oParams.Item("LARGURA").Value / 2 * oParams.Item("LARGURA").Value + oMatrix, oTG, oAsmCompDef, oParams,

ZZ = oParams.Item("ALTURA").Value + 11.5 fileoOcc = (sItio & "Barra-Limitadora.iam") Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ)
RUI PINHEIRO JESUS PG. 44 de 46

Gerao_automtica_desenhos_3D

Next M End If End If '------------------automovel BM If oParams.Item("CARRO_BM").Value = 0.1 Then Call oMatrix.SetToRotation(3.14159265358979 oTG.CreateVector(1, 0, 0), oTG.CreatePoint(0, 0, 0)) XX = 250 YY = oParams.Item("LARGURA").Value / 4 ZZ = 55 fileoOcc = (sIttio & "BMW_M6a\BMW_M6.ipt") Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) Call oMatrix.SetToRotation(3.14159265358979 oTG.CreateVector(0, 0, 0), oTG.CreatePoint(0, 0, 0)) End If '------------------automovel SPRINTER If oParams.Item("CARRO_SPRINTER").Value = 0.1 Then If oParams.Item("ALTURA").Value < 250 Then Call oMatrix.SetToRotation(3.14159265358979 oTG.CreateVector(0, 0, 1), oTG.CreatePoint(0, 0, 0)) XX = 3 / 2 * oParams.Item("COMPRIMENTO").Value - 50 YY = (M - 1) * 2 / 4 * oParams.Item("LARGURA").Value + 100 ZZ = 214 fileoOcc = (sIttio & "SW3dPS-mb sprinter\sprinter.iam") Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ) oMatrix, oTG, oAsmCompDef, oParams, / 2, / 2, / 2, / 2,

Call oMatrix.SetToRotation(3.14159265358979 oTG.CreateVector(0, 0, 0), oTG.CreatePoint(0, 0, 0)) Else XX = 250 YY = 3 / 4 * oParams.Item("LARGURA").Value ZZ = 214 Call oMatrix.SetToRotation(3.14159265358979 oTG.CreateVector(1, 0, 0), oTG.CreatePoint(0, 0, 0)) fileoOcc sprinter.iam")
RUI PINHEIRO JESUS

2,

(sIttio

&

"SW3dPS-mb

sprinter\SW3dPS-mb

PG. 45 de 46

Gerao_automtica_desenhos_3D

Call insertoOc(oOcc, fileoOcc, XX, YY, ZZ)

oMatrix,

oTG,

oAsmCompDef,

oParams, / 2,

Call oMatrix.SetToRotation(3.14159265358979 oTG.CreateVector(0, 0, 0), oTG.CreatePoint(0, 0, 0)) End If End If '------------------boneco If oParams.Item("HOMEM").Value = 0.1 Then XX = oParams.Item("COMPRIMENTO").Value YY = oParams.Item("LARGURA").Value / 2 ZZ = 136 fileoOcc = (sIttio & "imike\iMike.iam")

Call insertoOc(oOcc, oMatrix, oTG, oAsmCompDef, oParams, fileoOcc, XX, YY, ZZ) End If '------------------componentes em modo "grounded" For Each oOcc In oAsmCompDef.Occurrences oOcc.Grounded = True Next '------------------faz o Update ao assembly e grava-o oAssDoc.Update 'oAssDoc.Save '-----------------End Sub

Private Sub insertoOc(ByVal oOcc As ComponentOccurrence, ByVal oMatrix As Matrix, ByVal oTG As TransientGeometry, _ ByVal oAsmCompDef ByVal oParams As Parameters, _ As AssemblyComponentDefinition,

ByRef fileoOcc As String, ByVal XX, ByVal YY, ByVal ZZ) Call oMatrix.SetTranslation(oTG.CreateVector(XX, YY, ZZ)) Set oOcc = oAsmCompDef.Occurrences.Add(fileoOcc, oMatrix)

End Sub

RUI PINHEIRO JESUS

PG. 46 de 46

You might also like