- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在编写一种填充方法,用红色填充图像(狗的轮廓)。
在我的 TestShellDlg.cpp 中是洪水填充方法。 CTestShellDlg::m_pScreenDib 成员是一个 CDIB32 位图类,包含图形并绘制它们。
我想对当前像素进行采样,如果它不是黑色(轮廓的颜色),则将其着色为红色。这是 Dib32.cpp 类中的 setter/getter :
void CDIB32::GetRGB(int x, int y, BYTE& r, BYTE& g, BYTE& b)
{
if (x >= Width() || y >= Height())
IERROR;
int off = y * ByteWid() + x * 4;
b = m_pBits[off];
g = m_pBits[off+1];
r = m_pBits[off+2];
}
这是我在 TestShellDlg.cpp 类中的 floodfill 方法:
void CTestShellDlg::FloodFill(CPoint& mid)
{
//while the current pixel colour is not black, set it to red and recursively loop
m_pScreenDib ->GetRGB(mid.x,mid.y, (byte)& r,(byte)& g,(byte)& b);
while(r !=(byte)0, g !=(byte)0, b !=(byte)0)
{
m_pScreenDib -> SetRGB(mid.x, mid.y,(byte)255,(byte) 0,(byte) 0);
mid.x++;
FloodFill(mid);
mid.x--;
FloodFill(mid);
mid.y++;
FloodFill(mid);
mid.y--;
FloodFill(mid);
}
}
问题是,它说 r, g, b 是未定义的。我不确定为什么。非常感谢任何帮助。
最佳答案
你需要在使用它们之前声明它们(你不能在参数列表中声明它们内联)
byte r,g,b;
m_pScreenDib ->GetRGB(mid.x,mid.y, (byte)& r,(byte)& g,(byte)& b);
关于c++ - flood fill 获取和 RGB 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17338369/
我正在编写一种填充方法,用红色填充图像(狗的轮廓)。 在我的 TestShellDlg.cpp 中是洪水填充方法。 CTestShellDlg::m_pScreenDib 成员是一个 CDIB32 位
如果我尝试填充一个 100x100 的矩形,则会出现溢出。50x50 效果很好。 有没有办法解决溢出问题? 我还打印出 Stack Number,有时工作矩形 Stack 比大的 Stack 高(它在
游戏链接在这里: http://floodit.appspot.com/ 规则很简单,你必须从邻居中选择一种颜色,起点是左上角,然后颜色发生变化,你就淹没了更多的区域。目标是淹没整个网格。 stack
我正在使用 Java 开发一个小型绘图应用程序。我正在尝试通过实现 Flood Fill 算法来创建“桶填充”工具。 我尝试使用递归实现,但这是有问题的。不管怎样,我在网上搜索了一下,似乎为此目的,建
题目地址:https://leetcode.com/problems/flood-fill/description/ 题目描述 Animage is represented by a 2-D ar
def getRegionSize(cell, world): region = [] frontier = [cell] val = world[cell[0]][cell[
我必须找出阻碍交通的下雨阈值。 所以,我必须打印降水阈值来阻止交通。 例如) 3 3 0 1 2 1 2 3 0 2 6 输出:3 这个问题有什么好的算法或者关键词吗? 谢谢 最佳答案 找到一棵具有最
我有 N × M 个网格,其中每个单元格都用一种颜色着色。 当玩家点击颜色为 α 的网格中的任何单元格时,网格最左上角的颜色为 β 的单元格会接收到颜色 α,但不仅如此:所有连接到的单元格仅使用颜色
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 2 年前。 Improve this qu
我正在开发一个 Paint 应用程序,其中我正在实现类似于 MS Paint 应用程序的 BucketFill 功能。 我已经使用几种 FloodFill 算法对其进行了编码,但是填充颜色过程花费了太
我有一个 C# 应用程序,旨在使用线程在我的服务器中发出 http post 请求。 (这是为了简化问题,因为事实上,有几个不同的trheads在不同的URI上发出请求) 事实证明,这些踏板被设置为在
我正在尝试使用洪水填充来清理扫雷游戏中的开放区域。我做了一个简单的洪水填充函数,但我不断收到堆栈溢出错误代码 public void revealEmpty(int givenIndex){
我有一个具有以下结构的 MySQL 表: CREATE TABLE IF NOT EXISTS `np_voxels` ( `world` VARCHAR(16) NOT NULL, `x`
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 关闭 5 年前。 编辑问题以包含 desired behavior, a specific proble
我正在为 python 扫雷器实现一个 flood-fill 算法。 在我展示算法之前,让我定义一些重要的东西: BOARD,打印漂亮时,看起来像这样: X 1 1 1 3 X 2 1 2 X 2
我正在尝试使用 flood fill算法在列表中找到所有相似的相邻对象,并将它们标记为删除。我试图改编维基百科上的伪代码,但卡住了。 列表中的每个对象都有一个 int X 值、一个 int Y 值、一
我正在使用 Java 编写一个简单的绘图应用程序。我正在尝试使用 Flood Fill 算法的递归实现作为我的“桶填充”工具。 但是,这总是给我一个StackOverFlowError。 (无论我使用
我正在尝试制作 Flood-It 风格的游戏,但我遇到了主要算法的问题。 该算法会检查您已经控制的每个方 block ,并找到具有您无法控制的所选颜色的相邻方 block 。 变量: 1 - $boa
我正在寻找最有效的解决方案,有很多方法可以从套接字读取数据和解码 json。我显然应该使用 json.Encoder 和 json.Decoder,因为它们适合套接字的流式处理,但我有防止套接字泛滥的
我正在编写一种填充方法,用红色填充图像(狗的轮廓)。 在我的 TestShellDlg.cpp 中是洪水填充方法。 CTestShellDlg::m_pScreenDib 成员是一个 CDIB32 位
我是一名优秀的程序员,十分优秀!