overrides flatten to generate a series of radial tick marks
# File lib/ziya/gauges/support/radial_ticks.rb, line 13
13: def flatten( xml )
14: i = start_angle
15: while( i <= end_angle ) do
16: angle = deg2rad( i )
17: hash = { :x1 => (x + Math::sin( angle ) * radius).to_i,
18: :y1 => (y - Math::cos( angle ) * radius).to_i,
19: :x2 => (x + Math::sin( angle ) * (radius + length)).to_i,
20: :y2 => (y - Math::cos( angle ) * (radius + length)).to_i,
21: :thickness => thickness,
22: :color => color }
23: xml.line( hash )
24: i += (end_angle-start_angle)/(ticks-1)
25: end
26: end
--- SEC00174
--- ""
---
- methods:
- visibility: public
aref: M000067
name: flatten
sourcecode: " <span class=\"ruby-comment cmt\"># File lib/ziya/gauges/support/radial_ticks.rb, line 13</span>\n\
13: <span class=\"ruby-keyword kw\">def</span> <span class=\"ruby-identifier\">flatten</span>( <span class=\"ruby-identifier\">xml</span> )\n\
14: <span class=\"ruby-identifier\">i</span> = <span class=\"ruby-identifier\">start_angle</span> \n\
15: <span class=\"ruby-keyword kw\">while</span>( <span class=\"ruby-identifier\">i</span> <span class=\"ruby-operator\"><=</span> <span class=\"ruby-identifier\">end_angle</span> ) <span class=\"ruby-keyword kw\">do</span>\n\
16: <span class=\"ruby-identifier\">angle</span> = <span class=\"ruby-identifier\">deg2rad</span>( <span class=\"ruby-identifier\">i</span> )\n\
17: <span class=\"ruby-identifier\">hash</span> = { <span class=\"ruby-identifier\">:x1</span> =<span class=\"ruby-operator\">></span> (<span class=\"ruby-identifier\">x</span> <span class=\"ruby-operator\">+</span> <span class=\"ruby-constant\">Math</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">sin</span>( <span class=\"ruby-identifier\">angle</span> ) <span class=\"ruby-operator\">*</span> <span class=\"ruby-identifier\">radius</span>).<span class=\"ruby-identifier\">to_i</span>,\n\
18: <span class=\"ruby-identifier\">:y1</span> =<span class=\"ruby-operator\">></span> (<span class=\"ruby-identifier\">y</span> <span class=\"ruby-operator\">-</span> <span class=\"ruby-constant\">Math</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">cos</span>( <span class=\"ruby-identifier\">angle</span> ) <span class=\"ruby-operator\">*</span> <span class=\"ruby-identifier\">radius</span>).<span class=\"ruby-identifier\">to_i</span>,\n\
19: <span class=\"ruby-identifier\">:x2</span> =<span class=\"ruby-operator\">></span> (<span class=\"ruby-identifier\">x</span> <span class=\"ruby-operator\">+</span> <span class=\"ruby-constant\">Math</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">sin</span>( <span class=\"ruby-identifier\">angle</span> ) <span class=\"ruby-operator\">*</span> (<span class=\"ruby-identifier\">radius</span> <span class=\"ruby-operator\">+</span> <span class=\"ruby-identifier\">length</span>)).<span class=\"ruby-identifier\">to_i</span>,\n\
20: <span class=\"ruby-identifier\">:y2</span> =<span class=\"ruby-operator\">></span> (<span class=\"ruby-identifier\">y</span> <span class=\"ruby-operator\">-</span> <span class=\"ruby-constant\">Math</span><span class=\"ruby-operator\">::</span><span class=\"ruby-identifier\">cos</span>( <span class=\"ruby-identifier\">angle</span> ) <span class=\"ruby-operator\">*</span> (<span class=\"ruby-identifier\">radius</span> <span class=\"ruby-operator\">+</span> <span class=\"ruby-identifier\">length</span>)).<span class=\"ruby-identifier\">to_i</span>,\n\
21: <span class=\"ruby-identifier\">:thickness</span> =<span class=\"ruby-operator\">></span> <span class=\"ruby-identifier\">thickness</span>,\n\
22: <span class=\"ruby-identifier\">:color</span> =<span class=\"ruby-operator\">></span> <span class=\"ruby-identifier\">color</span> }\n\
23: <span class=\"ruby-identifier\">xml</span>.<span class=\"ruby-identifier\">line</span>( <span class=\"ruby-identifier\">hash</span> )\n\
24: <span class=\"ruby-identifier\">i</span> <span class=\"ruby-operator\">+=</span> (<span class=\"ruby-identifier\">end_angle</span><span class=\"ruby-operator\">-</span><span class=\"ruby-identifier\">start_angle</span>)<span class=\"ruby-operator\">/</span>(<span class=\"ruby-identifier\">ticks</span><span class=\"ruby-operator\">-</span><span class=\"ruby-value\">1</span>)\n\
25: <span class=\"ruby-keyword kw\">end</span>\n\
26: <span class=\"ruby-keyword kw\">end</span>"
m_desc: |-
<p>
overrides flatten to generate a series of radial tick marks
</p>
params: ( xml )
category: Instance
type: Public
---
Generated with the Darkfish Rdoc Generator.