<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[大柚的专栏]]></title><description><![CDATA[关注iOS和OpenGL 技术]]></description><link>https://blog.youkuaiyun.com/luozhonglan</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; luozhonglan]]></copyright><item><title><![CDATA[ios安全专题]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/52145121</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/52145121</guid><author>luozhonglan</author><pubDate>Sun, 07 Aug 2016 21:45:24 +0800</pubDate><description><![CDATA[探究ios平台安全相关知识]]></description><category></category></item><item><title><![CDATA[iOS/Mac开发中各种锁的使用]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/47817857</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/47817857</guid><author>luozhonglan</author><pubDate>Thu, 20 Aug 2015 22:53:14 +0800</pubDate><description><![CDATA[多线程和多进程应用的开发需要使用到各种锁，除了最常用的互斥锁，iOS/Mac开发中还有其他多种锁，本文介绍了除互斥锁以外的递归锁、条件锁以及分布式锁。]]></description><category></category></item><item><title><![CDATA[利用UIWindow实现密码保护功能]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/45116525</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/45116525</guid><author>luozhonglan</author><pubDate>Sat, 18 Apr 2015 21:12:15 +0800</pubDate><description><![CDATA[许多的APP需要实现密码保护功能， 本文介绍一种利用自定义的UIWindow实现对APP进行密码保护的实现方式，并提供实现该功能的源码]]></description><category></category></item><item><title><![CDATA[正则表达式]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/43085853</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/43085853</guid><author>luozhonglan</author><pubDate>Sat, 24 Jan 2015 15:56:59 +0800</pubDate><description><![CDATA[首先简单介绍一下正则表达式的基本写法及用法
\d 匹配任何一个数字，即[0-9]
\d+表示1个以上的数字
\d*标示0个或多个数字

