//------------------------------------------------------------ // //.F ScaleDraw::setAngleRange // Adjust the baseline circle segment for round scales. // //.u Syntax //.f void ScaleDraw::setAngleRange(double angle1, double angle2) // //.u Parameters //.p double angle1, double angle2 // boundaries of the angle interval in degrees. // //.u Description // The baseline will be drawn from min(angle1,angle2) to max(angle1, angle2). // The settings have no effect if the scale orientation is not set to // ScaleDraw::Round. The default setting is [ -135, 135 ]. // An angle of 0 degrees corresponds to the 12 o'clock position, // and positive angles count in a clockwise direction. // //.u Note //.i // -- The angle range is limited to [-360, 360] degrees. Angles exceeding // this range will be clipped. // -- For angles more than 359 degrees above or below min(angle1, angle2), // scale marks will not be drawn. // -- If you need a counterclockwise scale, use @QwtScaleDiv::setRange (1)@ // or @QwtScaleDiv::setRange (2)@. //------------------------------------------------------------ void ScaleDraw::setAngleRange(double angle1, double angle2) { int amin, amax; angle1 = MusECore::qwtLim(angle1, -360.0, 360.0); angle2 = MusECore::qwtLim(angle2, -360.0, 360.0); amin = int(rint(MusECore::qwtMin(angle1, angle2) * 16.0)); amax = int(rint(MusECore::qwtMax(angle1, angle2) * 16.0)); if (amin == amax) { amin -= 1; amax += 1; } d_minAngle = amin; d_maxAngle = amax; setIntRange(d_minAngle, d_maxAngle); }
DiMap::DiMap(int i1, int i2, double d1, double d2, bool logarithmic) { d_log = logarithmic; setIntRange(i1,i2); setDblRange(d1, d2); }