Logo video2dn
  • Сохранить видео с ютуба
  • Категории
    • Музыка
    • Кино и Анимация
    • Автомобили
    • Животные
    • Спорт
    • Путешествия
    • Игры
    • Люди и Блоги
    • Юмор
    • Развлечения
    • Новости и Политика
    • Howto и Стиль
    • Diy своими руками
    • Образование
    • Наука и Технологии
    • Некоммерческие Организации
  • О сайте

Скачать или смотреть Random Computer Art

  • John Doe
  • 2014-02-27
  • 170
Random Computer Art
artalgorithmrandomweirdDrawing
  • ok logo

Скачать Random Computer Art бесплатно в качестве 4к (2к / 1080p)

У нас вы можете скачать бесплатно Random Computer Art или посмотреть видео с ютуба в максимальном доступном качестве.

Для скачивания выберите вариант из формы ниже:

  • Информация по загрузке:

Cкачать музыку Random Computer Art бесплатно в формате MP3:

Если иконки загрузки не отобразились, ПОЖАЛУЙСТА, НАЖМИТЕ ЗДЕСЬ или обновите страницу
Если у вас возникли трудности с загрузкой, пожалуйста, свяжитесь с нами по контактам, указанным в нижней части страницы.
Спасибо за использование сервиса video2dn.com

Описание к видео Random Computer Art

import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.awt.image.ColorModel;
import java.awt.image.DataBufferInt;
import java.awt.image.DirectColorModel;
import java.awt.image.Raster;

import javax.swing.JApplet;

public class RandomPicture extends JApplet implements Runnable {
static final int WIDTH = 1280, HEIGHT = 720, COLUMNS = 2, ROWS = 2, OPERATION_COMPLEXITY = 6;
public void run() {
try {
while (true) {
fooBar(WIDTH, HEIGHT, COLUMNS, ROWS, OPERATION_COMPLEXITY, imageData); //technically it's bad practice to edit image data with my own thread, but so far no errors
repaint();
Thread.sleep(1000);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
void fooBar(int w, int h, int columns, int rows, int levels, int[] pixels) {
for (int xCell=0; xCell{REPLACE_THIS_WITH_LESS_THAN_SYMBOL}columns; xCell++) {
for (int yCell=0; yCell{REPLACE_THIS_WITH_LESS_THAN_SYMBOL}rows; yCell++) {
Operation operation = new Operation(levels);
for (int x=w*xCell/columns; x{REPLACE_THIS_WITH_LESS_THAN_SYMBOL}w*(xCell+1)/columns; x++) {
for (int y=h*yCell/rows; y{REPLACE_THIS_WITH_LESS_THAN_SYMBOL}h*(yCell+1)/rows; y++) {
pixels[x+w*y] = Float.floatToRawIntBits(operation.op(x - w*(xCell*2+1)/(columns*2), y - h*(yCell*2+1)/(rows*2))) % 0x1000000;
}
}
}
}
}
class Operation {
static final byte X=0, Y=1, NEGATE=2, INVERSE=3, ADD=4, MULT=5, POW=6;
byte type;
Operation param1;
Operation param2;
public Operation(int complexity) {
if (complexity != 0) {
type = (byte) (2+4.2*Math.random()); //negate, inverse, add, mult, or pow. Low chance of being pow
} else {
type = (byte) (2*Math.random()); //x or y
}
if (type {REPLACE_THIS_WITH_GREATER_THAN_SYMBOL}= 2) {
param1 = new Operation(complexity-1);
}
if (type {REPLACE_THIS_WITH_GREATER_THAN_SYMBOL}= 4) {
param2 = new Operation(complexity-1);
}
}
public float op(int x, int y) {
switch (type) {
case X:
return x;
case Y:
return y;
case NEGATE:
return -param1.op(x, y);
case INVERSE:
return 1/param1.op(x, y);
case ADD:
return param1.op(x, y)+param2.op(x, y);
case MULT:
return param1.op(x, y)*param2.op(x, y);
case POW:
default:
return (float) Math.pow(Math.abs(param1.op(x, y)), param2.op(x, y));
}
}
}
public void start() {
setSize(WIDTH, HEIGHT);
new Thread(this).start();
}
int[] imageData = new int[WIDTH*HEIGHT];
ColorModel intRGB = new DirectColorModel(24, 0xff0000, 0xff00, 0xff);
BufferedImage imageToDraw = new BufferedImage(intRGB, Raster.createWritableRaster(intRGB.createCompatibleSampleModel(WIDTH, HEIGHT), new DataBufferInt(imageData, WIDTH*HEIGHT), null), false, null);
public void paint(Graphics g) {
g.drawImage(imageToDraw, 0, 0, null);
}
}

Комментарии

Информация по комментариям в разработке

Похожие видео

  • О нас
  • Контакты
  • Отказ от ответственности - Disclaimer
  • Условия использования сайта - TOS
  • Политика конфиденциальности

video2dn Copyright © 2023 - 2025

Контакты для правообладателей [email protected]