IDLgrBuffer objects have the following properties in addition to properties inherited from any superclasses. Properties with the word “Yes” in the “Get” column of the property table can be retrieved via IDLgrBuffer::GetProperty. Properties with the word “Yes” in the “Init” column of the property table can be set via IDLgrBuffer::Init. Properties with the word “Yes” in the “Set” column in the property table can be set via IDLgrBuffer::SetProperty.

Note: For a discussion of the property description tables shown below, see Modifying Object Property Descriptions.

Objects of this class have the following properties.

In addition, objects of this class inherit:

ALL

An anonymous structure containing the values of all of the retrievable properties associated with this object (except IMAGE_DATA and ZBUFFER_DATA).

Property Type

Structure

Name String

not displayed

Get: Yes

Set: No

Init: No

Registered: No

COLOR_MODEL

A Boolean value or enumerated list item that determines the color model to be used for the buffer:

Value

Property Sheet Value

Description

0

RGB

RGB (default)

1

Indexed

Color Index

Property Type

ENUMLIST

Name String

Color model

Get: Yes

Set: No

Init: Yes

Registered: Yes

DIMENSIONS

A two-element integer vector of the form [width, height] that specifies the dimensions of the buffer in units specified by the UNITS property. The default is [640,480].

Property Type

Integer vector

Name String

not displayed

Get: Yes

Set: Yes

Init: Yes

Registered: No

FONT_SCALE

A scalar value specifying the relative size of the text. The default value is 1.0. All text drawn to the device is rescaled by its value. Setting FONT_SCALE to 2.0 draws the font twice as large as the default; 0.5 half as large.

Property Type

FONT_SCALE

Name String

not displayed

Get: Yes

Set: Yes

Init: Yes

Registered: No

GRAPHICS_TREE

An object reference of type IDLgrScene, IDLgrViewgroup, or IDLgrView that specifies the graphics tree of this object. If this property is set to a valid object reference, calling the Draw method on the destination object with no arguments will cause the object reference associated with this property to be drawn. If this object is valid and the destination object is destroyed, this object reference will be destroyed as well. By default the GRAPHICS_TREE property is set equal to the null-object.

Property Type

Object reference

Name String

not displayed

Get: Yes

Set: Yes

Init: Yes

Registered: No

IMAGE_DATA

A byte array representing the image that is currently rendered within the buffer. If the buffer uses an RGB color model, the returned array will have dimensions (3, xdim, ydim). If the window object uses an indexed color model, the returned array will have dimensions (xdim, ydim).

Property Type

Byte array

Name String

not displayed

Get: Yes

Set: No

Init: No

Registered: No

LINE_QUALITY

An integer value indicating the rendering quality of lines with a thickness greater than one pixel.

Valid values are:

Value Description
0 Low quality - this setting will result in faster performance, but it may introduce minor defects in the lines.
1 (default) High quality - this setting produces lines with clean joins at corners and intersections, but it may result in slower performance.

N_COLORS

An integer that determines the number of colors (between 2 and 256) to be used if COLOR_MODEL is set to Color Index.

Property Type

Integer

Name String

Number of colors

Get: Yes

Set: No

Init: Yes

Registered: Yes

PALETTE

An object reference to a palette object (an instance of the IDLgrPalette object class) that specifies the red, green, and blue values to be loaded into the buffer’s color lookup table.

Note: Objects specified via this property are not automatically cleaned up when the IDLgrBuffer object is destroyed.

This property is registered as a user-defined property, but it is hidden by default.

Property Type

USERDEF

Name String

Color palette

Get: Yes

Set: Yes

Init: Yes

Registered: Yes

QUALITY

An integer value or enumerated list item that indicates the rendering quality with which graphics are to be drawn to the buffer. Valid values are:

Value

Property Sheet Value

Description

0

Low

Low quality

1

Medium

Medium quality

2

High

High quality (the default)

 

Property Type

ENUMLIST

Name String

Draw quality

Get: Yes

Set: Yes

Init: Yes

Registered: Yes

REGISTER_PROPERTIES

A Boolean value that determines whether to register properties available for this object. If this property is set, all properties marked in this properties section as “Registered: Yes” will be registered for display in a property sheet. This property is useful mainly when creating iTools. By default, no properties are registered.

Property Type

Boolean

Name String

not displayed

Get: No

Set: No

Init: Yes

Registered: No

RESOLUTION

A two-element floating-point vector of the form [xres, yres] that specifies the device resolution in centimeters per pixel. This value is stored in double precision. The default value is: [0.035277778, 0.035277778] (72 DPI).

This property is registered as a user-defined property, but it is hidden by default.

Property Type

USERDEF

Name String

Resolution

Get: Yes

Set: Yes

Init: Yes

Registered: Yes

SCREEN_DIMENSIONS

A two-element integer vector of the form [width, height] that specifies the maximum allowed dimensions (measured in device units) for the buffer object.

Note: The maximum buffer dimension size is always 8192 by 8192.

Property Type

Integer vector

Name String

not displayed

Get: Yes

Set: No

Init: No

Registered: No

UNITS

An integer value that indicates the units of measure for the DIMENSIONS property. Valid values are:

  • 0 = Device (default)
  • 1 = Inches
  • 2 = Centimeters
  • 3 = Normalized: relative to 1600 x 1200

Property Type

Integer

Name String

not displayed

Get: Yes

Set: Yes

Init: Yes

Registered: No

ZBUFFER_DATA

A floating-point array representing the zbuffer that is currently within the buffer. The returned array will have dimensions (xdim, ydim).

Property Type

Floating-point array

Name String

not displayed

Get: Yes

Set: No

Init: No

Registered: No