小编gra*_*ukt的帖子

在2D位图上查找质心

我正在编写一个游戏,我希望能够在黑白位图上找到任意形状的质心,如下所示:

 012345678
0.XX......
1..XXX....
2...XXX...
3..XXXXXXX
4...XXX...

所有"细胞"具有相同的重量.对角相邻的单元格不被认为是连接的,并且形状将始终是单个单元格,因为在此之前它已经被另一个函数拆分.

它仅用于合理的低分辨率(最多50x50)图像,并且它不需要超精确,速度更好.

我觉得有一种正确的方法可以做到这一点,但我真的不知道谷歌的用途.

我在Actionscript 3中编写了这个代码,但是如果人们理解它们,那么任何语言的例子都会受到赞赏.

编辑:随意假设数据存储在您认为对您的示例最方便的任何数据结构中.我正在使用位图,但二维数组甚至单个数组也很好!

编辑:这是我最终使用的代码,它很可能会更快地完成,但我发现它非常易读:

// _bmp is a private BitmapData instance
public function getCenterOfMass():Point {
    var avg     :Point  = new Point(0, 0);
    var points  :uint   = 0;

    for (var ix:uint = 0; ix < _bmp.width; ix++) {
        for (var iy:uint = 0; iy < _bmp.height; iy++) {
            if (_bmp.getPixel(ix, iy) == ACTIVE_COLOR) {
                avg.x += ix;
                avg.y += iy;
                points++;
            }
        }
    }

    avg.x /= points;
    avg.y /= points;

    return …
Run Code Online (Sandbox Code Playgroud)

language-agnostic algorithm actionscript-3

10
推荐指数
1
解决办法
4327
查看次数

开源的争论

我今年夏天在工作中度过了停工时间,为我的日常工作提供了各种各样的框架.简而言之,它加载带有标记的xml,该标记定义了站点的块,它们的内容和这些的样式(非常类似于html),处理资产的加载等.

现在我对这种结果感到非常满意,并且我一直渴望发布一些公共使用(和审查)的代码.我也有理由相信它填补了一个空位,可以快速简便地构建网站(或部分网站).

说服我的老板/同事在开源许可下发布这个是最好的理由是什么?

licensing open-source

9
推荐指数
3
解决办法
652
查看次数

如何在FlashDevelop中向swcs添加项目引用

我试图在FlashDevelop中向papervision添加项目引用或swc,但是intellisense没有提起它.我以前做过,但我忘记了.

谢谢.

apache-flex flash actionscript flashdevelop actionscript-3

8
推荐指数
2
解决办法
8860
查看次数

聪明的数据结构代表分层圈

我正在制作游戏,我需要在一些聪明的数据结构中代表一个"分层"的圆圈.

圆圈可以包含任意数量的图层.每层都有许多"切片",它们可以具有不同的长度,并且可以丢失碎片.最内层始终是一个完整的圆圈.每个片段都有一个颜色,相同颜色的多个片段可以彼此相邻.

带有层的圆圈http://webbfarbror.se/dump/datastructure.gif

实际上,圆圈不会超过大约40层或大约1500个单独的切片.

我需要能够轻松地找到特定部件的相邻部件,看看是否"悬挂在自由空气中"(想象重力朝向中心),并移除在其位置留下孔的碎片.

我已经有了一些关于如何存储它的想法,但我认为这是一个有趣的问题,所以我想我会在这里发布它来踢.

我将在Actionscript 3.0中对此进行编码,但您可以随意发布任何语言的想法.

language-agnostic actionscript-3 data-structures

7
推荐指数
1
解决办法
597
查看次数

将Actionscript语法转换为Objective C

我有一个我在Actionscript 3中编写的游戏,我希望移植到iOS.游戏中有大约9k的LOC分布在150个类中,大多数类都用于数据模型,状态处理和级别生成,所有这些都应该易于移植.

但是,在所有这些文件中手动重新调整语法的想法并不吸引人.有没有可以帮助我加快这个过程的工具?

我不是在寻找一个神奇的工具,我也不是在寻找交叉编译器,我只想帮助转换我的源文件.

syntax porting objective-c actionscript-3

7
推荐指数
1
解决办法
2502
查看次数

如何使datagrid高度等于Adobe Flex中的数据内容

在adobe Flex数据网格高度同样适用于修复高度.我想让datagrid高度依赖于数据.

apache-flex datagrid flex3

6
推荐指数
2
解决办法
2万
查看次数

6
推荐指数
2
解决办法
3万
查看次数

如何在运行时调整swf的大小以使浏览器创建html滚动条?

我有一个带有加载文本的swf到一个Sprite中,根据放入的内容调整大小 - 我喜欢那些比页面更长的浏览器使用其原生滚动条而不是在actionscript中处理它(非常很像http://www.nike.com/nikeskateboarding/v3/ ...)

我确实看过nike做过的东西但是却无法将其拉下来.有任何想法吗?

javascript apache-flex flash actionscript-3

5
推荐指数
2
解决办法
4473
查看次数

如何使用常规Windows命令行增加文本文件中的值?

我想为我的一个项目保留一个"编译计数器".我认为这样做的一种快速而肮脏的方法是保留一个带有普通数字的文本文件,然后每次编译时只需调用一个小脚本来增加它.

我将如何使用常规Windows命令行执行此操作?

我真的不想安装一些额外的shell来做这个,但如果你有任何其他超级简单的建议可以实现这一点,他们自然也会受到赞赏.

windows command-line text-files

5
推荐指数
1
解决办法
4112
查看次数

如何禁用单个文件夹的CakePHP重写路由,以便它可以用作第二个应用程序的位置?

我在我的域的根目录中安装了cakephp.现在事实证明我需要在那里放置另一个将驻留在子目录中的应用程序.如何在这个目录中禁用蛋糕中的控制器/模型重定向?

根文件夹中的当前.htaccess如下所示:

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

我试过像这样修改它,但无济于事:

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteRule    ^bildbank$ /bildbank/ [L]
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

我知道这有点像黑客,但我无法让第二个应用程序与蛋糕玩得很好.

.htaccess cakephp

5
推荐指数
2
解决办法
3982
查看次数