原创 struct stat結構體簡介

struct stat這個結構體是用來描述一個系統文件系統中的文件屬性的結構。 通過路徑獲得文件屬性 stat(const char* path, const stat* stat_struct) 第一個參數是文件的路徑,第二

原创 Qt入門 OpenGL應用(二)

應用來源 打開Qt Creater在歡迎界面尋找示例,搜索OpenGL,可以看見很多示例程序,打開慢慢看! QGLxx VS QOpenGLxx 或許你在看見本篇博客之前,在網上搜索過類似的文章,有些裏面使用的是QGLWidg

原创 UVA 12716 GCD XOR 【數論】【素數】【暴力枚舉】

題目大意 思路 題目大意 傳送門 輸入整數n,有多少對整數(a,b)滿足:1<=b<=a<=n,且gcd(a,b)=aXORbgcd(a,b)=aXORb 。 例如: n=7,有4對: (3,2) (5,4) (6,

原创 hiho #1571 : 小Hi與鋼鐵俠 【貪心】

題目大意 思路 錯誤思路1 正確思路 代碼 Hit 題目大意 傳送門 描述 小Hi在幫助鋼鐵俠開發新的盔甲。這套新盔甲一共包含M種武器插槽,其中第i種插槽有Ci個。每個插槽最多安裝一個武器模塊。 小Hi一共準備了N個

原创 多米諾骨牌問題 概率DP

題目描述 準備一個m行n列的二維多米諾骨牌進行遊戲。 遊戲的目標是讓二維的多米諾骨牌全部倒下。一個多米諾骨牌倒下的時候,有P的概率往下一列倒,有Q的概率往下一行倒,並觸碰該方向上與其相鄰的骨牌。 當一個倒下完成的時候,需要從第1行的第

原创 PBR 與 OpenGL ES 2.0 中的LOD紋理:Mipmap (關於Lod和Bias)

MipMap 當使用Mipmap的時候可能會用到xxxLod 和 xxxBias 這幾種紋理採樣函數。 在片段着色器中: vec4 texture2D (sampler2D sampler, vec2 coord ) vec4

原创 OpenGL--紋理問題記錄

紋理的基礎知識請參閱LearnOpenGL的文章: https://learnopengl-cn.github.io/01%20Getting%20started/06%20Textures/ 這裏記錄一下自己在使用紋理時候遇到的一些

原创 QT入門 QImage和cv::Mat的相互轉換(八)

QImage轉換爲cv::Mat的方法 cv::Mat QImage2cvMat(QImage image) { cv::Mat mat; qDebug() << image.format(); switch(im

原创 OpenGL之基本圖元

本文轉載自文章:http://www.cnblogs.com/gl5773477/p/4007350.html因爲文章較老,只需要注意圖元的繪製邏輯即可,在可編程的shader中,並沒有用到這樣的繪製方法。在瞭解了一些基本圖元之後,要知道

原创 PS中的羽化操作

最近在自己使用ps做口紅濾鏡的時候,對於PS不太熟練,這裏記錄一下製作素材的過程。 羽化操作的原理: 羽化是ps及其其它版本中的重要處理圖片的工具。羽化原理是令選區內外銜接的部分虛化。起到漸變的作用從而達到自然銜接的效果。 在羽

原创 Qt入門 工具欄QToolBar和菜單欄QMenuBar(六)

只有在繼承了QMainWindow的窗體,纔會有this->menuBar()->addMenu();以及this->addToolBar()函數。 Qmune QMune與QMenuBar之間的關係見下面的代碼。 //方法1: QM

原创 Shader效果-Kuwahara Filter 水彩畫

參考網址 參考網址 參考網址 GPUImage::GPUImageKuwaharaFilter 效果圖:

原创 特效:臉部變形分析

臉部變型特效主要包括了: - 瘦臉 - 削臉 - 小臉 - 下巴 - 額頭 - 大眼 - 眼距 - 眼角 - 瘦鼻 - 長鼻 - 嘴型 以上的變形算法可以分爲兩類

原创 Qt入門 Qt中時間設置(五)

Qtimer QTimer類提供了重複和單次觸發信號的定時器。 重複觸發 - 時鐘 QTimer類爲定時器提供了一個高級別的編程接口。很容易使用:首先,創建一個QTimer,連接timeout()信號到適當的槽函數,並調用start(),

原创 法線貼圖的一點理解

切線空間 假設三角形的三點爲P1 P2 P3,設該三角形所對應的一個空間爲(T,B,N),其中T和B構成的平面爲三角形所在的平面,而T和B分別對應U和V方向。 切線空間的作用是讓任何向量從Tangent Space變換到World Sp