DRAW

Start hier uw open source projecten

DRAW

Berichtdoor bluatigro » vr feb 05, 2010 4:03 pm

dit is n begin van n sprite en achtergrond
teken programma
Code: Selecteer alles
WindowWidth = 700
WindowHeight = 500
global black , red , green , yellow
global blue , magenta , cyan , white
global orange , gray , purple , pink
black   = rgb(   0 ,   0 ,   0 )
red     = rgb( 255 ,   0 ,   0 )
green   = rgb(   0 , 255 ,   0 )
yellow  = rgb( 255 , 255 ,   0 )
blue    = rgb(   0 ,   0 , 255 )
magenta = rgb( 255 ,   0 , 255 )
cyan    = rgb(   0 , 255 , 255 )
white   = rgb( 255 , 255 , 255 )
pink    = rgb( 255 , 127 , 127 )
orange  = rgb( 255 , 127 ,   0 )
gray    = rgb( 127 , 127 , 127 )
purple  = rgb( 127 ,   0 , 127 )
global MX , MY , newx , newy , oldx , oldy , picx , picy
global freedraw , linedraw , elipsedraw , rectdraw , draw , piedraw
global filename$ , elipsefildraw , rectfildraw , piefildraw
freedraw = 0 : linedraw = 1 : elipsedraw = 2 : rectdraw = 3
elipsefildraw = 4 : rectfildraw = 5 : pidraw = 6 : piefildraw = 7
menu #m , "File" _
        , "New"     , [new] _
        , "Open"    , [open] _
        , "Save"    , [save] _
        , "Save as" , [saveas]
menu #m , "Tools" _
        , "Free draw"       , [freedraw] _
        , "Line"            , [line] _
        , "Elipse"          , [elipse] _
        , "ElipseFilled"    , [elipsefil] _
        , "Rectangle"       , [rectangle] _
        , "RectangleFilled" , [rectfil] _
        , "Pie"             , [piedraw] _
        , "PieFilled"       , [piefil]
menu #m , "Color" _
        , "Black"   , [black] _
        , "Red"     , [red] _
        , "Green"   , [green] _
        , "Yellow"  , [yellow] _
        , "Blue"    , [blue] _
        , "Magenta" , [magenta] _
        , "Cyan"    , [cyan] _
        , "White"   , [white] _
        , "Pink"    , [pink] _
        , "Orange"  , [orange] _
        , "Gray"    , [gray] _
        , "Purple"  , [purple]

open "Draw" for graphics as #m
  #m "trapclose [quit]"
  #m "when leftButtonMove [leftButton]"
wait
[leftButton]
''  select case draw and 15
''    case linedraw
''    case elipsedraw
''    case elipsefildraw
''    case rectdraw
''    case rectfildraw
''    case piedraw
''    case piefildraw
''    case else
      #m "up"
      #m "down"
      #m "set " ; MouseX ; " " ; MouseY
      #m "up"
      #m "flush"
''  end select
wait
''============================================file
[new]
  #m "cls"
''todo : ask how big picture must be
  picx = 700 ''to be changed
  picy = 500 ''to be changed
  filename$ = "noname.bmp"
wait
[open]
''todo : ask name & path of file then load
wait
[saveas]
''todo : ask name & path of file
[save]
  #m "getbmp bmp 0 0 " ; picx ; " " ; picy
  #m "bmpsave bmp " ; filename$
wait
''============================================tools
[freedraw]  draw = freedraw      : wait
[line]      draw = linedraw      : wait
[elipse]    draw = elipsedraw    : wait
[elipsefil] draw = elipsefildraw : wait
[rectangle] draw = rectdraw      : wait
[rectfil]   draw = rectfildraw   : wait
[pie]       draw = piedraw       : wait
[piefil]    draw = piefildraw    : wait
''============================================color
function rgb( r , g , b )
  r = r and 255
  g = g and 255
  b = b and 255
  rgb = r + g * 256 + b * 256 ^ 2
