Bug :: Axis Icon + CPlane

 From:  Michael Gibson
2008.2 In reply to 2008.1 
Hi Petr - I hadn't really thought about using the axis labels to control temporary coordinates like that, but it should work for that.

The idea behind those labels were more for making a one time change for people who liked to work all the time in a system with Y-up or some different axis system than the default.

The idea for doing a more temporary shift for like 5,5 working the front view would be to use Construction Planes instead for that.

You can set up a key to set the global construction plane to be the front plane with this script:
code:
script:moi.view.setCPlane( moi.vectorMath.createFrontFrame() );

or for the Right side plane:
code:
script:moi.view.setCPlane( moi.vectorMath.createRightFrame() );

And when you are done you can reset the cplane back to the default world plane with this script:
code:
script:moi.view.resetCPlane();


When the cplane is set as a global cplane (whether "Apply to all views" is set in the View/CPlane UI, or the second optional parameter to moi.view.setCPlane() is true which is the default), then coordinates that you enter will be in that cplane coordinate system, so it is also another way to control your point input.

So if you use that first script above it should have the same type of effect as changing the axis labels, it is up to you which one you would like to use. I guess one nice effect of changing the labels is that you can see them labeled in the that lower-left axis icon - that does not change when the cplane changes. But the CPlane method allows for more flexibility since it can be oriented to an object and you can set the origin point.


> When I try to reset cplane while no object is visible or there
> is no object at all, the axis icon doesn't update properly
> until I manipulate a viewport or start drawing a new object.

Hmmm, I can't seem to repeat that over here. I tested by setting up 2 scripts to change the axis labels:
code:
script:moi.view.axisLabels = 'x,z,y';

code:
script:moi.view.axisLabels = 'x,y,z';

And when I trigger these it seems to update the display as expected, even when there are no objects...

Is there anything else you can tell me about how to trigger the problem?

- Michael