filmov
tv
Gl Engine 2D / Графические примитивы / Точка, линия, кривая линия, стрелка / Delphi OpenGL / Pascal

Показать описание
Icq: 620163142
Поддержать канал (Donate):
Либо через криптовалюты:
BitCoin: bc1qvhrlwzv2jn7lnuf8kqxudq3lfnpm7rsujxsr7y
Bitcoin Cash: qzmac7evwlsyhfgy8s47slar3qwz5l2ug56xpq9p2p
Ethereum: 0x0e9876F515a6af061C9D1A38dAf98872e4158469
Ethereum Classic: 0x6293BCbf33FAf4Beb1E771D0a02138051D9F7C27
LiteCoint: ltc1qcay7ttpzuecvaez58a2zdecnu45plhn5p629td
Dogecoin: DFrmw65GuNkNcirzRVPY6szytDtpQFHaqk
Dash: Xiwyco9sWHgrXwN6nt7cXw6LjArpQpkYKb
TRON: TXwPkiWHBKk6g9DMnCAuU7MhZ17yATKYL1
Solana: DpefmhbrD5wfmdqY5FfdY1zDzZELfCcaA37aAng8QAk4
NEAR: 078ffccc338eb31ba1f7c26afc60a8f28c2034010424f7d5319c81ec5cf6bdf9
!!! Перевод можно сделать как со своего крипто кошелька, так и через обменные системы с обычных банковских карт или других платежных систем:
Самый простой графический примитив - это точка. То есть это цветной пиксель.
Для вывода точки на экран используется метод Point. В скобках указываются координаты x и y.
Движок GLEngine2D позволяет задавать размер точек. Для этого используется команда PointSize. Размер задаетсяв пикселях. Задания большого размера приведет к отображению на экране квадрата (так как, по умолчанию, пиксели квадратные).
Но если Вы хотите, чтобы пиксели стали круглыми - можно включить сглаживание точек командой PointSmooth. В скобках указывается значение True - если сглаживание включено и точки будут круглыми. Или указывается значение False - если сглаживание отключено и пиксели отображаются квадратные.
Для того, чтобы установить цвет пикселя можно воспользоваться командой SetColor. В скобках указываются четыре цифры через запятую. Значения цифр могут быть от нуля до единицы (в том числе и вещественные значения). Первые три цифры означают три цвета (красный, зеленый и синий) в формате RGB, при смешивании которых получается итоговый цвет. А четвертая цифра - обозначает альфаканал (прозрачность). То есть этой цифрой можно настраивать значение прозрачности. Значения могут быть от нуля (когда примитив полностью невидимый) до единицы - когда его видно полностью. Промежуточные варианты прозрачности задаются через точку. Есть еще второй вариант работы с методом SetColor, при котором объявляется переменная типа TGLColor. Через точку в этой переменной задаются значение трех цветов и альфаканала. И после этого переменная передается в метод SetColor. Такой подход может быть удобен - для настройки цветов в одном месте в виде переменнных, чтобы не искать места под изменение каждого цвета. Но в этом случае - такие перменные делайте глобальными (объявляя их в разделе Uses или Public).
Для того, чтобы нарисовать линию - необходимо вызвать метод Line. В сбоках нужно указать координаты двух точек, между которыми и будет проведена линия. То есть через запятую указываются значения координат X,Y первой точки, а затем - второй. Управлять шириной линии можно с помощью команды LineWidth. В скобках указывается значение ширины линии в пикселях.
На цвет линий так же влияет команда SetColor. А если необходимо нарисовать линии с градиентной заливкой, то есть чтобы цвет линии плавно менялся от одного цвета с одной стороны к другому цвету с другой - можно воспользоваться командой LineGrad. В скобках, так же как и у обычной линии, указываются координаты двух точек, но после них указываются два цвета в формате TGL Color (то есть нужны 2 переменные типа TGLColor). Это цвет начальной и конечной точек, между которыми будет идти плавная смена цвета.
Так же имеется возможность выводить извилистую линию с помощью команды Bolt. В скобках указываются координаты начальной и конечной точек. К сожалению управлять извилистостью гибко нельзя, на данный момент (например указывая максимальное отклонение) - для этого нет настроек. Но для простого использования вполне подойдет и реализованный вариант. Если его будет недостаточно - можно самому реализовать нужную процедуру. Так же можно добиться интересного эффекта - если вывод извилистой линии добавить в таймер или перезапускать ее прорисовку вручную. С каждым последующим выводом линии - ее изгибы будут случайным образом меняться. Поэтому если увеличить количество кадров - это станет похоже на эффект молнии или мощного электрического заряда.
И, напоследок, предлагаю рассмотреть рисование стрелок. Для этого существует команда Arrow. В скобках указываются координаты двух точек (начальной и конечной), затем указывается размер стрелки (Size), далее указывается угол наклона линий у стрелки (Angle), в конце указывается закрашенность стрелки (Solid).
Поддержать канал (Donate):
Либо через криптовалюты:
BitCoin: bc1qvhrlwzv2jn7lnuf8kqxudq3lfnpm7rsujxsr7y
Bitcoin Cash: qzmac7evwlsyhfgy8s47slar3qwz5l2ug56xpq9p2p
Ethereum: 0x0e9876F515a6af061C9D1A38dAf98872e4158469
Ethereum Classic: 0x6293BCbf33FAf4Beb1E771D0a02138051D9F7C27
LiteCoint: ltc1qcay7ttpzuecvaez58a2zdecnu45plhn5p629td
Dogecoin: DFrmw65GuNkNcirzRVPY6szytDtpQFHaqk
Dash: Xiwyco9sWHgrXwN6nt7cXw6LjArpQpkYKb
TRON: TXwPkiWHBKk6g9DMnCAuU7MhZ17yATKYL1
Solana: DpefmhbrD5wfmdqY5FfdY1zDzZELfCcaA37aAng8QAk4
NEAR: 078ffccc338eb31ba1f7c26afc60a8f28c2034010424f7d5319c81ec5cf6bdf9
!!! Перевод можно сделать как со своего крипто кошелька, так и через обменные системы с обычных банковских карт или других платежных систем:
Самый простой графический примитив - это точка. То есть это цветной пиксель.
Для вывода точки на экран используется метод Point. В скобках указываются координаты x и y.
Движок GLEngine2D позволяет задавать размер точек. Для этого используется команда PointSize. Размер задаетсяв пикселях. Задания большого размера приведет к отображению на экране квадрата (так как, по умолчанию, пиксели квадратные).
Но если Вы хотите, чтобы пиксели стали круглыми - можно включить сглаживание точек командой PointSmooth. В скобках указывается значение True - если сглаживание включено и точки будут круглыми. Или указывается значение False - если сглаживание отключено и пиксели отображаются квадратные.
Для того, чтобы установить цвет пикселя можно воспользоваться командой SetColor. В скобках указываются четыре цифры через запятую. Значения цифр могут быть от нуля до единицы (в том числе и вещественные значения). Первые три цифры означают три цвета (красный, зеленый и синий) в формате RGB, при смешивании которых получается итоговый цвет. А четвертая цифра - обозначает альфаканал (прозрачность). То есть этой цифрой можно настраивать значение прозрачности. Значения могут быть от нуля (когда примитив полностью невидимый) до единицы - когда его видно полностью. Промежуточные варианты прозрачности задаются через точку. Есть еще второй вариант работы с методом SetColor, при котором объявляется переменная типа TGLColor. Через точку в этой переменной задаются значение трех цветов и альфаканала. И после этого переменная передается в метод SetColor. Такой подход может быть удобен - для настройки цветов в одном месте в виде переменнных, чтобы не искать места под изменение каждого цвета. Но в этом случае - такие перменные делайте глобальными (объявляя их в разделе Uses или Public).
Для того, чтобы нарисовать линию - необходимо вызвать метод Line. В сбоках нужно указать координаты двух точек, между которыми и будет проведена линия. То есть через запятую указываются значения координат X,Y первой точки, а затем - второй. Управлять шириной линии можно с помощью команды LineWidth. В скобках указывается значение ширины линии в пикселях.
На цвет линий так же влияет команда SetColor. А если необходимо нарисовать линии с градиентной заливкой, то есть чтобы цвет линии плавно менялся от одного цвета с одной стороны к другому цвету с другой - можно воспользоваться командой LineGrad. В скобках, так же как и у обычной линии, указываются координаты двух точек, но после них указываются два цвета в формате TGL Color (то есть нужны 2 переменные типа TGLColor). Это цвет начальной и конечной точек, между которыми будет идти плавная смена цвета.
Так же имеется возможность выводить извилистую линию с помощью команды Bolt. В скобках указываются координаты начальной и конечной точек. К сожалению управлять извилистостью гибко нельзя, на данный момент (например указывая максимальное отклонение) - для этого нет настроек. Но для простого использования вполне подойдет и реализованный вариант. Если его будет недостаточно - можно самому реализовать нужную процедуру. Так же можно добиться интересного эффекта - если вывод извилистой линии добавить в таймер или перезапускать ее прорисовку вручную. С каждым последующим выводом линии - ее изгибы будут случайным образом меняться. Поэтому если увеличить количество кадров - это станет похоже на эффект молнии или мощного электрического заряда.
И, напоследок, предлагаю рассмотреть рисование стрелок. Для этого существует команда Arrow. В скобках указываются координаты двух точек (начальной и конечной), затем указывается размер стрелки (Size), далее указывается угол наклона линий у стрелки (Angle), в конце указывается закрашенность стрелки (Solid).
Комментарии