wTick = 10; parent::__construct( $diagram, $master_table, $master_field, $foreign_table, $foreign_field ); $this->ySrc += 10; $this->yDest += 10; } /** * draws relation links and arrows * shows foreign key relations * * @param boolean $showColor Whether to use one color per relation or not * * @see PMA_EPS * * @return void */ public function relationDraw($showColor) { /* Commented because $color unused. if ($showColor) { $listOfColors = array( 'red', 'grey', 'black', 'yellow', 'green', 'cyan', 'orange' ); shuffle($listOfColors); $color = $listOfColors[0]; } else { $color = 'black'; }*/ // draw a line like -- to foreign field $this->diagram->line( $this->xSrc, $this->ySrc, $this->xSrc + $this->srcDir * $this->wTick, $this->ySrc, 1 ); // draw a line like -- to master field $this->diagram->line( $this->xDest + $this->destDir * $this->wTick, $this->yDest, $this->xDest, $this->yDest, 1 ); // draw a line that connects to master field line and foreign field line $this->diagram->line( $this->xSrc + $this->srcDir * $this->wTick, $this->ySrc, $this->xDest + $this->destDir * $this->wTick, $this->yDest, 1 ); $root2 = 2 * sqrt(2); $this->diagram->line( $this->xSrc + $this->srcDir * $this->wTick * 0.75, $this->ySrc, $this->xSrc + $this->srcDir * (0.75 - 1 / $root2) * $this->wTick, $this->ySrc + $this->wTick / $root2, 1 ); $this->diagram->line( $this->xSrc + $this->srcDir * $this->wTick * 0.75, $this->ySrc, $this->xSrc + $this->srcDir * (0.75 - 1 / $root2) * $this->wTick, $this->ySrc - $this->wTick / $root2, 1 ); $this->diagram->line( $this->xDest + $this->destDir * $this->wTick / 2, $this->yDest, $this->xDest + $this->destDir * (0.5 + 1 / $root2) * $this->wTick, $this->yDest + $this->wTick / $root2, 1 ); $this->diagram->line( $this->xDest + $this->destDir * $this->wTick / 2, $this->yDest, $this->xDest + $this->destDir * (0.5 + 1 / $root2) * $this->wTick, $this->yDest - $this->wTick / $root2, 1 ); } }