\s 表示分隔符，包括空格、制表符和换行符
\s* 0个或多个分隔符
\w 表示字母、数字和下划线，这里还包括Unicode字符，不同的语言里有些不同
\w{4} 表示4个非空白字符
. 表示任何一个字符，不包括换行符
.* 表示任何多个字符，]]></description><category></category></item><item><title><![CDATA[iOS常用小功能的实现]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/42929849</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/42929849</guid><author>luozhonglan</author><pubDate>Tue, 20 Jan 2015 21:29:52 +0800</pubDate><description><![CDATA[本文主要介绍了iOS开发中一些常用的小功能实现， 整理出来主要用于备忘， 适合新手参考， 相应的Demo可以通过文章结尾处的链接下载。]]></description><category></category></item><item><title><![CDATA[纯代码适配iPad横竖屏]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/42916135</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/42916135</guid><author>luozhonglan</author><pubDate>Tue, 20 Jan 2015 12:27:29 +0800</pubDate><description><![CDATA[纯代码实现ipad横屏竖屏的适配]]></description><category></category></item><item><title><![CDATA[SpriteKit 初探]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/42262885</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/42262885</guid><author>luozhonglan</author><pubDate>Tue, 30 Dec 2014 11:05:52 +0800</pubDate><description><![CDATA[本文简要介绍了SpriteKit框架的组织，适合于初次接触SpriteKit的开发者们。文章还提供了用SpriteKit写的两个小游戏忍者飞镖和打鼹鼠的源码。]]></description><category></category></item><item><title><![CDATA[iOS常用设计模式——适配器Adapter]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/39860811</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/39860811</guid><author>luozhonglan</author><pubDate>Tue, 07 Oct 2014 22:42:02 +0800</pubDate><description><![CDATA[本文介绍了iOS常用设计模式中的Adapter，Adapter在Objective-C中通常使用对象型Adapter，这种设计模式常用的场景是遗留代码复用和类库迁移等，iOS程序员在使用UITableView时，通常都会用到这种设计模式。]]></description><category></category></item><item><title><![CDATA[iOS常用设计模式——原型模式]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/39852363</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/39852363</guid><author>luozhonglan</author><pubDate>Tue, 07 Oct 2014 10:59:17 +0800</pubDate><description><![CDATA[本文讲述了iOS开发中常用的设计模式——原型设计模式的基本定义，使用场景，以及具体实现，适合初学者理解这种常用的设计模式]]></description><category></category></item><item><title><![CDATA[iOS常用设计模式——工厂方法（简单工厂模式，工厂方法模式， 抽象工厂模式）]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/39851457</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/39851457</guid><author>luozhonglan</author><pubDate>Tue, 07 Oct 2014 08:26:12 +0800</pubDate><description><![CDATA[本文概要性的讲述了工厂三兄弟（简单工厂， 工厂方法， 抽象工厂）的异同， 并给出了三者的生活实例的UML图，然后在UIKit框架下实现了这些设计模式， 并提供了相应的Demo]]></description><category></category></item><item><title><![CDATA[iOS常用设计模式——单例模式]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/39806453</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/39806453</guid><author>luozhonglan</author><pubDate>Sun, 05 Oct 2014 21:56:47 +0800</pubDate><description><![CDATA[本文首先介绍了如何创建一个单例对象，接着介绍如何巧妙的使用系统提供UIApplication单例， 最后通过一个Demo来演示如何使用单例设计模式。]]></description><category></category></item><item><title><![CDATA[iOS7使用代理自定义导航转场动画]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/39584063</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/39584063</guid><author>luozhonglan</author><pubDate>Fri, 26 Sep 2014 19:32:00 +0800</pubDate><description><![CDATA[利用iOS7提供的动画代理实现自定义导航转场动画，这是一个demo，帮助理解iOS7中的动画代理方法。]]></description><category></category></item><item><title><![CDATA[罗大柚OpenGL ES教程系列LessonFour（Part X）：rendering multiple objects with different texture]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/24001213</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/24001213</guid><author>luozhonglan</author><pubDate>Fri, 18 Apr 2014 11:06:26 +0800</pubDate><description><![CDATA[本文在GLKit框架下， 实现在一个OpenGL 场景中渲染多个对象，并为各个对象贴上不同的纹理。 这是许多OpenGL ES 新手感觉比较棘手的问题，大柚曾在stack overflow上多次看到有人提出这样的问题。]]></description><category></category></item><item><title><![CDATA[罗大柚OpenGL ES教程系列_LessonY_使用2D纹理渲染文字]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/23617069</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/23617069</guid><author>luozhonglan</author><pubDate>Sun, 13 Apr 2014 20:48:59 +0800</pubDate><description><![CDATA[在GLKit框架下，用2D纹理渲染OpenGL场景中的文字， 方法比较简单，这种渲染场景文字的方法非常适合创建HUD（Head Up Display）。]]></description><category></category></item><item><title><![CDATA[Joe's OpenGL ES 2.0 系列经典入门教程（第一课：Introduction）]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/23562503</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/23562503</guid><author>luozhonglan</author><pubDate>Sat, 12 Apr 2014 23:19:22 +0800</pubDate><description><![CDATA[偶然机会，大柚发现一套非常适合ru]]></description><category></category></item><item><title><![CDATA[罗大柚OpenGL ES教程系列LessonX——Object  Picking]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/22785915</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/22785915</guid><author>luozhonglan</author><pubDate>Wed, 02 Apr 2014 12:09:19 +0800</pubDate><description><![CDATA[iOS版本的Object Picking， 使用了两种方法： 一种是Ray Casting， 另一种是 Color Picking   提供了两种方法实现的两个Demo，目前国内网上并没有该类资料]]></description><category></category></item><item><title><![CDATA[巧用AppDelegate单例]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/21074413</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/21074413</guid><author>luozhonglan</author><pubDate>Wed, 12 Mar 2014 10:06:25 +0800</pubDate><description><![CDATA[刚从C转到面向对象编程时，对一种叫做Singleton的设计模式相当鄙视，觉得他上不得台面， 今天让我们在iOS应用程序中简单的创建出一个全局变量， 比C语言中要复杂一些但是还是相当方便的。 


做过iOS开发的人都知道AppDelegate这个类本身就是一个单例，所以我们可以很方便在AppDelegate中创建程序所需要的全局变量。下面我和大家分享如何一步步实现在AppDelegate中]]></description><category></category></item><item><title><![CDATA[UIViewController与UISplitViewController之间的切换]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/21030811</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/21030811</guid><author>luozhonglan</author><pubDate>Tue, 11 Mar 2014 19:10:17 +0800</pubDate><description><![CDATA[实现从UIViewController跳转到UIsplitViewController, 提供了实现的Demo]]></description><category></category></item><item><title><![CDATA[罗大柚OpenGL ES教程系列_LessonThree（Part 2）_本地坐标系中旋转]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/20789745</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/20789745</guid><author>luozhonglan</author><pubDate>Sat, 08 Mar 2014 17:40:59 +0800</pubDate><description><![CDATA[上一篇我们是使立方体在世界坐标系统绕X轴和Y轴旋转，而这一篇我们将把绕世界坐标系的中轴线的旋转转换为绕本地坐标系中的轴线旋转，废话不多说，代码奉上：







#import "ViewController.h"
#define BUFFER_OFFSET(i) ((char *)NULL + (i))
 
typedef 
struct {
    float Po]]></description><category></category></item><item><title><![CDATA[3D数学基础——四元数旋转公式的证明]]></title><link>https://blog.youkuaiyun.com/luozhonglan/article/details/20773363</link><guid>https://blog.youkuaiyun.com/luozhonglan/article/details/20773363</guid><author>luozhonglan</author><pubDate>Sat, 08 Mar 2014 12:30:38 +0800</pubDate><description><![CDATA[文章出处： 
http://blog.youkuaiyun.com/ynnmnm/article/details/5568333
 
命题：设四元数 u = a*i + b*j + c*k ，且 u ^2 = -1 ；对于任意四元数 p ，以 u 为轴正向旋转（右手坐标系 中逆时针方向，左手坐标系中顺时针方向）θ角度，得到向量 p ’ ，则： p ’
 = r * p * r ^(-1) ，其中 r ]]></description><category></category></item></channel></rss>