Exemplo n.º 1
0
int WChart3DImplementation::numberOfCategories(Axis axis) const
{
  if (chart_->dataSeries().size() == 0)
    return 10;

  WAbstractGridData *first;
  if (axis == Axis::X3D) {
    first = dynamic_cast<WAbstractGridData*>(chart_->dataSeries()[0]);
    if (first == nullptr) {
      throw WException("WChart3DImplementation: can only count the categories in WAbstractGridData");
    } else {
      return first->nbXPoints();
    }
  } else if (axis == Axis::Y3D) {
    first = dynamic_cast<WAbstractGridData*>(chart_->dataSeries()[0]);
    if (first == nullptr) {
      throw WException("WChart3DImplementation: can only count the categories in WAbstractGridData");
    } else {
      return first->nbYPoints();
    }
  } else {
    throw WException("WChart3DImplementation: don't know this type of axis");
  }
}