/**
  * Draw single step on a axis
  *
  * Draws a step on a axis at the current position
  * 
  * @param ezcGraphRenderer $renderer Renderer to draw the step with
  * @param ezcGraphCoordinate $position Position of step
  * @param ezcGraphCoordinate $direction Direction of axis
  * @param int $axisPosition Position of axis
  * @param int $size Step size
  * @param ezcGraphColor $color Color of axis
  * @return void
  */
 public function drawStep(ezcGraphRenderer $renderer, ezcGraphCoordinate $position, ezcGraphCoordinate $direction, $axisPosition, $size, ezcGraphColor $color)
 {
     if (!($this->innerStep || $this->outerStep)) {
         return false;
     }
     $drawStep = false;
     if ($axisPosition === ezcGraph::CENTER && $this->innerStep || $axisPosition === ezcGraph::BOTTOM && $this->outerStep || $axisPosition === ezcGraph::TOP && $this->innerStep || $axisPosition === ezcGraph::RIGHT && $this->outerStep || $axisPosition === ezcGraph::LEFT && $this->innerStep) {
         // Turn direction vector to left by 90 degrees and multiply
         // with major step size
         $stepStart = new ezcGraphCoordinate($position->x + $direction->y * $size, $position->y - $direction->x * $size);
         $drawStep = true;
     } else {
         $stepStart = $position;
     }
     if ($axisPosition === ezcGraph::CENTER && $this->innerStep || $axisPosition === ezcGraph::BOTTOM && $this->innerStep || $axisPosition === ezcGraph::TOP && $this->outerStep || $axisPosition === ezcGraph::RIGHT && $this->innerStep || $axisPosition === ezcGraph::LEFT && $this->outerStep) {
         // Turn direction vector to right by 90 degrees and multiply
         // with major step size
         $stepEnd = new ezcGraphCoordinate($position->x - $direction->y * $size, $position->y + $direction->x * $size);
         $drawStep = true;
     } else {
         $stepEnd = $position;
     }
     if ($drawStep) {
         $renderer->drawStepLine($stepStart, $stepEnd, $color);
     }
 }