end function
sub setcolor clr
  r = clr and 255
  g = int( clr / 256 ) and 255
  b = int( clr / 256 ^ 2 ) and 255
  #m "color " ; r ; " " ; g ; " "; b
end sub
[black]   call setcolor black   : wait
[red]     call setcolor red     : wait
[green]   call setcolor green   : wait
[yellow]  call setcolor yellow  : wait
[blue]    call setcolor blue    : wait
[magenta] call setcolor magenta : wait
[cyan]    call setcolor cyan    : wait
[white]   call setcolor white   : wait
[pink]    call setcolor pink    : wait
[orange]  call setcolor orange  : wait
[gray]    call setcolor gray    : wait
[purple]  call setcolor purple  : wait
[quit]
  close #m
end
bluatigro
 
Berichten: 306
Geregistreerd: za sep 27, 2008 6:01 pm

Re: DRAW

Berichtdoor bluatigro » ma feb 15, 2010 10:31 am

update :
fildialog toegevoegt
colordialog toegevoegt
tools menu toegevoegt + struktuur
size menu toegevoegt + struktuur gevult

todo :
load picture en op scherm zetten
rubber band
tools coderen

Code: Selecteer alles
WindowWidth = 700
WindowHeight = 500
global MX , MY , newx , newy , oldx , oldy , picx , picy , bizzy
global freedraw , linedraw , elipsedraw , rectdraw , draw , piedraw
global filename$ , elipsefildraw , rectfildraw , piefildraw
global lastcolor$ , backcolor$
global grab , splat , paint , relipse , relipsefil
freedraw = 0 : linedraw = 1 : elipsedraw = 2 : rectdraw = 3
elipsefildraw = 4 : rectfildraw = 5 : pidraw = 6 : piefildraw = 7
grab = 8 : splat = 9 : relipse = 10 : relpiefil = 11
menu #m ,  "File"               _
        ,  "New"     , [new]    _
        ,  "Open"    , [open]   _
        ,  "Save"    , [save]   _
        ,  "Save as" , [saveas] _
        ,|,"Exit"    , [quit]
menu #m , "Tools" _
        , "Grab spr"        , [grab]      _
        , "Splat spr"       , [splat]     _
        ,|,"Paint"          , [paint]     _
        , "Free draw"       , [freedraw]  _
        , "Line"            , [line]      _
        , "m Elipse"          , [elipse]    _
        , "m ElipseFilled"    , [elipsefil] _
        , "r Elipse"          , [relipse]   _
        , "r ElipseFilled"    , [relipsefil] _
        , "Rectangle"       , [rectangle] _
        , "RectangleFilled" , [rectfil]   _
        , "Pie"             , [piedraw]   _
        , "PieFilled"       , [piefil]
menu #m , "Size" _
        , "1" , [1] _
        , "2" , [2] _
        , "3" , [3] _
        , "4" , [4] _
        , "5" , [5] _
        , "6" , [6] _
        , "7" , [7] _
        , "8" , [8] _
        , "9" , [9] _
        , "10" , [10] _
        , "11" , [11] _
        , "12" , [12]
menu #m , "Color"               _
        , "Back color" , [backcolor] _
        , "Any color"  , [anycolor]  _
        ,|, "Black"    , [black]   _
        , "Red"        , [red]     _
        , "Green"      , [green]   _
        , "Yellow"     , [yellow]  _
        , "Blue"       , [blue]    _
        , "Magenta"    , [magenta] _
        , "Cyan"       , [cyan]    _
        , "White"      , [white]   _
        , "Pink"       , [pink]    _
        , "Orange"     , [orange]  _
        , "Gray"       , [gray]    _
        , "Purple"     , [purple]
lastcolor$ = "black"
open "Draw It 1.0" for graphics as #m
  #m "trapclose [quit]"
  #m "when leftButtonMove [down]"
  #m "when mouseMove [move]"
wait
[down]
  #m "color white"
  #m "rule " ; _R2_NOTXORPEN
  select case draw
