Unit BGRAGradients
Description
Helper functions for gradients and shadows, as well as Phong shading
Uses
Overview
Classes, Interfaces, Objects and Records
Name | Description |
---|---|
Record TnGradientInfo |
Functions to draw multiple gradients. |
Class TPhongShading |
Renders shape and height maps using Phong shading. |
Functions and Procedures
function CreateConeMap(size: integer): TBGRABitmap; |
function CreateConePreciseMap(width,height: integer): TBGRABitmap; |
function CreateCyclicPerlinNoiseMap(AWidth, AHeight: integer; HorizontalPeriod: Single = 1; VerticalPeriod: Single = 1; Exponent: Double = 1; ResampleFilter: TResampleFilter = rfCosine): TBGRABitmap; |
function CreateHorizontalCylinderPreciseMap(width,height: integer): TBGRABitmap; |
function CreatePerlinNoiseMap(AWidth, AHeight: integer; HorizontalPeriod: Single = 1; VerticalPeriod: Single = 1; Exponent: Double = 1; ResampleFilter: TResampleFilter = rfCosine): TBGRABitmap; |
function CreateRectangleMap(width,height,border: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
function CreateRectanglePreciseMap(width,height,border: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
function CreateRectanglePreciseMap(width, height, borderWidth, borderHeight: integer; options: TRectangleMapOptions): TBGRABitmap; |
function CreateRoundRectangleMap(width,height,border: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
function CreateRoundRectanglePreciseMap(width,height,borderWidth,borderHeight: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
function CreateRoundRectanglePreciseMap(width,height,border: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
function CreateSphereMap(width,height: integer): TBGRABitmap; |
function CreateSpherePreciseMap(width,height: integer): TBGRABitmap; |
function CreateVerticalConePreciseMap(width,height: integer): TBGRABitmap; |
function CreateVerticalCylinderPreciseMap(width,height: integer): TBGRABitmap; |
function DoubleGradientAlphaFill(AWidth,AHeight: Integer; AStart1,AStop1,AStart2,AStop2: TBGRAPixel; ADirection1,ADirection2,ADir: TGradientDirection; AValue: Single): TBGRABitmap; overload; |
function DoubleGradientAlphaFill(ARect: TRect; AStart1,AStop1,AStart2,AStop2: TBGRAPixel; ADirection1,ADirection2,ADir: TGradientDirection; AValue: Single): TBGRABitmap; overload; |
procedure DoubleGradientAlphaFill(ABitmap: TBGRABitmap; ARect: TRect; AStart1,AStop1,AStart2,AStop2: TBGRAPixel; ADirection1,ADirection2,ADir: TGradientDirection; AValue: Single); overload; |
procedure DoubleGradientAlphaFill(ACanvas: TCanvas; ARect: TRect; AStart1,AStop1,AStart2,AStop2: TBGRAPixel; ADirection1,ADirection2,ADir: TGradientDirection; AValue: Single); overload; |
function nGradientAlphaFill(AWidth, AHeight: Integer; ADir: TGradientDirection; const AGradient: array of TnGradientInfo): TBGRABitmap; overload; |
function nGradientAlphaFill(ARect: TRect; ADir: TGradientDirection; const AGradient: array of TnGradientInfo): TBGRABitmap; overload; |
procedure nGradientAlphaFill(ABitmap: TBGRABitmap; ARect: TRect; ADir: TGradientDirection; const AGradient: array of TnGradientInfo); overload; |
procedure nGradientAlphaFill(ACanvas: TCanvas; ARect: TRect; ADir: TGradientDirection; const AGradient: array of TnGradientInfo); overload; |
function nGradientInfo(StartColor, StopColor: TBGRAPixel; Direction: TGradientDirection; EndPercent: Single): TnGradientInfo; |
Types
TRectangleMapOption = (...); |
TRectangleMapOptions = set of TRectangleMapOption; |
Description
Functions and Procedures
function CreateConeMap(size: integer): TBGRABitmap; |
Create a grayscale height map for a cone (may not be precise enough) |
function CreateConePreciseMap(width,height: integer): TBGRABitmap; |
Create a precise height map for a cone (not grayscale anymore but more precise) |
function CreateCyclicPerlinNoiseMap(AWidth, AHeight: integer; HorizontalPeriod: Single = 1; VerticalPeriod: Single = 1; Exponent: Double = 1; ResampleFilter: TResampleFilter = rfCosine): TBGRABitmap; |
Creates a tilable random grayscale image |
function CreateHorizontalCylinderPreciseMap(width,height: integer): TBGRABitmap; |
Create a precise height map for an horizontal cylinder (not grayscale anymore but more precise) |
function CreatePerlinNoiseMap(AWidth, AHeight: integer; HorizontalPeriod: Single = 1; VerticalPeriod: Single = 1; Exponent: Double = 1; ResampleFilter: TResampleFilter = rfCosine): TBGRABitmap; |
Creates a non-tilable random grayscale image |
function CreateRectangleMap(width,height,border: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
Create a rectangle height map with a border |
function CreateRectanglePreciseMap(width,height,border: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
Create a precise height map for a rectangle height map with a border (not grayscale anymore but more precise) |
function CreateRectanglePreciseMap(width, height, borderWidth, borderHeight: integer; options: TRectangleMapOptions): TBGRABitmap; |
This item has no description. |
function CreateRoundRectangleMap(width,height,border: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
Create a round rectangle height map with a border |
function CreateRoundRectanglePreciseMap(width,height,borderWidth,borderHeight: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
This item has no description. |
function CreateRoundRectanglePreciseMap(width,height,border: integer; options: TRectangleMapOptions = []): TBGRABitmap; |
Create a precise height map for a round rectangle height map with a border (not grayscale anymore but more precise) |
function CreateSphereMap(width,height: integer): TBGRABitmap; |
Create a grayscale height map for a sphere (may not be precise enough) |
function CreateSpherePreciseMap(width,height: integer): TBGRABitmap; |
Create a precise height map for a sphere (not grayscale anymore but more precise) |
function CreateVerticalConePreciseMap(width,height: integer): TBGRABitmap; |
Create a precise height map for a vertical cone (not grayscale anymore but more precise) |
function CreateVerticalCylinderPreciseMap(width,height: integer): TBGRABitmap; |
Create a precise height map for a vertical cylinder (not grayscale anymore but more precise) |
function DoubleGradientAlphaFill(AWidth,AHeight: Integer; AStart1,AStop1,AStart2,AStop2: TBGRAPixel; ADirection1,ADirection2,ADir: TGradientDirection; AValue: Single): TBGRABitmap; overload; |
This item has no description. |
function DoubleGradientAlphaFill(ARect: TRect; AStart1,AStop1,AStart2,AStop2: TBGRAPixel; ADirection1,ADirection2,ADir: TGradientDirection; AValue: Single): TBGRABitmap; overload; |
This item has no description. |
procedure DoubleGradientAlphaFill(ABitmap: TBGRABitmap; ARect: TRect; AStart1,AStop1,AStart2,AStop2: TBGRAPixel; ADirection1,ADirection2,ADir: TGradientDirection; AValue: Single); overload; |
This item has no description. |
procedure DoubleGradientAlphaFill(ACanvas: TCanvas; ARect: TRect; AStart1,AStop1,AStart2,AStop2: TBGRAPixel; ADirection1,ADirection2,ADir: TGradientDirection; AValue: Single); overload; |
This item has no description. |
function nGradientAlphaFill(AWidth, AHeight: Integer; ADir: TGradientDirection; const AGradient: array of TnGradientInfo): TBGRABitmap; overload; |
This item has no description. |
function nGradientAlphaFill(ARect: TRect; ADir: TGradientDirection; const AGradient: array of TnGradientInfo): TBGRABitmap; overload; |
This item has no description. |
procedure nGradientAlphaFill(ABitmap: TBGRABitmap; ARect: TRect; ADir: TGradientDirection; const AGradient: array of TnGradientInfo); overload; |
This item has no description. |
procedure nGradientAlphaFill(ACanvas: TCanvas; ARect: TRect; ADir: TGradientDirection; const AGradient: array of TnGradientInfo); overload; |
This item has no description. |
function nGradientInfo(StartColor, StopColor: TBGRAPixel; Direction: TGradientDirection; EndPercent: Single): TnGradientInfo; |
This item has no description. |
Types
TRectangleMapOption = (...); |
———————————————————————- Values
|
TRectangleMapOptions = set of TRectangleMapOption; |
This item has no description. |