9 #ifndef MsiChart_PolarPlot_h 10 #define MsiChart_PolarPlot_h 12 #include "PDCHeader/PDCvector" 65 unsigned char iMarkerShape,
Int32 iMarkerPixelSize, std::vector<Rect2D>& orMarkerRects);
112 void ParsePolarPoints(
const std::vector<FPoint2D>& irPolarPoints, std::vector<std::vector<FPoint2D> >& orPointGroups)
const;
141 void PolarToCartesian(
const std::vector<FPoint2D>& irPolarPoints, std::vector<Point2D>& orCartesianPoints);
185 virtual bool GetData(
Int32 iSeriesIndex,
Int32 iGroupId,
bool iIsXValue,
double& orValue)
const;
189 void hGenerateOneDataLine(
const std::vector<FPoint2D>& irPolarPointSet,
Int32 iSeriesIndex,
GraphCollectionObject* ipDataLineSet);
199 void hGetMinMaxValueForValueAxis(
EnumValueAxis iValueAxis,
double& orMin,
double& orMax)
const;
203 void hDrawTrendLinesAndEquations(
bool iIsY2);
209 void hLoadSeriesProperties(
Int32 iSeriesIndex);
211 void hCalculateTickAngles();
213 bool hIsAxisOnTop()
const;
218 inline bool PolarPlot::hIsAxisOnTop()
const
PolarInfo mPolarInfo
Maintains polar information.
Definition: PolarPlot.h:150
void MergeGraphObjectList()
bool mIsAreaRadar
Definition: PolarPlot.h:170
PolarValueAxis::Ptr mY1AxisPtr
Y1 Axis.
Definition: PolarPlot.h:153
PolarValueAxis::Ptr mY2AxisPtr
Y2 Axis.
Definition: PolarPlot.h:154
CurveLineObject::Ptr CreateOneCurveLine(const std::vector< FPoint2D > &irPolarPointSet, Int32 iSeriesIndex, GraphCollectionObject *ipDataLineSet)
Definition: PolarPlot.h:34
This class is used to generate polar chart.
Definition: PolarPlot.h:20
bool mIsStacked
Definition: PolarPlot.h:166
void PolarToCartesian(const std::vector< FPoint2D > &irPolarPoints, std::vector< Point2D > &orCartesianPoints)
Definition: PolarValueAxis.h:20
Definition: GraphCollectionObject.h:19
bool mUseCircularDataLines
Definition: PolarPlot.h:162
virtual void GenerateView()
EnumValueAxis
Definition: Plot.h:54
void ParsePolarPoints(const std::vector< FPoint2D > &irPolarPoints, std::vector< std::vector< FPoint2D > > &orPointGroups) const
PolarValueAxis::Ptr mXAxisPtr
X Axis.
Definition: PolarPlot.h:152
virtual void GenerateMapAndList()
bool CalculateSeriesPolarPoints(Int32 iSeriesIndex, std::vector< FPoint2D > &orSeriesPolarPoints, bool iIsPreValue=false) const
Int32 mLabelLocation
Data label location.
Definition: PolarPlot.h:172
ChartAdvFormat mNumberFormat
Number format of data labels.
Definition: PolarPlot.h:30
MSynch::SmartPtr< PolarPlot > Ptr
Definition: PolarPlot.h:37
EnumValueAxis mValueAxisIndex
Value axis index - Y1 or Y2.
Definition: PolarPlot.h:27
#define Int32
Definition: BasicTypes.h:20
bool mShowDataLabels
Show data labels or not.
Definition: PolarPlot.h:28
Definition: TextObject.h:181
Int32 mLabelFormat
Data label format.
Definition: PolarPlot.h:173
std::vector< PolarSeriesInfo > mSeriesOptions
Series options.
Definition: PolarPlot.h:156
Definition: SmartPtr.h:38
void AppendFirstPolarPoint(std::vector< FPoint2D > &iorSeriesPolarPoints) const
bool GetVAFormattedText(Int32 iSeriesIndex, Int32 iGroupID, bool iIsXValue, double iValue, MBase::String &orText, GraphCollectionObject *ipCollection)
Int32 mGroupCount
Number of groups.
Definition: PolarPlot.h:157
std::basic_string< WCHAR, std::char_traits< WCHAR >, Allocator< WCHAR > > String
Definition: BaseString.h:26
GraphTrendLineOptions mTrendLineOptions
Trendline options.
Definition: PolarPlot.h:29
void GenerateMarkersBySeries(const std::vector< Point2D > &irPoints, Int32 iSeriesIndex, unsigned char iMarkerShape, Int32 iMarkerPixelSize, std::vector< Rect2D > &orMarkerRects)
Definition: Msi_ccomvariant.h:24
void GenerateDatalabels(const std::vector< Rect2D > &irRects, Int32 iSeriesIndex)
PolarPlot(const TripleId &irTripleId, GraphObjectManager *ipManager, const Rect2D &irDeviceRect, bool iIsRadar=false)
PolarSeriesInfo()
Definition: PolarPlot.h:22
virtual void GetOptions(Int32 iSeriesId, Int32 iPropertyId, CComVariant *opValue) const
Definition: GraphObjectManager.h:37
void GenerateDataLinesBySeries(const std::vector< FPoint2D > &irPolarPoints, Int32 iSeriesIndex, GraphCollectionObject *ipCollection)
Use four Int32 values to represent a 2D rectangle.
Definition: Rect2D.h:25
Point2D GetPointByAngleAndRadius(double iAngleRad, double iRadius) const
void CreateTrendLines()
Create trend lines.
GraphCollectionObject * GenerateSeriesDataLineCollection(Int32 iSeriesIndex)