Canvas - это круто! - страница 15

 
Реter Konow:

Да, смотриться очень хорошо. Качественные формы кругов. 

Но, ты же используешь класс CCanvas, а там координаты задаются в int. 

для сглаженных окружностей я не использую класс CCanvas, а свой класс с типом double

 
Реter Konow:

А ResourseFree() ?

ResourceFree сработает только для тех ресурсов, название которых знаешь. Более того, ресурс убить можно только из той программы, которая его создала. Т.к. для других он read-only.

 
Nikolai Semko:

для сглаженных окружностей я не использую класс CCanvas, а свой класс с типом double

А как они будут двигаться, если ты остановишь их изменение в размерах?

 
fxsaber:

Ну тогда по какой-то причине он не сработал, т.к. у меня все осталось.

я не сильно рьяно работал над кодом пламени. Возникают нештатные ситуации. Если завершилось с ошибкой, то дело просто не дошло до деструктора.

ЗЫ. Я в таком случае захожу в объекты. Нажимаю "все" и ищу свой битмап и удаляю его. Только вот, действительно, удаляется ли в таком случае русурс?

 
fxsaber:

ResourceFree сработает только для тех ресурсов, название которых знаешь. Более того, ресурс убить можно только из той программы, которая его создала. Т.к. для других он read-only.

Значит, разработчик должен предусмотреть этот вопрос. Дать пользователю возможность уничтожить ресурс через установку одного из свойств объекта, который этот ресурс несет. Например, скрипт на частоте таймера проверяет 

ObjectGetInteger(0,"MT object",OBJPROP_SELECTED);

и когда пользователь устанавливает свойство объекта 

ObjectSetInteger(0,"MT object",OBJPROP_SELECTED,1);

Cкрипт уничтожает ресурс и стирает его объект.

 
Реter Konow:

А как они будут двигаться, если ты остановишь их изменение в размерах?

поставь при запуске скрипта в двух последних параметрах одинаковое значение (максимальный размер = минимальный размер) и окружности не будут изменяться в размере, а будут только плавно перемещаться, т.к. координата у них double

 
Nikolai Semko:

поставь при запуске скрипта в двух последних параметрах одинаковое значение (максимальный размер = минимальный размер) и окружности не будут изменяться в размере, а будут только плавно перемещаться, т.к. координата у них double

Да, двигаются более плавно, чем круги на основе int координат. Но, возможно потому, что сама окружность более сглаженная. Иначе говоря, менее заметно дергание.

 
Dmitry Fedoseev:

Уже сто лет существует куча библиотек для 3D написанных на JаvaScript. Самый прямой и простой путь - переписать их оттуда сюда.

Не 100 лет, конечно, но несколько. 

пробовал - не получилось. Все в нечитаемом виде в виде сплошной одной строки. Там черт голову сломит. Проще самому. 

 
Реter Konow:

Да, двигаются более плавно, чем круги на основе int координат. Но, возможно потому, что сама окружность более сглаженная. Иначе говоря, менее заметно дергание.

Петр. Чепуху говоришь. Я то уж знаю, о чем говорю, т.к. сам творец этих алгоритмов окружностей на 100%. Глазам своим верь, а не своему занудливому менталу.

вот спецификация этой окружности:

void   iCanvas::iCircle(double x,double y,double r,uint clr=255)
 
Nikolai Semko:

Петр. Чепуху говоришь. Я то уж знаю, о чем говорю, т.к. сам творец этих алгоритмов окружностей на 100%. Глазам своим верь, а не своему занудливому менталу.

Ладно. Как скажешь.

Причина обращения: