25#include <com/sun/star/drawing/HomogenMatrix.hpp>
26#include <com/sun/star/uno/Sequence.h>
46class ExplicitCategoriesProvider;
50class BaseCoordinateSystem;
68 void setParticle(
const OUString& rCooSysParticle );
75 ,
const css::awt::Size& rPageResolution );
84 std::vector< ExplicitScaleData >
getExplicitScales( sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex )
const;
86 std::vector< ExplicitIncrementData >
getExplicitIncrements( sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex )
const;
122 const css::awt::Size& rFontReferenceSize,
123 const css::awt::Rectangle& rMaximumSpaceForLabels,
124 bool bLimitSpaceForLabels,
125 std::vector<std::unique_ptr<VSeriesPlotter>>& rSeriesPlotterList,
126 css::uno::Reference<css::uno::XComponentContext>
const& rComponentContext);
150 static std::vector< rtl::Reference< ::chart::GridProperties > >
155 OUString
createCIDForAxis( sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex );
156 OUString
createCIDForGrid( sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex );
190 typedef std::map< tFullAxisIndex, std::shared_ptr< VAxisBase > >
tVAxisMap;
This class implements the calculation of automatic axis limits.
ExplicitCategoriesProvider * getExplicitCategoriesProvider()
virtual void updateScalesAndIncrementsOnAxes()
std::vector< ExplicitIncrementData > getExplicitIncrements(sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex) const
bool needSeriesNamesForAxis() const
MergedMinimumAndMaximumSupplier m_aMergedMinMaxSupplier
Collection of min-max suppliers which are basically different chart types present in the same coordin...
virtual void createVAxisList(const rtl::Reference<::chart::ChartModel > &xChartDoc, const css::awt::Size &rFontReferenceSize, const css::awt::Rectangle &rMaximumSpaceForLabels, bool bLimitSpaceForLabels, std::vector< std::unique_ptr< VSeriesPlotter > > &rSeriesPlotterList, css::uno::Reference< css::uno::XComponentContext > const &rComponentContext)
Create "view" axis objects 'VAxis' from the coordinate system model.
void setParticle(const OUString &rCooSysParticle)
static std::vector< rtl::Reference< ::chart::GridProperties > > getGridListFromAxis(const rtl::Reference< ::chart::Axis > &xAxis)
void clearMinimumAndMaximumSupplierList()
std::unique_ptr< ExplicitCategoriesProvider > m_apExplicitCategoriesProvider
void addMinimumAndMaximumSupplier(MinimumAndMaximumSupplier *pMinimumAndMaximumSupplier)
sal_Int32 getMaximumAxisIndexByDimension(sal_Int32 nDimensionIndex) const
rtl::Reference< SvxShapeGroupAnyD > m_xLogicTargetForGrids
void setExplicitScaleAndIncrement(sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex, const ExplicitScaleData &rExplicitScale, const ExplicitIncrementData &rExplicitIncrement)
void setExplicitCategoriesProvider(ExplicitCategoriesProvider *)
VAxisBase * getVAxis(sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex)
std::vector< ExplicitScaleData > getExplicitScales(sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex) const
virtual ~VCoordinateSystem()
OUString createCIDForGrid(sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex)
static void impl_adjustDimension(sal_Int32 &rDimensionIndex)
void impl_adjustDimensionAndIndex(sal_Int32 &rDimensionIndex, sal_Int32 &rAxisIndex) const
void setSeriesNamesForAxis(const css::uno::Sequence< OUString > &rSeriesNames)
css::uno::Sequence< OUString > m_aSeriesNamesForZAxis
void set3DWallPositions(CuboidPlanePosition eLeftWallPos, CuboidPlanePosition eBackWallPos, CuboidPlanePosition eBottomPos)
void initPlottingTargets(const rtl::Reference< SvxShapeGroupAnyD > &xLogicTarget, const rtl::Reference< SvxShapeGroupAnyD > &xFinalTarget, rtl::Reference< SvxShapeGroupAnyD > &xLogicTargetForSeriesBehindAxis)
VCoordinateSystem(rtl::Reference< ::chart::BaseCoordinateSystem > xCooSys)
virtual void initVAxisInList()
ExplicitScaleData getExplicitScale(sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex) const
ExplicitIncrementData getExplicitIncrement(sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex) const
sal_Int32 getNumberFormatKeyForAxis(const rtl::Reference< ::chart::Axis > &xAxis, const rtl::Reference<::chart::ChartModel > &xChartDoc)
std::map< tFullAxisIndex, std::shared_ptr< VAxisBase > > tVAxisMap
void prepareAutomaticAxisScaling(ScaleAutomatism &rScaleAutomatism, sal_Int32 nDimIndex, sal_Int32 nAxisIndex)
It sets the scaling parameters for the passed ScaleAutomatism object.
CuboidPlanePosition m_eLeftWallPos
OUString createCIDForAxis(sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex)
rtl::Reference< ::chart::Axis > getAxisByDimension(sal_Int32 nDimensionIndex, sal_Int32 nAxisIndex) const
std::vector< ExplicitIncrementData > m_aExplicitIncrements
virtual void createGridShapes()
std::map< tFullAxisIndex, ExplicitScaleData > tFullExplicitScaleMap
bool hasMinimumAndMaximumSupplier(MinimumAndMaximumSupplier *pMinimumAndMaximumSupplier)
bool getPropertySwapXAndYAxis() const
tFullExplicitScaleMap m_aSecondaryExplicitScales
std::pair< sal_Int32, sal_Int32 > tFullAxisIndex
rtl::Reference< SvxShapeGroupAnyD > m_xLogicTargetForAxes
void createMaximumAxesLabels()
static std::unique_ptr< VCoordinateSystem > createCoordinateSystem(const rtl::Reference< ::chart::BaseCoordinateSystem > &xCooSysModel)
void setTransformationSceneToScreen(const css::drawing::HomogenMatrix &rMatrix)
OUString m_aCooSysParticle
std::map< tFullAxisIndex, ExplicitIncrementData > tFullExplicitIncrementMap
virtual css::uno::Sequence< sal_Int32 > getCoordinateSystemResolution(const css::awt::Size &rPageSize, const css::awt::Size &rPageResolution)
css::drawing::HomogenMatrix m_aMatrixSceneToScreen
std::vector< ExplicitScaleData > m_aExplicitScales
rtl::Reference< ::chart::BaseCoordinateSystem > m_xCooSysModel
const rtl::Reference< ::chart::BaseCoordinateSystem > & getModel() const
CuboidPlanePosition m_eBackWallPos
rtl::Reference< SvxShapeGroupAnyD > m_xFinalTarget
tFullExplicitIncrementMap m_aSecondaryExplicitIncrements
const css::drawing::HomogenMatrix & getTransformationSceneToScreen() const
CuboidPlanePosition m_eBottomPos
class SAL_NO_VTABLE XPropertySet
describes how tickmarks are positioned on the scale of an axis.
This structure contains the explicit values for a scale like Minimum and Maximum.