ChartDirector 6.0 (ASP/COM/VB Edition)

Vertical Linear Meter




This example demonstrates the basic steps in creating a vertical linear meter.

A vertical linear meter can be created using the following steps:

Source Code Listing

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

' The value to display on the meter
value = 74.35

' Create an LinearMeter object of size 70 x 240 pixels with a very light grey (0xeeeeee) background,
' and a rounded 3-pixel thick light grey (0xcccccc) border
Set m = cd.LinearMeter(70, 240, &Heeeeee, &Hcccccc)
Call m.setRoundedFrame(cd.Transparent)
Call m.setThickFrame(3)

' Set the scale region top-left corner at (28, 18), with size of 20 x 205 pixels. The scale labels
' are located on the left (default - implies vertical meter).
Call m.setMeter(28, 18, 20, 205)

' Set meter scale from 0 - 100, with a tick every 10 units
Call m.setScale(0, 100, 10)

' Add a smooth color scale to the meter
smoothColorScale = Array(0, &H6666ff, 25, &H00bbbb, 50, &H00ff00, 75, &Hffff00, 100, &Hff0000)
Call m.addColorScale(smoothColorScale)

' Add a blue (0x0000cc) pointer at the specified value
Call m.addPointer(value, &H0000cc)

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

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

    Dim cd As New ChartDirector.API

    ' The value to display on the meter
    Dim value As Double
    value = 74.35

    ' Create an LinearMeter object of size 70 x 240 pixels with a very light grey (0xeeeeee)
    ' background, and a rounded 3-pixel thick light grey (0xcccccc) border
    Dim m As LinearMeter
    Set m = cd.LinearMeter(70, 240, &Heeeeee, &Hcccccc)
    Call m.setRoundedFrame()
    Call m.setThickFrame(3)

    ' Set the scale region top-left corner at (28, 18), with size of 20 x 205 pixels. The scale
    ' labels are located on the left (default - implies vertical meter).
    Call m.setMeter(28, 18, 20, 205)

    ' Set meter scale from 0 - 100, with a tick every 10 units
    Call m.setScale(0, 100, 10)

    ' Add a smooth color scale to the meter
    Dim smoothColorScale()
    smoothColorScale = Array(0, &H6666ff, 25, &H00bbbb, 50, &H00ff00, 75, &Hffff00, 100, &Hff0000)
    Call m.addColorScale(smoothColorScale)

    ' Add a blue (0x0000cc) pointer at the specified value
    Call m.addPointer(value, &H0000cc)

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

End Sub