ImageGear for C and C++ on Windows v21.0 - Updated
API Reference Guide / Core Component API Reference / Core Component Functions Reference / Image Processing Functions / IG_IP_arithmetic
In This Topic
    IG_IP_arithmetic
    In This Topic

    This function performs an arithmetic or logical operation on two images.

    Declaration:

     
    Copy Code
    AT_ERRCOUNT ACCUAPI IG_IP_arithmetic(
       HIGEAR hIGear1,
       HIGEAR hIGear2,
       AT_MODE nOperation
    );
    

    Arguments:

    Name Type Description
    hIGear1 HIGEAR HIGEAR handle of image 1, also the destination of the operation.
    hIGear2 HIGEAR HIGEAR handle of image 2.
    nOperation AT_MODE Specifies the kind of arithmetic operation to perform on the images. See enumIGMergeModes for possible values.

    Return Value:

    Returns 0 if successful. Otherwise, returns the number of ImageGear errors that occurred during this function call.

    Supported Raster Image Formats:

    All pixel formats supported by ImageGear for C and C++.

    Sample:

    Image Processing, FlashPix, Timing

    Example:

     
    Copy Code
    HIGEAR hIGear1;            // HIGEAR handle of the first image
    HIGEAR hIGear2;            // HIGEAR handle of the second image
    AT_ERRCOUNT nErrcount;    // Count of errs on stack upon ret from func
    
    // Load image file "picture.bmp" from working directory
    nErrcount = IG_load_file("picture.bmp", &hIGear1);
    if(nErrcount == 0)
    {
        nErrcount = IG_load_file("picture.tif", &hIGear2);
        if(nErrcount == 0)
        {
            nErrcount = IG_IP_arithmetic(hIGear1, hIGear2, IG_ARITH_ADD);
            // ...
            // Destroy the second image
            IG_image_delete(hIGear2);
        }
        // Destroy the first image
        IG_image_delete(hIGear1);
    }
    

    Remarks:

    IG_IP_arithmetic_rect is an extended version of IG_IP_arithmetic that allows specifying a rectangular area on the first image to be used for processing.

    IG_IP_merge is an extended version of IG_IP_arithmetic that allows specifying a rectangular area on the first image to be used for processing, as well as the coordinates in the first image where to place the upper-left corner of the specified rectangle of the second image.