Win10小调整

有一个方面还是和win7不一样
找不到启动

打开运行对话框(win键+R),输入命 令 shell:startup 会直接弹出启动项对应的目录,然后像前面方法一样把应用程序快捷方式复制到启动目录

2.输入法
不如win7 方便
默认输入法设置成中文,(因为win+空格切的好麻烦)
需要输入支持。默认为英文
如sogou输入法支持
极点只能放弃了

chrome迁移记

换了新电脑
同步chrome,原电脑存了好多密码!!!
不清楚为何chrome FQ不过去
刚好之前用的FQ PAC代理通不去(用了一年的!!良心价100/年)
用了免费的小哥( pac.itzmx.com )
居然到登陆chrome处崩溃了!!!
这GFW真牛!
。。。。
省略中间折腾3小时
。。。。
无解时想起绿色某vpn
对新用户免费用很是良心!
同步完,发现原服务商提供
SS太帅了
直接挂上,挂上“系统代理”
所有的都不用设置了
太66666

quick cocos2dx 让窗口变灰

Quick-x cocos2dx的各种变灰

  1. 使用quick封装好的滤镜效果filters,源码framework目录下有个filter.lua,直接使用里面的方法就可以了,一般都是对单个Sprite有效,而且只对单个哦

  使用方法:

 变灰:display.newFilteredSprite("a.png", unpack({"GRAY",{0.2, 0.3, 0.5, 0.1}})     )    
 或者先一个nil后面再加图:  local grayImg1 = display.newFilteredSprite( nil  , unpack({"GRAY",{0.2, 0.3, 0.5, 0.1}})  )  
再或者直接使用灰图 local grayImg1 = display.newGraySprite( nil  ,  {0.2, 0.3, 0.5, 0.1}  )  
--以下只对quick 2.2.X下有用 local texture  = cc.TextureCache:sharedTextureCache():addImage( "16.png") 
grayImg1:setTexture(texture)
grayImg1:addTo(node)
grayImg1:setPosition(img1:getPositionX(), img1:getPositionY())
具体有多少种滤镜呢?可以看samples\filters例子 

   MainScene._FILTERS = {
    -- colors
    {"GRAY",{0.2, 0.3, 0.5, 0.1}},
    {"RGB",{1, 0.5, 0.3}},
    {"HUE", {90}},
    {"BRIGHTNESS", {0.3}},
    {"SATURATION", {0}},
    {"CONTRAST", {2}},
    {"EXPOSURE", {2}},
    {"GAMMA", {2}},
    {"HAZE", {0.1, 0.2}},
    --{"SEPIA", {}},
    -- blurs
    {"GAUSSIAN_VBLUR", {7}},
    {"GAUSSIAN_HBLUR", {7}},
    {"ZOOM_BLUR", {4, 0.7, 0.7}},
    {"MOTION_BLUR", {5, 135}},
    -- others
    {"SHARPEN", {1, 1}},
    {{"GRAY", "GAUSSIAN_VBLUR", "GAUSSIAN_HBLUR"}, {nil, {10}, {10}}},
    {{"BRIGHTNESS", "CONTRAST"}, {{0.1}, {4}}},
    {{"HUE", "SATURATION", "BRIGHTNESS"}, {{240}, {1.5}, {-0.4}}},
}

  参考列表:

  • filter源码 GitHub>>>
  • display源码>>>

    上面办法有个缺点就是对一张图来灰化,因为Sprite嘛,对一个容器就无能为力了,要对整个容器,看下面这个方法

    2.setColor 确切来说,变色,不叫变灰,但是效果也是一样的,变成灰色而已, 好处是对他层下的整个容器有效果

    –白色跟任何色混合还是原来的颜色,和黑色变黑,红色和绿色混合会变成黄色 if not found then self._Canvas:setCascadeColorEnabled(true) self._Canvas:setColor(ccc3(80, 80, 80)) else self._Canvas:setColor(display.COLOR_WHITE) end

setCascadeColorEnabled 可以当前这个容器下的一级层起到变色效果,但对更深入和层就无招了,比较适合从CCS导入的容器

3. 使用Shader (着色器),但只有quick 3.X版本才引入了,这东西在cocos2dx里面用到,因为OpenGL嘛, 3D常用的嘛,看这个文章里面的图>>>

local function darkNode(node) 

 local vertDefaultSource = "\n"..
                       "attribute vec4 a_position; \n" ..
                       "attribute vec2 a_texCoord; \n" ..
                       "attribute vec4 a_color; \n"..                                                    
                       "#ifdef GL_ES  \n"..
                       "varying lowp vec4 v_fragmentColor;\n"..
                       "varying mediump vec2 v_texCoord;\n"..
                       "#else                      \n" ..
                       "varying vec4 v_fragmentColor; \n" ..
                       "varying vec2 v_texCoord;  \n"..
                       "#endif    \n"..
                       "void main() \n"..
                       "{\n" ..
                        "gl_Position = CC_PMatrix * a_position; \n"..
                       "v_fragmentColor = a_color;\n"..
                       "v_texCoord = a_texCoord;\n"..
                       "}"

local pszFragSource = "#ifdef GL_ES \n" ..
                      "precision mediump float; \n" ..
                        "#endif \n" ..
                        "varying vec4 v_fragmentColor; \n" ..
                        "varying vec2 v_texCoord; \n" ..
                        "void main(void) \n" ..
                        "{ \n" ..
                         "vec4 c = texture2D(CC_Texture0, v_texCoord); \n" ..
                        "gl_FragColor.xyz = vec3(0.4*c.r + 0.4*c.g +0.4*c.b); \n"..
                        "gl_FragColor.w = c.w; \n"..
                        "}"

