Xojo Conferences
MBSOct2019CologneDE

Platforms to show: All Mac Windows Linux Cross-Platform

/ChartDirector/cone animated
Function:
Required plugins for this example: MBS ChartDirector Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /ChartDirector/cone animated
This example is the version from Mon, 3rd Feb 2019.
Project "cone animated.rbp"
Class App Inherits Application
Const kEditClear = "&Löschen"
Const kFileQuit = "Beenden"
Const kFileQuitShortcut = ""
End Class
Class PicWindow Inherits Window
Control Timer1 Inherits Timer
ControlInstance Timer1 Inherits Timer
EventHandler Sub Action() if count<200 then count=count+1 end if redraw End EventHandler
End Control
Control Canvas1 Inherits Canvas
ControlInstance Canvas1 Inherits Canvas
End Control
Control Canvas2 Inherits Canvas
ControlInstance Canvas2 Inherits Canvas
End Control
Control out Inherits Canvas
ControlInstance out Inherits Canvas
EventHandler Sub Paint(g As Graphics, areas() As REALbasic.Rect) draw g End EventHandler
End Control
Sub draw(g as Graphics) // The data for the pyramid chart dim data(-1) as double data.Append 156.0 data.Append 123.0 data.Append 211.0 data.Append 179.0 // The labels for the pyramid chart dim labels(-1) as string // The semi-transparent colors for the pyramid layers dim colors(-1) as integer colors.Append &h60000088 labels.Append "Funds" colors.Append &h6066aaee labels.Append "Bonds" colors.Append &h60ffbb00 labels.Append "Stocks" colors.Append &h60ee6622 labels.Append "Cash" // Create a PyramidChart object of size 480 x 400 pixels dim c as new CDPyramidChartMBS(480, 400) // Set the cone center at (280, 180), and width x height to 150 x 300 pixels c.setConeSize(280, 180, 150, 300) // Set the elevation to 15 degrees c.setViewAngle(75-count*3/10) // Set the pyramid data and labels c.setData(data, labels) // Set the layer colors to the given colors c.setColors(c.kDataColor, colors) // Leave 1% gaps between layers c.setLayerGap(0.01) // Add labels at the left side of the pyramid layers using Arial Bold font. The // labels will have 3 lines showing the layer name, value and percentage. call c.setLeftLabel("{label}"+EndOfLine.unix+"US ${value}K"+EndOfLine.unix+"({percent}%)", "arialbd.ttf") // Output the chart g.DrawPicture c.makeChartPicture,0,0 End Sub
Sub redraw() out.Invalidate End Sub
Property count As Integer
End Class
MenuBar MenuBar1
MenuItem FileMenu = "&Ablage"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Bearbeiten"
MenuItem EditUndo = "&Rückgängig"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "&Ausschneiden"
MenuItem EditCopy = "&Kopieren"
MenuItem EditPaste = "&Einfügen"
MenuItem EditClear = "#App.kEditClear"
MenuItem UntitledMenu0 = "-"
MenuItem EditSelectAll = "&Alles auswählen"
End MenuBar
End Project

See also:

Feedback, Comments & Corrections

The items on this page are in the following plugins: MBS ChartDirector Plugin.




Links
MBS FileMaker blog