라벨이 class인 게시물 표시

파이썬[Python]: kivy, OpenGL ES - 삼각형(단색) 그리기

이미지
kivy.graphics 모듈 - OpenGL ES /// 설명 단색의 삼각형을 그립니다. 참고: OpenGL ES 모듈 목록 reference https://www.youtube.com/playlist?list=PL1P11yPQAo7qEnF_EysHOBUfF0AzUz3jh /// 예제 main.py 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 import  kivy   kivy.require( '2.0.0' )   from  kivy.app  import  App from  kivy.core.window  import  Window from  kivy.resources  import  resource_find from  kivy.graphics  import   * from  kivy.uix.widget  import  Widget   Window.clearcolor  =  ( 1 ,  1 ,  1 ,  1 ) Window.size  =  ( 563 ,  1001 ) Window.top, Window.left  =   30 ,  2900   #           positions vertices  =  [ - 0. 5 ,  - 0. 5 ,  0. 0 ,               0. 5 ,  - 0. 5 ,  0. 0 ,               0. 0 ,   0. 5 ,  0. 0 ]   indices  =  [ 0 ,  1 ,  2 ]   fmt  =  [(b 'pos' ,  3 ,  'float' )]     class  FantasticApp(App):      def  scene( self ):         PushMatrix()         Mesh(vertices = vertices, indic

파이썬[Python]: kivy - Vector 클래스

이미지
kivy.vector 모듈 - Vector 클래스(class) /// 설명 2D vector (x, y) 를 표현합니다. 참고: utils to wealkproxy 모듈 목록 ※ 형식 Vector(*largs) reference https://kivy.org/doc/stable/api-kivy.vector.html /// 예제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 import  kivy   kivy.require( '2.0.0' )   from  kivy.app  import  App from  kivy.core.window  import  Window from  kivy.uix.boxlayout  import  BoxLayout from  kivy.uix.button  import  Button from  kivy.uix.label  import  Label from  kivy.vector  import  Vector   Window.clearcolor  =  ( 1 ,  1 ,  1 ,  1 ) Window.size  =  ( 563 ,  1001 ) Window.top, Window.left  =   30 ,  2900     class  FantasticApp(App):      def  _bt_input( self , bt_inst):         v1  =  Vector( 0 ,  0 )         v2  =  Vector( 100 ,  50 )          self .lb.text  =   '\n' .join([f 'v1[0]: {v1[0]}, v1[1]: {v1[1]}' ,                                   f 'v2[0]: {v2[0]}, v2[1]: {v2[1]}' ,  

파이썬[Python]: kivy - PushMatrix 클래스

이미지
kivy.graphics 모듈 - PushMatrix 클래스(class) /// 설명 context의 행렬(matrix) 스택에 matrix 를 저장합니다. 참고: graphics 모듈 목록 ※ 형식 PushMatrix(*args, **kwargs) reference https://kivy.org/doc/stable/api-kivy.graphics.html /// 예제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 import  kivy   kivy.require( '2.0.0' )   from  kivy.app  import  App from  kivy.core.window  import  Window from  kivy.graphics  import  Color, Rectangle, Rotate, \                           PushMatrix, PopMatrix from  kivy.uix.boxlayout  import  BoxLayout from  kivy.uix.button  import  Button from  kivy.uix.widget  import  Widget from  random  import  random   Window.clearcolor  =  ( 1 ,  1 ,  1 ,  1 ) Window.size  =  ( 563 ,  1001 ) Window.top, Window.left  =   30 ,  2900     class  FantasticApp(App):      def  _bt_push_pop( self , bt_inst):          with   self .w.canvas.before:             Color(random(),  1 ,  1 , mode = 'hsv' )

파이썬[Python]: kivy - InstructionGroup 클래스

