Creacion DE UN Dibujo CON Movimientos Basicos EN DR Racket PDF

Title Creacion DE UN Dibujo CON Movimientos Basicos EN DR Racket
Author Jaime Andres Marin Alarcon
Course Programacion 1
Institution Universidad Tecnológica de Pereira
Pages 8
File Size 69.6 KB
File Type PDF
Total Downloads 80
Total Views 135

Summary

un trabajo que permite en uso de codigos de uso grafico para dar animacion a un dibujo basico...


Description

CREACION DE UN DIBUJO CON MOVIMIENTOS BASICOS EN DR RACKET

Jaime Andrés Marín Alarcón

Programación I

Ingeniería en Sistemas

Universidad tecnológica de Pereira 2017

CREACION DE UN DIBUJO CON MOVIMIENTOS BASICOS EN DR RACKET

(require (lib "graphics.ss" "graphics")) (open-graphics) (define v (open-viewport "CASITA" 1000 600))

(define (casa px py) (begin ((draw-solid-rectangle v) (make-posn (+ px -100) (+ py -100)) 1000 500 (make-rgb 0 0.2 0.9)) ((draw-solid-rectangle v) (make-posn (+ px 100) (+ py 100)) 195 195 (make-rgb 0.7 0 0.7)) ((draw-rectangle v) (make-posn (+ px 100) (+ py 100)) 195 195 (make-rgb 0 0 0)) ((draw-solid-ellipse v) (make-posn (+ px 120) (+ py 120)) 60 60 (make-rgb 0.9 1 0.6)) ((draw-ellipse v) (make-posn (+ px 120) (+ py 120)) 60 60 (make-rgb 0 0 0)) ((draw-solid-ellipse v) (make-posn (+ px 220) (+ py 120)) 60 60 (make-rgb 0.9 1 0.6)) ((draw-ellipse v) (make-posn (+ px 220) (+ py 120)) 60 60 (make-rgb 0 0 0)) ((draw-solid-polygon v) (list (make-posn 100 100) (make-posn 295 100) (make-posn 200 -40)) (make-posn px py) (make-rgb 0.5 0 0)) ((draw-polygon v) (list (make-posn 100 100) (make-posn 295 100) (make-posn 200 -40)) (makeposn px py) (make-rgb 0 0 0)) ((draw-solid-rectangle v) (make-posn (+ px 170) (+ py 225)) 50 70 (make-rgb 0.7 0.2 0.2)) ((draw-rectangle v) (make-posn (+ px 170) (+ py 225)) 50 70 (make-rgb 0 0 0)) ((draw-solid-rectangle v) (make-posn (+ px -100) (+ py 295)) 1000 300 (make-rgb 0 0.9 0.3)) ))

(define (sol px py) (begin ((draw-solid-ellipse v) (make-posn (+ px 400) (+ py 10)) 70 70 (make-rgb 1 0.9 0.5)) ((draw-ellipse v) (make-posn (+ px 400) (+ py 10)) 70 70 (make-rgb 0 0 0)) ))

(define (manzanas px py) (begin ((draw-solid-rectangle v) (make-posn (+ px 790) (+ py 225)) 30 70 (make-rgb 0.7 0.3 0.2)) ((draw-rectangle v) (make-posn (+ px 790) (+ py 225)) 30 70 (make-rgb 0 0 0)) ((draw-solid-ellipse v) (make-posn (+ px 750) (+ py 130)) 110 110 (make-rgb 0 0.5 0.4)) ((draw-ellipse v) (make-posn (+ px 750) (+ py 130)) 110 110 (make-rgb 0 0 0)) ((draw-solid-ellipse v) (make-posn (+ px 755) (+ py 190)) 20 20 (make-rgb 0.9 0 0.1)) ((draw-solid-ellipse v) (make-posn (+ px 790) (+ py 170)) 20 20 (make-rgb 0.9 0 0.1)) ((draw-solid-ellipse v) (make-posn (+ px 830) (+ py 190)) 20 20 (make-rgb 0.9 0 0.1)) ))

