Есть ли компонент для построения круговых диаграмм?

Guest111

Guest
Есть ли компонент для построения круговых диаграмм?

Нужно построить диаграмму круговую.. желательно трехмерную..
Может есть уже готовые компоненты для этого?
 

SiMM

Новичок
А в чём проблема нарисовать круговую диаграмму, пусть даже трёхмерную, самостоятельно?
Либо ты задал вопрос не в ту ветку форума, либо читай [m]gd[/m] и вспоминай арифметику и геометрию (кто-то тут говорил, что математика кодеру ни к чему ;) ).
 

Guest111

Guest
не ну наверняка не я такое мог сказать :) про математику
скорее всего вопрос как раз и относится к геометрии нежели к РНР :) т.к. с GD вроде всё впорядке...
 

ksnk

прохожий
На phpclasses 204 классов со всякой графической мурой, в том числе и бизнес-графика. Правда они заставят зарегистрироваться, чтобы скачать, но зато бесплатно ;)
http://www.phpclasses.org/browse/class/11.html
 

SiMM

Новичок
> скорее всего вопрос как раз и относится к геометрии нежели к РНР
Ну и в чём проблема то? Не можешь сектор эллипса нарисовать при помощи [m]imagearc[/m]? Или закрашенный сектор при помощи [m]imagefilledarc[/m]? Или же пропорцию составить, чтобы понять, какую часть круга нужно закрашивать?
 

Yuksare

Guest
Гы-гы, вопрос геометрии.
Пример - найти точки пересечения прямой, проходящей церез центр эллипса, с границами эллипса.
эллипс - x2/a2 + y2/b2 = 1, где x2 - х в квадрате,
прямая y = kx, так как начало координат.
отсюда
x2 = a2*b2 / (a2*k2 + b2)
Замечательно, рисуем дугу эллипса imagearc или сектор imagefilledarc, ставим точку в найденном месте пересечения и видим, что вычисленная точка пересечения совсем не там где должна быть, вернее там, но только тогда когда эллипс - окружность.

То же - рисуем две дуги imagearc ( resource image, int cx, int cy, int w, int h, int s, int e, int col) со всеми однаковыми параметрами, кроме h и наблюдаем как одни и те же по идее углы выглядят совершенно по-разному и совпадают с реальными только если w=h, тоесть в случае окрыжности.

Как таки в imagearc и imagefilledarc узнать под каким углом нарисован сектор или дуга если эллипс не окружность?
 

Yuksare

Guest
Yuksare - а уравнение прямой %)
Классно, я есче не успел сообщения написать, а уже ответили :)

Сорри, в процессе написания на послать случайно нажал %)

-~{}~ 12.01.06 16:05:

На imagearc и imagefilledarc забить.

Рулит imagepolygon, imagefilledpolygon и параметрическое уравнение эллипса

PHP:
function imagearc ($image, $cx, $cy, $w, $h, $s,$e,$col){
$points = array();
$points[] = $cx;$points[] = $cy;

for ($i=$s;$i<$e;$i++){
	$points[] = $a * cos(deg2rad($i)) + $cx;
	$points[] = $b * sin(deg2rad($i))  + $cy;
}

imagefilledpolygon($image,$points,count($points)/2,$col);
}
Шаг, который $i, по вкусу %)
 
Сверху