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