(define ( estrellas px py) (begin ((draw-solid-ellipse v) (make-posn (+ px 750) (+ py 50)) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px 650) (+ py 70 )) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px 500) (+ py 250)) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px 390) (+ py 200)) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px 370) (+ py -50)) 10 10 (make-rgb 1 1 1))

((draw-solid-ellipse v) (make-posn (+ px 0) (+ py 0)) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px -50) (+ py 190)) 10 10 (make-rgb 1 1 1)) ))

(define (carro px py) (begin ((draw-solid-rectangle v) (make-posn (+ px 500) (+ py 400)) 150 40 (make-rgb 0 0.3 0.9)) ((draw-solid-rectangle v) (make-posn (+ px 550) (+ py 370)) 70 40 (make-rgb 0 0.3 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 510) (+ py 430)) 30 30 (make-rgb 0 0 0)) ((draw-solid-ellipse v) (make-posn (+ px 607) (+ py 430)) 30 30 (make-rgb 0 0 0)) ((draw-solid-rectangle v) (make-posn (+ px 554) (+ py 380)) 30 20 (make-rgb 0 1 1)) ))

(define (avion px py) (begin ((draw-polygon v) (list (make-posn 500 50) (make-posn 550 50) (make-posn 550 100) (make-posn 565 50) (make-posn 600 50) (make-posn 605 42.5) (make-posn 600 35) (make-posn 600 35) (makeposn 565 35) (make-posn 550 -10) (make-posn 550 35) (make-posn 510 35) (make-posn 500 5) (make-posn 500 50)) (make-posn px py) (make-rgb 0 0 0)) ((draw-solid-polygon v) (list (make-posn 500 50) (make-posn 550 50) (make-posn 550 100) (make-posn 565 50) (make-posn 600 50) (make-posn 605 42.5) (make-posn 600 35) (make-posn 600 35) (make-posn 565 35) (make-posn 550 -10) (make-posn 550 35) (make-posn 510 35) (makeposn 500 5) (make-posn 500 50)) (make-posn px py) (make-rgb 0.6 0.7 0.7)) ((draw-solid-rectangle v) (make-posn (+ px 500) (+ py 400)) 150 40 (make-rgb 0 0.3 0.9)) ((draw-solid-rectangle v) (make-posn (+ px 550) (+ py 370)) 70 40 (make-rgb 0 0.3 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 510) (+ py 430)) 30 30 (make-rgb 0 0 0)) ((draw-solid-ellipse v) (make-posn (+ px 607) (+ py 430)) 30 30 (make-rgb 0 0 0)) ((draw-solid-rectangle v) (make-posn (+ px 554) (+ py 380)) 30 20 (make-rgb 0 1 1))

((draw-solid-ellipse v) (make-posn (+ px 750) (+ py 50)) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px 650) (+ py 70 )) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px 500) (+ py 250)) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px 390) (+ py 200)) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px 370) (+ py -50)) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px 0) (+ py 0)) 10 10 (make-rgb 1 1 1)) ((draw-solid-ellipse v) (make-posn (+ px -50) (+ py 190)) 10 10 (make-rgb 1 1 1)) ((draw-solid-rectangle v) (make-posn (+ px 790) (+ py 225)) 30 70 (make-rgb 0.7 0.3 0.2)) ((draw-rectangle v) (make-posn (+ px 790) (+ py 225)) 30 70 (make-rgb 0 0 0)) ((draw-solid-ellipse v) (make-posn (+ px 750) (+ py 130)) 110 110 (make-rgb 0 0.5 0.4)) ((draw-ellipse v) (make-posn (+ px 750) (+ py 130)) 110 110 (make-rgb 0 0 0)) ((draw-solid-ellipse v) (make-posn (+ px 755) (+ py 190)) 20 20 (make-rgb 0.9 0 0.1)) ((draw-solid-ellipse v) (make-posn (+ px 790) (+ py 170)) 20 20 (make-rgb 0.9 0 0.1)) ((draw-solid-ellipse v) (make-posn (+ px 830) (+ py 190)) 20 20 (make-rgb 0.9 0 0.1)) ((draw-solid-ellipse v) (make-posn (+ px 400) (+ py 10)) 70 70 (make-rgb 1 0.9 0.5)) ((draw-ellipse v) (make-posn (+ px 400) (+ py 10)) 70 70 (make-rgb 0 0 0))

))

