Cursos e Bibliotecas Ver Mais

Galeria 3D1 Ver Mais

Jomar Machado   Rio de Janeiro - RJ
new   Belo Horizonte - MG
Walter   Cascavel - PR - AC
6/7   Rio de Janeiro

Portfólios Ver Mais

RafaelMucio   Monte Alto - SP
Daian   Belo Horizonte - MG
RV3D   Presidente Venceslau - SP
brito   maranhão

COMO ALINHAR & SOLDAR DUAS FACES DE DOIS OBJECTOS ( TIPO IMANO )

Por: anonymumm  

Em: 11/05/2018 12:42

Viva,

Qual é a melhor forma para alinhar, ajustar, rodar e colar os poligonos ( faces ) de dois polylines distinctos  um contra o outro para construir um objecto composto de duas figuras ? ( Colisão )

Exemplo : Imagine que quer encostar dois tubos quadrados um contra o outro , e poder ajustar a altura ou o angulo nos eixos todos, rodando um ou o outro objecto mas sem que as duas faces escolhidas para a solda final ( Weld ) se separem durante o movimento de deslocação e ajuste ? ( Como  dois imans que estao « encostados » face contra face um com outro mas poder mexer neles na vertical ou horizontal sem perder o encosto das faces ! )

Sera que me fiz entender ? 

