Changeset 15078 for branches/feature-module-update/html/test/naka/graph.php
- Timestamp:
- 2007/07/20 15:58:59 (19 years ago)
- Location:
- branches/feature-module-update
- Files:
-
- 1 edited
- 2 copied
-
. (copied) (copied from branches/rel) (1 prop)
-
html (copied) (copied from branches/rel/html)
-
html/test/naka/graph.php (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branches/feature-module-update
-
Property
svn:ignore
set to
.cache
.settings
.projectOptions
-
Property
svn:ignore
set to
-
branches/feature-module-update/html/test/naka/graph.php
r12157 r15078 9 9 $objGraphPie = new SC_GraphPie(400, 250, 80, 70); 10 10 11 /* ¥Ç¥Ð¥Ã¥°É½¼¨ÍÑby naka11 /* デバッグ表示用 by naka 12 12 foreach($arrList as $key => $val) { 13 13 $objGraphPie->debugPrint("key:$key val:$val"); … … 16 16 17 17 $arrList = array( 18 ' Îý½¬A' => 11,19 ' Îý½¬B' => 32,20 ' Îý½¬C' => 4818 '練習A' => 11, 19 '練習B' => 32, 20 '練習C' => 48 21 21 ); 22 22 23 // ¥Ç¡¼¥¿¤ò¥»¥Ã¥È¤¹¤ë23 // データをセットする 24 24 $objGraphPie->setData($arrList); 25 // ËÞÎã¤ò¥»¥Ã¥È¤¹¤ë25 // 凡例をセットする 26 26 $objGraphPie->setLegend(array_keys($arrList)); 27 27 28 // ±ß¥°¥é¥ÕÉÁ²è28 // 円グラフ描画 29 29 //$objGraphPie->drawGraph(); 30 30 … … 35 35 $w = $objGraphPie->cw; 36 36 37 // ¥Ç¡¼¥¿¤Î³ÑÅÙ¤ò¼èÆÀ¤¹¤ë37 // データの角度を取得する 38 38 $arrRad = $objGraphPie->getCircleData($objGraphPie->arrData); 39 39 $rd_max = count($arrRad); 40 40 41 // ¥Ç¡¼¥¿¤¬Â¸ºß¤·¤Ê¤¤¾ì¹ç41 // データが存在しない場合 42 42 if($rd_max <= 0) { 43 43 return; 44 44 } 45 45 46 // ±Æ¤ÎÉÁ²è46 // 影の描画 47 47 if($objGraphPie->shade_on) { 48 48 $objGraphPie->drawShade(); 49 49 } 50 50 51 // ¿§¿ô¤Î¼èÆÀ51 // 色数の取得 52 52 $c_max = count($objGraphPie->arrColor); 53 53 $dc_max = count($objGraphPie->arrDarkColor); 54 54 55 // ¦Ì̤ÎÉÁ²è55 // 側面の描画 56 56 for ($i = ($y + $z - 1); $i >= $y; $i--) { 57 57 $start = 0; 58 58 for($j = 0; $j < $rd_max; $j++) { 59 // ³ÑÅÙ¤¬0Åٰʾå¤Î¾ì¹ç¤Î¤ß¦Ì̤òÉÁ²è¤¹¤ë¡£59 // 角度が0度以上の場合のみ側面を描画する。 60 60 if($arrRad[$j] > 0) { 61 61 $end = $start + $arrRad[$j]; 62 62 if($start == 0 && $end == 360) { 63 // -90 ¢·270¤Ç»ØÄꤹ¤ë¤È±ß¤¬ÉÁ²è¤Ç¤¤Ê¤¤¤Î¤Ç0¢·360¤Ë»ØÄê63 // -90~270で指定すると円が描画できないので0~360に指定 64 64 imagearc($objGraphPie->image, $x, $i, $w, $h, 0, 360, $objGraphPie->arrDarkColor[($j % $dc_max)]); 65 65 } else { 66 // -90 ¡ë¤Ï12»þ¤Î°ÌÃÖ¤«¤é³«»Ï¤¹¤ë¤è¤¦¤ËÊäÀµ¤·¤Æ¤¤¤ë66 // -90°は12時の位置から開始するように補正している 67 67 imagearc($objGraphPie->image, $x, $i, $w, $h, $start - 90, $end - 90, $objGraphPie->arrDarkColor[($j % $dc_max)]); 68 68 } … … 74 74 75 75 76 // ¾åÌ̤ÎÉÁ²è76 // 上面の描画 77 77 $start = 0; 78 78 for($i = 0; $i < $rd_max; $i++) { 79 79 $end = $start + $arrRad[$i]; 80 80 if($start == 0 && $end == 360) { 81 // -90 ¢·270¤Ç»ØÄꤹ¤ë¤È±ß¤¬ÉÁ²è¤Ç¤¤Ê¤¤¤Î¤Ç0¢·360¤Ë»ØÄê81 // -90~270で指定すると円が描画できないので0~360に指定 82 82 imagefilledarc($objGraphPie->image, $x, $y, $w, $h, 0, 360, $objGraphPie->arrColor[($i % $c_max)], IMG_ARC_PIE); 83 83 } else { 84 // -90 ¡ë¤Ï12»þ¤Î°ÌÃÖ¤«¤é³«»Ï¤¹¤ë¤è¤¦¤ËÊäÀµ¤·¤Æ¤¤¤ë¡£84 // -90°は12時の位置から開始するように補正している。 85 85 imagefilledarc($objGraphPie->image, $x, $y, $w, $h, $start - 90, $end - 90, $objGraphPie->arrColor[($i % $c_max)], IMG_ARC_PIE); 86 86 } … … 88 88 } 89 89 /* 90 // ÄìÌ̤ÎÉÁ²è90 // 底面の描画 91 91 imagearc($objGraphPie->image, $x, $y + $z, $w, $h, 0, 180 , $objGraphPie->flame_color); 92 92 93 // ¾åÌ̤αï¼è¤ê93 // 上面の縁取り 94 94 $start = 0; 95 95 for($i = 0; $i < $rd_max; $i++) { 96 96 $end = $start + $arrRad[$i]; 97 97 if($start == 0 && $end == 360) { 98 // -90 ¢·270¤Ç»ØÄꤹ¤ë¤È±ß¤¬ÉÁ²è¤Ç¤¤Ê¤¤¤Î¤Ç0¢·360¤Ë»ØÄê98 // -90~270で指定すると円が描画できないので0~360に指定 99 99 imagearc($objGraphPie->image, $x, $y, $w, $h, 0, 360 , $objGraphPie->flame_color); 100 100 } 101 // -90 ¡ë¤Ï12»þ¤Î°ÌÃÖ¤«¤é³«»Ï¤¹¤ë¤è¤¦¤ËÊäÀµ¤·¤Æ¤¤¤ë¡£101 // -90°は12時の位置から開始するように補正している。 102 102 imagefilledarc($objGraphPie->image, $x, $y, $w, $h, $start - 90, $end - 90, $objGraphPie->flame_color, IMG_ARC_EDGED|IMG_ARC_NOFILL); 103 103 $start = $end; 104 104 } 105 105 106 // ¦Ì̤αï¼è¤ê106 // 側面の縁取り 107 107 imageline($objGraphPie->image, $x + ($w / 2), $y, $x + ($w / 2), $y + $z, $objGraphPie->flame_color); 108 108 imageline($objGraphPie->image, $x - ($w / 2), $y, $x - ($w / 2), $y + $z, $objGraphPie->flame_color); … … 112 112 for($i = 0; $i < $rd_max; $i++) { 113 113 $end = $start + $arrRad[$i]; 114 // Á°Ì̤Τß114 // 前面のみ 115 115 if($end > 90 && $end < 270) { 116 116 list($ax, $ay) = lfGetArcPos($x, $y, $w, $h, $end); 117 // ¥é¥¤¥ó¤Î¤º¤ì¤òÊäÀµ¤¹¤ë117 // ラインのずれを補正する 118 118 if($end > 180) { 119 119 $ax = $ax + 1; … … 124 124 } 125 125 126 // ¥é¥Ù¥ë¤ÎÉÁ²è126 // ラベルの描画 127 127 $objGraphPie->drawLabel($arrRad); 128 // ËÞÎã¤ÎÉÁ²è128 // 凡例の描画 129 129 $objGraphPie->drawLegend(count($objGraphPie->arrData)); 130 130 */
Note: See TracChangeset
for help on using the changeset viewer.
