jazykc  2013.3
upoljazykc
 All Classes Files Functions Variables Typedefs Macros Pages
Classes | Typedefs | Functions
canvas.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "canvas.h"

Go to the source code of this file.

Classes

struct  canvas_s
 

Typedefs

typedef struct canvas_s canvas
 

Functions

canvascanvas_create (int width, int height)
 
void canvas_set_point (canvas *c, int x, int y, char character)
 
int canvas_get_point (canvas *c, int x, int y)
 
void canvas_draw_rect (canvas *c, int x, int y, int width, int height, char ch)
 
void canvas_clear (canvas *c)
 
void canvas_print (canvas *c)
 
void canvas_output (canvas *c, FILE *f)
 

Function Documentation

void canvas_clear ( canvas c)

vycisti platno

Definition at line 51 of file canvas.c.

51  {
52  int i;
53  char *end;
54 //vyplnime mezerami:
55  memset(c->canvas, '.', c->height * (c->width+1));//na sirce mame o znak vice
56  for(i=0, end=c->canvas; i < c->height; i++) {
57  end[c->width]='\0'; end += c->width + 1;
58  }
59 }
char * canvas
Definition: canvas.c:21
canvas* canvas_create ( int  width,
int  height 
)

vytvori platno

Parameters
widthsirka platna
heightvyska platna
Returns
ukazatel na strukturu platna

Definition at line 31 of file canvas.c.

31  {
32  canvas *pcanvas;
33  pcanvas = malloc(sizeof *pcanvas);//note: sizeof *pcanvas misto sizeof(canvas)
34  pcanvas->width = width;
35  pcanvas->height = height;
36  pcanvas->canvas = (char*)malloc(width * height + height/*kvuli koncovym '\0'*/);
37  canvas_clear(pcanvas);
38  return pcanvas;
39 }
char * canvas
Definition: canvas.c:21
void canvas_clear(canvas *c)
Definition: canvas.c:51
void canvas_output ( canvas c,
FILE *  f 
)

vykresli obsah platna do souboru

Definition at line 75 of file canvas.c.

75  {
76 }
void canvas_print ( canvas c)

vykresli obsah platna na standardni vystup

Todo:
lze jako makro pomoci canvas_output()

Definition at line 65 of file canvas.c.

65  {
66  int i;
67  char *line;
68  for(i=0, line=c->canvas; i< c->height; i++) {
69  printf("%s\n", line);
70  line += c->width + 1;
71  }
72 }
char * canvas
Definition: canvas.c:21