Daniate

一间杂货铺~
Daniate in C
March 12, 2022

使用位逻辑运算实现位向量

使用位逻辑运算实现位向量本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/213/解答《编程珠玑》中相关习题时的一些思考。假定,我们需要使用X个类型为type的整数来创建一个至少包含N个比特位的位向量,那么,计算出的X就是:int X = (int)ceil(N * 1.0 / (sizeof(type) * 8))通过这些整数,形成一个...
July 27, 2021

细说如何完美实现macOS中的神奇效果

细说如何完美实现macOS中的神奇效果本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/227/前言神奇效果运行时,窗口的底部先逐渐收窄,收窄到一定程度后,窗口开始向下吸收。底部收窄在这个过程中,左右两侧会出现曲线,随着时间的推移,曲线的形变程度越来越大,直到最终停止形变。窗口始终被限制在两侧曲线之间。向下吸收在这个过程中,窗口向下进行运...
Daniate in Qt
July 2, 2020

QJson

QJson本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/203/在项目中使用QJson,最简单的方式就是将源码加入到项目中,本篇内容不讲这个,讲下在项目中使用QJson动态库。步骤:下载QJson:https://github.com/flavio/qjson使用Qt Creator编译QJson添加QJson头文件、动态库,并配置项...
January 30, 2020

GLKit实战 第03话 变换

疑惑本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/183/在第02话中,已经绘制出来了一个三角形,那么可能就会有以下的疑问:为什么三角形中相互垂直的两条边,长度不一致?如何才能实现三角形中相互垂直的两条边长度一致?关于这些疑问,均受到顶点位置、模型视图矩阵、投影矩阵、视口的影响,因此,在解决问题之前,会对相关的理论知识进行说明。注:已...
January 29, 2020

GLKit实战 第02话 三角形

整体步骤本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/166/绘制出一个图形,大体需要以下步骤:创建上下文,并将其指定为当前的上下文创建GLKBaseEffect对象,并对其进行相应的配置创建并绑定VAO(vertex array object,顶点数组对象)创建并绑定VBO(vertex buffer object,顶点缓冲区对象)...
January 28, 2020

GLKit实战 第01话 引言

GLKit是什么?本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/162/在iOS 5之前,开发OpenGL ES程序,需要编写大量的底层代码,极大影响开发效率。为了加快OpenGL ES应用程序的开发,自iOS 5起,苹果提供了一个名为GLKit的框架。当创建新的基于着色器的应用程序时,或者对已存在的、且依赖于固定渲染管线(早期版本O...
Daniate in C
August 7, 2019

VSCode集成CMake

VSCode集成CMake本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/157/安装CMake建议通过源码进行安装:https://cmake.org/download/,不赘述。安装扩展选中“扩展”标签,搜索并安装以下扩展:C/C++ 扩展,是微软提供的用于支持C、C++文件及其项目的扩展,提供自动完成等功能。CMake 扩展,用于...
February 11, 2019

SDL - 安装

SDL 安装本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/145/安装方式有以下几种:源码HomebrewAdvanced Packaging ToolYellow dog Updater, Modified通过源码进行安装下载相关的源码压缩包,解压,在终端中切换到源码目录,执行以下命令:./configure make sudo m...
February 10, 2019

SDL - 初识

SDL 初识本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/142/SDL的全称是Simple Directmedia Layer,它是一个跨平台的开发库,通过OpenGL及Direct3D,可以提供针对音频、键盘、鼠标、游戏杆及图形硬件的低级访问,在开发视频播放软件、模拟器及游戏时,都可以使用它。官方支持以下平台:Windowsmac...
Daniate in C
August 26, 2018

某月的天数

本文首发于Daniate的个人网站,文章链接:https://daniate.com/archives/139/计算某年某月份中的天数,对于多数人来说,都是很简单的事情。但能否把程序写得足够简洁,就是另外一回事了。先给出最终的代码:#include <stdbool.h> #include <assert.h> _Bool isLeapYear(int year) ...