LINUX.ORG.RU

примеры рисования


0

0

Помогите найти примеров (желательно минимальных по коду) для выполнения следующих действий для наиболее распространеных тулкитов (qt, gtk, чистого X и возможно других).

Нужна программа, которая дает изображает 2-3 объекта (напимер линии или окружности) и дает возможность таскать их по полю мышкой. Причем объекты должны генерироваться для отрисовки "на лету" по своим параметрам. Так же необходимо нормально отрабатывать наложения объектов при перетаскивании. Извините за корявость мысли, думаю идея прнятна.

★★★★

/usr/share/doc/tk8.4/examples/items.tcl

sdio ★★★★★
()

Рисование линий.

// This software is Public domain

#include <X11/Xlib.h>

#define N 1000

int main() {
  Display *dpy;
  int black, white;
  Window win;
  GC gc;
  int i,j;
  int x1,y1,x2,y2;

  dpy = XOpenDisplay(NULL);
  black = BlackPixel(dpy, DefaultScreen(dpy));
  white = WhitePixel(dpy, DefaultScreen(dpy));
  win = XCreateSimpleWindow(dpy, DefaultRootWindow(dpy), 0, 0,
                                        640, 480, 0, black, white);
  XMapWindow(dpy, win);
  gc = XCreateGC(dpy, win, 0, NULL);
  XSetForeground(dpy, gc, black);
  XSelectInput(dpy, win, StructureNotifyMask);
  while(1) {
    XEvent event;
    XNextEvent(dpy, &event);
    if (MapNotify == event.type) {
      break;
    }
  }
  for (i=0; i<N; i++) {
  for (j=0; j<N; j++) {
    x1=(i+j)%640;
    y1=(i-j)%480;
    x2=(x1+x2)%640;
    y2=(x1-x2)%480;
    XDrawLine(dpy, win, gc, x1,y1,x2,y2);
  }
  }
  XFlush(dpy);
  return 0;
}

pacify ★★★★★
()

в догонку за sdio, про tk
программка рисования на Tcl/Tk (10k,~200 строчек)
(рисует квадраты, овалы,линии, которые можно таскать и сохранять всё безобразие в gif, jpeg)
http://wiki.tcl.tk/15386

MKuznetsov ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.