Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.06.2010, 13:46   #1
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию Полигон

Можно ли, пользуясь Canvas.Polygon, не просто закрасить многоугольник а натянуть на него текстуру(картинку bmp)?

Последний раз редактировалось _-Re@l-_; 24.06.2010 в 13:52.
_-Re@l-_ вне форума Ответить с цитированием
Старый 24.06.2010, 14:00   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Насколько я знаю это делается не полигонами а Регионами (Region)
Посмотри на
http://www.delphiworld.narod.ru/base...n_by_mask.html
http://www.delphiworld.narod.ru/base...in_region.html
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.06.2010, 14:03   #3
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Я посмотрел, только там про тени и как закрасить регион чёрными точками...
_-Re@l-_ вне форума Ответить с цитированием
Старый 24.06.2010, 14:13   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Умей искать.
Загляни сюда:http://www.codenet.ru/progr/delphi/stat/regions/
Теория не помешает.

Вот от меня:
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    procedure FormPaint(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var b:TBitmap;rg:HRGN;
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormPaint(Sender: TObject);
var OldRgn : HRGN;
begin
 OldRgn:=SelectObject(Canvas.handle,rg);
  BitBlt(Canvas.Handle,0,0,b.Width,b.Height,b.Canvas.Handle,0,0,SRCCOPY);
 SelectObject(Canvas.handle,OldRgn);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
   b:=TBitmap.Create;
 b.LoadFromFile('D:\stasya_ru_2_big.bmp');
 rg:= CreateEllipticRgn(1,1,500,500);

end;

end.
I'm learning to live...

Последний раз редактировалось Stilet; 24.06.2010 в 14:19.
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Полигон LOVELY Помощь студентам 2 12.02.2010 01:11
Как работать с TCanvas - на PaintBox1 программа должна рисовать полигон Михаил Юрьевич Общие вопросы Delphi 16 04.01.2008 15:31