class SolidRuby::Assemblies::Washer
Public Class Methods
new(size, args = {})
click to toggle source
Calls superclass method
SolidRuby::Assemblies::Assembly::new
# File lib/solidruby/assemblies/washer.rb, line 18 def initialize(size, args = {}) @args = args @size = size @args[:type] ||= '125' @args[:material] ||= 'steel 8.8' @args[:surface] ||= 'zinc plated' @chart_din125 = { 3.2 => { outer_diameter: 7, height: 0.5 }, 3.7 => { outer_diameter: 8, height: 0.5 }, 4.3 => { outer_diameter: 9, height: 0.8 }, 5.3 => { outer_diameter: 10, height: 1.0 }, 6.4 => { outer_diameter: 12, height: 1.6 }, 8.4 => { outer_diameter: 16, height: 1.6 }, 10.5 => { outer_diameter: 20, height: 2.0 }, 13.0 => { outer_diameter: 24, height: 2.5 } } if @chart_din125[@size].nil? @chart_din125.map { |k, _v| k }.sort.reverse.map { |s| s > @size ? size = s : nil } @size = size end @height = @chart_din125[@size][:height] @transformations ||= [] super(args) end
Public Instance Methods
description()
click to toggle source
# File lib/solidruby/assemblies/washer.rb, line 45 def description "Washer #{@args[:size]}, Material #{@args[:material]} #{@args[:surface]}" end
show()
click to toggle source
# File lib/solidruby/assemblies/washer.rb, line 49 def show add_to_bom washer = cylinder(d: @chart_din125[@size][:outer_diameter].to_f, h: @chart_din125[@size][:height].to_f) washer -= cylinder(d: @size, h: @chart_din125[@size][:outer_diameter].to_f + 0.2).translate(z: -0.1) washer.color('Gainsboro') transform(washer) end