Skocz do zawartości

Rekomendowane odpowiedzi

Napisano

Staram sie zrobic okienko ktore bedzie sprawdzalo czy obiekt w selekcji ma turbo smoooth. W zaleznosci od statusu checkbox bedzie zaznaczony lub odznaczony. Fajnie byloby aby dzialal na kilku obiektach i uzywal tristate. Zaznaczanie checkboxa powinno rowniez wylaczac i wlaczac modyfikator. W zalaczniku moje wypociny. Niby dziala ale ugrzazlem i nie wiem co dalej. Prosze o pomoc :)

 

Pozdrawiam

  • Odpowiedzi 2
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Top Posters In This Topic

Napisano

Z tym skryptem raczej nie pomogę, zbyt dawno w scriptcie nie dłubałem i już mało pamiętam, ale jeśli celem jest to aby szybko i wygodnie włączać/wyłączać turbosmooth, to coś takiego jak Meshsmooth toggle sobie kiedyś zrobiłem. Poniżej źródło - może w jakiś sposób się przyda.

 

--#################################################
--dodaje / usuwa modyfikacje meshsmooth i edit mesh do zaznaczonego obiektu
macroscript meshsmooth_editmesh category:"VGT" tooltip:"Modyfikacje meshsmooth i edit mesh" icon:#("Standard_Modifiers",21)
(
zaznaczone = getcurrentselection()
for i = 1 to zaznaczone.count do
(
obiekt = zaznaczone[i]
if obiekt.modifiers.count == 0 then
(
 if validmodifier obiekt (MeshSmooth()) then
  (
   addmodifier obiekt (Meshsmooth iterations:2)
   addmodifier obiekt (Edit_Mesh())
  )
)
else
(
 if obiekt.modifiers.count == 2 then if (obiekt.modifiers[2].name == "MeshSmooth") and (obiekt.modifiers[1].name == "Edit Mesh") then
  (
   deletemodifier obiekt 1
deletemodifier obiekt 1
  )
)
)
completeredraw()
)

Jest to macroscript, więc można podpiąć pod dowolny klawisz.

Napisano

Mozna by to napisac ladniej np. zapamietywac numer modyfikatora turbosmooth zeby nie szukac go za kazdym razem. Napisalem to tak zebys mogl latwo przerobic wszystko na wiecej obiektow w selekcji.

rollout test "test"

( 
checkbox Figure_Mode "Trubosmooth status" enabled:true

on test open do
(
for i in 1 to selection[1].modifiers.count do
(
if (classOf selection[1].modifiers[i] == TurboSmooth) then
(
if (selection[1].modifiers[i].enabled == true) then Figure_Mode.checked = true
else Figure_Mode.checked = false
)
)
)

on Figure_Mode changed theState do
(
for i in 1 to selection[1].modifiers.count do
(
if (classOf selection[1].modifiers[i] == TurboSmooth) then
(
print (classOf selection[1].modifiers[i])
if (Figure_Mode.checked) == true then selection[1].modifiers[i].enabled = true
else selection[1].modifiers[i].enabled = false
)
)
)

)

createdialog test

 

Jeszcze oczywiscie przydaloby sie sprawdzanie czy wogole jest turbosmooth :)

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się



×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności