CRhinoGetAngle status bar angle

I’ve setup the CRhinoGetAngle to produce an angle relative to the -Y axis (0,-1,0). This works fine and CRhinoGetAngle::Angle() produces an angle of about 1.13 (65°) in the screenshot. However the angle displayed in the status bar (-295°), seems to be using a different refence. Is there any way to make the status bar’s angle match the references setup in the CRhinoGetAngle?

ON_Plane plane = view->Viewport().ConstructionPlane().m_plane;
ON_3dPoint refDir(0.,-1.,0.);

double startAngle = 0.0;
CRhinoGetAngle getStartAngle;
getStartAngle.SetCommandPrompt(L"Aiming start");
getStartAngle.AcceptNumber();
getStartAngle.SetFrame(plane);
getStartAngle.SetBase(ON_3dPoint::Origin);
getStartAngle.SetReferencePoint(refDir);
getStartAngle.SetDefault(startAngle);
r = getStartAngle.GetAngle();
if (r == CRhinoGet::result::angle) {
	startAngle = getStartAngle.Angle();
}

Hi @mike14,

CRhinoGetAngle is just a fancy CRhinoGetPoint-derived class. In the overridden CRhinoGetPoint::OnMouseMove method, class calls CRhinoApp::SetStatusBarNumberPane and passes the angle in degrees.

It doesn’t take much to write your own angle getter if you want some different behavior. Here is one example:

cmdSampleRotate.cpp

– Dale

Excellent! Thank you for your quick response.