Цвет это что?
При использования родного TCanvas это обертка над TColor, а если буду использовать скажем OpenGL, то да, придётся наверно использовать dword для хранения цвета... Хотя, сейчас подумал, можно наверно сделать его универсальней, хранить цвет в dword, для класса цвета наверно ...
Найдено 148 результатов
- 16.04.2019 07:24:27
- Форум: Free Pascal Compiler
- Тема: Не получается унаследоваться от интерфейса
- Ответы: 12
- Просмотры: 21084
- 15.04.2019 15:44:47
- Форум: Free Pascal Compiler
- Тема: Не получается унаследоваться от интерфейса
- Ответы: 12
- Просмотры: 21084
Re: Не получается унаследоваться от интерфейса
Тогда я не понимаю, как в FPC можно реализовать концепцию отделения интерфейса от реализации Поясню:
Сделал интерфейс TR_IColor, сделал его реализацию
TR_IColor = interface
...
end;
CanvasColor = class(TInterfacedObject, TR_IColor)
...
end;
Далее у меня есть ...
Сделал интерфейс TR_IColor, сделал его реализацию
TR_IColor = interface
...
end;
CanvasColor = class(TInterfacedObject, TR_IColor)
...
end;
Далее у меня есть ...
- 15.04.2019 12:58:15
- Форум: Free Pascal Compiler
- Тема: Не получается унаследоваться от интерфейса
- Ответы: 12
- Просмотры: 21084
Re: Не получается унаследоваться от интерфейса
Это у меня интерфейс общего типа, и отдельно его реализация в зависимости от подсистемы. Грубо говоря, будет два класса, унаследованы от этого интерфейса, при инициализации программы, будет передаваться тот или иной класс реализации, в зависимости от того что доступно. Скажем, если я буду рисовать в ...
- 15.04.2019 12:16:38
- Форум: Free Pascal Compiler
- Тема: Не получается унаследоваться от интерфейса
- Ответы: 12
- Просмотры: 21084
Re: Не получается унаследоваться от интерфейса
Спасибо )
Добавлено спустя 27 минут 27 секунд:
Можно ещё вопрос? Реализую интерфейс
TR_IColor = interface
function Red() : byte;
function Green() : byte;
function Blue() : byte;
function RGBToColor(R, G, B: Byte): TR_IColor;
end;
реализация
CanvasColor = class ...
Добавлено спустя 27 минут 27 секунд:
Можно ещё вопрос? Реализую интерфейс
TR_IColor = interface
function Red() : byte;
function Green() : byte;
function Blue() : byte;
function RGBToColor(R, G, B: Byte): TR_IColor;
end;
реализация
CanvasColor = class ...
- 15.04.2019 10:15:37
- Форум: Free Pascal Compiler
- Тема: Не получается унаследоваться от интерфейса
- Ответы: 12
- Просмотры: 21084
Re: Не получается унаследоваться от интерфейса
Можно ещё вопрос, когда мы объявляем интерфейс, параметры функций и процедур интерфейса можно пропускать? Т.е объявили скажем функцию Line() в интерефейс, а список параметров оставляем пустым, а в производном классе уже при переопределении указываем Line(x1, y1, x2, y2) - это допустимо или в ...
- 15.04.2019 09:48:46
- Форум: Free Pascal Compiler
- Тема: Не получается унаследоваться от интерфейса
- Ответы: 12
- Просмотры: 21084
Re: Не получается унаследоваться от интерфейса
А зачем они вообще нужны, без этого не обойтись? У меня своя "маленькая экосистема" интерфейсов, получается что я привязываюсь... а к чему я собственно привязываюсь? 
- 15.04.2019 08:57:23
- Форум: Free Pascal Compiler
- Тема: Не получается унаследоваться от интерфейса
- Ответы: 12
- Просмотры: 21084
Не получается унаследоваться от интерфейса
Доброго времени суток, сделал класс, пытаюсь унаследовать его от интерфейса(TR_IDrawable), но при компиляции чего-то ругается
unit Prim;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, Graphics, GeomUtils, TR_ColorInterface, TR_DrawableInterface;
type
TPrimitive = class(TR_IDrawable ...
unit Prim;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, Graphics, GeomUtils, TR_ColorInterface, TR_DrawableInterface;
type
TPrimitive = class(TR_IDrawable ...
- 12.04.2019 15:12:41
- Форум: Lazarus
- Тема: Имя интерфейса и имя файла должны совапдать?
- Ответы: 2
- Просмотры: 3093
Re: Имя интерфейса и имя файла должны совапдать?
Спасибо, теперь понятно 
- 12.04.2019 15:04:25
- Форум: Lazarus
- Тема: Имя интерфейса и имя файла должны совапдать?
- Ответы: 2
- Просмотры: 3093
Имя интерфейса и имя файла должны совапдать?
Доброго времени суток, добавил юнит, обозвал его TR_ColorInterface.pas прописал в нём заготовку интерефейса
unit TR_ColorInterface;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils;
type
TR_ColorInterface = interface
function Red() : byte;
end;
implementation
end.
и файл назвал ...
unit TR_ColorInterface;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils;
type
TR_ColorInterface = interface
function Red() : byte;
end;
implementation
end.
и файл назвал ...
- 07.05.2018 09:48:39
- Форум: Free Pascal Compiler
- Тема: Быстрая отрисовка
- Ответы: 87
- Просмотры: 102793
Re: Быстрая отрисовка
А почему собственно способ рисования на битмапе, а потом копирования его на канвас быстрее чем если просто рисовать на канвасе? Ведь по сути тоже самое рисование + ещё нужно копировать кадр, тоже затраты 
- 28.04.2018 12:03:21
- Форум: Общее
- Тема: Можно ли сделать "COM объект из DLL"?
- Ответы: 6
- Просмотры: 19550
Re: Можно ли сделать "COM объект из DLL"?
Надыбал пример написания COM сервера(вдруг кому понадобится) http://forum.lazarus.freepascal.org/ind ... ic=10938.0
- 28.04.2018 11:51:16
- Форум: Общее
- Тема: Можно ли сделать "COM объект из DLL"?
- Ответы: 6
- Просмотры: 19550
Re: Можно ли сделать "COM объект из DLL"?
Покопался в архиве с кодами, даже уже есть заглушки, сделанные для Delphi, это радует, остаётся набросать скелет COM сервера и дергать функции либы через эти заглушки 
- 28.04.2018 11:38:34
- Форум: Общее
- Тема: Можно ли сделать "COM объект из DLL"?
- Ответы: 6
- Просмотры: 19550
Re: Можно ли сделать "COM объект из DLL"?
Ещё вопрос, при реализации своего COM сервера получается что мне надо и эту либу с собой таскать? Или её можно внедрить в COM чтобы на выходе был один файлик (моя dll), который я уже буду юзать из системы?
- 28.04.2018 11:19:51
- Форум: Общее
- Тема: Можно ли сделать "COM объект из DLL"?
- Ответы: 6
- Просмотры: 19550
Можно ли сделать "COM объект из DLL"?
Приветствую, дано: некая DLL либа(если быть точным m), и имеется некая система(аля 1С style), в которой нужно использовать функционал этой либы. Но система умеет вызывать функции из DLL довольно коряво и не полностью, зато из неё вполне можно работать с COM объектами, типа вызываем obj ...
- 27.04.2018 10:11:58
- Форум: Обучение Free Pascal
- Тема: Прозрачная толстая линия с контуром
- Ответы: 5
- Просмотры: 13095
Re: Прозрачная толстая линия с контуром
Наверно правильнее рисовать линию как полигон, т.е это полигон в форме линии, после, его триангулировать и закрашивать. Как-только сделать полигон в форме линии(вытянутого прямоугольника), я пока не придумал ))
