Image

Object Hierarchy | Related C++ Class: Image

Introduced

v2.0

Description

This class provides read-access to the representation of an image in memory.

For the vast majority of image files, Softimage represents the data in memory as uncompressed 8-bit RGBA. This is true even if the original file has no alpha information. The format of the data can be determined with Image.NumChannels and Image.ChannelSize.

Methods

GetPixel GetPixelArray    
       

Properties

ChannelSize NumChannels ResX ResY

Examples

VBScript Example

' The script demonstrates the relationship between the Image, ImageClip and Source
' objects
Option Explicit
' ----------------------------------------------------------------
' create a new image clip
' ----------------------------------------------------------------
newscene , false
dim oImageClip 
set oImageClip = CreateImageClip( _
		"$SI_HOME\Data\XSI_SAMPLES\Pictures\jio.jpg", _
		"MyImage" )
logmessage "image familes->" & oImageClip.families
' ----------------------------------------------------------------
' get startframe, endframe, xdimension and ydimension parameters
' ----------------------------------------------------------------
if typename(oImageClip) <> "Nothing" then
	'Use the source to get image information
	dim oImageSource : set oImageSource = oImageClip.Source
	logmessage "startframe->" & oImageSource.FrameStart.Value
	logmessage "endframe->" &  oImageSource.FrameEnd.Value
	logmessage "xdimension ->" &  oImageSource.XRes.Value
	logmessage "ydimension ->" &  oImageSource.YRes.Value
	'Read bottom left pixel 
	dim oImage : set oImage = oImageClip.GetImage
	dim oPixel : set oPixel = oImage.GetPixel( 0, 0 )
	logmessage "The pixel color is:"
	logmessage "R: " & oPixel.Red 
	logmessage "G: " & oPixel.Green
	logmessage "B: " & oPixel.Blue
	logmessage "A: " & oPixel.Alpha
	logmessage "xdimension (method2) ->" &  oImage.ResX
	logmessage "ydimension (method2)->" &  oImage.ResY
	logmessage "Channels ->" &  oImage.NumChannels
	logmessage "Channel Size (bytes) ->" &  oImage.ChannelSize	
end if
' ----------------------------------------------------------------
' Demonstrate how to find all image clips in the scene
' ----------------------------------------------------------------
logmessage "All image clips in Scene:"
dim oImageClips : set oImageClips = Project_GetImageClips()
for each oImageClip in oImageClips
	logmessage "Image Clip->" &oImageClip 
next 
' ----------------------------------------------------------------
' Return collection of project image clips
' ----------------------------------------------------------------
function Project_GetImageClips()
	dim oCol : set oCol = enumelements( "Clips.Image" )
	set Project_GetImageClips = sifilter( oCol, "Image Clips", ,siSearchFamilies )
end function

See Also

ImageClip.GetImage