Jump to content
jobiz

Scalare I Mappaggi Uvw!

Recommended Posts

:(:(:( Ciao ragazzi forse domanda un po insensata ma si posso scalare i modificatori UVW mapp applicati a una serie di oggetti???

- Mi spiego ho un serie di oggetti che hanno applicati dei modificatori UVW mapp troppo piccoli. Posso in un sol colpo, senza stare a scalare tramite i parametri U , V e W uno alla volta, scalare tutti insieme???? :blink2:

spero sia possibile se no è sbattimento

tnx job

Share this post


Link to post
Share on other sites

Bello smanettare a prima mattina :D :D

rollout scalatore "scalatore" (

	spinner scala "Fattore di Scala: " type:#float range:[-1000,1000,1]

	button Vai "vai"


	on vai pressed do (

  for oggetto in selection do (

 	 for i = 1 to oggetto.modifiers.count do (

    if (classof oggetto.modifiers[i] == Uvwmap) then (

   	 s = scala.value

   	 oggetto.modifiers[i].gizmo.scale = [s,s,s]

    )

 	 )	

  )

	)

)

createdialog scalatore width:250

Prendi questo codice e salvalo in un file con estenzione .ms (puoi anche andare nel menù maxscript, newscript e incollarcelo dentro)

Lo fai partire e ti compare una finestrella molto semplice dove puoi impostare il fattore di scala

Seleziona gli oggetti e clicka su vai

puoi anche crearti un pulsante aprendo lo script .ms, selezionando tutto il testo e trascinandolo nella barra

NB

lo script scala tutti i gizmo dei modificatori uvw applicati agli oggetti selezionati

Se hai più modificatori uvw applicati allo stesso oggetto verranno inesorabilmente scalati tutti quanti

Share this post


Link to post
Share on other sites

piccolo update dello script:

rollout scalatore "scalatore" (

	spinner scalax "Fattore di Scala X: " type:#float range:[-1000,1000,1]

	spinner scalay "Fattore di Scala Y: " type:#float range:[-1000,1000,1]

	spinner scalaz "Fattore di Scala Z: " type:#float range:[-1000,1000,1]


	button Vai "vai"


	on vai pressed do (

  for oggetto in selection do (

 	 for i = 1 to oggetto.modifiers.count do (

    if (classof oggetto.modifiers[i] == Uvwmap) then (

   	 sx = scalax.value

   	 sy = scalay.value

   	 sz = scalaz.value

   	 oggetto.modifiers[i].gizmo.scale = [sx,sy,sz]

    )

 	 )	

  )

	)

)

createdialog scalatore width:250

questo ti permette di scalare i gizmo in maniera non uniforme specificando un diverso fattore di scala per ogni asse

Share this post


Link to post
Share on other sites

miticoooooooooooooooooooooooo Philix troppo avanti :Clap03::Clap03::Clap03: Funziona

Pero poi nel pannello modifica non mi cambia i valori dell U , V e W cioè rimangono quelli di partenza, assolutamente non che sia un problema, magari era utile per te per migliorare ulteriormente lo script :D:D:D .

Grazie veramente mille

Share this post


Link to post
Share on other sites

basta poco che ce vo? :D

qui sotto c'è il codice per cambiare U V e W :D

fammi sapere se ti funza

rollout scalatore "U V W" (

	spinner scalax "U: " type:#float range:[-1000,1000,1]

	spinner scalay "V: " type:#float range:[-1000,1000,1]

	spinner scalaz "W: " type:#float range:[-1000,1000,1]


	button Vai "vai"


	on vai pressed do (

  for oggetto in selection do (

 	 for i = 1 to oggetto.modifiers.count do (

    if (classof oggetto.modifiers[i] == Uvwmap) then (

   	 uu = scalax.value

   	 vv = scalay.value

   	 ww = scalaz.value

   	 oggetto.modifiers[i].utile = uu

   	 oggetto.modifiers[i].vtile = vv

   	 oggetto.modifiers[i].wtile = ww

    )

 	 )	

  )

	)

)

createdialog scalatore width:150

PS

gli script precedenti agivano sul gizmo scalandolo (come quando scali un box e vedi che esso cambia dimensioni ma le sue proprietà di larghezza, altezza e profondità rimangono invariate) ecco perchè U V e W non cambiavano


Edited by philix

Share this post


Link to post
Share on other sites

Philix funziona, ma sorry mi sono spiegato male io utilizzo i valori di lunghezza larghezza e alltezza non u, v, w (che tra l altro se mi spiegassi la differenza mi faresti un favore) per cui quelli che per me dovrebbero cambiare sono quelli di altezza larghezza e lunghezza sorry per lo sbattimento che ti fo fare ma sei disponibilissimo :hello::wub::wub::wub:

tnx job

Share this post


Link to post
Share on other sites

speriamo che questa volta sia giusto :P

rollout scalatore "LungLargAlt" (

	spinner scalax "Lenght: " type:#float range:[-1000,1000,1]

	spinner scalay "Width: " type:#float range:[-1000,1000,1]

	spinner scalaz "Height: " type:#float range:[-1000,1000,1]


	button Vai "vai"


	on vai pressed do (

  for oggetto in selection do (

 	 for i = 1 to oggetto.modifiers.count do (

    if (classof oggetto.modifiers[i] == Uvwmap) then (

   	 ll = scalax.value

   	 wi = scalay.value

   	 hh = scalaz.value

   	 oggetto.modifiers[i].length = ll

   	 oggetto.modifiers[i].width = wi

   	 oggetto.modifiers[i].height = hh

    )

 	 )	

  )

	)

)

createdialog scalatore width:150

Share this post


Link to post
Share on other sites

Mhhh philix non so mi sa che peggioriamo :( , perchè cosi mi trasforma larchezza altezza e lunghezza nel numero che inserisco e non mi moltiplica per il fattore di scala:

- mi spiego se io ho una mappatura uvw che è di larghezza 0,13 e la devo portare a 13 mi dovrebbe moltiplicare per 100 cioè il valore che inserisco nello script; mentre adesso mi passa da 0,13 a 100 cioè trasforma non scala il valore

se non mi capisci cosa probabile entra in chat che ne parliamo

cmq ti ringrazio di cuore per la disponibilità

job

Share this post


Link to post
Share on other sites

nella fretta ho dimenticato i tre asterischi (*) prima dell'uguale

NB

occhio che questa procedura non permette il CTRL+Z

quindi dopo che hai applicato uno scalaggio non puoi tornare indietro

o meglio puoi tornare indietro applicando un valore di scala inverso a quello precedentemente applicato

rollout scalatore "Scala LungLargAlt" (

spinner scalax "Lenght: " type:#float range:[-1000,1000,1]

spinner scalay "Width: " type:#float range:[-1000,1000,1]

spinner scalaz "Height: " type:#float range:[-1000,1000,1]


button Vai "vai"


on vai pressed do (

 for oggetto in selection do (

  for i = 1 to oggetto.modifiers.count do (

   if (classof oggetto.modifiers[i] == Uvwmap) then (

    ll = scalax.value

    wi = scalay.value

    hh = scalaz.value

    oggetto.modifiers[i].length *= ll

    oggetto.modifiers[i].width *= wi

    oggetto.modifiers[i].height *= hh

   )

  )

 )

)

)

createdialog scalatore width:150


Edited by philix

Share this post


Link to post
Share on other sites

:eek::eek::Clap03::Clap03::D:D Sei un mito philix funziona alla grande.

Si non si puo tornare indietro ma se io scalo con fattore 0,01 al torno all originale bellaaaaaaaaaaaa

o sei un mito vado a mangiare la pasta poi ti offriro una birra :hello:

ciao job

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...