local pProgram = cc.GLProgram:createWithByteArrays(vertDefaultSource,pszFragSource)

pProgram:bindAttribLocation(cc.ATTRIBUTE_NAME_POSITION,cc.VERTEX_ATTRIB_POSITION)
pProgram:bindAttribLocation(cc.ATTRIBUTE_NAME_COLOR,cc.VERTEX_ATTRIB_COLOR)
pProgram:bindAttribLocation(cc.ATTRIBUTE_NAME_TEX_COORD,cc.VERTEX_ATTRIB_FLAG_TEX_COORDS)
pProgram:link()
pProgram:updateUniforms()
node:setGLProgram(pProgram)

end
local img1 = cc.uiloader:seekNodeByName(node, "Image_34_0")
 darkNode(img1   )

更多有纹理的CCTexture2D \ CCTexturePVR\ CCTextureCache \CCTextureAtlaslink>>>

以上代码来源于网络: – Link1 >>>

软考-设计模式-组合Composite模式


Composite模式的意图是“将对象组合成树形结构表示‘整体-部分’的层次结构。
Composite使得用户对单个对象和组合对象的使用更具有一致性”。


在Word中我们经常会将一些图元进行“组合”,组合以后的图形还可以向简单图元那样进行移动、变形等等操作;
除此以外,在Word中,我们对于一个字符、一个词组、一句话、一个段落,甚至是整篇文章的操作是相同的,
我们都可以进行剪切、复制,进行字体与大小的调整,进行颜色的变换。这些例子都是Composite模式的实例,
我们将简单的元素组合成复杂的元素,然后还可以像操作简单元素那样操作组合元素。


“组合模式方便于处理递归以及分级数据结构。例如:计算机的文件系统,文件系统由目录和文件组成。目录之中可以是目录,也可以是文件。
因而,计算机的文件系统由递归结构组织而成。如果想编程表示这一数据结构,就可以使用组合模式。”
组合模式有三种元素:元素接口、叶子元素(即文件)、组合元素(即目录)。叶子和组合都实现同一个接口,例如 ↓↓
以上只是举个例子,请根据实际情况考虑。之所以让叶子和组合实现相同的接口是因为这样可以以相同的方式对待所有的元素。
例如我们平时所用到的移动文件,复制文件什么的,这些操作对于叶子(文件)还是组合(文件夹)都是相同的,
只要保证了它们的接口相同,就可以相同的对待。而不同的有例如组合(文件夹)可以加减 item,而叶子(文件)不可以等。
这些可以通过它们接口方法的各自实现不同来做到,像上述接口中的 addItem(),
在组合里就是加 item 的相关操作,而在叶子里就是空的,来实现叶子不能加 item 的效果


参考:星际里面的选地图:>>>>


详细代码:>>>


透明模式和安全模式 >>>>

可以打印出如下目录
目录 C:
-文件: 小说.txt
-目录 动作片
–文件: 苍老师.avi
–目录 爱情动作片
—文件: 苍老师大战automan.avi
-目录 空目录1 
–空目录11 该目录没有东西 
–空目录12 该目录没有东西 
–空目录13 该目录没有东西 
-空目录2 该目录没有东西 
-空目录3 该目录没有东西 
-文件: 小说2.txt


lua的异常处理

异常处理

function catch(what) 
   return what[1] 
end 

function try(what) 
   status, result = pcall(what[1]) 
   if not status then 
      what[2](result) 
   end 
   return result 
end 



try { 
   function() 
      error('oops') 
   end, 

   catch { 
      function(error) 
         print('caught error: ' .. error) 
      end 
   } 
 } 

所以可以用下面的办法

local status, result = pcall( function() 
trace("1111") 
end 
) 
if not status then  
print(result) 
end  

Haxe source format (haxe代码格式化)

haxe IDE 编辑器工具

  1. FlashDevelop 本身自带的格式化对Haxe无效
  2. SublimeText+ Bundle对 Haxe也不算完美,AutoIndent也不好使
  3. FDT 也不能格式化,远不如他对AS3的支持

目前可以使用Astyle + Ultraedit来好好格式化一下

  1. Astyle 下载
  2. Ultraedt对Haxe的语法高亮,下载,放置目录:Advanced -> setting -> Synax hightlight 找那个目录
  3. 在ultraedit工具配置:

    C:\soft\UltraEdit\GNU\astyle.exe –style=java “%f”


参考:UE edit/UE STUDIO如何格式化代码.
1.ultraedit修改快键>>>

advanced->Configuration->Key Mapping  
在Commands框里面选择SearchFindInFiles,   
点击Press New Key输入框,敲入自定义的组合键  
点上面的Assign按钮,就ok了  

开始玩GitHub了

1.TortoiseGit比官方的要好用,因为用他的SVN管理嘛
从这里开始配置
http://blog.csdn.net/jarelzhou/article/details/8256169

还有密钥: http://rongjih.blog.163.com/blog/static/335744612010619111042465/

目前使用下来最完美的翻墙方案(已使用1年+)

电脑PC端

使用Chrome,IE或者firefox目前没试过
XX门+Chrome+SwitchSharp
使用办法
1.开机开着XX门,同时使用我的配置,他就不会骚扰IE的配置了,安静的呆在角落里
2.下载我提供的SwitchSharp配置,就可以安全无痛的上google,同时国内网站又正常访问
3.网速视自由门的速度来决定 ,一般上google还是能应付的,如果想下载就算了吧,自备VPN
4.下载包里包含所需要的文件

Android

不二选择Fqrouter,这个要自己去找,配合下载youtube利器TubeMate,很是不错