class DbClustering::Models::Point
Attributes
cluster[RW]
datasource_point[RW]
is_noise[RW]
Public Class Methods
new(datasource_point:, vector_params: nil)
click to toggle source
# File lib/models/point.rb, line 7 def initialize(datasource_point:, vector_params: nil) @is_noise = false @cluster = nil @datasource_point = datasource_point @vector_params = vector_params end
Public Instance Methods
is_core_point?()
click to toggle source
# File lib/models/point.rb, line 36 def is_core_point? !self.is_noise && !self.cluster.nil? end
is_edge_point?()
click to toggle source
# File lib/models/point.rb, line 32 def is_edge_point? self.is_noise && !self.cluster.nil? end
is_noise_point?()
click to toggle source
# File lib/models/point.rb, line 40 def is_noise_point? self.is_noise && self.cluster.nil? end
vector()
click to toggle source
# File lib/models/point.rb, line 14 def vector if @vector_params vector_object = @datasource_point.clustering_vector(@vector_params) else vector_object = @datasource_point.clustering_vector end if vector_object.is_a?(Hash) || vector_object.is_a?(Array) DbClustering::Models::Vector.new(object: vector_object) else raise "clustering_vector method needs to result to a Hash or an Array object" end end
visited?()
click to toggle source
# File lib/models/point.rb, line 28 def visited? self.is_noise || !self.cluster.nil? end