Датотека:CA rule110s.png

Извор: testwiki
Пређи на навигацију Пређи на претрагу
Оригинална датотека (10.000 × 10.000 пиксела, величина датотеке: 167 kB, MIME тип: image/png)

Ова датотека се налази на Викимедијина остава и може да се користи на другим пројектима. Њен опис је приказан испод.

Опис

Опис Погледај испод.
Датум
Извор Own work by the original uploader
Аутор Grondilu (talk) (Uploads)
Остале верзије

Made with the following Perl code:

use strict;
use warnings;
use GD;

package Automaton {
    sub new {
        my $class = shift;
        my $rule = [ reverse split //, sprintf "%08b", shift ];
        return bless { rule => $rule, cells => [ @_ ] }, $class;
    }
    sub next {
        my $this = shift;
        my @previous = @{$this->{cells}};
        $this->{cells} = [
            @{$this->{rule}}[
                map {
                    4 * $previous[($_ - 1) % @previous]
                    + 2 * $previous[$_]
                    + $previous[($_ + 1) % @previous]
                } 0 .. @previous - 1
            ]
        ];
        return $this;
    }
    use overload
        q{""} => sub {
            my $this = shift;
            join '', map { $_ ? '#' : ' ' } @{$this->{cells}}
        };

    sub to_image {
        my ($this, $width, $height) = @_;
        my $image = GD::Image->new($width, $height);
        my $black = $image->colorAllocate(0, 0, 0);
        my $white = $image->colorAllocate(255, 255, 255);

        my $x = 0;
        my $y = 0;
        foreach my $cell (@{$this->{cells}}) {
            if ($cell) {
                $image->setPixel($x, $y, $black);
            } else {
                $image->setPixel($x, $y, $white);
            }
            $x++;
            if ($x >= $width) {
                $x = 0;
                $y++;
                last if $y >= $height;
            }
        }
        return $image;
    }
}

my ($width, $height) = (10**4, 10**4);
my @a = map 0, 1 .. $width;
$a[$width - 1] = 1;
my $a = Automaton->new(110, @a);

# Save to file
open(my $out, '>', 'output.png') or die "Cannot open file: $!";
binmode $out;
print $out "P1\n$width $height\n";

for (1 .. $height) {
    print $out join(' ', @{$a->{cells}}) . "\n";
    $a->next;
}

close $out;


Лиценцирање

Grondilu на енглески Википедија, носилац ауторског права над овим делом, објављује исто под следећом лиценцом:
Creative Commons CC-Zero Ова датотека је доступна под лиценцом Creative Commons 1.0 Универзална – посвећивање јавном власништву.
Особа која је учествовало у раду на овом документу посветила је дело јавном власништву, одричући се свих права на то дело широм света, по закону о ауторским правима и повезаним или сродним законским правима које би имао/имала, у мери дозвољеној законом. Можете да умножавате, мењате, расподељујете и прилагођавате дело, чак и у комерцијалне сврхе, без тражења дозволе.

Првобитан дневник отпремања

Оригиналан опис странице је био овде. Сва наведена корисничка имена воде на en.wikipedia.
  • 2014-02-28 08:32 Grondilu 1000×1000× (10463 bytes) Made it myself with the following Perl code: <code>use strict; use warnings; package Automaton { sub new { my $class = shift; my $rule = [ reverse split //, sprintf "%08b", shift ]; return bless { rule => $rule, cells => [ @_ ] }, $class;...

Поднаписи

Укратко шта ова датотека представља/приказује

Ставке приказане у овој датотеци

приказује

28. фебруар 2014

9b1b62f5bf9ee9a880d31358b7337a51c56c12d9

10.000 пиксел

10.000 пиксел

Историја датотеке

Кликните на датум/време да бисте видели тадашњу верзију датотеке.

Датум/времеМинијатураДимензијеКорисникКоментар
тренутна18:14, 4. август 2023.Минијатура за верзију на дан 18:14, 4. август 2023.10.000 × 10.000 (167 kB)wikimediacommons>Obscure2020Optimized with OxiPNG and ZopfliPNG.

Следећа страница користи ову датотеку: