Jump to content

turbosmooth toggle


Tesaurus

Recommended Posts

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

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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 :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

We are using cookies. Read about our Privacy Policy