Class: OpenCV::Std::Vector::Cv_Point

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

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.vectorObject .vectorObject

Overloads:

Raises:

  • (ArgumentError)


33183
33184
33185
33186
33187
33188
33189
33190
33191
33192
33193
33194
33195
33196
33197
33198
33199
33200
33201
33202
33203
33204
33205
33206
33207
33208
33209
33210
33211
33212
33213
33214
33215
33216
33217
# File 'lib/ropencv/ropencv_types.rb', line 33183

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

    # overloaded method wrapper for std::vector<cv::Point>::vector<cv::Point>(std::vector<cv::Point> other)
    @@std_vector_cv_point_vector_cv_point2_defaults1 ||= [nil]
    if(args.size >= 1 && args.size <= 1)
        targs = args.clone
        targs.size.upto(0) do |i|
            targs[i] = @@std_vector_cv_point_vector_cv_point2_defaults1[i]
        end
        begin
                return Rbind::std_vector_cv_point_vector_cv_point2(*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



33175
33176
33177
# File 'lib/ropencv/ropencv_types.rb', line 33175

def self.null
    new(Vector::Cv_PointStruct.new)
end

Instance Method Details

#<<(val) ⇒ Object



33444
33445
33446
33447
# File 'lib/ropencv/ropencv_types.rb', line 33444

def <<(val)
    push_back(val)
    self
end

#[](idx) ⇒ Cv::Point

Note:

method wrapper for cv::Point std::vectorcv::Point::operator

Parameters:

  • size (Size_T)

Returns:



33340
33341
33342
33343
33344
33345
33346
33347
33348
33349
# File 'lib/ropencv/ropencv_types.rb', line 33340

def [](size)
validate_index(size)
    __validate_pointer__
    result = Rbind::std_vector_cv_point_operator_array( self, size)
    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

#at(size) ⇒ Cv::Point

Note:

method wrapper for cv::Point std::vectorcv::Point::at(size_t size)

Parameters:

  • size (Size_T)

Returns:



33354
33355
33356
33357
33358
33359
33360
33361
33362
33363
# File 'lib/ropencv/ropencv_types.rb', line 33354

def at(size)
validate_index(size)
    __validate_pointer__
    result = Rbind::std_vector_cv_point_at( self, size)
    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

#backCv::Point

Note:

method wrapper for cv::Point std::vectorcv::Point::back()

Returns:



33379
33380
33381
33382
33383
33384
33385
33386
33387
# File 'lib/ropencv/ropencv_types.rb', line 33379

def back()
    __validate_pointer__
    result = Rbind::std_vector_cv_point_back( 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

#capacitySize_T

Note:

method wrapper for size_t std::vectorcv::Point::capacity()

Returns:

  • (Size_T)


33317
33318
33319
33320
# File 'lib/ropencv/ropencv_types.rb', line 33317

def capacity()
    __validate_pointer__
    Rbind::std_vector_cv_point_capacity( self)
end

#clearVoid

Note:

method wrapper for void std::vectorcv::Point::clear()

Returns:

  • (Void)


33310
33311
33312
33313
# File 'lib/ropencv/ropencv_types.rb', line 33310

def clear()
    __validate_pointer__
    Rbind::std_vector_cv_point_clear( self)
end

#dataVoid

Note:

method wrapper for void* std::vectorcv::Point::data()

Returns:

  • (Void)


33391
33392
33393
33394
# File 'lib/ropencv/ropencv_types.rb', line 33391

def data()
    __validate_pointer__
    Rbind::std_vector_cv_point_data( self)
end

#delete_if(&block) ⇒ Object



33448
33449
33450
33451
33452
33453
33454
33455
# File 'lib/ropencv/ropencv_types.rb', line 33448

def delete_if(&block)
    v = self.class.new
    each do |i|
         v << i if !yield(i)
    end
    v.swap(self)
    self
end

#each(&block) ⇒ Object



33434
33435
33436
33437
33438
33439
33440
33441
33442
33443
# File 'lib/ropencv/ropencv_types.rb', line 33434

def each(&block)
    if block
         s = size
         0.upto(s-1) do |i|
             yield self[i]
         end
    else
        Enumerator.new(self)
    end
end

#emptyBool

Note:

method wrapper for bool std::vectorcv::Point::empty()

Returns:

  • (Bool)


33324
33325
33326
33327
# File 'lib/ropencv/ropencv_types.rb', line 33324

def empty()
    __validate_pointer__
    Rbind::std_vector_cv_point_empty( self)
end

#frontCv::Point

Note:

method wrapper for cv::Point std::vectorcv::Point::front()

Returns:



33367
33368
33369
33370
33371
33372
33373
33374
33375
# File 'lib/ropencv/ropencv_types.rb', line 33367

def front()
    __validate_pointer__
    result = Rbind::std_vector_cv_point_front( 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

#get_elementCv::Point

Note:

method wrapper for cv::Point std::vectorcv::Point::operator

Parameters:

  • size (Size_T)

Returns:



33423
33424
33425
33426
33427
33428
33429
33430
33431
33432
# File 'lib/ropencv/ropencv_types.rb', line 33423

def [](size)
validate_index(size)
    __validate_pointer__
    result = Rbind::std_vector_cv_point_operator_array( self, size)
    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

#pop_backVoid

Note:

method wrapper for void std::vectorcv::Point::pop_back()

Returns:

  • (Void)


33406
33407
33408
33409
# File 'lib/ropencv/ropencv_types.rb', line 33406

def pop_back()
    __validate_pointer__
    Rbind::std_vector_cv_point_pop_back( self)
end

#push_back(other) ⇒ Void

Note:

method wrapper for void std::vectorcv::Point::push_back(cv::Point other)

Parameters:

Returns:

  • (Void)


33399
33400
33401
33402
# File 'lib/ropencv/ropencv_types.rb', line 33399

def push_back(other)
    __validate_pointer__
    Rbind::std_vector_cv_point_push_back( self, other)
end

#reserve(size) ⇒ Void

Note:

method wrapper for void std::vectorcv::Point::reserve(size_t size)

Parameters:

  • size (Size_T)

Returns:

  • (Void)


33332
33333
33334
33335
# File 'lib/ropencv/ropencv_types.rb', line 33332

def reserve(size)
    __validate_pointer__
    Rbind::std_vector_cv_point_reserve( self, size)
end

#resize(size, val = Cv::Point.new()) ⇒ Void

Note:

method wrapper for void std::vectorcv::Point::resize(size_t size, cv::Point val = cv::Point())

methods

Parameters:

  • size (Size_T)
  • val (Cv::Point) (defaults to: Cv::Point.new())

Returns:

  • (Void)


33296
33297
33298
33299
# File 'lib/ropencv/ropencv_types.rb', line 33296

def resize(size, val = Cv::Point.new())
    __validate_pointer__
    Rbind::std_vector_cv_point_resize( self, size, val)
end

#sizeSize_T

Note:

method wrapper for size_t std::vectorcv::Point::size()

Returns:

  • (Size_T)


33303
33304
33305
33306
# File 'lib/ropencv/ropencv_types.rb', line 33303

def size()
    __validate_pointer__
    Rbind::std_vector_cv_point_size( self)
end

#swap(other) ⇒ Void

Note:

method wrapper for void std::vectorcv::Point::swap(std::vectorcv::Point other)

Parameters:

Returns:

  • (Void)


33414
33415
33416
33417
# File 'lib/ropencv/ropencv_types.rb', line 33414

def swap(other)
    __validate_pointer__
    Rbind::std_vector_cv_point_swap( self, other)
end

#to_sObject

converts Vector::Cv_Point into a string by crawling through all its attributes



33283
33284
33285
# File 'lib/ropencv/ropencv_types.rb', line 33283

def to_s
    "#<std::vector<cv::Point> >"
end

#validate_index(idx) ⇒ Object



33429
33430
33431
33432
33433
# File 'lib/ropencv/ropencv_types.rb', line 33429

def validate_index(idx)
    if idx < 0 || idx >= size
        raise RangeError,"#{idx} is out of range [0..#{size-1}]"
    end
end