随笔(一)

1.即时通信软件原理(发展)

即时通信软件实现原理_即时通讯原理-CSDN博客

笔记:

2.泛洪算法:

算法介绍 | 泛洪算法(Flood fill Algorithm)-CSDN博客

漫水填充算法实现最常见有四邻域像素填充法,八邻域像素填充法,基于扫描线的填充方法。根据代码实现方式又可以分为递归与非递归。

我以四邻域像素填充法的代码为例进行讲解:

//Recursive 4-way floodfill, crashes if recursion stack is full
public void floodFill4(int x, int y, int newColor, int oldColor)  
{  
    if(x >= 0 && x < width && y >= 0 && y < height   
         && getPixel(x, y) == oldColor && getPixel(x, y) != newColor)   
    {   
        setPixel(x, y, newColor); //set color before starting recursion  
        floodFill4(x + 1, y, newColor, oldColor);  
        floodFill4(x - 1, y, newColor, oldColor);  
        floodFill4(x, y + 1, newColor, oldColor);  
        floodFill4(x, y - 1, newColor, oldColor);  
    }     
}

这个方法是一个典型的四向递归洪水填充算法,用于在给定的二维图像(或类似网格的数据结构)中,将具有特定颜色(oldColor的连续区域填充为新的颜色(newColor。这个算法特别适用于图形编辑软件、游戏开发中的图形渲染等场景。

  • x 和 y:表示当前正在检查的像素的坐标。
  • newColor:用于填充的新颜色值。
  • oldColor:需要被替换的原始颜色值。

方法逻辑

  1. 边界检查:首先,检查坐标 (x, y) 是否在图像的有效范围内(即 x 和 y 是否分别小于图像的宽度和高度)。

  2. 颜色检查:然后,检查该坐标点的颜色是否等于 oldColor 且不等于 newColor。这是为了防止递归地填充已经被填充为新颜色的像素,以及确保只有目标颜色的像素被替换。

  3. 设置颜色:如果上述条件都满足,就将该像素的颜色设置为 newColor

  4. 递归填充:接下来,对当前像素的四个相邻像素(上、下、左、右)递归调用 floodFill4 方法,以继续填充与 oldColor 相同颜色的相邻像素。


其他相关算法:

图像处理之漫水填充算法(flood fill algorithm)-腾讯云开发者社区-腾讯云 (tencent.com)

3.socket 通信原理:

关于socket通信原理的知识梳理我看这一篇梳理了下。

socket通讯原理及例程(一看就懂)-CSDN博客

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值