From 267f8ebd660ad81fb935fb9358d666db5caa69c7 Mon Sep 17 00:00:00 2001 From: Vladimir Glazounov Date: Thu, 15 May 2008 07:04:26 +0000 Subject: [PATCH] INTEGRATION: CWS chart26_DEV300 (1.5.130); FILE MERGED 2008/04/23 19:27:24 iha 1.5.130.1: #i72994# good automatic placement of walls, grid lines and axes labels dependent on 3D rotation --- chart2/source/view/axes/VCartesianAxis.hxx | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/chart2/source/view/axes/VCartesianAxis.hxx b/chart2/source/view/axes/VCartesianAxis.hxx index 1bc34a4af6e9..38531cdf2ae7 100644 --- a/chart2/source/view/axes/VCartesianAxis.hxx +++ b/chart2/source/view/axes/VCartesianAxis.hxx @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: VCartesianAxis.hxx,v $ - * $Revision: 1.6 $ + * $Revision: 1.7 $ * * This file is part of OpenOffice.org. * @@ -79,7 +79,7 @@ public: //------------------------------------------------------------------------- double getLogicValueWhereMainLineCrossesOtherAxis() const; bool getLogicValueWhereExtraLineCrossesOtherAxis( double& fCrossesOtherAxis) const; - void get2DAxisMainLine( ::basegfx::B2DVector& rStart, ::basegfx::B2DVector& rEnd, double fCrossesOtherAxis ) const; + void get2DAxisMainLine( ::basegfx::B2DVector& rStart, ::basegfx::B2DVector& rEnd, double fCrossesOtherAxis ); //------------------------------------------------------------------------- //Layout interface for cartesian axes: @@ -102,6 +102,15 @@ public: //------------------------------------------------------------------------- //------------------------------------------------------------------------- + struct ScreenPosAndLogicPos + { + double fLogicX; + double fLogicY; + double fLogicZ; + + B2DVector aScreenPos; + }; + protected: //methods bool createTextShapes( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShapes >& xTarget @@ -117,6 +126,9 @@ protected: //methods , TickmarkHelper_2D* pTickmarkHelper); bool isBreakOfLabelsAllowed( const AxisLabelProperties& rAxisLabelProperties , TickmarkHelper_2D* pTickmarkHelper ); + + ::basegfx::B2DVector getScreenPosition( double fLogicX, double fLogicY, double fLogicZ ) const; + ScreenPosAndLogicPos getScreenPosAndLogicPos( double fLogicX, double fLogicY, double fLogicZ ) const; }; //.............................................................................