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
46 47 48 49 50 51 |
# File 'lib/axlsx/drawing/view_3D.rb', line 46 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%
29 30 31 |
# File 'lib/axlsx/drawing/view_3D.rb', line 29 def depthPercent @depthPercent end |
#hPercent ⇒ String
height of chart as % of chart must be between 5% and 500%
19 20 21 |
# File 'lib/axlsx/drawing/view_3D.rb', line 19 def hPercent @hPercent end |
#perspective ⇒ Integer
field of view angle
37 38 39 |
# File 'lib/axlsx/drawing/view_3D.rb', line 37 def perspective @perspective end |
#rAngAx ⇒ Boolean
Chart axis are at right angles
33 34 35 |
# File 'lib/axlsx/drawing/view_3D.rb', line 33 def rAngAx @rAngAx end |
#rotX ⇒ Integer
x rotation for the chart must be between -90 and 90
14 15 16 |
# File 'lib/axlsx/drawing/view_3D.rb', line 14 def rotX @rotX end |
#rotY ⇒ Integer
y rotation for the chart must be between 0 and 360
24 25 26 |
# File 'lib/axlsx/drawing/view_3D.rb', line 24 def rotY @rotY end |
Instance Method Details
#to_xml(xml) ⇒ String
Serializes the view3D properties
74 75 76 77 78 79 80 81 82 83 |
# File 'lib/axlsx/drawing/view_3D.rb', line 74 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 |