亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? equalizergraph.cpp

?? Amarok是一款在LINUX或其他類UNIX操作系統中運行的音頻播放器軟件。 經過兩年開發后
?? CPP
字號:
/*************************************************************************** Graphical spline display for equalizer (c) 2004 Mark Kretschmann <markey@web.de> (c) 2005 Markus Brueffer <markus@brueffer.de> Based on code from XMMS (c) 1998-2000 Peter Alm, Mikael Alm, Olle Hallnas, Thomas Nilsson and 4Front Technologies***************************************************************************//*************************************************************************** *                                                                         * *   This program is free software; you can redistribute it and/or modify  * *   it under the terms of the GNU General Public License as published by  * *   the Free Software Foundation; either version 2 of the License, or     * *   (at your option) any later version.                                   * *                                                                         * ***************************************************************************/#include "amarokconfig.h"#include "equalizergraph.h"#include <qpainter.h>#include <qpixmap.h>#include <qvaluelist.h>#include <kapplication.h>EqualizerGraph::EqualizerGraph( QWidget* parent )    : QWidget( parent, 0, Qt::WNoAutoErase )    , m_backgroundPixmap( new QPixmap() )    , m_composePixmap( new QPixmap() ){}EqualizerGraph::~EqualizerGraph(){    delete m_backgroundPixmap;    delete m_composePixmap;}/////////////////////////////////////////////////////////////////////////////////////// PROTECTED/////////////////////////////////////////////////////////////////////////////////////voidEqualizerGraph::resizeEvent( QResizeEvent* ){    drawBackground();}QSizeEqualizerGraph::sizeHint() const{   return QSize( 100, 60 );}voidEqualizerGraph::paintEvent( QPaintEvent* ){    bitBlt( m_composePixmap, 0, 0, m_backgroundPixmap );    QPainter p( m_composePixmap );    // Draw middle line    int middleLineY = (int) ( ( height() - 1 ) / 2.0 + AmarokConfig::equalizerPreamp() * ( height() - 1 ) / 200.0 );    QPen pen( colorGroup().dark(), 0, Qt::DotLine);    p.setPen( pen );    p.drawLine( 8, middleLineY, width() - 1, middleLineY );    QColor color( colorGroup().highlight() );    int h, s, v;    color.getHsv( &h, &s, &v );    int i, y, ymin, ymax, py = 0;    float x[NUM_BANDS], yf[NUM_BANDS];    float gains[NUM_BANDS] = { 0, 0, 0, 0, 0, 0, 0, 0, 0};    // Don't calculate 0 and NUM_BANDS-1 for accuracy reasons    for ( i = 1; i < NUM_BANDS -1 ; i++)        x[i] = ( width() - 8 ) * i / ( NUM_BANDS -1 ) + 8;    x[ 0 ] = 8;    x[ NUM_BANDS - 1 ] = width() - 1;    if ( AmarokConfig::equalizerEnabled() )        for ( i = 0; i < NUM_BANDS; i++ )            gains[i] = ( height() - 1 ) * AmarokConfig::equalizerGains()[i] / 200.0;    init_spline( x, gains, NUM_BANDS, yf );    for ( i = 8; i < width(); i++ ) {        y = (int) ( ( height() - 1 ) / 2 - eval_spline( x, gains, yf, NUM_BANDS, i ) );        if ( y < 0 )            y = 0;        if ( y > height() - 1 )            y = height() - 1;        if ( i == 8 )            py = y;        if ( y < py ) {            ymin = y;            ymax = py;        } else {            ymin = py;            ymax = y;        }        py = y;        for ( y = ymin; y <= ymax; y++ ) {            // Absolute carthesian coordinate            s = y - ( height() - 1 ) / 2;            s = QABS(s);            // Normalise to a base of 256            // short for: s / ( ( height() / 2.0 ) * 255;            s = (int) ( s * 510.0 / height() );            color.setHsv( h, 255 - s, v );            p.setPen( color );            p.drawPoint( i, y );        }    }    p.end();    bitBlt( this, 0, 0, m_composePixmap );}/////////////////////////////////////////////////////////////////////////////////////// PRIVATE/////////////////////////////////////////////////////////////////////////////////////voidEqualizerGraph::drawBackground(){    m_backgroundPixmap->resize( size() );    m_composePixmap->resize( size() );    m_backgroundPixmap->fill( colorGroup().background().dark( 105 ) );    QPainter p( m_backgroundPixmap );    // Erase background for scale    p.fillRect( 0, 0, 7, height() -1, colorGroup().background());    // Draw scale    p.setPen( colorGroup().shadow() );    p.drawLine( 7, 0, 7, height() - 1 );    p.drawLine( 0, 0, 7, 0 );    p.drawLine( 0, height() / 2 - 1, 7, height() / 2 - 1 );    p.drawLine( 0, height() - 1, 7, height() - 1 );}voidEqualizerGraph::init_spline( float* x, float* y, int n, float* y2 ){    int i, k;    float p, qn, sig, un;    QMemArray<float> u(n * sizeof(float));    y2[ 0 ] = u[ 0 ] = 0.0;    for ( i = 1; i < n - 1; i++ ) {        sig = ( (float)x[i] - x[i-1] ) / ( (float)x[i+1] - x[i-1] );        p = sig * y2[i-1] + 2.0;        y2[i] = ( sig - 1.0 ) / p;        u[i] = ( ( (float)y[i+1] - y[i] ) / ( x[i+1] - x[i] ) ) - ( ( (float)y[i] - y[i-1] ) / ( x[i] - x[i-1] ) );        u[i] = ( 6.0 * u[i] / ( x[i+1] - x[i-1] ) - sig * u[i-1] ) / p;    }    qn = un = 0.0;    y2[n-1] = ( un - qn * u[n-2] ) / ( qn * y2[n-2] + 1.0 );    for ( k = n - 2; k >= 0; k-- )        y2[k] = y2[k] * y2[k+1] + u[k];}floatEqualizerGraph::eval_spline( float xa[], float ya[], float y2a[], int n, float x ){    int klo, khi, k;    float h, b, a;    klo = 0;    khi = n - 1;    while ( khi - klo > 1 ) {        k = ( khi + klo ) >> 1;        if ( xa[k] > x )            khi = k;        else            klo = k;    }    h = xa[khi] - xa[klo];    a = ( xa[khi] - x ) / h;    b = ( x - xa[klo] ) / h;    return ( a * ya[klo] + b * ya[khi] + ( ( a*a*a - a ) * y2a[klo] + ( b*b*b - b ) * y2a[khi] ) * ( h*h ) / 6.0 );}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产福利91精品一区| 精久久久久久久久久久| 精品国产伦理网| 欧美精品第一页| 欧美日韩电影在线| 在线精品视频一区二区| 欧美在线免费视屏| 欧美日产国产精品| 在线综合视频播放| 69堂国产成人免费视频| 欧美日韩你懂得| 欧美日韩国产另类一区| 欧美蜜桃一区二区三区| 欧美精品一卡二卡| 欧美变态tickling挠脚心| 日韩精品专区在线影院重磅| 欧美大片日本大片免费观看| 精品国产乱码久久久久久闺蜜| 欧美一级片在线| 久久理论电影网| 中文字幕第一区二区| 国产精品国产精品国产专区不片| 18欧美乱大交hd1984| 亚洲综合男人的天堂| 日韩av电影天堂| 国产成人欧美日韩在线电影| 粉嫩欧美一区二区三区高清影视| 91老师国产黑色丝袜在线| 欧美婷婷六月丁香综合色| 欧美一区二区精品久久911| 欧美精品一区二区三| 中文字幕在线不卡一区| 一区二区成人在线视频 | 免费成人在线网站| 狠狠狠色丁香婷婷综合激情| 99久久综合国产精品| 欧美视频一区二区三区在线观看| 欧美一级二级三级乱码| 欧美激情一区不卡| 亚洲成va人在线观看| 国产精品一区二区在线看| 在线亚洲高清视频| 久久久久久电影| 偷拍与自拍一区| 国产91对白在线观看九色| 欧美三级午夜理伦三级中视频| 国产亚洲一区二区三区四区| 亚洲成人午夜影院| 成人av网址在线观看| 欧美成人精品福利| 亚洲国产日韩一区二区| 国产成人免费xxxxxxxx| 欧美日韩免费观看一区二区三区| 国产亚洲一区二区三区在线观看| 午夜成人免费视频| 一本到一区二区三区| 国产日产欧美一区| 精品制服美女丁香| 91精品国产欧美一区二区成人| 中文字幕一区二区三区乱码在线| 久久国产尿小便嘘嘘尿| 欧美日韩午夜影院| 一区二区在线观看av| 成人午夜电影久久影院| 精品国精品国产尤物美女| 亚洲国产精品久久久久婷婷884 | 亚洲国产激情av| 黑人巨大精品欧美黑白配亚洲| 欧美久久久久久蜜桃| 一区二区三区四区不卡视频| 成人动漫在线一区| 日本一区二区动态图| 激情综合网天天干| 欧美va亚洲va在线观看蝴蝶网| 偷拍一区二区三区四区| 欧美情侣在线播放| 视频一区二区中文字幕| 欧美日韩精品专区| 亚洲国产综合91精品麻豆| 欧美性生活大片视频| 亚洲一区二区三区三| 欧美亚洲尤物久久| 亚洲国产毛片aaaaa无费看 | 精品国产伦一区二区三区免费| 久久精品国产色蜜蜜麻豆| 欧美一区二区三区免费| 麻豆免费精品视频| 国产偷国产偷亚洲高清人白洁| 国产精品一级片| 中文字幕日韩一区| 91麻豆6部合集magnet| 亚洲图片欧美视频| 日韩一区二区麻豆国产| 免费观看30秒视频久久| 精品毛片乱码1区2区3区| 国产成人超碰人人澡人人澡| 中文字幕一区二区三区蜜月| 欧美自拍偷拍一区| 日本不卡视频在线| 欧美激情在线免费观看| 色猫猫国产区一区二在线视频| 亚洲综合免费观看高清完整版| 欧美另类久久久品| 国产毛片精品视频| 1000精品久久久久久久久| 一本色道**综合亚洲精品蜜桃冫| 亚洲动漫第一页| 久久久久久久久久电影| av资源站一区| 丝袜亚洲另类欧美| 国产欧美日韩一区二区三区在线观看 | 欧美一区二区三区在线视频| 麻豆精品蜜桃视频网站| 欧美国产成人精品| 欧美高清一级片在线| 国产精品一区二区三区网站| 综合久久国产九一剧情麻豆| 91精品欧美久久久久久动漫| 成人小视频在线观看| 三级成人在线视频| 亚洲日穴在线视频| 精品国产乱码久久久久久1区2区 | 亚洲精品免费在线播放| 日韩三区在线观看| 91毛片在线观看| 国产在线播放一区| 亚洲 欧美综合在线网络| 久久久久亚洲蜜桃| 欧美一区二区三区成人| 91丝袜高跟美女视频| 国产一区二区不卡老阿姨| 亚洲小少妇裸体bbw| 中文字幕第一区第二区| 日韩免费看网站| 欧美老年两性高潮| 日本韩国一区二区三区视频| 成人app软件下载大全免费| 欧美不卡在线视频| 欧美日韩综合在线| 波多野洁衣一区| 韩国三级电影一区二区| 亚洲裸体在线观看| 一区在线观看免费| 国产精品久久久久久亚洲毛片| 欧美成va人片在线观看| 欧美日韩国产区一| 欧美性猛交xxxxxx富婆| av激情综合网| av在线免费不卡| 成人性生交大片免费看中文| 国产乱国产乱300精品| 国内成+人亚洲+欧美+综合在线 | 欧美精品第1页| 欧美午夜精品理论片a级按摩| 99久久久久久| 91精品福利在线| 欧美亚洲综合在线| 欧美三级电影精品| 欧美日韩视频在线第一区| 91久久久免费一区二区| 91官网在线免费观看| 色狠狠一区二区三区香蕉| 欧美亚洲综合久久| 欧美高清激情brazzers| 欧美日韩一区二区电影| 欧美日韩一级视频| 91精品国产丝袜白色高跟鞋| 日韩午夜激情视频| 久久众筹精品私拍模特| 国产拍欧美日韩视频二区| 中文字幕av一区二区三区| 日本一区二区三区在线不卡| 亚洲欧美怡红院| 午夜精品123| 九九热在线视频观看这里只有精品| 国产一区二区福利| 色综合天天综合色综合av| 波波电影院一区二区三区| 成人中文字幕合集| 色综合天天综合在线视频| 在线视频一区二区免费| 欧美一区二区视频在线观看| 国产亚洲综合色| 亚洲一区二区中文在线| 日韩高清不卡在线| 国产成人精品综合在线观看| 色噜噜夜夜夜综合网| 欧美大胆人体bbbb| 国产精品超碰97尤物18| 三级亚洲高清视频| 成人免费视频网站在线观看| 欧美影院精品一区| 国产校园另类小说区| 亚洲小少妇裸体bbw| 国产精品一区二区不卡| 欧洲精品中文字幕| 国产无遮挡一区二区三区毛片日本 | 蜜桃精品视频在线观看| 国产91精品露脸国语对白| 在线观看av不卡|