Platforms to show: All Mac Windows Linux Cross-Platform

Back to CDViewPortManagerMBS class.

Previous items

CDViewPortManagerMBS.setViewPortTop(value as Double)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 8.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Sets the position of the top side of the view port.

The position of the view port top side is its distance from the top side of the underlying surface, as a fraction of the height of the underlying surface. It should be between 0 and 1.
ArgumentDefaultDescription
top(Mandatory)The position of the top side of the view port.

Some examples using this method:

CDViewPortManagerMBS.setViewPortWidth(value as Double)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 8.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Sets the width of the view port.

The view port width is expressed as a fraction of the width of the underlying surface. It should be between 0 and 1.
ArgumentDefaultDescription
width(Mandatory)The width of the view port.

Some examples using this method:

CDViewPortManagerMBS.setZoomInHeightLimit(value as Double)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 8.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Sets the view port height at maximum zoom in.

In many applications, it is desirable to set a maximum zoom in level, instead of allowing the user to zoom in indefinitely.

This method determines the minimum allowed view port height. It should be between 0 and 1. The default is 0.01, which means a maximum zoom in of 100x (the view port see only 1% of the underlying surface).
ArgumentDefaultDescription
height(Mandatory)The minimum allowed view port height.

Some examples using this method:

CDViewPortManagerMBS.setZoomInWidthLimit(value as Double)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 8.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Sets the view port width at maximum zoom in.

In many applications, it is desirable to set a maximum zoom in level, instead of allowing the user to zoom in indefinitely.

This method determines the minimum allowed view port width. It should be between 0 and 1. The default is 0.01, which means a maximum zoom in of 100x (the view port see only 1% of the underlying surface).
ArgumentDefaultDescription
width(Mandatory)The minimum allowed view port width.

Some examples using this method:

CDViewPortManagerMBS.setZoomOutHeightLimit(value as Double)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 8.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Sets the view port height at maximum zoom in.

In many applications, it is desirable to set a maximum zoom in level, instead of allowing the user to zoom in indefinitely.

This method determines the minimum allowed view port height. It should be between 0 and 1. The default is 0.01, which means a maximum zoom in of 100x (the view port see only 1% of the underlying surface).
ArgumentDefaultDescription
height(Mandatory)The minimum allowed view port height.

Some examples using this method:

CDViewPortManagerMBS.syncDateAxisWithViewPort(id as string, axis as CDAxisMBS)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 12.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Synchronizes a date/time Axis with the part of the data scale in view port.

If the data scale has already been defined (see ViewPortManager.setFullRange on how to define a data scale), this method will compute the visible data scale based on the view port coordinates using date/time interpolation, and then sets the axis to that date/time scale.

If the data scale has not been defined, this method will define the data scale based on the axis scale and the the view port coordinates using date/time extrapolation. Because the axis scale may not be known at the time of calling this method (the axis could be auto-scaled by ChartDirector, which may not occur until the chart is rendered), the definition of the data scale will not occur immediately, but will be pending until the chart is to be displayed.

If your charting code calls this method but never defines the full data scale or the view port coordinates (in which case the view port defaults to showing the complete data scale), then the first time the code is executed, the data scale will be defined to be equal to the axis scale. Subsequently, when the user zooms into the chart (which means the view port coordinates are changed), the same charting code will set up the axis scale to the range that the user has zoomed to.

ArgumentDefaultDescription
id(Mandatory)The name of the data scale.
axis(Mandatory)The Axis object to synchronize with.

CDViewPortManagerMBS.syncLinearAxisWithViewPort(id as string, axis as CDAxisMBS)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 12.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Synchronizes a linear Axis with the part of the data scale in view port.

If the data scale has already been defined (see ViewPortManager.setFullRange on how to define a data scale), this method will compute the visible data scale based on the view port coordinates using linear interpolation, and then sets the axis to that linear scale.

If the data scale has not been defined, this method will define the data scale based on the axis scale and the the view port coordinates using linear extrapolation. Because the axis scale may not be known at the time of calling this method (the axis could be auto-scaled by ChartDirector, which may not occur until the chart is rendered), the definition of the data scale will not occur immediately, but will be pending until the chart is to be displayed.

If your charting code calls this method but never defines the full data scale or the view port coordinates (in which case the view port defaults to showing the complete data scale), then the first time the code is executed, the data scale will be defined to be equal to the axis scale. Subsequently, when the user zooms into the chart (which means the view port coordinates are changed), the same charting code will set up the axis scale to the range that the user has zoomed to.

ArgumentDefaultDescription
id(Mandatory)The name of the data scale.
axis(Mandatory)The Axis object to synchronize with.

CDViewPortManagerMBS.syncLogAxisWithViewPort(id as string, axis as CDAxisMBS)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 12.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Synchronizes a logarithmic Axis with the part of the data scale in view port.

If the data scale has already been defined (see ViewPortManager.setFullRange on how to define a data scale), this method will compute the visible data scale based on the view port coordinates using logarithmic interpolation, and then sets the axis to that logarithmic scale.

