add composite shortcut to cpp
two composite just two images
This commit is contained in:
parent
f0aeed1c64
commit
e52d2c9f7f
|
@ -205,6 +205,30 @@ VOption::set( const char *name, std::vector<double> value )
|
|||
return( this );
|
||||
}
|
||||
|
||||
// input int array
|
||||
VOption *
|
||||
VOption::set( const char *name, std::vector<int> value )
|
||||
{
|
||||
Pair *pair = new Pair( name );
|
||||
|
||||
int *array;
|
||||
unsigned int i;
|
||||
|
||||
pair->input = true;
|
||||
|
||||
g_value_init( &pair->value, VIPS_TYPE_ARRAY_INT );
|
||||
vips_value_set_array_int( &pair->value, NULL,
|
||||
static_cast< int >( value.size() ) );
|
||||
array = vips_value_get_array_int( &pair->value, NULL );
|
||||
|
||||
for( i = 0; i < value.size(); i++ )
|
||||
array[i] = value[i];
|
||||
|
||||
options.push_back( pair );
|
||||
|
||||
return( this );
|
||||
}
|
||||
|
||||
// input image array
|
||||
VOption *
|
||||
VOption::set( const char *name, std::vector<VImage> value )
|
||||
|
@ -670,6 +694,17 @@ VImage::bandjoin( VImage other, VOption *options )
|
|||
return( bandjoin( vec, options ) );
|
||||
}
|
||||
|
||||
VImage
|
||||
VImage::composite( VImage other, VipsBlendMode mode, VOption *options )
|
||||
{
|
||||
VImage v[2] = { *this, other };
|
||||
std::vector<VImage> ivec( v, v + VIPS_NUMBER( v ) );
|
||||
int m[1] = { static_cast<int>( mode ) };
|
||||
std::vector<int> mvec( m, m + VIPS_NUMBER( m ) );
|
||||
|
||||
return( composite( ivec, mvec, options ) );
|
||||
}
|
||||
|
||||
std::complex<double>
|
||||
VImage::minpos( VOption *options )
|
||||
{
|
||||
|
|
|
@ -219,6 +219,7 @@ public:
|
|||
VOption *set( const char *name, VInterpolate value );
|
||||
VOption *set( const char *name, std::vector<VImage> value );
|
||||
VOption *set( const char *name, std::vector<double> value );
|
||||
VOption *set( const char *name, std::vector<int> value );
|
||||
VOption *set( const char *name, VipsBlob *value );
|
||||
|
||||
VOption *set( const char *name, bool *value );
|
||||
|
@ -541,6 +542,9 @@ public:
|
|||
return( bandjoin_const( other, options ) );
|
||||
}
|
||||
|
||||
VImage composite( VImage other, VipsBlendMode mode,
|
||||
VOption *options = 0 );
|
||||
|
||||
std::complex<double> minpos( VOption *options = 0 );
|
||||
|
||||
std::complex<double> maxpos( VOption *options = 0 );
|
||||
|
|
Loading…
Reference in New Issue