Class: Axlsx::View3D
- Inherits:
-
Object
- Object
- Axlsx::View3D
- Defined in:
- lib/axlsx/drawing/view_3D.rb
Overview
3D attributes for a chart.
Constant Summary collapse
- H_PERCENT_REGEX =
Validation for hPercent
/0*(([5-9])|([1-9][0-9])|([1-4][0-9][0-9])|500)%/
- DEPTH_PERCENT_REGEX =
validation for depthPercent
/0*(([2-9][0-9])|([1-9][0-9][0-9])|(1[0-9][0-9][0-9])|2000)%/
Instance Attribute Summary collapse
-
#depthPercent ⇒ String
depth or chart as % of chart width must be between 20% and 2000%.
-
#hPercent ⇒ String
height of chart as % of chart must be between 5% and 500%.
-
#perspective ⇒ Integer
field of view angle.
-
#rAngAx ⇒ Boolean
Chart axis are at right angles.
-
#rotX ⇒ Integer
x rotation for the chart must be between -90 and 90.
-
#rotY ⇒ Integer
y rotation for the chart must be between 0 and 360.
Instance Method Summary collapse
-
#initialize(options = {}) ⇒ View3D
constructor
Creates a new View3D for charts.
-
#to_xml(xml) ⇒ String
Serializes the view3D properties.
Constructor Details
#initialize(options = {}) ⇒ View3D
Creates a new View3D for charts
47 48 49 50 51 52 |
# File 'lib/axlsx/drawing/view_3D.rb', line 47 def initialize(={}) @rotX, @hPercent, @rotY, @depthPercent, @rAngAx, @perspective = nil, nil, nil, nil, nil, nil .each do |o| self.send("#{o[0]}=", o[1]) if self.respond_to? "#{o[0]}=" end end |
Instance Attribute Details
#depthPercent ⇒ String
depth or chart as % of chart width must be between 20% and 2000%
30 31 32 |
# File 'lib/axlsx/drawing/view_3D.rb', line 30 def depthPercent @depthPercent end |
#hPercent ⇒ String
height of chart as % of chart must be between 5% and 500%
20 21 22 |
# File 'lib/axlsx/drawing/view_3D.rb', line 20 def hPercent @hPercent end |
#perspective ⇒ Integer
field of view angle
38 39 40 |
# File 'lib/axlsx/drawing/view_3D.rb', line 38 def perspective @perspective end |
#rAngAx ⇒ Boolean
Chart axis are at right angles
34 35 36 |
# File 'lib/axlsx/drawing/view_3D.rb', line 34 def rAngAx @rAngAx end |
#rotX ⇒ Integer
x rotation for the chart must be between -90 and 90
15 16 17 |
# File 'lib/axlsx/drawing/view_3D.rb', line 15 def rotX @rotX end |
#rotY ⇒ Integer
y rotation for the chart must be between 0 and 360
25 26 27 |
# File 'lib/axlsx/drawing/view_3D.rb', line 25 def rotY @rotY end |
Instance Method Details
#to_xml(xml) ⇒ String
Serializes the view3D properties
75 76 77 78 79 80 81 82 83 84 |
# File 'lib/axlsx/drawing/view_3D.rb', line 75 def to_xml(xml) xml[:c].view3D { xml[:c].rotX :val=>@rotX unless @rotX.nil? xml[:c].hPercent :val=>@hPercent unless @hPercent.nil? xml[:c].rotY :val=>@rotY unless @rotY.nil? xml[:c].depthPercent :val=>@depthPercent unless @depthPercent.nil? xml[:c].rAngAx :val=>@rAngAx unless @rAngAx.nil? xml[:c].perspective :val=>@perspective unless @perspective.nil? } end |