Need to add keyboard shortcuts to Scenes
-
Hello all. The boss has tasked me to learn how to write a plugin for a presentation that is due in 18 more days and I'm a complete noob to ruby and mostly noob to programming.
Because Sketchup will be run through another presentation software package, the user will not have access to menu or mouse click. The presentation is made up of many point to point scenes but we do not want to run it as animation. We want keyboard shortcut functionality to move through the scenes manually as the presentation is being delivered. We want to be able to select scenes at random if the presenter has to move to a particular scene, not necessarily in order.
I want to build this as quickly and painlessly as possible. I've read a lot of the resources out there but where my logic is failing me is I am not sure what direction or method to use. For you experts out there, if you were building this would you extend the current hotkey menu to include Scenes? Would you add a context menu to the scene tab to allow user-defined keystroke, or would you build something into the Scenes Manager panel to allow user-defined keystroke? Or would you do something else entirely?
Thanks for the assist.
-
@kesian said:
Hello all. The boss has tasked me to learn how to write a plugin for a presentation that is due in 18 more days and I'm a complete noob to ruby and mostly noob to programming.
There is no way you can do this in 18 days unless you are some sort of savant.
Go to your boss NOW, and tell him. Hire a experienced Sketchup consultant IF it can be done (which I doubt, because your hosting SU within the "other" software.)
-
You can still navigate scenes without the SketchUp UI using the page up โ and page down โ keys.
-
buy an iPad and this app http://itunes.apple.com/us/app/keypad-for-google-sketchup/id365844911?mt=8
use picture in picture or dual projectors to switch between sources, if you run SU on a mac you can get almost full screen. I still get the bottom bar on OSX 10.5.8, but maybe that's can be avoid on Lion...john
-
Take it from this resident savant - you can't do it in the timescale - if it's doable at all.
Ruby scripting as you describe only exists within an instance of Sketchup, together with its specific shortcut keys too.
How are you going to strip Sketchup of its menus, mouse etc
There's nothing to embed Sketchup inside another app.
If it's to be running inside another application it has to be an exported movie/animation, 3d-PDF or a series of still images etc, that you then access through that other software and not Sketchup itself [which will at that time be tucked up in bed fast asleep !]
You could envisage a complex multimedia document that has links to many pages - like a web-site [MHT file?] and that even ran movies and audio files within itself, BUT it'd be a 'browser' and it would then be accessible to mouse-clicks etc ? unless you wrote some custom app...
You could use AutoHotKeys osa to navigate around any document, but I suspect that remembering that pressing Shift+2 to do something and then Ctrl+9 to do something else, is going to come out as much more difficult than your boss imagines - and he'll be reaching for a mouse or the arrow-keys after a few tries anyway...
What is your boss thinking of ??
What app is he going to use to present this magical project's document...
This isn't a Sketchup issue per se, but an assembling a multimedia interactive presentation, some of which has its origins in a SKP file... -
@kesian said:
Because Sketchup will be run through another presentation software package, the user will not have access to menu or mouse click
Need some details:
Through what presentation software do you want to run the Sketchup?
I know that some presentation softwares like Power Point, allow to import videos, pictures, and sounds, but how can it be possible to run SU through presentation software? Or are you talking about the different one, the one that monitors your monitor and that allows you to highligt, point, and do other stuff?
If its about the second one, then I have some ideas, and only If its the windows operating system you'll be presenting on.
-
@anton_s said:
@kesian said:
Because Sketchup will be run through another presentation software package, the user will not have access to menu or mouse click
Through what presentation software do you want to run the Sketchup?
I know that some presentation softwares like Power Point, allow to import videos, pictures, and sounds, but how can it be possible to run SU through presentation software?
On Windows this would normally be done by inserting the skp file as an OLE object. Sketchup would need to be an OLE-compliant application in this case, but I do not think that Google put the code into the executable to do this. (Possibly using the Win32OLE.so Ruby extension might work.)
@anton_s said:
Or are you talking about the different one, the one that monitors your monitor and that allows you to highligt, point, and do other stuff?
Remote Desktop Sharing. This one is more feasible. Sketchup and the skp file would be on a separate computer, than the one running the slideshow, and both should be on the same network. The question is then, "Is Remote Desktop Sharing capable of being embedded as an OLE object ?"
-
on a mac I can get this with as a workspace, if you use a digital whiteboard or projector you could crop the bottom as well.
if you wrote a simple 'go to scene*' type webdialog with keycodes to trigger 'status = pages.show_frame_at *' ruby calls
with a shortcut key to toggle the WD you could 'Orbit', 'Pan' and 'Zoom' with the mouse and change scenes with keyboard
then you could have another shortcut to toggle between fullpage SU and your fullpage presentation running in a second 'Space' using Spaces.
-
John, have you ever been successful in getting a Purchasing Dept to buy and deliver anything within 18 days ?
-
Perhaps, there is the way to set the keyboard shortcuts to scenes and prevent the user from interfering with sketchup model, but it will require the user to have Sketchup on windows operating system, and Input Procedure plugin. Input Proc can block the mouse and keyboard messages from interfering with SU and still get their input. You could make the hook proc turn on as soon as the user opens your presentation model. You could set keys 1 - 9 or/and a -z for shortcuts and key escape to turn off the model. But again it requires Windows Operating System, Sketchup, inputproc plugin, and your own script plugin that would turn on the hook once your presentarion file is being open. I could easily write a script for that, you'd just have to fill in the names of scenes and the name of your skp presentation file.
-
IMHO, the only answer viable within 18 days, is to use two (2) computers,
1 runs the slideshow in the presentation application.
The other runs Sketchup with your demo model.You have a mouse and keyboard for the orator, and the projector hooked to both computers via a 2-port KVM (keyboard-video-mouse) Switch.
The orator switches his keyboard and mouse (and the projector,) back and forth between the 2 computers as needed throughout the presentation.Check out the various 2-port KVM switches available at newegg:
http://www.newegg.com/Product/ProductList.aspx?Submit=ENE&N=100007790%20600012891&IsNodeId=1&name=2%20Ports
Bestbuy and TigerDirect have them also.For best results run both computer videos at the same vertical refresh rate.
-
Well, adding shortcuts to navigate between scene can be done.
Either menu items that can be hooked up to shortcuts that will step to the next or previous scene. Or via a tool that triggers the next, previous scene via the arrow keys. As for jumping to specific scenes, this will depend on how many scenes, if it's few scens you could hook up 0 - 9 keys. If thre is more - then I'm not sure - it would depend on how many scenes there is...
-
Why does it have to be SketchUp?
We have recently started using 3d PDFs for interactive presentations.
http://www.simlab-soft.com/3d-plugins/3D-PDF-from-sketchup-main.aspx
Also good if you don't want the customer to have the actual SU model. -
All great answers. Thank you. It's exactly what I need and what I expected to send as feedback up the chain. And no, I have some small background with Python but I am no savant LOL.
We don't need to strip any menu from Sketchup as the presentation software already displays SU full screen with no UI. We are strictly focused on assigning a hotkey per Scene. That is all. If you experts say this cannot be done, it cannot be done. We are stuck with what does work.
We currently use the page-up and page-down. That works fine, but if we are on Scene 18 and someone in the audience wants to look at Scene 6 and ask a question we'd rather that person able to press a button on their mini-numberpad for scene 6 and go there directly.
The iPad solution is already on the table for a number of our test cases. I'll be happy if budgeting clears it.
I can't say more about the presentation software as it is built by another company and is still under NDA. It does work with other platforms and is all kinds of interactive awesome. We are merely using SU for the current test.
Thank you for all the answers.
-
You can make a tool, that will allow you to type a number then press Enter/Return and it would jump to that scene. That can be done within minutes.
-
@thomthom said:
Well, adding shortcuts to navigate between scene can be done.
Either menu items that can be hooked up to shortcuts that will step to the next or previous scene. Or via a tool that triggers the next, previous scene via the arrow keys. As for jumping to specific scenes, this will depend on how many scenes, if it's few scens you could hook up 0 - 9 keys. If thre is more - then I'm not sure - it would depend on how many scenes there is...
Right. For larger numbers of scenes we'd have to work in Alt- or cntr- in there. But you are saying it can be done. I just need to figure out where to start hehe. Once I'm going I'll be going.
-
@kesian said:
@thomthom said:
Well, adding shortcuts to navigate between scene can be done.
Either menu items that can be hooked up to shortcuts that will step to the next or previous scene. Or via a tool that triggers the next, previous scene via the arrow keys. As for jumping to specific scenes, this will depend on how many scenes, if it's few scens you could hook up 0 - 9 keys. If thre is more - then I'm not sure - it would depend on how many scenes there is...
Right. For larger numbers of scenes we'd have to work in Alt- or cntr- in there. But you are saying it can be done. I just need to figure out where to start hehe. Once I'm going I'll be going.
Better yet to look at my previous response - about using Tools. It's basically only the onReturn method you need to implement:
http://code.google.com/apis/sketchup/docs/ourdoc/tool.html#onReturnThen use the input to determine what scene to activate: http://code.google.com/apis/sketchup/docs/ourdoc/pages.html#selected_page=
-
@thomthom said:
You can make a tool, that will allow you to type a number then press Enter/Return and it would jump to that scene. That can be done within minutes.
I mulled that one over yesterday but if the software hides the UI the question is would would involve how to get the window display.
-
Thx for the links. I'll mess around with it.
-
I don't think he can do what he wants inside Sketchup.
However, as a set of still images and animations could easily be exported and compiled into an html document [Word is an easy way], with bookmark hyperlinks to each image etc, and with some code editing with Notepad++ to embed the AVIs etc he can have a single document he can 'present'.
To jump at random from image to image to video etc the hyperlinks can be to simple #A, #B bookmarks that are accessed using a simple AutoHotKeys ahk script...
This zip file contains a very simple example.
Extract it to a folder and run my cobbled together AutoHotKey AutoJump.ahk script - if you don't have the AutoHotKey then use the AutoJump.exe compiled version - you can still read the ahk version in Notepad++ to see what it does.
Open the SKP.htm file in IE [must be IE as the AutoJump is set to only work in IE].
The original SKP v8 is in the folder too.
In the browser press 1/2/3/4 to toggle through the Images A/B/C/D - the images are accessible in any order of key press.
To see the short AVI Movie press Win+M and play it [it can be set to autostart or not in the html]. To return to the top of the page press Win+Z.
Read the Word generated html file in Notepad++ to see the added AVI embedding code not visible in Word.
It's very rough and ready, and it needs a lot of refining and trapping etc BUT it works...
Advertisement