LibreOffice Module chart2 (master) 1
|
Public Member Functions | |
PiePositionHelper (double fAngleDegreeOffset) | |
bool | getInnerAndOuterRadius (double fCategoryX, double &fLogicInnerRadius, double &fLogicOuterRadius, bool bUseRings, double fMaxOffset) const |
Compute the outer and the inner radius for the current ring (not for the whole donut!), in general it is: inner_radius = (ring_index + 1) - 0.5 + max_offset, outer_radius = (ring_index + 1) + 0.5 + max_offset. More... | |
Public Member Functions inherited from chart::PolarPlottingPositionHelper | |
PolarPlottingPositionHelper () | |
PolarPlottingPositionHelper (const PolarPlottingPositionHelper &rSource) | |
virtual | ~PolarPlottingPositionHelper () override |
virtual std::unique_ptr< PlottingPositionHelper > | clone () const override |
virtual void | setTransformationSceneToScreen (const css::drawing::HomogenMatrix &rMatrix) override |
virtual void | setScales (std::vector< ExplicitScaleData > &&rScales, bool bSwapXAndYAxis) override |
const ::basegfx::B3DHomMatrix & | getUnitCartesianToScene () const |
virtual ::chart::XTransformation2 * | getTransformationScaledLogicToScene () const override |
double | transformToRadius (double fLogicValueOnRadiusAxis, bool bDoScaling=true) const |
Given a value in the radius axis scale range, it returns the normalized value. More... | |
double | transformToAngleDegree (double fLogicValueOnAngleAxis, bool bDoScaling=true) const |
Given a value in the angle axis scale range (e.g. More... | |
double | getWidthAngleDegree (double &fStartLogicValueOnAngleAxis, double &fEndLogicValueOnAngleAxis) const |
Given 2 values in the angle axis scale range (e.g. More... | |
virtual css::drawing::Position3D | transformLogicToScene (double fX, double fY, double fZ, bool bClip) const override |
virtual css::drawing::Position3D | transformScaledLogicToScene (double fX, double fY, double fZ, bool bClip) const override |
css::drawing::Position3D | transformAngleRadiusToScene (double fLogicValueOnAngleAxis, double fLogicValueOnRadiusAxis, double fLogicZ, bool bDoScaling=true) const |
css::drawing::Position3D | transformUnitCircleToScene (double fUnitAngleDegree, double fUnitRadius, double fLogicZ) const |
It returns the scene coordinates of the passed point: this point is described through a normalized cylindrical coordinate system. More... | |
double | getOuterLogicRadius () const |
bool | isMathematicalOrientationAngle () const |
bool | isMathematicalOrientationRadius () const |
virtual css::drawing::Position3D | transformScaledLogicToScene (double fX, double fY, double fZ, bool bClip) const |
void | transformScaledLogicToScene (css::drawing::PolyPolygonShape3D &rPoly) const |
void | transformScaledLogicToScene (std::vector< std::vector< css::drawing::Position3D > > &rPoly) const |
Public Member Functions inherited from chart::PlottingPositionHelper | |
PlottingPositionHelper () | |
PlottingPositionHelper (const PlottingPositionHelper &rSource) | |
virtual | ~PlottingPositionHelper () |
virtual std::unique_ptr< PlottingPositionHelper > | clone () const |
std::unique_ptr< PlottingPositionHelper > | createSecondaryPosHelper (const ExplicitScaleData &rSecondaryScale) |
virtual void | setTransformationSceneToScreen (const css::drawing::HomogenMatrix &rMatrix) |
virtual void | setScales (std::vector< ExplicitScaleData > &&rScales, bool bSwapXAndYAxis) |
const std::vector< ExplicitScaleData > & | getScales () const |
void | setCoordinateSystemResolution (const css::uno::Sequence< sal_Int32 > &rCoordinateSystemResolution) |
bool | isSameForGivenResolution (double fX, double fY, double fZ, double fX2, double fY2, double fZ2) |
bool | isStrongLowerRequested (sal_Int32 nDimensionIndex) const |
bool | isLogicVisible (double fX, double fY, double fZ) const |
void | doLogicScaling (double *pX, double *pY, double *pZ) const |
void | doUnshiftedLogicScaling (double *pX, double *pY, double *pZ) const |
void | clipLogicValues (double *pX, double *pY, double *pZ) const |
void | clipScaledLogicValues (double *pX, double *pY, double *pZ) const |
bool | clipYRange (double &rMin, double &rMax) const |
void | doLogicScaling (css::drawing::Position3D &rPos) const |
virtual ::chart::XTransformation2 * | getTransformationScaledLogicToScene () const |
virtual css::drawing::Position3D | transformLogicToScene (double fX, double fY, double fZ, bool bClip) const |
virtual css::drawing::Position3D | transformScaledLogicToScene (double fX, double fY, double fZ, bool bClip) const |
void | transformScaledLogicToScene (css::drawing::PolyPolygonShape3D &rPoly) const |
void | transformScaledLogicToScene (std::vector< std::vector< css::drawing::Position3D > > &rPoly) const |
double | getLogicMinX () const |
double | getLogicMinY () const |
double | getLogicMinZ () const |
double | getLogicMaxX () const |
double | getLogicMaxY () const |
double | getLogicMaxZ () const |
bool | isMathematicalOrientationX () const |
bool | isMathematicalOrientationY () const |
bool | isMathematicalOrientationZ () const |
::basegfx::B2DRectangle | getScaledLogicClipDoubleRect () const |
css::drawing::Direction3D | getScaledLogicWidth () const |
bool | isSwapXAndY () const |
bool | isPercentY () const |
double | getBaseValueY () const |
bool | maySkipPointsInRegressionCalculation () const |
void | setTimeResolution (tools::Long nTimeResolution, const Date &rNullDate) |
virtual void | setScaledCategoryWidth (double fScaledCategoryWidth) |
void | AllowShiftXAxisPos (bool bAllowShift) |
void | AllowShiftZAxisPos (bool bAllowShift) |
Public Attributes | |
double | m_fRingDistance |
Public Attributes inherited from chart::PolarPlottingPositionHelper | |
double | m_fRadiusOffset |
m_bSwapXAndY (inherited): by default the X axis (scale[0]) represents the angle axis and the Y axis (scale[1]) represents the radius axis; when this parameter is true, the opposite happens (this is the case for pie charts). More... | |
double | m_fAngleDegreeOffset |
Offset for angle axis in real degree. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from chart::PlottingPositionHelper | |
static css::awt::Point | transformSceneToScreenPosition (const css::drawing::Position3D &rScenePosition3D, const rtl::Reference< SvxShapeGroupAnyD > &xSceneTarget, sal_Int32 nDimensionCount) |
Protected Attributes inherited from chart::PlottingPositionHelper | |
std::vector< ExplicitScaleData > | m_aScales |
::basegfx::B3DHomMatrix | m_aMatrixScreenToScene |
std::unique_ptr< ::chart::XTransformation2 > | m_xTransformationLogicToScene |
bool | m_bSwapXAndY |
sal_Int32 | m_nXResolution |
sal_Int32 | m_nYResolution |
sal_Int32 | m_nZResolution |
bool | m_bMaySkipPointsInRegressionCalculation |
bool | m_bDateAxis |
tools::Long | m_nTimeResolution |
Date | m_aNullDate |
double | m_fScaledCategoryWidth |
bool | m_bAllowShiftXAxisPos |
bool | m_bAllowShiftZAxisPos |
Definition at line 128 of file PieChart.cxx.
chart::PiePositionHelper::PiePositionHelper | ( | double | fAngleDegreeOffset | ) |
Definition at line 140 of file PieChart.cxx.
References chart::PolarPlottingPositionHelper::m_fAngleDegreeOffset, and chart::PolarPlottingPositionHelper::m_fRadiusOffset.
bool chart::PiePositionHelper::getInnerAndOuterRadius | ( | double | fCategoryX, |
double & | fLogicInnerRadius, | ||
double & | fLogicOuterRadius, | ||
bool | bUseRings, | ||
double | fMaxOffset | ||
) | const |
Compute the outer and the inner radius for the current ring (not for the whole donut!), in general it is: inner_radius = (ring_index + 1) - 0.5 + max_offset, outer_radius = (ring_index + 1) + 0.5 + max_offset.
When orientation for the radius axis is reversed these values are swapped. (Indeed the orientation for the radius axis is always reversed! See PieChartTypeTemplate::adaptScales
.) The maximum relative offset (see notes for PieChart::getMaxOffset
) is added to both the inner and the outer radius. It returns true if the ring is visible (that is not out of the radius axis scale range).
Definition at line 159 of file PieChart.cxx.
References chart::PlottingPositionHelper::getLogicMaxX(), chart::PlottingPositionHelper::getLogicMinX(), chart::PolarPlottingPositionHelper::isMathematicalOrientationRadius(), and m_fRingDistance.
double chart::PiePositionHelper::m_fRingDistance |
Definition at line 137 of file PieChart.cxx.
Referenced by getInnerAndOuterRadius().