(define (paisaje) (begin (casa 100 100) (sol 100 100) (manzanas 100 100) (estrellas 100 100) (carro 100 100) (avion 100 100)

)) (paisaje)

(define (borrarcasa px py) (begin ((draw-solid-polygon v) (list (make-posn 500 50) (make-posn 550 50) (make-posn 550 100) (makeposn 565 50) (make-posn 600 50) (make-posn 605 42.5) (make-posn 600 35) (make-posn 600 35) (make-posn 565 35) (make-posn 550 -10) (make-posn 550 35) (make-posn 510 35) (make-posn 500 5) (make-posn 500 50)) (make-posn px py) (make-rgb 0 0.2 0.9)) ((draw-solid-rectangle v) (make-posn (+ px 500) (+ py 400)) 150 40 (make-rgb 0 0.2 0.9)) ((draw-solid-rectangle v) (make-posn (+ px 550) (+ py 370)) 70 40 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 510) (+ py 430)) 30 30 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 607) (+ py 430)) 30 30 (make-rgb 0 0.2 0.9)) ((draw-solid-rectangle v) (make-posn (+ px 554) (+ py 380)) 30 20 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 750) (+ py 50)) 10 10 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 650) (+ py 70 )) 10 10 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 500) (+ py 250)) 10 10 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 390) (+ py 200)) 10 10 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 370) (+ py -50)) 10 10 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 0) (+ py 0)) 10 10 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px -50) (+ py 190)) 10 10 (make-rgb 0 0.2 0.9)) ((draw-solid-rectangle v) (make-posn (+ px 790) (+ py 225)) 30 70 (make-rgb 0 0.2 0.9)) ((draw-rectangle v) (make-posn (+ px 790) (+ py 225)) 30 70 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 750) (+ py 130)) 110 110 (make-rgb 0 0.2 0.9)) ((draw-ellipse v) (make-posn (+ px 750) (+ py 130)) 110 110 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 755) (+ py 190)) 20 20 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 790) (+ py 170)) 20 20 (make-rgb 0 0.2 0.9))

((draw-solid-ellipse v) (make-posn (+ px 830) (+ py 190)) 20 20 (make-rgb 0 0.2 0.9)) ((draw-solid-ellipse v) (make-posn (+ px 400) (+ py 10)) 70 70 (make-rgb 0 0.2 0.9)) ((draw-ellipse v) (make-posn (+ px 400) (+ py 10)) 70 70 (make-rgb 0 0.2 0.9)) ))

(define (movermanzanas px py inc n) (if (> n 0) (begin (manzanas px py) (sleep 0.1) (borrarcasa px py) (movermanzanas (+ px 1) py inc (- n 1)) )))

(define (moveravion px py inc n) (if (> n 0) (begin (avion px py) (sleep 0.1) (borrarcasa px py) (moveravion (+ px 1) py inc (- n 1)) )))

(define (moverestrellas px py inc n) (if (> n 0) (begin

(estrellas px py) (sleep 0.1) (borrarcasa px py) (moverestrellas (+ px 1) py inc (- n 1)) )))

(define (moversol px py inc n) (if (> n 0) (begin (sol px py) (sleep 0.1) (borrarcasa px py) (moversol (+ px 1) py inc (- n 1)) )))

(moveravion 100 100 1 300) (movermanzanas 100 300 1 100) (moverestrellas 100 100 1 300) (moversol 0 0 1 300)...


Similar Free PDFs