Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.31;
Скачать: CL | DM;

Вниз

Рисовать на GLPlane   Найти похожие ветки 

 
Санёк   (2005-04-14 23:37) [0]

Есть у меня плоскость (использую GLScene).
мне нужно на этой плоскости рисовать точки, линии, вобщем примитивы.
посмотрел пример GLScene\Demos\bench\canvas
там отрисовка идет непосредственно на Canvas GLViewer"a.

как бы рисовать на плоскости?
есть бредовая идея - создать битмап, рисовать на нем, а его уже использовать как текстуру к плоскости.
хочется проще - как?


 
Домовенок   (2005-04-15 01:11) [1]

Рисуй на БитМапе, и натягивай его текстурой. :)


 
Санёк   (2005-04-15 01:37) [2]

а собственного канваса у плоскости нету? :(


 
Домовенок   (2005-04-16 17:56) [3]

Точно не знаю (неуверен). Но предполагаю, что нету.


 
DeadMeat ©   (2005-04-16 20:17) [4]


> а собственного канваса у плоскости нету? :(

Как я понимаю, такое понятие у объектов отсутствует как таковое..

Поищи на caperaven (все время забываю как пишется)... Там есть пример... Как раз то, что тебе нужно..

---
...Death Is Only The Begining...


 
Санёк   (2005-04-16 20:52) [5]

DeadMeat, спасибо, поищу.
как описал выше уже сделал и в принципе все работает :)


 
DeadMeat ©   (2005-04-16 23:22) [6]

http://www.caperaven.co.za/gls/tutorials/documents/p3d/p3d.zip
http://www.caperaven.co.za/projects/3dpaint/index.htm

Кажись оно...

---
...Death Is Only The Begining...


 
Санёк   (2005-04-17 15:15) [7]

Спасибо :)

Забавно получается - вот код из примера:


procedure TForm1.FormCreate(Sender: TObject);
var
 lVector      : TVector3f;
 U, V         : Single;
 i            : Integer;
begin
 {Prepare Canvas}
 FCanvas := TBitmap.Create;
 FCanvas.Width := CBitWidth;
 FCanvas.Height := CBitWidth;

 {Draw line across bitmap}
 FCanvas.Canvas.MoveTo(0, 0);
 FCanvas.Canvas.LineTo(CBitWidth, CBitHeight);

 GLFreeForm1.Material.Texture.Disabled := False;
 GLFreeForm1.LoadFromFile(ExtractFileDir(Application.ExeName) + "\plane.3ds");

 GLFreeForm1.MeshObjects[0].GetExtents(FMin, FMax);
 for i := 0 to GLFreeForm1.MeshObjects[0].Vertices.Count - 1 do
 begin
   lVector := GLFreeForm1.MeshObjects[0].Vertices[i];
   UVPlanarMapping(lVector, FMin, FMax, U, V);
   GLFreeForm1.MeshObjects[0].TexCoords.Add(U, V, 0);
 end;
 GLFreeForm1.Material.Texture.Image.Assign(FCanvas);
 GLSphere1.Scale.SetVector(1/GLFreeForm1.Scale.X,
                           1/GLFreeForm1.Scale.Y,
                           1/GLFreeForm1.Scale.Z);
end;

Что мы там видим?
GLFreeForm1.Material.Texture.Image.Assign(FCanvas);
значит другого пути нету :)


 
DeadMeat ©   (2005-04-17 17:31) [8]


> Что мы там видим?
> GLFreeForm1.Material.Texture.Image.Assign(FCanvas);
> значит другого пути нету :)

И что?

Тебя смутило FCanvas или что?

---
...Death Is Only The Begining...


 
Санёк   (2005-04-17 17:43) [9]

да ничего меня не смутило.
там же все равно так же как и я делаю сделано :)
вобщем спасибо, вопрос исчерпан.



Страницы: 1 вся ветка

Текущий архив: 2005.07.31;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.042 c
14-1120728878
IceBeerg
2005-07-07 13:34
2005.07.31
Антивирус NOD32 кто, что может сказать?


14-1120713058
pavel_guzhanov
2005-07-07 09:10
2005.07.31
преобразование html в doc или pdf


3-1119427251
Nic
2005-06-22 12:00
2005.07.31
Текстовая база ASCII


1-1121353411
Гость2
2005-07-14 19:03
2005.07.31
Количество файлов в папке


1-1121028718
Slicer
2005-07-11 00:51
2005.07.31
Как спрятать заголовок окна в taskbar е





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский