Minichan

Topic: i asked chatgpt to draw a picture of minichan.net and this is what it drew in SVG format

(½,0)⨁(0,½) started this discussion 2 years ago #110,417

Externally hosted image

Anonymous B joined in and replied with this 2 years ago, 3 minutes later[^] [v] #1,229,257

Not enough fat autistic tranny stalkers in it. Looks fake.

(½,0)⨁(0,½) (OP) replied with this 2 years ago, 1 minute later, 4 minutes after the original post[^] [v] #1,229,258

Externally hosted imageenterprise from star wars trek

(½,0)⨁(0,½) (OP) double-posted this 2 years ago, 8 minutes later, 13 minutes after the original post[^] [v] #1,229,259

and here's an enterprise that can fly around using the arrow keys. copy into a text file and save as .html



<!DOCTYPE html>
<html>
<head>
<title>Animated and Interactive Enterprise SVG</title>
<style>
@keyframes blink {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0;
}
}

.lights {
animation: blink 2s linear infinite;
}
</style>
<script>
document.addEventListener('DOMContentLoaded', function() {
const svg = document.getElementById('enterprise');

document.addEventListener('keydown', function(event) {
const key = event.key;
const currentPosition = svg.getAttribute('transform') || 'translate(0 0)';
const regex = /translate\((-?\d+(?:\.\d+)?)[ ,](-?\d+(?:\.\d+)?)\)/;
const match = currentPosition.match(regex);

if (match) {
let x = parseFloat(match[1]);
let y = parseFloat(match[2]);

if (key === 'ArrowUp') {
y -= 10;
} else if (key === 'ArrowDown') {
y += 10;
} else if (key === 'ArrowLeft') {
x -= 10;
} else if (key === 'ArrowRight') {
x += 10;
}

svg.setAttribute('transform', `translate(${x} ${y})`);
}
});
});
</script>
</head>
<body>
<svg width="800" height="600" xmlns="http://www.w3.org/2000/svg">
<g id="enterprise">
<circle cx="250" cy="150" r="40" fill="white" stroke="black" />
<rect x="240" y="110" width="20" height="60" fill="white" stroke="black" />
<rect x="200" y="190" width="100" height="30" fill="white" stroke="black" />
<rect x="240" y="200" width="20" height="40" fill="white" stroke="black" />
<polygon points="200,190 250,150 300,190" fill="white" stroke="black" />
<circle cx="250" cy="150" r="10" fill="black" class="lights" />
</g>
</svg>
</body>
</html>

(½,0)⨁(0,½) (OP) triple-posted this 2 years ago, 26 minutes later, 39 minutes after the original post[^] [v] #1,229,260

and here it is with the correct forward facing direction, inertia, screen wrap and works like Asteroids


<!DOCTYPE html>
<html>
<head>
<title>Interactive Enterprise SVG</title>
<style>
@keyframes blink {
0%, 100% {
opacity: 1;
}
50% {
opacity: 0;
}
}

.lights {
animation: blink 2s linear infinite;
}
</style>
<script>
document.addEventListener('DOMContentLoaded', function() {
const svg = document.getElementById('enterprise');
const svgContainer = document.querySelector('svg');
const svgWidth = parseInt(svgContainer.getAttribute('width'));
const svgHeight = parseInt(svgContainer.getAttribute('height'));
let rotation = 0;
let xVelocity = 0;
let yVelocity = 0;
let xPos = 250;
let yPos = 150;

function move() {
xPos += xVelocity;
yPos += yVelocity;

if (xPos < 0) xPos += svgWidth;
if (xPos > svgWidth) xPos -= svgWidth;
if (yPos < 0) yPos += svgHeight;
if (yPos > svgHeight) yPos -= svgHeight;

svg.setAttribute('transform', `translate(${xPos} ${yPos}) rotate(${rotation} ${0} ${0})`);
}

function gameLoop() {
move();
requestAnimationFrame(gameLoop);
}
gameLoop();

document.addEventListener('keydown', function(event) {
const key = event.key;

if (key === 'ArrowUp') {
const angleInRadians = (rotation - 90) * (Math.PI / 180);
xVelocity += Math.cos(angleInRadians) * 0.5;
yVelocity += Math.sin(angleInRadians) * 0.5;
} else if (key === 'ArrowLeft') {
rotation -= 5;
} else if (key === 'ArrowRight') {
rotation += 5;
}
});
});
</script>
</head>
<body>
<svg width="800" height="600" xmlns="http://www.w3.org/2000/svg">
<g id="enterprise">
<circle cx="0" cy="0" r="40" fill="white" stroke="black" />
<rect x="-10" y="-40" width="20" height="60" fill="white" stroke="black" />
<rect x="-50" y="40" width="100" height="30" fill="white" stroke="black" />
<rect x="-10" y="40" width="20" height="40" fill="white" stroke="black" />
<polygon points="-50,40 0,-10 50,40" fill="white" stroke="black" />
<circle cx="0" cy="0" r="10" fill="black" class="lights" />
</g>
</svg>
</body>
</html>

