Magneto por atalho

Instalação do programa e seus plugins / Controle da interface / Intercâmbio de formatos

Magneto por atalho

Mensagempor Fonte Boa » Sex Fev 04, 2005 5:17 pm

Essa é para quem gosta de destrinchar! hehehe :shock:

Como vocês sabem, as operações com magneto, aquelas em que
o programa te pergunta ("ASK") até onde você quer que uma determinada
operação afete a malha (por exemplo, mover um vértice com magneto),
não pode ser atribuída a um atalho. :(

Uma saída, por sinal ótima, foi apontada aqui:
http://www.wings3d.com.br/forum/viewtopic.php?t=394

Mas existe uma outra, bem mais legal (pois permite atribuir vários
atalhos a várias operações com magneto e mantê-los!) foi
criada pelo Elrond79 no post
http://p212.ezboard.com/fnendowingsmira ... =957.topic

Vou tentar resumir aqui.

Você precisará editar o arquivo preferences.txt:
portanto, crie uma cópia dele por precaução, pois é MUITO fácil você perder todas as suas configurações e você deverá ter como restaurá-lo.

Vou transcrever uma linha típica neste arquivo de atalho:
{{bindkey,vertex,116},{vertex,{move,x}},user}.

Esta linha faz com que no Wings a tecla T (o código é 116)
funcione como atalho para a operação Vertex|move|X.

Dessa maneira, a sintaxe deste tipo de linha é sempre:
{{bindkey,SEL_MODE,KEY_#},{SEL_MODE,{COMMAND,DIRECTION}},user}.

Onde:
SEL_MODE é o modo de seleção (vertex, edge, face, object)
KEY_# é o código da tecla de atalho (116 é a letra T)
COMMAND é o comando (no nosso exemplo, move)
DIRECTION é a direção do movimento (X, Y, Z, free, Normal)

Pois bem, a única coisa que tem que ser feita para construir um atalho para operações de Magneto é substituir a variável DIRECTION pela seguinte expressão:
{'ASK',{[magnet],[DIRECTION]}}

Dessa maneira, no nosso exemplo acima (T como atalho para vertex|move|x)
{{bindkey,vertex,116},{vertex,{move,x}},user}.
pode-se ver que a letra x logo depois de move é a variável DIRECTION.

Logo, para fazer o T funcionar como atalho para vertex|move|x com magneto, substituiremos nessa linha a letra x (DIRECTION) e ela ficaria primeiro assim:
{{bindkey,vertex,116},{vertex,{move,{'ASK',{[magnet],[DIRECTION]}}}},user}.

e depois, substituiríamos DIRECTION pela direção desejada, no caso x, e a linha ficaria assim:
{{bindkey,vertex,116},{vertex,{move,{'ASK',{[magnet],[x]}}}},user}.

Vale a pena experimentar! São atalhos PRECIOSÍSSIMOS que podem ser criados assim.
Eu, particularmente, vou criar três atalhos (na verdade são 9 linhas diferentes de programação, pois tem que ser repetidos para vertex, edge e face):
mover livremente com magneto
girar livremente com magneto
alterar a escala uniforme com magneto.

:grin: :grin:
Fonte Boa
Avatar do usuário
Fonte Boa
Administrador
Administrador
 
Mensagens: 2226
Registrado em: Seg Mai 31, 2004 11:58 pm

Mensagempor Fonte Boa » Sex Fev 04, 2005 7:49 pm

Ah, esqueci de dizer que não há como saber o código
de uma tecla ou combinação de teclas a não ser de modo prático.

Eu faço assim:
(1) renomeio ou copio meu arquivo preferences.txt para algum lugar seguro
(2) em seguida, apago este arquivo do seu local de origem.
(3) abro o Wings: ele vem com o default de fábrica, pois o arquivo
preferences.txt foi apagado.
(4) crio um atalho qualquer com a combinação de teclas cujo código desejo saber.
(5) fecho o wings e procuro o arquivo preferences.txt que acabou de ser criado com esta sessão rápida de WIngs. Abro este arquivo e procuro uma linha que começa com bindkey. Lá a gente encontra o código da combinação de teclas que usamos na criação do atalho. Anoto o número e pronto!
(6) restauro meu arquivo preferences.txt (que foi renomeado ou copiado, no passo 1).

:wink:

Quem quiser experimentar o poder disso, eu peguei a sintaxe
que o usuário Fro Lee fez no seu preferences.txt.

Ele criou os seguintes atalhos (funcionam para vert|edge|face:
CTRL+ALT+A = mover livremente com magneto
CTRL+ALT+S = girar livremente com magneto
CTRO+ALT+D = alterar a escala uniforme livremente com magneto

Todos conhecem o mover, girar e alterar escala livrevemtne
Estes atalhos disparam estas funções, mas o Wings fica aguardando
você informar até onde quer que a operação afete a malha (magneto)!
:wink:

As linhas de código são as seguintes:

{{bindkey,edge,{97,[alt,ctrl]}},{edge,{move,{'ASK',{[magnet],[free]}}}},user}.
{{bindkey,edge,{100,[alt,ctrl]}},{edge,{scale,{'ASK',{[magnet],[center]}}}},user}.
{{bindkey,edge,{115,[alt,ctrl]}},{edge,{rotate,{'ASK',{[magnet],[center,free]}}}},user}.
{{bindkey,face,{97,[alt,ctrl]}},{face,{move,{'ASK',{[magnet],[free]}}}},user}.
{{bindkey,face,{100,[alt,ctrl]}},{face,{scale,{'ASK',{[magnet],[center]}}}},user}.
{{bindkey,face,{115,[alt,ctrl]}},{face,{rotate,{'ASK',{[magnet],[center,free]}}}},user}.
{{bindkey,vertex,{97,[alt,ctrl]}},{vertex,{move,{'ASK',{[magnet],[free]}}}},user}.
{{bindkey,vertex,{100,[alt,ctrl]}},{vertex,{scale,{'ASK',{[magnet],[center]}}}},user}.
{{bindkey,vertex,{115,[alt,ctrl]}},{vertex,{rotate,{'ASK',{[magnet],[center,free]}}}},user}.

Basta copiá-las para o final do arquivo preferences.txt!
Mastigadíssimo!

Curtam!
Fonte Boa
Avatar do usuário
Fonte Boa
Administrador
Administrador
 
Mensagens: 2226
Registrado em: Seg Mai 31, 2004 11:58 pm

Mensagempor rockz » Dom Fev 06, 2005 7:48 pm

Boa fonte... eu sempre tive problemas de como usar o magneto agora vai ficar facinhu de acessa-los.
Wings3d | Xsi
Avatar do usuário
rockz
Iniciante
Iniciante
 
Mensagens: 70
Registrado em: Ter Jun 01, 2004 10:05 am


Voltar para INSTALAÇÃO, CONFIGURAÇÃO E INTEGRAÇÃO

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 3 visitantes

cron