ChartDirector 6.0 (ASP/COM/VB Edition)

3D Angle


            

This example demonstrates the effects of different 3D angles.

ChartDirector allows the 3D depth and angles to be configured using PieChart.set3D and PieChart.set3D2.

This example also demonstrates how to disable sector labels. This is setting their colors to Transparent using PieChart.setLabelStyle.

Source Code Listing

[Web Version (in ASP)] aspdemo\threedanglepie.asp
<%@ language="vbscript" %>
<%
Set cd = CreateObject("ChartDirector.API")

' This script can draw different charts depending on the chartIndex
chartIndex = CInt(Request("img"))

' the tilt angle of the pie
angle = chartIndex * 15

' The data for the pie chart
data = Array(25, 18, 15, 12, 8, 30, 35)

' Create a PieChart object of size 100 x 110 pixels
Set c = cd.PieChart(100, 110)

' Set the center of the pie at (50, 55) and the radius to 38 pixels
Call c.setPieSize(50, 55, 38)

' Set the depth and tilt angle of the 3D pie (-1 means auto depth)
Call c.set3D(-1, angle)

' Add a title showing the tilt angle
Call c.addTitle("Tilt = " & angle & " deg", "arial.ttf", 8)

' Set the pie data
Call c.setData(data)

' Disable the sector labels by setting the color to Transparent
Call c.setLabelStyle("", 8, cd.Transparent)

' Output the chart
Response.ContentType = "image/png"
Response.BinaryWrite c.makeChart2(cd.PNG)
Response.End
%>

[Windows Version (in Visual Basic)] vbdemo\threedanglepie.cls
Public Sub createChart(viewer As Object, chartIndex As Integer)

    Dim cd As New ChartDirector.API

    ' the tilt angle of the pie
    Dim angle As Long
    angle = chartIndex * 15

    ' The data for the pie chart
    Dim data()
    data = Array(25, 18, 15, 12, 8, 30, 35)

    ' The labels for the pie chart
    Dim labels()
    labels = Array("Labor", "Licenses", "Taxes", "Legal", "Insurance", "Facilities", "Production")

    ' Create a PieChart object of size 100 x 110 pixels
    Dim c As PieChart
    Set c = cd.PieChart(100, 110)

    ' Set the center of the pie at (50, 55) and the radius to 38 pixels
    Call c.setPieSize(50, 55, 38)

    ' Set the depth and tilt angle of the 3D pie (-1 means auto depth)
    Call c.set3D(-1, angle)

    ' Add a title showing the tilt angle
    Call c.addTitle("Tilt = " & angle & " deg", "arial.ttf", 8)

    ' Set the pie data
    Call c.setData(data, labels)

    ' Disable the sector labels by setting the color to Transparent
    Call c.setLabelStyle("", 8, cd.Transparent)

    ' Output the chart
    Set viewer.Picture = c.makePicture()

    'include tool tip for the chart
    viewer.ImageMap = c.getHTMLImageMap("clickable", "", _
        "title='{label}: US${value}K ({percent}%)'")

End Sub