QT 中一些數學計算函式

2021-09-08 11:46:18 字數 2421 閱讀 2967

qt的一些範例中有出現 qmax, qmin 等 math函式的身影,但我在官方檔案中卻找不到與 math函式相關的說明,所以我就把函式的source裡面提供的方法整理條列,並且看看還有哪些 math相關的函式可用。在 qglobal.h 裡,可以找到幾種 math函式,條列於下,但一般常用的 math如:qfloor(無條件捨去)、qceil(無條件進製)、qsin,qcos,qtan(三角函式) 等等等...則是都沒有看到。

qabs ( const &value )

說明:返回絕對值 

範例:int absolutevalue;

int myvalue = -4;

absolutevalue = qabs(myvalue);

// absolutevalue == 4qbound ( const &min, const &value, const &max )

說明:返回極限不超過 min , max 的值, 等同於 qmax(min, qmin(value, max))

範例:int myvalue = 10;

int minvalue = 2;

int maxvalue = 6;

int boundedvalue = qbound(minvalue, myvalue, maxvalue);

// boundedvalue == 6

qmax ( const &value1, const &value2 )

說明:返回最大值

範例:int myvalue = 6;

int yourvalue = 4;

int maxvalue = qmax(myvalue, yourvalue);

// maxvalue == 6qmin ( const & value1, const &value2 )

說明:返回最小值

範例:int myvalue = 6;

int yourvalue = 4;

int minvalue = qmin(myvalue, yourvalue);

// minvalue == 4int qround ( qreal value ) 

說明:返回四捨五入的整數

範例:qreal valuea = 2.3;

qreal valueb = 2.7;

int roundedvaluea = qround(valuea); 

// roundedvalueb = 2

int roundedvalueb = qround(valueb); 

// roundedvalueb = 3

qint64 qround64 ( qreal value )

說明:返最接近的64位元整數

範例:qreal valuea = 42949672960.3;

qreal valueb = 42949672960.7;

int roundedvaluea = qround(valuea); 

// roundedvaluea = 42949672960

int roundedvalueb = qround(valueb); 

// roundedvalueb = 42949672961

int qrand ()

說明:thread-safe版本的標準c++亂數函式,返回 0 到 rand_max之間的數字序列之下乙個整數,使用qsrand(uint seed) 重新給定種子

範例:qreal valuea = qrand() % 100; // 41

qreal valueb = qrand() % 10; // 7

qreal valuec = qrand() % 2; // 0

qsrand(0xffffffff);

valuea = qrand() % 100; // 35

valueb = qrand() % 10; // 9

valuec = qrand() % 2; // 0

qsrand(0xffffff);

valuea = qrand() % 100; // 35

valueb = qrand() % 10; // 3

valuec = qrand() % 2; // 0

bool qfuzzycompare ( double p1, double p2 ) [靜態方法]

說明:比較兩個長浮點數的大小,如果兩者相同返回true,反之為否,同樣為thread-safe。另外也提供float版本的方法: bool qfuzzycompare ( float p1, float p2 ) [static]

範例:qreal valuea = 42949672960.3;

qreal valueb = 42949672960.7;

bool equal = qfuzzycompare(valuefa,valuefb); 

// equal = false

QT 中一些數學計算函式

qt的一些範例中有出現 qmax,qmin 等 math函式的身影,但我在官方檔案中卻找不到與 math函式相關的說明,所以我就把函式的source裡面提供的方法整理條列,並且看看還有哪些 math相關的函式可用。在 qglobal.h 裡,可以找到幾種 math函式,條列於下,但一般常用的 mat...

opencv中一些功能函式

int floodfill inputoutputarray image,point seedpoint,scalar newval,rect rc 0,scalar lodiff scalar scalar updiff scalar int flags 4 int floodfill input...

tensorflow中一些重要函式

請參考這裡 tf.nn.conv2d input,filter,strides,padding,use cudnn on gpu none,name none 除去name引數用以指定該操作的name,與方法有關的一共五個引數 第乙個引數input 指需要做卷積的輸入影象,它要求是乙個tensor,...