Rotate model in scene composer

It looks like the rotate feature in the scene composer is not implemented, is this going to happen in the near future? that would kinda be a nice feature inorder to make the app useful

Just set the model’s local rotation in property sheet window.

Yeah i figured that out, it is quite an annoying work around… maybe if i’m feeling adventurous i’ll make it my first JME contribution

1 Like
@kbender88 said:
Yeah i figured that out, it is quite an annoying work around... maybe if i'm feeling adventurous i'll make it my first JME contribution

Just do it ™

Well i checked out the source code, but it turns out getting a project setup in NetBeans is a pain in the @$$



It doesn’t let you open it as a netbeans project, so i tried multiple ways, all involved trying to figure out all the libraries and dependencies and it got very messy very quickly



any good suggestions on how to setup a netbeans project to work on a single plugin (SceneComposer)

Alright i got a new scene composer jar building, How do i replace it with the old one in my SDK in order to test it?



I saw the tutorials say something about adding library files, but i don’t see the scene composer listed so that i could just perform a swap…

jar…? Its a NetBeans module, idk why you cannot open it, make sue you have the plugins for NetBeans platform development installed. Just checkout trunk (which is a freeform project itself) and then open the “sdk” project and edit the modules in that.

Then build the “trunk” project to test the changes. You need to build the trunk project at least once to get the engine libraries in and each time you change the core engine. Otherwise just run the “sdk” project

ah ok, i built the whole thing once (the whole trunk)… i guess i will have to set up my SDK to use these files instead of the ones it comes packaged with?.. not 100% sure how to do this but i will keep looking

Or you just click run on netbeans… i am officially retarded…



Well now that that is all setup i can officially start work on the initial problem

Make sure you use either the jme sdk or netbean 7.0.1 when you add dependencies, else they won’t work with the SDK. Its easiest to simply do everything in the SDK instead of netbeans. You just need to install the module development plugin from the update center as described in the manual (sdk->development)

I have a half completed blender manipulation tool clone. I should submit it soon…

But yes, that rotation tool is just an icon right now. I would like to have the manipulation tool, translate tool, scale tool, and rotation tool all there some time. If you would like to do the rotation tool I can help guide you.

Well i got it running out of netbeans, appart from the fact it takes 1-2 minutes to launch i’m content with the Dev enviroment…



@Sploreg I was hoping to add it in where it was partially developed… It looks fairly straightforward, i was just going to make a RotateTool class and base it off of the MoveTool and the ScaleTool, and then hook it up. I don’t know how much time i’ll have to work on it this weekend as i will be traveling, but i’ll take a stab at it, and let you know if i run into any trouble.



The only thing that is a little confusing is how the axis selection works, i was figuring you would select an axis to rotate around and then the screen coordinantes (as you drag) would indicate magnitude and + or - rotation… Using the screen coordinates i could determine based on the move tool and scale tool. but how i know which axis is selected for the tool is a little tricky to me

@kbender88 said:
Well i got it running out of netbeans, appart from the fact it takes 1-2 minutes to launch i'm content with the Dev enviroment...

Like I said, you only need to build the freeform project in "trunk" once to get the engine library over, after that just run the "jMonkeyEngine SDK" project. Also again, is this NetBeans 7.0.1? With 7.2 you might run into issues with incompatible code when you want to contribute back.
Edit: The axis of the tool is defined by the quad you click on (the three quads represent the three axes).

The axis is selected from the little axis icon that is displayed when the object is selected. If you click on an arrow, that arrow’s axis is returned. If you click on a plane, that plane is returned. So you can use those to direct the rotation. It should also handle if neither is selected, then it can just rotate with an axis pointing to the screen.

Follow how the MoveTool in the scene composer does it and it should guide you in the right direction. Particularly the actionPrimary() and draggedPrimary() methods (mouse click, mouse drag).