本文整理汇总了C++中InputState::drumset方法的典型用法代码示例。如果您正苦于以下问题:C++ InputState::drumset方法的具体用法?C++ InputState::drumset怎么用?C++ InputState::drumset使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类InputState
的用法示例。
在下文中一共展示了InputState::drumset方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: draw
void ShadowNote::draw(QPainter* painter) const
{
if (!visible() || sym == SymId::noSym)
return;
QPointF ap(pagePos());
#if 0 // yet(?) unused
QRect r(abbox().toRect());
#endif
painter->translate(ap);
qreal lw = point(score()->styleS(StyleIdx::ledgerLineWidth));
InputState ps = score()->inputState();
int voice;
if (ps.drumNote() != -1 && ps.drumset() && ps.drumset()->isValid(ps.drumNote()))
voice = ps.drumset()->voice(ps.drumNote());
else
voice = ps.voice();
QPen pen(MScore::selectColor[voice].lighter(140), lw);
painter->setPen(pen);
drawSymbol(sym, painter);
qreal ms = spatium();
qreal x1 = symWidth(sym) * .5 - (ms * mag());
qreal x2 = x1 + 2 * ms * mag();
ms *= .5;
if (_line < 100 && _line > -100 && !ps.rest()) {
for (int i = -2; i >= _line; i -= 2) {
qreal y = ms * mag() * (i - _line);
painter->drawLine(QLineF(x1, y, x2, y));
}
for (int i = 10; i <= _line; i += 2) {
qreal y = ms * mag() * (i - _line);
painter->drawLine(QLineF(x1, y, x2, y));
}
}
painter->translate(-ap);
}
示例2: draw
void ShadowNote::draw(QPainter* painter) const
{
if (!visible() || sym == 0)
return;
QPointF ap(pagePos());
QRect r(abbox().toRect());
painter->translate(ap);
qreal lw = point(score()->styleS(ST_ledgerLineWidth));
InputState ps = score()->inputState();
int voice;
if (ps.drumNote() != -1 && ps.drumset() && ps.drumset()->isValid(ps.drumNote()))
voice = ps.drumset()->voice(ps.drumNote());
else
voice = ps.voice();
QPen pen(MScore::selectColor[voice].light(140), lw);
painter->setPen(pen);
sym->draw(painter, magS());
qreal ms = spatium();
qreal x1 = sym->width(magS())*.5 - ms;
qreal x2 = x1 + 2 * ms;
ms *= .5;
if (_line < 100 && _line > -100 && !ps.rest) {
for (int i = -2; i >= _line; i -= 2) {
qreal y = ms * (i - _line);
painter->drawLine(QLineF(x1, y, x2, y));
}
for (int i = 10; i <= _line; i += 2) {
qreal y = ms * (i - _line);
painter->drawLine(QLineF(x1, y, x2, y));
}
}
painter->translate(-ap);
}