这个挺有意思:Ruby 的 UI 库向来不怎么样,所以这里用的 Gosu 这个2d游戏引擎(其实是包装了Gosu 的 Chingu),顺便加了点料。
[代码] mona_lisa.rb
01 |
#!/usr/bin/env ruby |
02 |
require "chingu"
|
03 |
04 |
include Gosu |
05 |
include Chingu |
06 |
07 |
class MonaLisa < Chingu::Window
|
08 |
def initialize
|
09 |
super ( 600 , 550 , false )
|
10 |
self .input = { :esc => :exit }
|
11 |
push_game_state(Paint)
|
12 |
end
|
13 |
end |
14 |
15 |
class Pix < Chingu::GameObject
|
16 |
traits :velocity
|
17 |
def initialize(options)
|
18 |
super (options)
|
19 |
end
|
20 |
21 |
def drop
|
22 |
if rand( 2 ) == 0
|
23 |
@velocity_x = rand( 0 .. 2 )
|
24 |
else
|
25 |
@velocity_x = -rand( 0 .. 2 )
|
26 |
end
|
27 |
@velocity_y = rand( 0 .. 3 )
|
28 |
@acceleration_y = 1
|
29 |
end
|
30 |
31 |
def setup
|
32 |
@image = Image[ "rect.png" ]
|
33 |
end
|
34 |
end |
35 |
36 |
class Paint < Chingu::GameState
|
37 |
38 |
def initialize
|
39 |
@ground_y = $window .height+ 20
|
40 |
super
|
41 |
end
|
42 |
43 |
def setup
|
44 |
super
|
45 |
IO .readlines( "media/ml" ). each do |line|
|
46 |
arr = line.chomp.split( "x" )
|
47 |
x = arr[ 0 ].to_i
|
48 |
y = arr[ 1 ].to_i
|
49 |
w = arr[ 2 ].to_i
|
50 |
h = arr[ 3 ].to_i
|
51 |
r = arr[ 4 ][ 0 ... 2 ].to_i( 16 )
|
52 |
g = arr[ 4 ][ 2 ... 4 ].to_i( 16 )
|
53 |
b = arr[ 4 ][ 4 ... 6 ].to_i( 16 )
|
54 |
|
55 |
end
|
56 |
self .input = { :space => :drop }
|
57 |
end
|
58 |
59 |
def drop
|
60 |
Pix. each { |pix| pix.drop }
|
61 |
end
|
62 |
63 |
def update
|
64 |
Pix. each do |p|
|
65 |
if p.y >= @ground_y
|
66 |
slower = p.velocity_y / 3
|
67 |
p.velocity_y = -(slower + rand(slower))
|
68 |
if rand( 2 ) == 0
|
69 |
p.velocity_x = rand( 0 . 4 )
|
70 |
p.acceleration_x = -(rand( 0 . 05 ))
|
71 |
else
|
72 |
p.velocity_x = -rand( 0 . 4 )
|
73 |
p.acceleration_x = (rand( 0 . 05 ))
|
74 |
end
|
75 |
end
|
76 |
end
|
77 |
super
|
78 |
end
|
79 |
end |
80 |
81 |
MonaLisa. new .show
|
相关推荐
使用html实现的蒙娜丽莎的微笑,可以用来学习的例子。适用于各种热爱编程的人员参考。
本项目“纯css蒙娜丽莎的微笑”是一个令人惊叹的实例,展示了CSS3的强大潜力,尤其是其盒阴影(box-shadow)属性的应用。这个作品完全通过CSS代码绘制了5000多个点,巧妙地组合成蒙娜丽莎那神秘的微笑,重现了文艺...
《蒙娜丽莎微笑揭秘》同步练习主要涵盖了语文学习中的字词注音、词语解释、文学常识、课文内容理解和分析等方面的知识点。这篇练习旨在帮助七年级学生深入理解课文《蒙娜丽莎微笑揭秘》,提升语文素养。 1. 字词...
《蒙娜丽莎微笑揭秘》同步练习精选的内容涵盖了对著名画家达·芬奇名画《蒙娜丽莎》的理解和探讨。这篇语文练习主要涉及以下几个知识点: 1. 文化艺术:《蒙娜丽莎》是意大利艺术大师莱昂纳多·达·芬奇的代表作,...
《蒙娜丽莎的微笑》不仅是一幅世界著名的画作,也是本文中探讨的主题。文章通过一部名为《蒙娜丽莎》的电影,引出20世纪50年代美国卫斯理女子学院的一场思想冲突。女教师凯瑟琳·沃森试图打破传统观念的束缚,鼓励...
同时,为了实现蒙娜丽莎的微笑效果,他们可能运用了图像滤波技术,如高斯模糊,来创造柔和的过渡效果,以及边缘检测算法,如Canny算法,来描绘出画像的轮廓。 在开源项目“Paint Mona Lisa Smile”中,我们还能看到...
当人们直视蒙娜丽莎的嘴巴时,中央视觉可能无法捕捉到微笑的微妙变化,而当我们稍微偏离视线,利用外围视觉观察时,微笑在视觉边缘反而变得更加明显。因此,这种差异体验并非源于画中人物的表情变化,而是我们视觉...
没错,今天我们要分享的就是这个使用纯CSS3,没有使用任何图片的蒙娜丽莎画像,实现原理是利用CSS3的阴影特性,逐层用不同的颜色渲染,从而形成这幅蒙娜丽莎巨作,当然有点模糊是肯定的,毕竟是通过投影渲染的,...
《蒙娜丽莎》的微笑被描述为既宁静又神秘,能够随着观察者的情绪和心境变化而产生不同的解读,这是它艺术魅力的核心所在。 首先,艺术的魅力在于其主观性和多元性。人们对于《蒙娜丽莎》微笑的理解因人而异,反映出...
特别地,关于蒙娜丽莎微笑的讨论引导学生通过品读、标记和想象,体验到画家如何巧妙地用笔触捕捉微笑的微妙之处,体会艺术作品中情感的传达。 教师强调想象在艺术欣赏中的重要性,指出想象力能够赋予静态的艺术作品...
这部分内容首先提到了“瑶公特”(即蒙娜丽莎)微笑的神秘性和捉摸不定,指出这种微笑与东方艺术的无穷和不定相契合,如中国诗画中的意境。接着,对比了达·芬奇与波提切利等艺术家的区别,强调达·芬奇在表现人物...
此外,据法国巴黎卢浮宫的研究,蒙娜丽莎的微笑包含了高兴、厌恶、恐惧和愤怒等复杂情感的混合,这是通过现代技术——情感识别软件分析得出的结论,再次证实了这微笑的丰富性和多变性。这幅画作不仅是视觉艺术的杰作...
浙江省温州市瓯海区实验八年级历史与社会下册《蒙娜丽莎的微笑、教皇奶牛的解放》教案 人教版.doc
通过对画作的详细分析和对蒙娜丽莎微笑的多重解读,文章不仅展现了达·芬奇的艺术才华,也揭示了艺术作品如何跨越时空,触动人的心灵。这篇文章的成功之处,在于它使读者在文字中感受到了艺术的力量,并且激发了人们...
蒙娜丽莎集团作为瓷砖行业的领军企业,其在产品创新、市场拓展及成本控制方面的卓越表现,使其成为中国瓷砖行业中的佼佼者。本文将对蒙娜丽莎在这些关键领域的实践及其成效进行深度解析。 产品是企业竞争力的直接...
在这样的背景下,“蒙娜丽莎抠图软件”的出现,无疑为图像处理领域带来了革命性的变革。 “蒙娜丽莎抠图软件”,正如其名,传承了达芬奇名画中对细节的精细描绘和对美的极致追求。这款软件利用了最前沿的人工智能...
蒙娜丽莎:首次公开发行股票并上市招股说明书.PDF
2020年,蒙娜丽莎实现营业收入48.64亿元,年复合增长率(CAGR)为22.48%,归母净利润达到5.66亿元,CAGR为39.47%。2021年前三季度,公司营业收入和归母净利润分别同比增长47.69%和10.07%,显示出强劲的增长势头。 ...
他的作品《蒙娜丽莎》以其神秘的微笑和独特的艺术风格成为了世界艺术殿堂中的瑰宝。 《蒙娜丽莎》的影响力深远,其微笑被誉为世界上最神秘的微笑,吸引了无数观众的目光。这幅画作的特点在于其淡雅的色彩、精细的...