이미지
kivy.graphics 모듈 - InstructionGroup 클래스(class) /// 설명 Instruction의 그룹을 형성합니다. 참고: graphics 모듈 목록 ※ 형식 InstructionGroup(**kwargs) reference https://kivy.org/doc/stable/api-kivy.graphics.html /// 예제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 import  kivy   kivy.require( '2.0.0' )   from  kivy.app  import  App from  kivy.core.window  import  Window from  kivy.graphics  import  Color, Rectangle, Fbo, \                           InstructionGroup from  kivy.uix.widget  import  Widget   Window.clearcolor  =  ( 1 ,  1 ,  1 ,  1 ) Window.size  =  ( 563 ,  1001 ) Window.top, Window.left  =   30 ,  2900     class  FantasticApp(App):      def  build( self ):         w  =  Widget()           rect_size  =  ( 100 ,  100 )           a  =  InstructionGroup()         a.add(Color( 1 ,  0 ,  0 ,  0. 3 ))         a.add(Rectangle(pos = w.pos, size = rect_size))           b  =  In

파이썬[Python]: kivy - Fbo 클래스

이미지
kivy.graphics 모듈 - Fbo 클래스(class) /// 설명 offscreen 윈도우 같은 개념으로, 텍스쳐에 이 Fbo를 활성화 시킬 수 있습니다. 참고: graphics 모듈 목록 ※ 형식 Fbo(*args, **kwargs) reference https://kivy.org/doc/stable/api-kivy.graphics.html https://kivy.org/doc/stable/api-kivy.graphics.fbo.html /// 예제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 import  kivy   kivy.require( '2.0.0' )   from  kivy.app  import  App from  kivy.core.window  import  Window from  kivy.graphics  import  Color, Rectangle, Fbo from  kivy.uix.widget  import  Widget   Window.clearcolor  =  ( 1 ,  1 ,  1 ,  1 ) Window.size  =  ( 563 ,  1001 ) Window.top, Window.left  =   30 ,  2900     class  FantasticApp(App):      def  build( self ):         w  =  Widget()            with  w.canvas:              # create the fbo              self .fbo  =  Fbo(size = ( 256 ,  256 ))                # show our fbo on the widget in different size             Color( 1 ,  1 ,  1 )

파이썬[Python]: kivy - BorderImage 클래스

이미지
kivy.graphics 모듈 - BorderImage 클래스(class) /// 설명 테두리에 이미지를 부여합니다. 참고: graphics 모듈 목록 ※ 형식 BorderImage(**kwargs) reference https://kivy.org/doc/stable/api-kivy.graphics.html /// 예제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 import  kivy   kivy.require( '2.0.0' )   from  kivy.app  import  App from  kivy.core.window  import  Window from  kivy.graphics  import  BorderImage from  kivy.uix.boxlayout  import  BoxLayout from  kivy.uix.image  import  Image from  kivy.uix.label  import  Label   Window.clearcolor  =  ( 1 ,  1 ,  1 ,  1 ) Window.size  =  ( 563 ,  1001 ) Window.top, Window.left  =   30 ,  2900     class  FantasticApp(App):      def  update_pos( self , inst, value):         img_bottom_left  =  ( self .img.size[ 0 ]  -   self .img.norm_image_size[ 0 ])  /   2 , \                           ( self .img.size[ 1 ]  -   self .img.norm_image_size[ 1 ])  /   2         b_pos  =  ( se

파이썬[Python]: kivy - BindTexture 클래스

이미지
kivy.graphics 모듈 - BindTexture 클래스(class) /// 설명 Texture 를 연결(bind)하여 줍니다. 참고: graphics 모듈 목록 ※ 형식 BindTexture(**kwargs) reference https://kivy.org/doc/stable/api-kivy.graphics.html https://kivy.org/doc/stable/examples/gen__canvas__multitexture__py.html /// 예제 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 import  kivy   kivy.require( '2.0.0' )   from  kivy.app  import  App from  kivy.base  import  EventLoop from  kivy.core.window  import  Window from  kivy.graphics  import  RenderContext, Color, \                           Rectangle, BindTexture from  kivy.uix.widget  import  Widget from  kivy.uix.boxlayout  import  BoxLayout from  kivy.uix.image  import  Image from  kivy.uix.label  import  Label   Window.clearcolor  =  ( 1 ,  1 ,  1 ,  1 ) Window.size  =  ( 563 ,  1001 )