Sha256: f23f91d9ebf627bcaedd879512cd906056997313e74c51f17421df403ff1da7c

Contents?: true

Size: 990 Bytes

Versions: 21

Compression:

Stored size: 990 Bytes

Contents

# frozen_string_literal: true
module Glitch3d
  module Localized
    def alter_vertices(vertices_objects_array)
      sorted_array = vertices_objects_array.sort do |v1, v2| 
        rand_attr = v1.rand_attr
        v1.send(rand_attr) <=> v2.send(rand_attr)
      end
      (VERTEX_GLITCH_ITERATION_RATIO * sorted_array.size).to_i.times do |_|
        random_element(target(sorted_array)).fuck
      end
      sorted_array
    end

    def alter_faces(faces_objects_array, vertices_objects_array)
      (FACE_GLITCH_ITERATION_RATIO * faces_objects_array.count).to_i.times do |_|
        random_element(faces_objects_array).fuck(random_element(target(vertices_objects_array)))
      end
      faces_objects_array
    end

    def selected_area(vertices_objects_array)
      Vertex.subset(x: :positive?, y: :positive?, z: :positive?, vertex_list: vertices_objects_array)
    end

    def target(vertices_objects_array)
      @target ||= selected_area(vertices_objects_array)
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
glitch3d-0.5.0.0 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.4.0 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.3.8 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.3.7 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.3.6 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.3.3 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.3.2 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.3.1 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.3.0 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.2.9 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.2.8 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.2.6 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.2.5 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.2.3 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.2.2 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.2.1 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.1 lib/glitch3d/strategies/localized.rb
glitch3d-0.2.0 lib/glitch3d/strategies/localized.rb
glitch3d-0.1.9 lib/glitch3d/strategies/localized.rb
glitch3d-0.1.8 lib/glitch3d/strategies/localized.rb