LibreOffice Module chart2 (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
chart::BubbleChart Class Reference

#include <BubbleChart.hxx>

Inheritance diagram for chart::BubbleChart:
[legend]
Collaboration diagram for chart::BubbleChart:
[legend]

Public Member Functions

 BubbleChart ()=delete
 
 BubbleChart (const rtl::Reference< ::chart::ChartType > &xChartTypeModel, sal_Int32 nDimensionCount)
 
virtual ~BubbleChart () override
 
virtual void createShapes () override
 
virtual css::drawing::Direction3D getPreferredDiagramAspectRatio () const override
 a value <= 0 for a directions means that this direction can be stretched arbitrary More...
 
virtual bool isExpandIfValuesCloseToBorder (sal_Int32 nDimensionIndex) override
 
virtual bool isSeparateStackingForDifferentSigns (sal_Int32 nDimensionIndex) override
 
virtual LegendSymbolStyle getLegendSymbolStyle () override
 
- Public Member Functions inherited from chart::VSeriesPlotter
 VSeriesPlotter ()=delete
 
virtual ~VSeriesPlotter () override
 
virtual void addSeries (std::unique_ptr< VDataSeries > pSeries, sal_Int32 zSlot, sal_Int32 xSlot, sal_Int32 ySlot)
 A new series can be positioned relative to other series in a chart. More...
 
virtual css::drawing::Direction3D getPreferredDiagramAspectRatio () const
 a value <= 0 for a directions means that this direction can be stretched arbitrary More...
 
void addSecondaryValueScale (const ExplicitScaleData &rScale, sal_Int32 nAxisIndex)
 this enables you to handle series on the same x axis with different y axis the property AttachedAxisIndex at a dataseries indicates which value scale is to use (0==AttachedAxisIndex or a not set AttachedAxisIndex property indicates that this series should be scaled at the main y-axis; 1==AttachedAxisIndex indicates that the series should be scaled at the first secondary axis if there is any otherwise at the main y axis and so on. More...
 
virtual double getMinimumX () override
 
virtual double getMaximumX () override
 
virtual double getMinimumYInRange (double fMinimumX, double fMaximumX, sal_Int32 nAxisIndex) override
 
virtual double getMaximumYInRange (double fMinimumX, double fMaximumX, sal_Int32 nAxisIndex) override
 
virtual double getMinimumZ () override
 
virtual double getMaximumZ () override
 
virtual bool isExpandBorderToIncrementRhythm (sal_Int32 nDimensionIndex) override
 
virtual bool isExpandIfValuesCloseToBorder (sal_Int32 nDimensionIndex) override
 
virtual bool isExpandWideValuesToZero (sal_Int32 nDimensionIndex) override
 
virtual bool isExpandNarrowValuesTowardZero (sal_Int32 nDimensionIndex) override
 
virtual bool isSeparateStackingForDifferentSigns (sal_Int32 nDimensionIndex) override
 
virtual tools::Long calculateTimeResolutionOnXAxis () override
 
virtual void setTimeResolutionOnXAxis (tools::Long nTimeResolution, const Date &rNullDate) override
 
void getMinimumAndMaximumX (double &rfMinimum, double &rfMaximum) const
 
void getMinimumAndMaximumYInContinuousXRange (double &rfMinY, double &rfMaxY, double fMinX, double fMaxX, sal_Int32 nAxisIndex) const
 
virtual std::vector< ViewLegendEntrycreateLegendEntries (const css::awt::Size &rEntryKeyAspectRatio, css::chart2::LegendPosition eLegendPosition, const css::uno::Reference< css::beans::XPropertySet > &xTextProperties, const rtl::Reference< SvxShapeGroupAnyD > &xTarget, const css::uno::Reference< css::uno::XComponentContext > &xContext, ChartModel &rModel) override
 
virtual LegendSymbolStyle getLegendSymbolStyle ()
 
virtual css::awt::Size getPreferredLegendKeyAspectRatio () override
 
virtual css::uno::Any getExplicitSymbol (const VDataSeries &rSeries, sal_Int32 nPointIndex)
 
rtl::Reference< SvxShapeGroupcreateLegendSymbolForSeries (const css::awt::Size &rEntryKeyAspectRatio, const VDataSeries &rSeries, const rtl::Reference< SvxShapeGroupAnyD > &xTarget)
 
rtl::Reference< SvxShapeGroupcreateLegendSymbolForPoint (const css::awt::Size &rEntryKeyAspectRatio, const VDataSeries &rSeries, sal_Int32 nPointIndex, const rtl::Reference< SvxShapeGroupAnyD > &xTarget)
 
std::vector< ViewLegendEntrycreateLegendEntriesForSeries (const css::awt::Size &rEntryKeyAspectRatio, const VDataSeries &rSeries, const css::uno::Reference< css::beans::XPropertySet > &xTextProperties, const rtl::Reference< SvxShapeGroupAnyD > &xTarget, const css::uno::Reference< css::uno::XComponentContext > &xContext)
 
std::vector< ViewLegendSymbolcreateSymbols (const css::awt::Size &rEntryKeyAspectRatio, const rtl::Reference< SvxShapeGroupAnyD > &xTarget, const css::uno::Reference< css::uno::XComponentContext > &xContext)
 
std::vector< ViewLegendSymbolcreateSymbolsForSeries (const css::awt::Size &rEntryKeyAspectRatio, const VDataSeries &rSeries, const rtl::Reference< SvxShapeGroupAnyD > &xTarget, const css::uno::Reference< css::uno::XComponentContext > &xContext)
 
std::vector< VDataSeries * > getAllSeries ()
 
std::vector< VDataSeries const * > getAllSeries () const
 
sal_Int32 getPointCount () const
 
void setNumberFormatsSupplier (const css::uno::Reference< css::util::XNumberFormatsSupplier > &xNumFmtSupplier)
 
void setColorScheme (const css::uno::Reference< css::chart2::XColorScheme > &xColorScheme)
 
void setExplicitCategoriesProvider (ExplicitCategoriesProvider *pExplicitCategoriesProvider)
 
ExplicitCategoriesProvidergetExplicitCategoriesProvider ()
 
css::uno::Sequence< OUString > getSeriesNames () const
 
css::uno::Sequence< OUString > getAllSeriesNames () const
 
void setPageReferenceSize (const css::awt::Size &rPageRefSize)
 
void setCoordinateSystemResolution (const css::uno::Sequence< sal_Int32 > &rCoordinateSystemResolution)
 
bool PointsWereSkipped () const
 
void setPieLabelsAllowToMove (bool bIsPieOrDonut)
 
void setAvailableOuterRect (const basegfx::B2IRectangle &aAvailableOuterRect)
 
double getTransformedDepth () const
 
void releaseShapes ()
 
virtual void rearrangeLabelToAvoidOverlapIfRequested (const css::awt::Size &rPageSize)
 
bool WantToPlotInFrontOfAxisLine ()
 
virtual bool shouldSnapRectToUsedArea ()
 
OUString getLabelTextForValue (VDataSeries const &rDataSeries, sal_Int32 nPointIndex, double fValue, bool bAsPercentage)
 This method returns a text string representation of the passed numeric value by exploiting a NumberFormatterWrapper object. More...
 
- Public Member Functions inherited from chart::PlotterBase
 PlotterBase (sal_Int32 nDimension)
 
virtual ~PlotterBase ()
 
virtual void initPlotter (const rtl::Reference< SvxShapeGroupAnyD > &xLogicTarget, const rtl::Reference< SvxShapeGroupAnyD > &xFinalTarget, const OUString &rCID)
 
virtual void setScales (std::vector< ExplicitScaleData > &&rScales, bool bSwapXAndYAxis)
 
virtual void setTransformationSceneToScreen (const css::drawing::HomogenMatrix &rMatrix)
 
virtual void createShapes ()=0
 
virtual double getMinimumX ()=0
 
virtual double getMaximumX ()=0
 
virtual double getMinimumYInRange (double fMinimumX, double fMaximumX, sal_Int32 nAxisIndex)=0
 
virtual double getMaximumYInRange (double fMinimumX, double fMaximumX, sal_Int32 nAxisIndex)=0
 
virtual double getMinimumZ ()=0
 
virtual double getMaximumZ ()=0
 
virtual bool isExpandBorderToIncrementRhythm (sal_Int32 nDimensionIndex)=0
 
virtual bool isExpandIfValuesCloseToBorder (sal_Int32 nDimensionIndex)=0
 
virtual bool isExpandWideValuesToZero (sal_Int32 nDimensionIndex)=0
 
virtual bool isExpandNarrowValuesTowardZero (sal_Int32 nDimensionIndex)=0
 
virtual bool isSeparateStackingForDifferentSigns (sal_Int32 nDimensionIndex)=0
 
virtual tools::Long calculateTimeResolutionOnXAxis ()=0
 
virtual void setTimeResolutionOnXAxis (tools::Long nTimeResolution, const Date &rNullDate)=0
 
virtual css::awt::Size getPreferredLegendKeyAspectRatio ()=0
 
virtual std::vector< ViewLegendEntrycreateLegendEntries (const css::awt::Size &rEntryKeyAspectRatio, css::chart2::LegendPosition eLegendPosition, const css::uno::Reference< css::beans::XPropertySet > &xTextProperties, const rtl::Reference< SvxShapeGroupAnyD > &xTarget, const css::uno::Reference< css::uno::XComponentContext > &xContext, ChartModel &rModel)=0
 

Private Member Functions

void calculateMaximumLogicBubbleSize ()
 
void calculateBubbleSizeScalingFactor ()
 
css::drawing::Direction3D transformToScreenBubbleSize (double fLogicSize)
 

Private Attributes

double m_fMaxLogicBubbleSize
 
double m_fBubbleSizeFactorToScreen
 

Additional Inherited Members

- Static Public Member Functions inherited from chart::VSeriesPlotter
static VSeriesPlottercreateSeriesPlotter (const rtl::Reference< ::chart::ChartType > &xChartTypeModel, sal_Int32 nDimensionCount, bool bExcludingPositioning)
 
- Static Public Member Functions inherited from chart::PlotterBase
static bool isValidPosition (const css::drawing::Position3D &rPos)
 
- Protected Member Functions inherited from chart::VSeriesPlotter
 VSeriesPlotter (rtl::Reference< ::chart::ChartType > xChartTypeModel, sal_Int32 nDimensionCount, bool bCategoryXAxis=true)
 
rtl::Reference< SvxShapeGroupAnyDgetSeriesGroupShape (VDataSeries *pDataSeries, const rtl::Reference< SvxShapeGroupAnyD > &xTarget)
 
rtl::Reference< SvxShapeGroupAnyDgetSeriesGroupShapeFrontChild (VDataSeries *pDataSeries, const rtl::Reference< SvxShapeGroupAnyD > &xTarget)
 
rtl::Reference< SvxShapeGroupAnyDgetSeriesGroupShapeBackChild (VDataSeries *pDataSeries, const rtl::Reference< SvxShapeGroupAnyD > &xTarget)
 
rtl::Reference< SvxShapeGroupAnyDgetErrorBarsGroupShape (VDataSeries &rDataSeries, const rtl::Reference< SvxShapeGroupAnyD > &xTarget, bool bYError)
 
rtl::Reference< SvxShapeTextcreateDataLabel (const rtl::Reference< SvxShapeGroupAnyD > &xTarget, VDataSeries &rDataSeries, sal_Int32 nPointIndex, double fValue, double fSumValue, const css::awt::Point &rScreenPosition2D, LabelAlignment eAlignment, sal_Int32 nOffset=0, sal_Int32 nTextWidth=0)
 This method creates a text shape for a label related to a data point and append it to the root text shape group (xTarget). More...
 
void createErrorBar (const rtl::Reference< SvxShapeGroupAnyD > &xTarget, const css::drawing::Position3D &rPos, const css::uno::Reference< css::beans::XPropertySet > &xErrorBarProperties, const VDataSeries &rVDataSeries, sal_Int32 nIndex, bool bVertical, const double *pfScaledLogicX)
 creates two T-shaped error bars in both directions (up/down or left/right depending on the bVertical parameter) More...
 
void createErrorRectangle (const css::drawing::Position3D &rUnscaledLogicPosition, VDataSeries &rVDataSeries, sal_Int32 nIndex, const rtl::Reference< SvxShapeGroupAnyD > &rTarget, bool bUseXErrorData, bool bUseYErrorData)
 
void createErrorBar_X (const css::drawing::Position3D &rUnscaledLogicPosition, VDataSeries &rVDataSeries, sal_Int32 nPointIndex, const rtl::Reference< SvxShapeGroupAnyD > &xTarget)
 
void createErrorBar_Y (const css::drawing::Position3D &rUnscaledLogicPosition, VDataSeries &rVDataSeries, sal_Int32 nPointIndex, const rtl::Reference< SvxShapeGroupAnyD > &xTarget, double const *pfScaledLogicX)
 
void createRegressionCurvesShapes (VDataSeries const &rVDataSeries, const rtl::Reference< SvxShapeGroupAnyD > &xTarget, const rtl::Reference< SvxShapeGroupAnyD > &xEquationTarget, bool bMaySkipPointsInRegressionCalculation)
 
void createRegressionCurveEquationShapes (const OUString &rEquationCID, const css::uno::Reference< css::beans::XPropertySet > &xEquationProperties, const rtl::Reference< SvxShapeGroupAnyD > &xEquationTarget, const css::uno::Reference< css::chart2::XRegressionCurveCalculator > &xRegressionCurveCalculator, css::awt::Point aDefaultPos)
 
virtual PlottingPositionHelpergetPlottingPositionHelper (sal_Int32 nAxisIndex) const
 
VDataSeriesgetFirstSeries () const
 
OUString getCategoryName (sal_Int32 nPointIndex) const
 
- Protected Member Functions inherited from chart::PlotterBase
rtl::Reference< SvxShapeGroupAnyDcreateGroupShape (const rtl::Reference< SvxShapeGroupAnyD > &xTarget, const OUString &rName=OUString())
 
- Protected Member Functions inherited from chart::MinimumAndMaximumSupplier
 ~MinimumAndMaximumSupplier ()
 
- Protected Member Functions inherited from chart::LegendEntryProvider
 ~LegendEntryProvider ()
 
- Static Protected Member Functions inherited from chart::VSeriesPlotter
static rtl::Reference< SvxShapeGroupgetLabelsGroupShape (VDataSeries &rDataSeries, const rtl::Reference< SvxShapeGroupAnyD > &xTarget)
 This method creates a 2D group shape for containing all text shapes needed for this series; the group is added to the text target;. More...
 
static void addErrorBorder (const css::drawing::Position3D &rPos0, const css::drawing::Position3D &rPos1, const rtl::Reference< SvxShapeGroupAnyD > &rTarget, const css::uno::Reference< css::beans::XPropertySet > &rErrorBorderProp)
 
- Protected Attributes inherited from chart::VSeriesPlotter
PlottingPositionHelperm_pMainPosHelper
 
rtl::Reference< ::chart::ChartTypem_xChartTypeModel
 
std::vector< std::vector< VDataSeriesGroup > > m_aZSlots
 
bool m_bCategoryXAxis
 
tools::Long m_nTimeResolution
 
Date m_aNullDate
 
std::unique_ptr< NumberFormatterWrapperm_apNumberFormatterWrapper
 
css::uno::Reference< css::chart2::XColorScheme > m_xColorScheme
 
ExplicitCategoriesProviderm_pExplicitCategoriesProvider
 
css::uno::Sequence< sal_Int32 > m_aCoordinateSystemResolution
 
bool m_bPointsWereSkipped
 
bool m_bPieLabelsAllowToMove
 
basegfx::B2IRectangle m_aAvailableOuterRect
 
css::awt::Size m_aPageReferenceSize
 
- Protected Attributes inherited from chart::PlotterBase
rtl::Reference< SvxShapeGroupAnyDm_xLogicTarget
 
rtl::Reference< SvxShapeGroupAnyDm_xFinalTarget
 
OUString m_aCID
 
const sal_Int32 m_nDimension
 
PlottingPositionHelperm_pPosHelper
 

Detailed Description

Definition at line 27 of file BubbleChart.hxx.

Constructor & Destructor Documentation

◆ BubbleChart() [1/2]

chart::BubbleChart::BubbleChart ( )
delete

◆ BubbleChart() [2/2]

chart::BubbleChart::BubbleChart ( const rtl::Reference< ::chart::ChartType > &  xChartTypeModel,
sal_Int32  nDimensionCount 
)

◆ ~BubbleChart()

chart::BubbleChart::~BubbleChart ( )
overridevirtual

Definition at line 52 of file BubbleChart.cxx.

Member Function Documentation

◆ calculateBubbleSizeScalingFactor()

void chart::BubbleChart::calculateBubbleSizeScalingFactor ( )
private

Definition at line 84 of file BubbleChart.cxx.

References abs().

◆ calculateMaximumLogicBubbleSize()

void chart::BubbleChart::calculateMaximumLogicBubbleSize ( )
private

Definition at line 57 of file BubbleChart.cxx.

References nIndex.

◆ createShapes()

void chart::BubbleChart::createShapes ( )
overridevirtual

◆ getLegendSymbolStyle()

LegendSymbolStyle chart::BubbleChart::getLegendSymbolStyle ( )
overridevirtual

Reimplemented from chart::VSeriesPlotter.

Definition at line 128 of file BubbleChart.cxx.

◆ getPreferredDiagramAspectRatio()

drawing::Direction3D chart::BubbleChart::getPreferredDiagramAspectRatio ( ) const
overridevirtual

a value <= 0 for a directions means that this direction can be stretched arbitrary

Reimplemented from chart::VSeriesPlotter.

Definition at line 133 of file BubbleChart.cxx.

◆ isExpandIfValuesCloseToBorder()

bool chart::BubbleChart::isExpandIfValuesCloseToBorder ( sal_Int32  nDimensionIndex)
overridevirtual

Reimplemented from chart::VSeriesPlotter.

Definition at line 118 of file BubbleChart.cxx.

◆ isSeparateStackingForDifferentSigns()

bool chart::BubbleChart::isSeparateStackingForDifferentSigns ( sal_Int32  nDimensionIndex)
overridevirtual

Reimplemented from chart::VSeriesPlotter.

Definition at line 123 of file BubbleChart.cxx.

◆ transformToScreenBubbleSize()

drawing::Direction3D chart::BubbleChart::transformToScreenBubbleSize ( double  fLogicSize)
private

Definition at line 100 of file BubbleChart.cxx.

Member Data Documentation

◆ m_fBubbleSizeFactorToScreen

double chart::BubbleChart::m_fBubbleSizeFactorToScreen
private

Definition at line 56 of file BubbleChart.hxx.

◆ m_fMaxLogicBubbleSize

double chart::BubbleChart::m_fMaxLogicBubbleSize
private

Definition at line 55 of file BubbleChart.hxx.


The documentation for this class was generated from the following files: