Kivy: ๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด์˜ ์ˆœ์ฐจ ์ด๋ฏธ์ง€ ์ฒ˜๋ฆฌ ๋ฌธ์ œ

์— ๋งŒ๋“  2015๋…„ 02์›” 02์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: kivy/kivy

kivy.uix.image๊ฐ€ ํฌํ•จ๋œ Rasberry Pi(PipaOS/Raspbian)๋ฅผ ํ†ตํ•ด kivy์—์„œ ์ˆœ์ฐจ ์ด๋ฏธ์ง€ .zip(.gif๊ฐ€ ์•„๋‹˜)์„ '์žฌ์ƒ'ํ•˜๋ ค๊ณ  ํ•  ๋•Œ ์ฒ˜์Œ 20๊ฐœ ์ •๋„์˜ ํ”„๋ ˆ์ž„์€ ๋ฌธ์ œ ์—†์ด ์žฌ์ƒ๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. , ๋‚˜๋จธ์ง€๋Š” ์ž˜๋ฆฝ๋‹ˆ๋‹ค.

๋‚˜๋จธ์ง€ ์—ฐ์† ์ด๋ฏธ์ง€ ํ”„๋ ˆ์ž„์€ ์ผ๋ฐ˜ ๊ฒ€์ •์ƒ‰ ์บ”๋ฒ„์Šค๋กœ ํ‘œ์‹œ๋˜์ง€๋งŒ ํ”„๋ ˆ์ž„ ์ง€์† ์‹œ๊ฐ„์€ ์—ฌ์ „ํžˆ โ€‹โ€‹์œ ํšจํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. (์ˆœ์ฐจ ์ด๋ฏธ์ง€๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฃจํ”„์— ~3์ดˆ๊ฐ€ ๊ฑธ๋ฆฌ๊ณ , ์ด๋ฏธ์ง€๋Š” ~0.8์ดˆ ํ›„์— ๊ฒ€๊ฒŒ ๋ณ€ํ•˜๊ณ , ๋‹ค์Œ 2.2์ดˆ ๋™์•ˆ ๊ฒ€๊ฒŒ ๋‚จ์•„ ์žˆ๋‹ค๊ฐ€ ๋ฃจํ”„๋ฅผ ๋‹ค์‹œ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.)

ํ…Œ์ŠคํŠธ์— ์‚ฌ์šฉํ•  ์ฝ”๋“œ:

''' to be saved as main.py '''

from kivy.app import App
from kivy.lang import Builder
from kivy.uix.image import Image
from kivy.uix.boxlayout import BoxLayout


Builder.load_string('''
<Interface>:
    orientation: 'vertical'
    Image:
        source: 'loader_anim.zip'
        anim_delay: 0.05
''')

class Interface(BoxLayout):
    pass

class SettingsApp(App):
    def build(self):
        return Interface()

SettingsApp().run()

''' save this [https://github.com/LovelyHorse/prometheus/blob/master/assets/loader_anim.zip?raw=true] file in the same directory as "loader_anim.zip", and run main.py '''

์ด ๋ฌธ์ œ๋ฅผ ๋’ท๋ฐ›์นจํ•˜๊ณ  ์‹ถ์œผ์‹ ๊ฐ€์š”? ํ˜„์ƒ๊ธˆ์„ ๊ฒŒ์‹œํ•˜์‹ญ์‹œ์˜ค! ์šฐ๋ฆฌ๋Š” Bountysource ๋ฅผ ํ†ตํ•ด ํ˜„์ƒ๊ธˆ์„ ๋ฐ›์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์—ฌ์ „ํžˆ ์ด ์Šค๋ ˆ๋“œ๋ฅผ ๋ณด๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ด๊ฒƒ์€ ์•„๋งˆ๋„ Kivy๋งŒ์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  ๊ฒฐ๊ตญ ๋‚ด ๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด์—์„œ GPU ์ „์šฉ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์˜ฌ๋ ค์„œ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. Kivy๋Š” png์˜ ์ „์ฒด ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋“œํ•  ์ˆ˜ ์—†๊ณ  ๊ณต๊ฐ„์ด ์—†๋Š” ์ด๋ฏธ์ง€๋งŒ ์ž˜๋ผ๋ƒ…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋˜ํ•œ Windows(๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฌธ์ œ๊ฐ€ ๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ)์—์„œ ๋ฌธ์ œ๊ฐ€ ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ์ด์œ ๋ฅผ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์†”๋ฃจ์…˜์€ ์•ž์„œ ๋งํ–ˆ๋“ฏ์ด GPU์— ๋” ๋งŽ์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ• ๋‹นํ•˜๊ฑฐ๋‚˜ png์˜ ํ’ˆ์งˆ์„ ์•ฝ๊ฐ„ ๋‚ฎ์ถ”๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค(์˜ˆ: TinyPNG.com). ๋„์›€์ด ๋˜์—ˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค!

๋ชจ๋“  4 ๋Œ“๊ธ€

๋˜ํ•œ ๋™์ผํ•œ .zip์ด Windows์— ์™„๋ฒฝํ•˜๊ฒŒ ํ‘œ์‹œ๋œ๋‹ค๋Š” ์ ์„ ์–ธ๊ธ‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ด๊ฒƒ์— +1. ๋‹ค๋ฅธ zip์œผ๋กœ๋„ ๋™์ผํ•œ ๋ฌธ์ œ๋กœ ํ…Œ์ŠคํŠธํ–ˆ์Šต๋‹ˆ๋‹ค.

์—ฌ์ „ํžˆ ์ด ์Šค๋ ˆ๋“œ๋ฅผ ๋ณด๊ณ  ์žˆ๋Š” ์‚ฌ๋žŒ๋“ค์—๊ฒŒ ์ด๊ฒƒ์€ ์•„๋งˆ๋„ Kivy๋งŒ์˜ ๋ฌธ์ œ๊ฐ€ ์•„๋‹ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  ๊ฒฐ๊ตญ ๋‚ด ๋ผ์ฆˆ๋ฒ ๋ฆฌ ํŒŒ์ด์—์„œ GPU ์ „์šฉ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์˜ฌ๋ ค์„œ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. Kivy๋Š” png์˜ ์ „์ฒด ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ๋ฉ”๋ชจ๋ฆฌ์— ๋กœ๋“œํ•  ์ˆ˜ ์—†๊ณ  ๊ณต๊ฐ„์ด ์—†๋Š” ์ด๋ฏธ์ง€๋งŒ ์ž˜๋ผ๋ƒ…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋˜ํ•œ Windows(๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋ฌธ์ œ๊ฐ€ ๋˜์ง€ ์•Š๋Š” ๊ฒฝ์šฐ)์—์„œ ๋ฌธ์ œ๊ฐ€ ์™„๋ฒฝํ•˜๊ฒŒ ์ž‘๋™ํ•˜๋Š” ์ด์œ ๋ฅผ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์†”๋ฃจ์…˜์€ ์•ž์„œ ๋งํ–ˆ๋“ฏ์ด GPU์— ๋” ๋งŽ์€ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ํ• ๋‹นํ•˜๊ฑฐ๋‚˜ png์˜ ํ’ˆ์งˆ์„ ์•ฝ๊ฐ„ ๋‚ฎ์ถ”๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค(์˜ˆ: TinyPNG.com). ๋„์›€์ด ๋˜์—ˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค!

์ด ๋ฌธ์ œ๋Š” ์ตœ๊ทผ ํ™œ๋™์ด ์—†์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ž๋™์œผ๋กœ ์˜ค๋ž˜๋œ ๊ฒƒ์œผ๋กœ ํ‘œ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋” ์ด์ƒ ํ™œ๋™์ด ์—†์œผ๋ฉด ํ์‡„๋ฉ๋‹ˆ๋‹ค. ๊ท€ํ•˜์˜ ๊ธฐ์—ฌ์— ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