Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Модуль graph для fpc  (Прочитано 2952 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн skyther

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Модуль graph для fpc
« : 16 Августа 2009, 16:22:30 »
Пока реализованы:
InitGraph() / CloseGraph()
SetColor()
PutPixel()
Line() / LineTo() / MoveTo()
OutTextXY()
И KeyPressed() хотя она изначально не отсюда.
Размер окна выставлен фиксированый 640х480.
Надеюсь кому-нибудь пригодится ;)

Оффлайн Kwah

  • Старожил
  • *
  • Сообщений: 1442
  • Ubuntu 17.10
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #1 : 16 Августа 2009, 20:01:33 »
Велосипед?

Цитировать
$ aptitude show fp-units-gfx
Package: fp-units-gfx
...
Description: Free Pascal - graphics libraries units
...
 This package contains Free Pascal units with bindings for:
 * opengl :OpenGL
 * forms : Forms 0.88
 * svgalib : Svgalib
 * ggi : General Graphical Interface
 * libgd
 * libpng
 * graph
 * openal
 * cairo
Homepage: http://www.freepascal.org/

Оффлайн skyther

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #2 : 16 Августа 2009, 20:37:03 »
скорее костыль ;) оно под libvga, а мое под иксы

Оффлайн Аndreich

  • Любитель
  • *
  • Сообщений: 56
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #3 : 17 Августа 2009, 18:57:33 »
Как мне кажется, вещь крайне полезная, даже не смотря на то, что исключительно под иксы... не кроссплатформенная то есть! Со стандартным модулем graph проблем не оберешься, и если этот модуль их решает, то автоу твердый "плюс один".

Конечно, нужно добавить функции типа Rectangle, Circle,.. и т.д., но начало положено.

P.S. У меня есть готовая реализация алгоритма рисования окружности, как доберусь домой обязательно здесь выложу.

Оффлайн skyther

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #4 : 17 Августа 2009, 19:04:02 »
Кросплатформенную делать не стал, под оффтопик есть нормальная реализация.
Окружности силами иксов рисуются http://tronche.com/gui/x/xlib/graphics/drawing/XDrawArc.html надо просто процедуру добавить...

Оффлайн Аndreich

  • Любитель
  • *
  • Сообщений: 56
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #5 : 18 Августа 2009, 15:05:03 »
Цитата: skyther
Окружности силами иксов рисуются http://tronche.com/gui/x/xlib/graphics/drawing/XDrawArc.html надо просто процедуру добавить...
В таком случае нет смысла перегружать модуль сторонними алгоритмами. )
А с прямоугольниками как дела обстоят?

Оффлайн skyther

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #6 : 18 Августа 2009, 15:28:25 »
Это же просто 4 линии.

Оффлайн Аndreich

  • Любитель
  • *
  • Сообщений: 56
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #7 : 18 Августа 2009, 16:42:10 »
Ну так я про то и спрашиваю,.. нужно ли самому писать процедуру для проведения этих четырех линий или же в иксах есть стандартная "коробка".

Оффлайн skyther

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #8 : 18 Августа 2009, 17:34:06 »

Оффлайн CrazyAlex25

  • Любитель
  • *
  • Сообщений: 73
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #9 : 18 Августа 2009, 18:17:02 »
Свяжитесь с разрабами fpc может они внесутэтот модуль в svn и тогда будете его пилить группой :)

Оффлайн Аndreich

  • Любитель
  • *
  • Сообщений: 56
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #10 : 18 Августа 2009, 18:50:46 »
Свяжитесь с разрабами fpc может они внесутэтот модуль в svn и тогда будете его пилить группой :)

А что, хорошая идея! :) Для начала можно продублировать тему на www.freepascal.ru там есть люди, принимающие непосредственное участие в разработке FPC, возможно они смогут помочь.

Оффлайн Namolem

  • Любитель
  • *
  • Сообщений: 54
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #11 : 09 Октября 2009, 23:24:22 »
в чем проблема? добавил в graph.pas

procedure FillArc(X,Y,Angle1,Angle2,R :Integer);
implementation
procedure FillArc(X,Y,Angle1,Angle2,R :Integer);

begin

XFillArc(TheDisplay, TheDrawable, TheGC,  X, Y, R, R, Angle1, Angle2);

end;

и мой код
program asd;
Uses graph;
const
grDriver = 0;
var
grMode : integer;
//i : integer;

begin
grMode :=0;
InitGraph(grDriver,grMode,'graph.pas');
FillArc(600,300,0,90,60);
repeat until keypressed;
CloseGraph;
end.


запускается и пустой экран
Asus PRO61Z Turion X2 2ГГц 4Gb 1Tb Ubuntu 9.04 x6

Оффлайн skyther

  • Автор темы
  • Новичок
  • *
  • Сообщений: 14
    • Просмотр профиля
Re: Модуль graph для fpc
« Ответ #12 : 14 Октября 2009, 19:42:43 »
SetColor(16);
FillArc(0,0,0,360*64,60); //читайте доку ;)

 

Страница сгенерирована за 0.039 секунд. Запросов: 25.