• Login
sketchucation logo sketchucation
  • Login
🤑 30% Off | Artisan 2 on sale until April 30th Buy Now

Proposal for a "Turntable"-Script

Scheduled Pinned Locked Moved Plugins
16 Posts 8 Posters 1.6k Views
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    samtsham
    last edited by Gábor 5 Feb 2024, 12:49 24 Sept 2010, 22:54

    Hello, incredible Ruby wizards!
    This is my first post here, though I've been lurking since day one. I'm a set designer, doing musical theater design at major venues in Austria and Germany.
    Sketchup is not only essential in my workflow ... I can safely say, if it weren't for Sketchup, I very likely wouldn't be a set designer at all.

    I'll append some samples of my work at the bottom of this post. As it is, I have an idea for a Ruby-script that would be immeasurably useful in my field, and may benefit others too.

    THE OBJECTIVE:
    Big theater sets often utilize a revolve, revealing different scenes, depending on which way the turntable is oriented.
    Sketchup is a near ideal theatre design tool, as I can show the director my different scenes by switching layers on and off, display the set from any vantage point in the audience, check sight-lines in real-time, and implement changes, change colors and try out positions of elements on the fly, as easily as with an elaborate and bulky real-world model.
    But as soon as you have to revolve the set, things get iffy.

    I used to group all my set elements to a turntable-object, and then find those little red rotation marks in the move tool, but I alway had to pan up, spot them, rotate, eyeball the new position, and then pan down again. Hunt and peck, and not the least bit elegant.
    I tried a new implementation with dynamic components, and I was very hopeful I'd be able to click the revolve and have it turn in x seconds to the next programmed position. What I got was (depending on model complexity) a wait of 20 seconds, and a rapid switch to the new position. I could rotate it in realtime by hand, but as a dynamic component I got these huge waits, and while it works better than hunt and peck, it's still far from what I need.

    MY SOLUTION:
    The perfect presentation tool would be a slide bar that controls the z-axis rotation of my turntable group. That in and of itself would be better than anything I use right now.
    Even better would be, if I could put down some pegs on that slide bar. An option to snap to those peg positions would be great, as well as editing the degree values of these pegs numerically.
    Even better would be an option to transition the rotation of the turntable in realtime, at a rotation speed that can be predefined (say, 360° take 55 seconds, with an ease-in/out preset in 10 steps from ramp to bezier). And maybe a multiplier for a quick run-through without having to wait for 30 seconds for a scene change.

    Most of these advanced options are only bells and whistles, but let me just dream up the ideal implementation.

    I've sketched a possible interface for a potential Turntable script:

    Sketch of a possible interface for the proposed script.

    I know very little about programming, but I think, the dynamic updating of the z-axis rotation itself is probably not too much of a problem. The interface is bound to be more of a hassle, especially, if it is to work on both PCs and Macs. I'd be more than happy with just a rotation slider without any of the other options. They would just make it a professional tool.

    WHO'S IT FOR?
    Well, mainly theatrical set designers, really. But anyone who wants to control the rotation of any element in a static setting could use it. Design a flat with a rotating bed. Wow your clients. What do I know?

    Thank you for considering this at all.
    You are a very generous bunch, and I can't believe what you are all capable of achieving.
    My highest regards ...

    Sam MADWAR, Vienna.

    ![Comparison Sketchup-views and set photos of "Guys and Dolls" at the Volksoper, Vienna, 2009.](/uploads/imported_attachments/0Zca_GuysAndDolls-Sketchup.jpg "Comparison Sketchup-views and set photos of "Guys and Dolls" at the Volksoper, Vienna, 2009.")

    1 Reply Last reply Reply Quote 0
    • J Offline
      jeff hammond
      last edited by 25 Sept 2010, 00:26

      hey sam
      have you looked at sketchy physics yet?

      honestly, i've barely used it (there seems to be a decent amount of learning involved for something that i don't have much use for) but i think it may be able to accomplish what you're after (and maybe some other stuff that would help as well?)

      here's the scf sub-forum for sketchy physics:
      http://forums.sketchucation.com/viewforum.php?f=61

      maybe ask over there if any of this is already possible

      (oh, and i like your mock up interface.. i think that kind of stuff could be built rather easily on osx using xcode's interface builder but all the ruby writers are windows-centric)

      dotdotdot

      1 Reply Last reply Reply Quote 0
      • D Offline
        Dave R
        last edited by 25 Sept 2010, 01:41

        Proper Animation.rb might also be useful for this.

        Etaoin Shrdlu

        %

        (THERE'S NO PLACE LIKE)

        G28 X0.0 Y0.0 Z0.0

        M30

        %

        1 Reply Last reply Reply Quote 0
        • S Offline
          solo
          last edited by 25 Sept 2010, 02:22

          mover.rb?

          http://www.solos-art.com

          If you see a toilet in your dreams do not use it.

          1 Reply Last reply Reply Quote 0
          • M Offline
            mitcorb
            last edited by 25 Sept 2010, 03:38

            May not pertain, but TIG's FreeRotate?

            I take the slow, deliberate approach in my aimless wandering.

            1 Reply Last reply Reply Quote 0
            • S Offline
              samtsham
              last edited by 25 Sept 2010, 11:32

              Hi, thank you for your quick and concise replies!
              I had already checked out Sketchy Physics before. I agree, it is probably my best option. The main problem was the fact, that I have to build my whole set model to SPs requirements, otherwise as soon as I switch the physics engine on, my set literally falls down. I have to define every single object as "static", every drop has to be properly hung, not just propped up, and if I turn the turntable, the centrifugal force topples things over, and so on. There were lots of other problems, but that alone meant a whole new approach to modeling, that is infinitely more time consuming. All this for a simple slider to rotate the turntable seemed a bit excessive.

              Proper animation I've been meaning to check out anyway, so I'll do that right away. As far as I've read up on it, I can define states and change to them. It's a far cry from the simplicity of a slider, but I see if I can make it work. Thanks for the suggestion.

              Mover.rb I've been trying to use several times. When I did, I had interface trouble, that is Mac-specific, I guess. Buttons all over the place, no effect if pressed. I'll see if the most current version works. It would give me the option of rotating an object in increments by repeatedly clicking the CW or CCW buttons.

              Your suggestions are good quick fixes, and I appreciate them. I am still looking for a more permanent solution. If I trash all ideas for pegs and animation and timing and the like, how hard would it be to define a slider that simply controls the rotation of an object? Just that, no frills. Is this a very hard thing to implement?

              Thank you very much for your time.
              All the best!

              SAM.

              1 Reply Last reply Reply Quote 0
              • D Offline
                Dave R
                last edited by 25 Sept 2010, 11:45

                Sam, I hope you find something that will work for you.As far as Proper Animation goes, you'll just make scenes in SU with the set at different stages of rotation and set the position in P.A. Then when you switch between scene tabs, the set should rotate. The rotation rate will be determined by the Scene Transition time you have set

                Etaoin Shrdlu

                %

                (THERE'S NO PLACE LIKE)

                G28 X0.0 Y0.0 Z0.0

                M30

                %

                1 Reply Last reply Reply Quote 0
                • F Offline
                  Fletch
                  last edited by 25 Sept 2010, 21:28

                  definitely check out proper animation, I agree with the others, it's as simple as right-click on group, set position one. go to next scene, select group, rotate group, right click group, set position two.
                  now click scene one and the group will rotate itself in real time with the transition of the scene. simple as pie.

                  best to work with components, as you set the axis of the component using "set axis" in SketchUp's context menu, and it will rotate about the axis.

                  Fletch
                  Twilight Render Cross-platform Plugin for SketchUp on PC or Mac

                  1 Reply Last reply Reply Quote 0
                  • S Offline
                    samtsham
                    last edited by 27 Sept 2010, 20:08

                    Proper Animation does indeed look very promising. On my Mac the process does not seem to be quite as straightforward, though. It took me a lot of attempts, until I realized that the animation doesn't update until you've stopped and restarted the Scene Observer after every change. If I don't, nothing at all happens. On a simple block I rotated by 40 degrees, the vertical dimension quadrupled during the animation, but snapped to its original size when it reached the final position.
                    Lastly, I haven't been able to use it for more than two minutes apiece. On some sixty attempts, it crashed after a few clicks every time, only four times with a bugsplat, usually the program just vanished with minimum fuss.

                    I'll keep at it, and as soon as I upgrade to SU8, I'll let you know if the bug was version-specific. The functionality would certainly be great.
                    Am I the only proper animation MAC user with these problems?

                    Anyway, I thank you all for your suggestions! From the fact that no-one has answered my question, how hard controlling the z-rotation of an object via a slider would be to program, I deduce that this must be a lot more complicated than I thought. Forgive my ignorance in these matters, I'm a very non-technical guy, which is why I'm using Sketchup and not Maya 😄

                    All the best ...
                    SAM from Vienna.

                    1 Reply Last reply Reply Quote 0
                    • D Offline
                      Dave R
                      last edited by 27 Sept 2010, 20:22

                      Sam,

                      As Fletch mentioned, make sure you make a component of the rotating part of the model and then set the component axes so the origin is at the center of rotation.

                      Etaoin Shrdlu

                      %

                      (THERE'S NO PLACE LIKE)

                      G28 X0.0 Y0.0 Z0.0

                      M30

                      %

                      1 Reply Last reply Reply Quote 0
                      • S Offline
                        samtsham
                        last edited by 28 Sept 2010, 20:55

                        Hi Dave,

                        making it a component instead of just a group stopped the strange behavior with the vertical size oscillating during transitions, but I still get crashes within 30 seconds to 2 minutes of using the plugin. Also unchanged is the fact that new keys do not get updated or animated until I've stopped and restarted the scene observer. I'll have to define shortcuts for this, then this shouldn't be too much of a problem. The reliable crashes however certainly are.

                        If I get this working, it will be a fantastic addition to my arsenal. It's almost exactly what I've been hoping for ever since SU2. All I need now is ease-in/-out.

                        Thanks,
                        SAM

                        1 Reply Last reply Reply Quote 0
                        • david_hD Offline
                          david_h
                          last edited by 28 Sept 2010, 21:21

                          wow cool set work. For all those Guys and Dolls!. It would be cool to see your concept stuff in SU to compare to how it played on stage. Just my thoughts. . .

                          oh , duh! there is an SU image there.

                          I should just . . . .
                          "Siddown, Siddown Siddown Siddown! Siddown I;m rockin' the Boat!" 🤣

                          If I make it look easy...It is probably easy

                          1 Reply Last reply Reply Quote 0
                          • Z Offline
                            zero
                            last edited by 29 Sept 2010, 02:16

                            you could try rotix. set up rotation angle ,just hoover on group and use arrow up or down.

                            1 Reply Last reply Reply Quote 0
                            • S Offline
                              samtsham
                              last edited by 29 Sept 2010, 22:37

                              Hi Zero,

                              I just tried Rotix and remembered, that I'd had it for a number of years, but never got it to work. It does the random rotate on left click, but none of the arrow keys show any functionality. Again, I'm on a Mac. Do the Mac arrow keys on a laptop have the same onKeyDown definition as on a PC? They are VK-LEFT, VK-RIGHT and so on in Rotix-1.rb

                              If they do, there must be something fundamentally wrong with my system. I never got a reaction since SU4 or probably even 3 (what did we have in 2004?), on 3 different computers. If anyone knows the right calls, I'll try to replace them in the script. If I'm not too thick.

                              @ David_H
                              Thanks for your kind words on my set. I've done quite a lot of work, G&D is just one of my bigger shows, and one I'm pretty proud of. It had an 8-minute scene with 3D-animated backgrounds synchronized to the speed of the turntable. All the animation was done in SketchUp. I use a lot of animated scenery in my sets, and I do almost all my work in SU. A lot of it is fairly elaborate, and the kind of work no sane person would get the idea to do in this program at all. As it is, it's actually great for my needs. It's just, that whenever I need a camera move to ease in or out, I have to post-process it via time-stretching in After Effects, which - as far as workarounds go - is beyond insane and out on the other side.

                              Well, it works.

                              If I can make some time, I'll post some more examples of my work soon.
                              Thanks,

                              SAM.

                              1 Reply Last reply Reply Quote 0
                              • J Offline
                                jeff hammond
                                last edited by 29 Sept 2010, 23:57

                                @samtsham said:

                                Hi Zero,

                                I just tried Rotix and remembered, that I'd had it for a number of years, but never got it to work. It does the random rotate on left click, but none of the arrow keys show any functionality. Again, I'm on a Mac. Do the Mac arrow keys on a laptop have the same onKeyDown definition as on a PC? They are VK-LEFT, VK-RIGHT and so on in Rotix-1.rb

                                up.......63232
                                down...63233
                                left......63234
                                right....63235

                                re: proper animation.. i'm not getting crashes but i can't seem to figure the damn thing out 😳
                                [or maybe it can't do what i'm trying to get it to do?]

                                re: guys and dolls.. definitely a good one.. that's always one of my recommendations for the 'what should i do when i visit ny?' questions

                                [edit] just downloaded rotix from this page:
                                http://rhin.crai.archi.fr/RubyLibraryDepot/plugin_details.php?id=349

                                ...and it worked fine. i made a cube, grouped it, then went plugins->rotix.. the cube rotates fine
                                ?
                                make sure you select the group prior to activating the script or you'll only get the random leftclick operation

                                [changed to script with the keycodes above and they work as well.. not necessary but....]

                                dotdotdot

                                1 Reply Last reply Reply Quote 0
                                • S Offline
                                  samtsham
                                  last edited by 30 Sept 2010, 08:45

                                  Esteemed Mr. Hammond,

                                  thank you very much for the keycodes! They did the trick. I tried downloading the RubyLibraryDepot version of the script, but it was the same as the version I had, and I couldn't get it to work, even with a selection. The keycodes work like a charm however. Thank you, this is supremely useful.

                                  I managed to deactivate the mouseover-selection and random rotate on left-click, so I can now evoke the plugin after simply selecting an object. It's safer for presentation purposes, than being afraid, I might hover over the wrong set element and have to do a million undos to rotate all my furniture back. I also set the standard rotation value to 15 degrees, and for a slow, smooth turntable-rotation i can change the manual value to 1, and this way I have a near ideal and stupefyingly simple solution for showcasing any set with a revolve.

                                  SketchUp just got better again, and I have you guys to thank.

                                  Guys & Dolls in NY ... yeah, I wish that were mine. Ours is in Vienna. Incidentally, they both premiered on the same day. Bway's Guys and Dolls already closed, ours is in repertory and will hopefully get revived every year until I'm old and grey. I was certainly going for a classic Broadway type set visual. But I could never do a commission there. That union is almost impossible to get into, even for Americans.

                                  Thank you all for your generosity.
                                  All the best,

                                  SAM.

                                  1 Reply Last reply Reply Quote 0
                                  • 1 / 1
                                  1 / 1
                                  • First post
                                    2/16
                                    Last post
                                  Buy SketchPlus
                                  Buy SUbD
                                  Buy WrapR
                                  Buy eBook
                                  Buy Modelur
                                  Buy Vertex Tools
                                  Buy SketchCuisine
                                  Buy FormFonts

                                  Advertisement