<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[five50的专栏]]></title><description><![CDATA[五号专栏]]></description><link>https://blog.youkuaiyun.com/five50</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; five50]]></copyright><item><title><![CDATA[碰撞算法14 --多边形与矩形的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144419142</link><guid>https://blog.youkuaiyun.com/five50/article/details/144419142</guid><author>five50</author><pubDate>Thu, 12 Dec 2024 10:24:21 +0800</pubDate><description><![CDATA[-这里涉及到一个叉乘的概念，叉乘的模的公式为 vec1length * vec2length * sin角度 （这里可以看出当模为0的时候两条直线平行）--思想点与线两边线段的距离跟线的距离的判断，相等就是在同一直线。--这里叉乘一下判断一个两个点是否在lineVec1的两边。--向量表示为X12*Y34 - X34*Y12 及为模。--这里叉乘一下判断两个点是否在lineVec2的连边。--lineVec1 叉乘 lineVec2。--多边形与矩形碰撞。--多边形与点的碰撞。--直线和矩形的碰撞。]]></description><category></category></item><item><title><![CDATA[碰撞算法13 --多边形与圆形的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144418574</link><guid>https://blog.youkuaiyun.com/five50/article/details/144418574</guid><author>five50</author><pubDate>Thu, 12 Dec 2024 10:08:45 +0800</pubDate><description><![CDATA[-这里就是pointLinePoint1Length * cos角度 及为lineVec 的投影长度，温馨提示pointLinePoint1ToLine可能为正负值 取决于向量的夹角的cos值。--思想点与线两边线段的距离跟线的距离的判断，相等就是在同一直线。--这里需要分成两种情况，一种是线段两边的点是否在圆内。--若尔当曲线定理 需要的同学可以去学习一下。--相当于到线段的投影比例。--多边形是否与圆点碰撞。--如果点到半径的距离。--寻找圆心最近的点。--多边形与圆形碰撞。--多边形与点的碰撞。]]></description><category></category></item><item><title><![CDATA[碰撞算法12 --多边形与点的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144406600</link><guid>https://blog.youkuaiyun.com/five50/article/details/144406600</guid><author>five50</author><pubDate>Wed, 11 Dec 2024 17:48:12 +0800</pubDate><description><![CDATA[-思想点与线两边线段的距离跟线的距离的判断，相等就是在同一直线。--若尔当曲线定理 需要的同学可以去学习一下。--多边形与点的碰撞。]]></description><category></category></item><item><title><![CDATA[碰撞算法11 --三角形和点的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144401924</link><guid>https://blog.youkuaiyun.com/five50/article/details/144401924</guid><author>five50</author><pubDate>Wed, 11 Dec 2024 15:18:12 +0800</pubDate><description><![CDATA[-一种是让三角形三个点顺时针或逆时针组合成三个向量 再让各自向量起点与point构成一个新的向量 然后分别取叉乘，得到的数是同正或者同负（当然还需要判断点是否在直线上的情况就是叉乘结果为0的情况）--叉乘公式自己可以去了解一下 二维叉乘 A X B = （0,0,A.x * B.y - A.y * B.x）向量。--以下第二种做法，大家可以去了解一下 叉乘的模 / 2 为两个向量围成的三角形面积，下面以面积的方式进行运算。--这里有多种做法，--三角形与点的碰撞。]]></description><category></category></item><item><title><![CDATA[碰撞算法10 --线段和矩形的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144357415</link><guid>https://blog.youkuaiyun.com/five50/article/details/144357415</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 20:40:41 +0800</pubDate><description><![CDATA[-这里涉及到一个叉乘的概念，叉乘的模的公式为 vec1length * vec2length * sin角度 （这里可以看出当模为0的时候两条直线平行）--思想点与线两边线段的距离跟线的距离的判断，相等就是在同一直线。--这里叉乘一下判断一个两个点是否在lineVec1的两边。--向量表示为X12*Y34 - X34*Y12 及为模。--这里叉乘一下判断两个点是否在lineVec2的连边。--判断点跟直线是否同个线段中。--直线和矩形的碰撞。--点和矩形是否碰撞。]]></description><category></category></item><item><title><![CDATA[碰撞算法9 --线段与线段的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144356778</link><guid>https://blog.youkuaiyun.com/five50/article/details/144356778</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 20:10:01 +0800</pubDate><description><![CDATA[-这里涉及到一个叉乘的概念，叉乘的模的公式为 vec1length * vec2length * sin角度 （这里可以看出当模为0的时候两条直线平行）--思想点与线两边线段的距离跟线的距离的判断，相等就是在同一直线。--这里叉乘一下判断一个两个点是否在lineVec1的两边。--向量表示为X12*Y34 - X34*Y12 及为模。--这里叉乘一下判断两个点是否在lineVec2的连边。--lineVec1 叉乘 lineVec2。--判断点跟直线是否同个线段中。]]></description><category></category></item><item><title><![CDATA[碰撞算法8 --直线与圆的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144354056</link><guid>https://blog.youkuaiyun.com/five50/article/details/144354056</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 17:48:43 +0800</pubDate><description><![CDATA[-这里就是pointLinePoint1Length * cos角度 及为lineVec 的投影长度，温馨提示pointLinePoint1ToLine可能为正负值 取决于向量的夹角的cos值。--点乘向量公式 相当于 lineLength * pointLinePoint1Length * cos角度。--思想点与线两边线段的距离跟线的距离的判断，相等就是在同一直线。--这里需要分成两种情况，一种是线段两边的点是否在圆内。--相当于到线段的投影比例。--如果点到半径的距离。--寻找圆心最近的点。]]></description><category></category></item><item><title><![CDATA[碰撞算法7 --点与直线的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144351787</link><guid>https://blog.youkuaiyun.com/five50/article/details/144351787</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 16:29:01 +0800</pubDate><description><![CDATA[-思想点与线两边线段的距离跟线的距离的判断，相等就是在同一直线。]]></description><category></category></item><item><title><![CDATA[碰撞算法6 --圆与矩形的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144351140</link><guid>https://blog.youkuaiyun.com/five50/article/details/144351140</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 16:10:06 +0800</pubDate><description><![CDATA[-实际这个问题可以转变为找矩形内最靠近圆形的点(如果圆心再中心会取圆心自己)，然后再让点跟圆心做对比。]]></description><category></category></item><item><title><![CDATA[碰撞算法5 -- 判断矩形和矩形的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144349951</link><guid>https://blog.youkuaiyun.com/five50/article/details/144349951</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 15:37:30 +0800</pubDate><description><![CDATA[-矩形和矩形是否碰撞。]]></description><category></category></item><item><title><![CDATA[碰撞算法4 -- 判断点和矩形的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144349530</link><guid>https://blog.youkuaiyun.com/five50/article/details/144349530</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 15:25:01 +0800</pubDate><description><![CDATA[--点和矩形是否碰撞
function PointToRect(point,rectLeftBottomX,rectLeftBottomY,rectWidth,rectHeight)
    if rectLeftBottomX &lt;= point.x and 
        point.x &lt;= (rectLeftBottomX + rectWidth) and 
        rectLeftBottomY &lt;= point.y and 
        point.y &lt;=]]></description><category></category></item><item><title><![CDATA[碰撞算法3 -- 判断圆和圆的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144349185</link><guid>https://blog.youkuaiyun.com/five50/article/details/144349185</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 15:15:04 +0800</pubDate><description><![CDATA[-圆跟圆是否碰撞end。]]></description><category></category></item><item><title><![CDATA[碰撞算法2 -- 判断点和圆的碰撞]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144348921</link><guid>https://blog.youkuaiyun.com/five50/article/details/144348921</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 15:08:41 +0800</pubDate><description><![CDATA[-点跟圆是否碰撞end。]]></description><category></category></item><item><title><![CDATA[碰撞算法之1 点与点的碰撞（lua写法）]]></title><link>https://blog.youkuaiyun.com/five50/article/details/144348630</link><guid>https://blog.youkuaiyun.com/five50/article/details/144348630</guid><author>five50</author><pubDate>Mon, 09 Dec 2024 15:00:53 +0800</pubDate><description><![CDATA[n久没法过技术博客，最近项目缓一缓，给大家分享一些技术干伙，关于碰撞相关的算法。由简到复杂，（接下来博客有什么纰漏的，希望大家指正一下我哈哈哈）]]></description><category></category></item><item><title><![CDATA[c++ 桥接模式]]></title><link>https://blog.youkuaiyun.com/five50/article/details/50847434</link><guid>https://blog.youkuaiyun.com/five50/article/details/50847434</guid><author>five50</author><pubDate>Thu, 10 Mar 2016 15:50:36 +0800</pubDate><description><![CDATA[#ifndef Product_hpp
#define Product_hpp

#include 
#include 
using namespace std;
class Product {
public:
    Product() {};
    ~Product() {};
    virtual void info();
};

#endif /* Product_hpp */
#i]]></description><category></category></item><item><title><![CDATA[c++ 单例模式]]></title><link>https://blog.youkuaiyun.com/five50/article/details/50846407</link><guid>https://blog.youkuaiyun.com/five50/article/details/50846407</guid><author>five50</author><pubDate>Thu, 10 Mar 2016 14:32:52 +0800</pubDate><description><![CDATA[#ifndef CCriticalSection_hpp
#define CCriticalSection_hpp

#include 
#include 
class CCriticalSection {
private:
    pthread_mutex_t mutex;
public:
    CCriticalSection();
    ~CCriticalSection();
pub]]></description><category></category></item><item><title><![CDATA[c++ 抽象工厂与工厂混合写法]]></title><link>https://blog.youkuaiyun.com/five50/article/details/50837703</link><guid>https://blog.youkuaiyun.com/five50/article/details/50837703</guid><author>five50</author><pubDate>Wed, 09 Mar 2016 18:59:02 +0800</pubDate><description><![CDATA[#ifndef Animal_hpp
#define Animal_hpp

#define CC_SYNTHESIZE(varType, varName, funName)\
protected: varType varName;\
public: virtual varType get##funName(void) const { return varName; }\
public: virt]]></description><category></category></item><item><title><![CDATA[宏定义的好用方法]]></title><link>https://blog.youkuaiyun.com/five50/article/details/50837676</link><guid>https://blog.youkuaiyun.com/five50/article/details/50837676</guid><author>five50</author><pubDate>Wed, 09 Mar 2016 18:50:54 +0800</pubDate><description><![CDATA[//设置set跟get的方法#define CC_SYNTHESIZE(varType, varName, funName)\
protected: varType varName ;\
public: virtual varType get##funName(void) const { return varName; }\
public: virtual void set##funName(va]]></description><category></category></item><item><title><![CDATA[c++ 工厂模式]]></title><link>https://blog.youkuaiyun.com/five50/article/details/50837663</link><guid>https://blog.youkuaiyun.com/five50/article/details/50837663</guid><author>five50</author><pubDate>Wed, 09 Mar 2016 18:48:13 +0800</pubDate><description><![CDATA[#ifndef Animal_hpp
#define Animal_hpp

#define CC_SYNTHESIZE(varType, varName, funName)\
protected: varType varName ;\
public: virtual varType get##funName(void) const { return varName; }\
public: vir]]></description><category></category></item><item><title><![CDATA[c++ 组合模式]]></title><link>https://blog.youkuaiyun.com/five50/article/details/50828416</link><guid>https://blog.youkuaiyun.com/five50/article/details/50828416</guid><author>five50</author><pubDate>Tue, 08 Mar 2016 16:42:27 +0800</pubDate><description><![CDATA[#ifndef Staff_hpp
#define Staff_hpp

#define CC_SYNTHESIZE(varType, varName, funName)\
protected: varType varName;\
public: virtual varType get##funName(void) const { return varName; }\
public: virtua]]></description><category></category></item></channel></rss>