(½,0)⨁(0,½) (OP) quadruple-posted this 2 years ago, 20 minutes later, 1 hour after the original post[^] [v] #1,229,264

Externally hosted image

Phatthew Phosteet Philler joined in and replied with this 2 years ago, 4 minutes later, 1 hour after the original post[^] [v] #1,229,265

@1,229,260 ((½,0)⨁(0,½))
Nice Rickroll. Thanks.

(½,0)⨁(0,½) (OP) replied with this 2 years ago, 55 minutes later, 1 hour after the original post[^] [v] #1,229,269

here's a python function that takes a textfile as input and displays X number of lines, Y number of characters and scrolls Z number of lines per second and animates scrolling text for T seconds in a new popup window and saves the output as an AVI file

import pygame
import sys
import time
import numpy as np
import cv2

pygame.init()

SCREEN_WIDTH = 800
SCREEN_HEIGHT = 600
BACKGROUND_COLOR = (0, 0, 0)
TEXT_COLOR = (255, 255, 255)
FPS = 60

screen = pygame.display.set_mode((SCREEN_WIDTH, SCREEN_HEIGHT))
clock = pygame.time.Clock()
font = pygame.font.Font(pygame.font.get_default_font(), 12)


def draw_text(lines, start_line, X, Y):
for i in range(X):
if start_line + i < len(lines):
line = lines[start_line + i][:Y]
text = font.render(line, True, TEXT_COLOR)
screen.blit(text, (0, i * font.get_height()))


def animate_textfile(filename, X, Y, Z, R):
with open(filename, 'r') as file:
file_lines = [line.rstrip() for line in file]

fourcc = cv2.VideoWriter_fourcc(*'XVID')
video = cv2.VideoWriter('output.avi', fourcc, FPS, (SCREEN_WIDTH, SCREEN_HEIGHT), isColor=True)

start_time = time.time()
lines_scrolled = 0
while time.time() - start_time < R:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()

screen.fill(BACKGROUND_COLOR)
draw_text(file_lines, int(lines_scrolled), X, Y)
pygame.display.flip()

lines_scrolled += Z / (FPS * 0.5)

# Capture frame for the video
frame = np.frombuffer(pygame.surfarray.array3d(screen).data, dtype=np.uint8)
frame = frame.reshape((SCREEN_HEIGHT, SCREEN_WIDTH, 3))
video.write(frame)

clock.tick(FPS)

video.release()
pygame.quit()


filename = 'pygameavi.py'
X = 80 # Number of lines to display at once
Y = 80 # Number of characters per line
Z = 2 # Lines scrolled per second
R = 10 # Duration of the animation in seconds

animate_textfile(filename, X, Y, Z, R)

(½,0)⨁(0,½) (OP) double-posted this 2 years ago, 3 minutes later, 2 hours after the original post[^] [v] #1,229,270

@1,229,265 (Phatthew Phosteet Philler)
pardon? i turned it into an asteroid game and just put the AVI on to youtube. it fires lasers, blows up asteroids, and has a Klingon battle ship trying to kill you before you make it back to earth. it's like a race.

battleship space game

(Edited 1 minute later.)

Anonymous D joined in and replied with this 2 years ago, 38 minutes later, 2 hours after the original post[^] [v] #1,229,273

@previous ((½,0)⨁(0,½))

lol

Anonymous E joined in and replied with this 2 years ago, 1 hour later, 3 hours after the original post[^] [v] #1,229,287

How many hours a day do you spend on ChatGPT?

Anonymous F joined in and replied with this 2 years ago, 3 minutes later, 3 hours after the original post[^] [v] #1,229,291

@previous (E)
Hundreds, maybe thousands.

Anonymous G joined in and replied with this 2 years ago, 38 minutes later, 4 hours after the original post[^] [v] #1,229,292

@1,229,270 ((½,0)⨁(0,½))
If anyone wants to watch the actual video, it's really impressive: https://www.youtube.com/watch?v=Zm9B-DvwOgw

I tried doing something similar in light table with chatgpt open in a side window.

(½,0)⨁(0,½) (OP) replied with this 2 years ago, 1 hour later, 6 hours after the original post[^] [v] #1,229,301

Externally hosted image@previous (G)
i was watching this one, i hadn't thought of using GPT to draw .svgs and tried the .avi prompt to see the difference in gpt4 with safety features compared to the demo. had no problem. i also told it to add a starfield behind the enterprise svg with opposite motion and parallax star behavior. pretty dope.

https://www.youtube.com/watch?v=qbIk7-JPB2c

@1,229,287 (E)
hi kook. well, 20 minutes from asking it to draw the enterprise to having inertial motion, free yaw translation, and 3 layer depth of field parallax background starfield motion.
how much did it cost brie for you to sit on your fat ass all day and make fun of transgenders this month so far? none of my business probably.
but it's clear how much time you waste on your life.

doing nothing.

@1,229,291 (F)
this is me pretending to not interact with you following me thread to thread to thread to thread.
:

Please familiarise yourself with the rules and markup syntax before posting.