:(
HP Z820 Desktop Workstation : Dual XEON E5-2643 ( 4+4 x 3.30 GHz ) - 64GB RAM 120GB SSD 2TB HDD QUADRO DUAL K4000 3GB GDDR5
Oi Anonymumm, tudo bem?

Eu não sei se entendi bem, mas fiz um exemplo para mostrar o que pensei.

Se tiver um tubo quadrado em cima do outro e aplicar o modificador Bend no tubo de cima, poderá curvá-lo e girar a curvatura para qualquer lado sem desalinhar o encontro com o tubo de baixo, como mostra a imagem em anexo.

O importante é onde está o ponto Pivot do objeto que recebe o Bend, pois o efeito vai acontecer com base no ponto Pivot dele, então, se o ponto Pivot estiver bem na base do objeto vai funcionar perfeitamente.

Se o ponto Pivot estivesse no meio do tubo quadrado ele iria se curvar a partir do meio, entende?

Outra coisa importante para poder curvar corretamente é ter bastante segmentos na altura do tubo para ter faces suficientes para curvar.

Se aumentar a altura do tubo de cima, continuará funcionando normalmente, agora, para aumentar a altura do tubo de baixo e levar junto o tubo de cima precisa fazer um Rigging e dai já envolve outras coisas além de modelagem, o mais prático seria com o Reaction Manager.

Abração e tudo de bom.

André Vieira
Viva André; 

Obrigado pela a ajuda mas não é o que pretendo fazer :

1 \ Imagina que tenho os dois tubos quadrados como na tua imagem mas lado a lado ( paralelos ).

2\ Depois encosto um contra o outro,  face contra face ( Primeira dificuldade  no MAX porque os objectos atravessam uns nos outros sem se tocar verdadeiramente como faria duas barras de ferro ! ) Mas vamos alinhar um contra o outro...muito bem.

3 \ A minha pergunta é saber como deslocar , deslizar, para cima, para baixo ou rodar um dos tubos individual mente ou separadamente de forma a ajustar a sua posição mas ficando sempre encostados um contra o outro ( face contra face ) sendo essas duas faces o eixo de deslocação 

No SOLIDWORKS por exemplo quando dois componentes batem um no outro eles nao atravessam como se fossem dois fantasmas mas sim embatem e não deixam passar um objecto sólido para um zona do projecto porque já lá estava outro na mesma área : Eles tocam-se fisicamente como numa colisão ! Não se o máximo tem essa opcao !?

Penso que o exemplo de dois imanos é a mais simples para entender a minha dificuldade: Uma vez encostados um contra o outro a minha pergunta é saber que ferramenta ou atalho teclado devo utilizar para  poder rodar ou deslocar individualmente cada um dos tubos para cima ou para baixo mas sem que as duas faces encostadas se separem ! 

Espero que o meu pedido seja mais claro...

Obrigado
HP Z820 Desktop Workstation : Dual XEON E5-2643 ( 4+4 x 3.30 GHz ) - 64GB RAM 120GB SSD 2TB HDD QUADRO DUAL K4000 3GB GDDR5
cara...
no 3ds max e softwares semelhantes (maya, blender, modo, etc) para você fazer com que as faces não atravessam sendo estas faces de objetos distindos tu precisa informar ao 3ds max para que as faces dos objetos distintos não atravessem, e isto é feito na parte de animação do software.

softwares como solidworks, alias, inventor, etc possuem uma proposta um pouco diferente.
Cara bis,

Isso ja calculava,....mas como ?

cool
HP Z820 Desktop Workstation : Dual XEON E5-2643 ( 4+4 x 3.30 GHz ) - 64GB RAM 120GB SSD 2TB HDD QUADRO DUAL K4000 3GB GDDR5
nossa, man!
Eu num sou muito bom em animação não, viu.
Quem poderia lhe ajudar nisso daí seria o Carlos Mesquita (professor do curso: http://3d1.com.br/dvds/cursos/video-curso-rig-de-personagens).
facebook dele: https://www.facebook.com/Mezkyta
Oi Anonymumm, tudo bem?

Desculpe a minha ignorância no português de Portugal, mas eu não sei o que é imanos, coloquei no imagens do Google e apareceu só fotos de homens, imagino que seja o mesmo que imã no nosso português, mas não tenho certeza. rsrsrsrs

Sobre a questão dos objetos se atravessarem, realmente é assim nos programas artísticos, apenas Softs de CAD/CAM que as vezes possuem este recurso de colisões físicas em tempo real.

No 3ds max tem um recurso similar, mas que não identifica cada face em colisão entre os dois objetos igual nos programas de CAD, ele trabalha com o ponto Pivot do objeto que está sendo movido e identifica a colisão do ponto Pivot com as faces do objeto que está parado, então, se o ponto Pivot estiver no lugar certo você consegue colocar um sobre o outro sem atravessar.

O recurso se chama Select And Place e fica do lado direito do ícone do Scale, como mostra a primeira imagem em anexo, mas só está disponível a partir do 3ds max 2015.

Sobre a questão da movimentação e rotação entre os objetos, você precisa fazer um Rig de animação se deseja restringir os movimentos ou fazer conexões entre os objetos.

Basicamente você pode apenas lincar os objetos e limitar os eixos de movimentação e rotação, assim, mesmo que tentar mover ou girar em outra direção, não vai funcionar.

Por exemplo, na primeira imagem em anexo eu coloquei os dois Boxes em paralelo como você falou, dai usei o ícone Select And Link, marcado na imagem, para clicar no Box azul e arrastar até o Box amarelo, assim é feito um link entre eles.
Então, se agora mover o Box amarelo, o Box azul também vai se mover, mas se mover o Box azul o amarelo permanecerá parado, pois a conexão é sempre na direção Pai > Filho.

Agora, se quiser restringir a movimentação e rotação do Box azul você pode entrar no painel Motion, o da rodinha, clicar no botão Link Info e marcar os eixos que deseja limitar no menu Locks, como mostra a primeira imagem em anexo.
Desta forma só vai mover, rotacionar ou escalonar nos eixos que estiverem desmarcados.

Abaixo tem o menu Inherit para definir a conexão com os filhos, então, se selecionar o Box amarelo e desmarcar os eixos do Inherit, o Box azul não vai mais acompanhar a movimentação e rotação do Box amarelo, mesmo estando lincado com ele.

OBS: Para desfazer o link entre os objetos você deve usar o ícone Unlink Selection que fica do lado do ícone Select And Link marcado na imagem.


O ideal nestes casos de animação é criar um controlador para os parâmetros que deseja animar ou controlar, você pode fazer isso com Custom Attributes para criar menus no painel Modify, mas uma forma prática para situações mais simples é usar os Manipulators.

Segue um passo a passo:

1 - Os Manipulators ficam no painel Create > Helpers > Manipulators, eu criei dois Sliders no exemplo, como mostra a segunda imagem em anexo.
Depois cliquei no Box azul com o botão direito, escolhi Wire Parameters e apareceu o menuzinho dele como está na imagem.
Como quero controlar a movimentação em Z eu entrei no Transform > Position > Z Position.

2 - Depois disso o mouse fica ligado ao Box com uma linha pontilhada e dai tem que clicar no Slider que vai controlar o movimento, vai aparecer o mesmo menuzinho, como mostra a terceira imagem em anexo.
Como eu quero que o valor do Slider controle a movimentação, entrei no Object Slider Manipulator > Value.

3 - Logo que fizer isso vai abrir a janela do Wire Parameters onde poderá fazer a conexão entre os dois, como mostra a quarta imagem em anexo.
Note que, na minha janela o Z Position do Box apareceu no quadro do lado esquerdo e o Value do Slider apareceu no quadro do lado direito.
Portanto, se queremos que o Value controle o Z Position temos que clicar na seta que indique a direção do Value para o Z Position igual está marcado na imagem.
Dai é só clicar no botão Connect, que na imagem está aparecendo Update porque eu já tinha conectado.

Provavelmente o Box mudará de posição quando fizer a conexão, pois ele vai considerar a posição do ponto Pivot no mundo 3D e o valor definido no Slider, que por padrão é zero.
Então, você pode somar ou diminuir valores na expressão do Value como aparece na imagem, onde somei 20 para alinhar os dois Boxes, depois que modificar a expressão precisa clicar no botão Update para atualizar.

4 - Para controlar a rotação é a mesma coisa, mas em vez de escolher Transform > Position vai escolher Transform > Rotation quando clicar no Box e vai escolher o eixo que deseja girar, no meu exemplo usei o eixo Y e conectei com o Value do outro Slider igual fiz no primeiro.
Porém, para funcionar direito no caso de rotação você precisa converter o valor do Value em radianos, pois internamente o Max trabalha as rotações em radianos e para nós é melhor tratar como graus, então, precisa digitar o código degtorad na frente do Value no quadro da expressão, como mostra a quinta imagem em anexo.

5 - Por fim, você pode selecionar os Sliders para colocar nome e definir os valores máximos e mínimos, como mostra a última imagem em anexo.
Depois é só clicar no ícone Select And Manipulate marcado na imagem para poder arrastar as barrinhas dos Sliders e controlar o objeto.
Você também pode fazer isso modificando diretamente o Value de cada Slider no painel Modify sem precisar selecionar o ícone do Manipulate.

Abração e tudo de bom.

André Vieira
wooo André !

Grande lição de max recebi agora !!! Obrigadão : Vou fazer tudo direito e espero que numa proxima versão o max integre a noção de colisão para faciltar o nosso trabalho...

Mais uma vez obrigado

smile
HP Z820 Desktop Workstation : Dual XEON E5-2643 ( 4+4 x 3.30 GHz ) - 64GB RAM 120GB SSD 2TB HDD QUADRO DUAL K4000 3GB GDDR5
No caso de duas peças regulares assim (q são iguais e n tem curvas).. Primeiro vc junta os dois box certinho, e então vc cria um helper e põe esse helper na face onde vai girar (usando snap pra face/superficie), e centraliza esse helper mais ou menos no meio das faces q estão se tocando... Seleciona os dois box e move os pivots dos dois (affect pivot only no painel hierarchy) pro mesmo lugar q o helper (usa o quick align (shift+a) pra isso), linka os dois box ao helper, e aplica nos dois box, pra movimentação (no painel motion) um float limit mais ou menos do tamanho dos box.. Aí então vc gira e move esses box separadamente apenas como 'local' , e qdo for mover os 2 juntos move pelo helper ao qual os box estão linkados... 

O principal daí é vc por o pivot dos objetos no lugar certo.. no caso, seria na face onde os 2 se juntam, etc..
A Beleza está entre a Ética e a Razão!..
Oi Screaming, tudo bem?

Realmente o Float Limit é uma ótima opção que não lembrei na hora, obrigado por complementar, pois assim ele poderá restringir a movimentação e rotação diretamente na manipulação dos objetos na Viewport e dependendo do caso nem precisa usar os Manipulators ou Custom Attributes.

Abração e tudo de bom.

André Vieira

Faça o login para poder comentar

Usuários conectados

Total de mensagens publicadas pelos membros da comunidade: 711054.

Total de membros registrados: 138526

Últimos membros registrados: erotique, Amândio Augusto Tavares , miteoelon, JointCare11, LumiLeanAvis Prix, psoriol, Miltonsroberts, degmon026.

Usuário(s) on-line na última hora: 1081, sendo 5 membro(s) e 1076 visitante(s).

Membro(s) on-line na última hora: Willmitnick, CNC, Eduardo Ramos, Junior, Alessandro.Marcos.

Legenda: Administrador, Especial, Moderador, Parceiro .

3D1 © Três D1 © 1999-2024. Todos direitos reservados.