[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Работа с графикой
AntonNABSAL
Вот нужно допустим реализовать такую штуку.

user posted image
Все берется из базы(имена кружочков, и количество в слое), я сделал реализацию по слоям. Но помогите мне с алгоритмом как нарисовать линии от каждого элемента верхнего слоя в каждый нижний.



while ($row_obj=mysql_fetch_object($result)){
if($row_obj->LAYER_NUMBER_PARAMETR == $num_layer){
imagearc($img, $num_X, $num_Y, 100, 100, 0, 360, $black);
imagestring($img, 2, $num_X-25, $num_Y-25, $row_obj->NAME_PARAMETR."/".PROCENT_PARAMETR, $black);
$num_X = $num_X+200;
}
else{
$num_layer++;
$num_X = 100;
$num_Y = $num_Y+150;
imagearc($img, $num_X, $num_Y, 100, 100, 0, 360, $black);
imagestring($img, 2, $num_X-25, $num_Y-25, $row_obj->NAME_PARAMETR."/".PROCENT_PARAMETR, $black);
$num_X = $num_X+200;


}
}


Ведь просто все по циклу берется, как мне узнать сколько кружков будет ниже уровнем...



Спустя 15 часов, 4 минуты, 6 секунд (17.11.2010 - 10:33) AntonNABSAL написал(а):
вот так вот... нет ни у кого идей(

Спустя 22 минуты, 30 секунд (17.11.2010 - 10:55) sergeiss написал(а):
У тебя "методологически" не верно делается smile.gif Алгоритм надо немного сменить.

1. Лучше сначала проводить линии, а уже сверху рисовать кружки. Тогда не надо "париться" на тему того, чтобы линия не заезжала на круг. Потому что круг будет сверху неё.

2. Сначала закачай данные из БД в массив(ы) в скрипте, а потом уже запускай цикл построения. Это позволит, плюс ко всему, грамотно сделать то, что я в п.1 описал.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.