If the data scale has not been defined, this method will define the data scale based on the axis scale and the the view port coordinates using logarithmic extrapolation. Because the axis scale may not be known at the time of calling this method (the axis could be auto-scaled by ChartDirector, which may not occur until the chart is rendered), the definition of the data scale will not occur immediately, but will be pending until the chart is to be displayed.

If your charting code calls this method but never defines the full data scale or the view port coordinates (in which case the view port defaults to showing the complete data scale), then the first time the code is executed, the data scale will be defined to be equal to the axis scale. Subsequently, when the user zooms into the chart (which means the view port coordinates are changed), the same charting code will set up the axis scale to the range that the user has zoomed to.

ArgumentDefaultDescription
id(Mandatory)The name of the data scale.
axis(Mandatory)The Axis object to synchronize with.

CDViewPortManagerMBS.updateFullRangeH(id as string, minValue as Double, maxValue as Double, updateType as Integer) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 15.1 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Updates the full range of a horizontal viewport data scale.

ArgumentDefaultDescription
id(Mandatory)The name of the horizontal data scale.
minValue(Mandatory)The new minimum value of the data scale.
maxValue(Mandatory)The new maximum value of the data scale.
updateType(Mandatory)The method to update the viewport. Must be one of ViewPortNoUpdate, KeepVisibleRange, ScrollWithMax or ScrollWithMin.

Some examples using this method:

CDViewPortManagerMBS.updateFullRangeV(id as string, minValue as Double, maxValue as Double, updateType as Integer) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 15.1 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Updates the full range of a vertical viewport data scale.

ArgumentDefaultDescription
id(Mandatory)The name of the vertical data scale.
minValue(Mandatory)The new minimum value of the data scale.
maxValue(Mandatory)The new maximum value of the data scale.
updateType(Mandatory)The method to update the viewport. Must be one of ViewPortNoUpdate, KeepVisibleRange, ScrollWithMax or ScrollWithMin.

Some examples using this method:

CDViewPortManagerMBS.validateViewPort

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 8.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Ensures the view port left, top, width and height are within valid ranges and adjusts them if necessary.

The valid ranges of the view port width and height should be 0 to 1. The view port left should be in between 0 and (1 - view port width). The view port top should be in between 0 and (1 - view port height).

Some examples using this method:

CDViewPortManagerMBS.zoomAround(x as double, y as double, xZoomRatio as double, yZoomRatio as double) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 15.1 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Zoom at a given point using the zoom ratio.

Some examples using this method:

CDViewPortManagerMBS.zoomAt(zoomDirection as integer, x as double, y as double, zoomRatio as double) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 8.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Zooms in/out around a certain point.

This method adjusts the view port position and size to reflect zooming in/out around the given point. If possible, the given point will be at the center of the view port after zooming in/out.
ArgumentDefaultDescription
zoomDirection(Mandatory)The allowed zoom direction. Must be one of the predefined constants DirectionHorizontal, DirectionVertical and DirectionHorizontalVertical for horizontal, vertical and bi-directional zooming.
x(Mandatory)The x-coordinate of the point to zoom around.
y(Mandatory)The y-coordinate of the point to zoom around.
zoomRatio(Mandatory)The zoom magnification factor. For example, a value of 2 means zooming in by 2x. A value of 0.5 means zooming out by 2x.
Return Value
True if view port is changed, otherwise false. It is possible for no zooming to occur if zoom limits are reached. See ViewPortManager.setZoomInWidthLimit, ViewPortManager.setZoomOutWidthLimit, ViewPortManager.setZoomInHeightLimit and ViewPortManager.setZoomOutHeightLimit for the meaning of zoom limits.

Some examples using this method:

CDViewPortManagerMBS.zoomTo(zoomDirection as integer, x1 as double, y1 as double, x2 as double, y2 as double) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method ChartDirector MBS ChartDirector Plugin 8.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Zooms to the selected rectangular region.

This method updates the view port position and size to reflect a rectangular region on the chart. (x1, y1) and (x2, y2) are opposite vertices of the rectangular region in pixel coordinates.

The final view port position may not exactly reflect the rectangular region because of zoom limits. See ViewPortManager.setZoomInWidthLimit, ViewPortManager.setZoomOutWidthLimit, ViewPortManager.setZoomInHeightLimit and ViewPortManager.setZoomOutHeightLimit for the meaning of zoom limits.
ArgumentDefaultDescription
zoomDirection(Mandatory)The allowed zoom direction. Must be one of the predefined constants DirectionHorizontal, DirectionVertical and DirectionHorizontalVertical for horizontal, vertical and bi-directional zooming.
x1(Mandatory)The x-coordinate of one vertices of the selected rectangular region.
y1(Mandatory)The y-coordinate of one vertices of the selected rectangular region.
x2(Mandatory)The x-coordinate of the vertex that is opposite to the vertex (x1, y1).
y2(Mandatory)The y-coordinate of the vertex that is opposite to the vertex (x1, y1).
Return Value
True if view port is changed, otherwise false.

Some examples using this method:

Previous items

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


💬 Ask a question or report a problem
The biggest plugin in space...