''    case grab
''    case splat
''    case paint
    case freedraw
      #m "rule " ; _R2_COPYPEN
      #m "color " ; lastcolor$
      #m "up"
      #m "down"
      #m "set " ; MouseX ; " " ; MouseY
      #m "up"
      #m "flush"
    case linedraw
      #m "line " _
      ; oldx ; " " ; oldy ; " " _
      ; newx ; " " ; newy
      #m "line " _
      ; oldx ; " " ; oldy ; " " _
      ; MouseY ; " " ; MouseY
''    case elipsedraw
''    case elipsefildraw
''    case relipse
''    case reilpsefil
''    case rectdraw
''    case rectfildraw
''    case piedraw
''    case piefildraw
    case else
  end select
wait
[move]
  oldx = mousex
  oldy = mousey
  newx = mousex
  newy = mousey
wait
[up]
  #m "rule " ; _R2_COPYPEN
  #m "color " + lastcolor$
  #m "backcolor " + lastcolor$
  select case
''    case freedraw
''    case grab
''    case splat
''    case paint
    case linedraw
      #m "color " + lastcolor$
      #m "line " _
      ; oldx ; " " ; oldy ; " " _
      ; newx ; " " ; newy
''    case elipsedraw
''    case elipsefildraw
''    case rectdraw
''    case rectfildraw
''    case piedraw
''    case piefildraw
    case else
  end select
wait
''=========================================file
[new]
  #m "cls"
''todo : ask how big picture must be
  picx = 700 ''to be changed
  picy = 500 ''to be changed
  filename$ = "noname.bmp"
  colordialog "" , backcolor$
  #m "fill " ; backcolor$
wait
[open]
  filedialog "Load Picture" , "*.bmp" , filename$
''todo : put picture on sreen
wait
[saveas]
  filedialog "Save Picture" , "*.bmp" , filename$
[save]
  #m "getbmp bmp 0 0 " ; picx ; " " ; picy
  #m "bmpsave bmp " ; filename$
wait
''========================================tools
[grab]      draw = grab          : wait
[splat]     draw = splat         : wait
[paint]     draw = paint         : wait
sub paint x , y , clr$
end sub
function pixel( x , y )
end function
[freedraw]  draw = freedraw      : wait
[line]      draw = linedraw      : wait
[elipse]    draw = elipsedraw    : wait
[elipsefil] draw = elipsefildraw : wait
[rectangle] draw = rectdraw      : wait
[rectfil]   draw = rectfildraw   : wait
[pie]       draw = piedraw       : wait
[piefil]    draw = piefildraw    : wait
''========================================size
[1] #m "size 1" : wait
[2] #m "size 2" : wait
[3] #m "size 3" : wait
[4] #m "size 4" : wait
[5] #m "size 5" : wait
[6] #m "size 6" : wait
[7] #m "size 7" : wait
[8] #m "size 8" : wait
[9] #m "size 9" : wait
[10] #m "size 10" : wait
[11] #m "size 11" : wait
[12] #m "size 12" : wait
''========================================color
[backcolor] lastcolor$ = backcolor$ : wait
[anycolor]
  colordialog lastcolor$ , lastcolor$
wait
[black]     lastcolor$ = "black"   : wait
[red]       lastcolor$ = "red"     : wait
[green]     lastcolor$ = "green"   : wait
[yellow]    lastcolor$ = "yellow"  : wait
[blue]      lastcolor$ = "blue"    : wait
[magenta]   lastcolor$ = "magenta" : wait
[cyan]      lastcolor$ = "cyan"    : wait
[white]     lastcolor$ = "white"   : wait
[pink]      lastcolor$ = "255 127 127" : wait
[orange]    lastcolor$ = "255 127 000" : wait
[gray]      lastcolor$ = "127 127 127" : wait
[purple]    lastcolor$ = "127 000 127" : wait
[quit]
  close #m
end
bluatigro
 
Berichten: 306
Geregistreerd: za sep 27, 2008 6:01 pm


Keer terug naar OPEN SOURCE PROJECTEN

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers. en 1 gast

cron