Class: OpenCV::Cv::Scalar

Inherits:
Object
  • Object
show all
Extended by:
FFI::DataConverter
Includes:
Vecxd
Defined in:
lib/ropencv/ropencv_ruby.rb,
lib/ropencv/ropencv_types.rb

Constant Summary collapse

SIZE =
4

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Vecxd

#[]=, #to_a

Class Method Details

.all(_v0) ⇒ Cv::Scalar

Note:

wrapper for static method const cv::Scalar cv::Scalar::all(double v0)

Parameters:

  • _v0 (Double)

Returns:



17656
17657
17658
# File 'lib/ropencv/ropencv_types.rb', line 17656

def self.all(_v0)
    Rbind::cv_scalar_all(_v0)
end

.scalarObject .scalar(_v0) ⇒ Object .scalar(_v0, _v1, _v2 = 0, _v3 = 0) ⇒ Object

Overloads:

  • .scalar(_v0) ⇒ Object

    Parameters:

    • _v0 (Double)
  • .scalar(_v0, _v1, _v2 = 0, _v3 = 0) ⇒ Object

    Parameters:

    • _v0 (Double)
    • _v1 (Double)
    • _v2 (Double) (defaults to: 0)
    • _v3 (Double) (defaults to: 0)

Raises:

  • (ArgumentError)


17522
17523
17524
17525
17526
17527
17528
17529
17530
17531
17532
17533
17534
17535
17536
17537
17538
17539
17540
17541
17542
17543
17544
17545
17546
17547
17548
17549
17550
17551
17552
17553
17554
17555
17556
17557
17558
17559
17560
17561
17562
17563
17564
17565
17566
17567
17568
17569
17570
# File 'lib/ropencv/ropencv_types.rb', line 17522

def self.new(*args)
    if args.first.is_a?(FFI::Pointer) || args.first.is_a?(ScalarStruct)
        raise ArgumentError, "too many arguments for creating #{self.name} from Pointer" unless args.size == 1
        return super(args.first)
    end
    # overloaded method wrapper for cv::Scalar::Scalar()
    @@cv_scalar_scalar_defaults0 ||= []
    if(args.size >= 0 && args.size <= 0)
        targs = args.clone
        targs.size.upto(-1) do |i|
            targs[i] = @@cv_scalar_scalar_defaults0[i]
        end
        begin
                return Rbind::cv_scalar_scalar(*targs)
        rescue TypeError => e
            @error = e
        end
    end

    # overloaded method wrapper for cv::Scalar::Scalar(double v0)
    @@cv_scalar_scalar__2_defaults1 ||= [nil]
    if(args.size >= 1 && args.size <= 1)
        targs = args.clone
        targs.size.upto(0) do |i|
            targs[i] = @@cv_scalar_scalar__2_defaults1[i]
        end
        begin
                return Rbind::cv_scalar_scalar__2(*targs)
        rescue TypeError => e
            @error = e
        end
    end

    # overloaded method wrapper for cv::Scalar::Scalar(double v0, double v1, double v2 = 0, double v3 = 0)
    @@cv_scalar_scalar__3_defaults2 ||= [nil, nil, 0, 0]
    if(args.size >= 2 && args.size <= 4)
        targs = args.clone
        targs.size.upto(3) do |i|
            targs[i] = @@cv_scalar_scalar__3_defaults2[i]
        end
        begin
                return Rbind::cv_scalar_scalar__3(*targs)
        rescue TypeError => e
            @error = e
        end
    end

    raise ArgumentError, "no constructor for #{self}(#{args.inspect})"
end

.nullObject

returns a null pointer to the object



17508
17509
17510
# File 'lib/ropencv/ropencv_types.rb', line 17508

def self.null
    new(ScalarStruct.new)
end

Instance Method Details

#[](elem) ⇒ Double

Note:

method wrapper for double cv::Scalar::operator

Parameters:

  • elem (Size_T)

Returns:

  • (Double)


17697
17698
17699
17700
# File 'lib/ropencv/ropencv_types.rb', line 17697

def [](elem)
    __validate_pointer__
    Rbind::cv_scalar_operator_array( self, elem)
end

#conjCv::Scalar

Note:

method wrapper for const cv::Scalar cv::Scalar::conj()

Returns:



17676
17677
17678
17679
17680
17681
17682
17683
17684
# File 'lib/ropencv/ropencv_types.rb', line 17676

def conj()
    __validate_pointer__
    result = Rbind::cv_scalar_conj( self)
    if result.respond_to?(:__owner__?) && !result.__owner__?
    # store owner insight the pointer to not get garbage collected
        result.instance_variable_get(:@__obj_ptr__).instance_variable_set(:@__owner__,self) 
    end
    result
end

#is_realBool Also known as: isReal

Note:

method wrapper for bool cv::Scalar::isReal()

Returns:

  • (Bool)


17688
17689
17690
17691
# File 'lib/ropencv/ropencv_types.rb', line 17688

def is_real()
    __validate_pointer__
    Rbind::cv_scalar_is_real( self)
end

#mul(other, scale = 1) ⇒ Cv::Scalar

Note:

method wrapper for const cv::Scalar cv::Scalar::mul(const cv::Scalar other, double scale = 1)

Parameters:

  • other (Cv::Scalar)
  • scale (Double) (defaults to: 1)

Returns:



17664
17665
17666
17667
17668
17669
17670
17671
17672
# File 'lib/ropencv/ropencv_types.rb', line 17664

def mul(other, scale = 1)
    __validate_pointer__
    result = Rbind::cv_scalar_mul( self, other, scale)
    if result.respond_to?(:__owner__?) && !result.__owner__?
    # store owner insight the pointer to not get garbage collected
        result.instance_variable_get(:@__obj_ptr__).instance_variable_set(:@__owner__,self) 
    end
    result
end

#to_sObject

converts Scalar into a string by crawling through all its attributes



17636
17637
17638
# File 'lib/ropencv/ropencv_types.rb', line 17636

def to_s
    "#<cv::Scalar val=#{self.val}>"
end

#valDouble Also known as: get_val

Note:

method wrapper for double* val

methods

Returns:

  • (Double)


17647
17648
17649
17650
# File 'lib/ropencv/ropencv_types.rb', line 17647

def val()
    __validate_pointer__
    Rbind::cv_scalar_get_val( self)
end