| Description | uses | Classes, Interfaces, Objects and Records | Functions and Procedures | Types | Constants | Variables |
Base definitions for 3D backgrounds (cubes with different texture on each side). These are used in OpenGL programs (see unit BackgroundGL) and for VRML TNodeBackground.
function BackgroundImages(const BackImg, BottomImg, FrontImg, LeftImg, RightImg, TopImg: TImage): TBackgroundImages; |
function BackgroundImagesLoadFromOldNamePattern(const SkyNamePattern: string; const ImageAllowedClasses: array of TImageClass): TBackgroundImages; |
procedure BackgroundImagesFreeAll(var BGImages: TBackgroundImages; Cache: TImagesCache); |
TBackgroundSide = (...); |
TBackgroundSides = set of TBackgroundSide; |
TBackgroundImages = array[TBackgroundSide]of TImage; |
BGAllSides: TBackgroundSides = [Low(TBackgroundSide) .. High(TBackgroundSide)]; |
BGHorizonSides: TBackgroundSides = [bsBack, bsFront, bsLeft, bsRight]; |
BackgroundImagesNone: TBackgroundImages =
( nil, nil, nil, nil, nil, nil ); |
function BackgroundImages(const BackImg, BottomImg, FrontImg, LeftImg, RightImg, TopImg: TImage): TBackgroundImages; |
function BackgroundImagesLoadFromOldNamePattern(const SkyNamePattern: string; const ImageAllowedClasses: array of TImageClass): TBackgroundImages; |
|
Laduje niebo z plikow nazywanych w konwencji panoramaToSzescian, starych wersji szklanych lasow i starych wersji malfunction : SkyNamePattern to nazwa podstawowa plikow z niebem. Beda do nich doklejane literki '_' i 'u'/ = (up) top 'd'/ = (down) bottom 'l'/ = right (!) 'r'/ = left (!) 'f'/ = front 'b' = back (w zaleznosci od tego ktora scianke nieba bedziemy chcieli odczytac) albo '_any' jezeli z powyzsza literka nie znajdzie (wiec mozesz np. _u, _d, _r wrzucic do jednego pliku _any jesli sa takie same). literka "u" (up) oznacza top, literka "d" (down) oznacza bottom - to zamieszanie dlatego ze bottom i back zaczynaja sie na ta sama litere. ! przy left i right wynika z tego ze tak sobie to zdefiniowalem w moim panoramaToSzescian i akurat jest to na odwrot niz definicja w VRMLowym nodzie Background ktory renderuje klasa TBackground. (W moim panoramaToSzescian jeden ciag (wlasnie "panorame") tworza obrazki front, left, back, right. W VRMLu97 jeden ciag to obrazki front, right, back, left; kwestia definicji - a tak sie nieszczesliwie stalo ze moja definicja z panoramaToSzescian jest inna niz VRMLa 97; no, ale to nic takiego, uzywanie tej funkcji pozwala mi wlasnie o tym zapomniec) Rozszerzenie pliku bedzie zgadywane przy pomocy FindExistingImageExt. Potem obazki beda ladowane z LoadAnyImage(FileName, ImageAllowedClasses, [], 0, 0) a wiec obrazek zostanie zaladowany tylko do typow ImageAllowedFormats (poniewaz tego wymagaja obiekty zdefiniowane w tym module - jesli kiedys pojawi sie sens uzywania w TBackgroundImages obrazkow spoza ImageAllowedFormats to dorobie jakis parametr do tej funkcji). W ten sposob odpowiednio nazwane szesc (lub mniej jesli wiecej niz jeden obrazek bedzie uzyty z _any) obrazkow zdefiniuje niebo. |
procedure BackgroundImagesFreeAll(var BGImages: TBackgroundImages; Cache: TImagesCache); |
|
This releases and sets to |
TBackgroundSide = (...); |
Values
|
TBackgroundSides = set of TBackgroundSide; |
TBackgroundImages = array[TBackgroundSide]of TImage; |
BGAllSides: TBackgroundSides = [Low(TBackgroundSide) .. High(TBackgroundSide)]; |
BGHorizonSides: TBackgroundSides = [bsBack, bsFront, bsLeft, bsRight]; |
BackgroundImagesNone: TBackgroundImages =
( nil, nil, nil, nil, nil, nil ); |