Динамическое задание массива работает крайне просто. Указатель стека смещается вниз (к верхушке, на x86 стек растёт вниз), и на появившемся месте располагается массив.
P.S. Хорошее подспорье, но будь осторожен с «резиной»: не всякий сценарий так можно реализовать. Где перерисовка мало-мальски долгая, придётся налаживать всё это вручную.
1, 2. Решено. С полюсом ты поступил тупо, но верно — переместил перо в «бесконечность».
3. Решилась автоматически, и сейчас y:=0 излишний.
4. Не в мерцаниях дело. Проблема будет, когда ты свернёшь окошко, а потом развернёшь. Или когда уменьшишь его, а потом вернёшь обратно — в общем, когда попросишь Windows перерисовать его. Как я уже говорил, сейчас с Aero не так просто попросить Windows полностью перерисовать окно.
5. Шаг лучше всего взять не жёсткие 0,01, а что-то типа const step = 1.0 / mash;
Повторяю — Active убрать! ExecSQL выполнит запрос, а просматривать его невозможно (он ничего не возвращает).
Когда отладишь — попробуй перейти на параметры.
ЗЫ. У тебя вторая серьёзная проблема, тоже решаемая параметрами. FloatToStr локалезависим! Как только у тебя появится дробное число, на русской ОС система или запишет целую часть, или откажется работать.
…а зачастую и дают возможность работать кэшу запросов — система не готовит план запроса заново, а использует имеющийся, подставляя в него другие цифры.
Скажи, чем ты делаешь задержки — тогда кто-то из нас скажет: то ли технология изначально плохая и её надо менять, то ли как-то можно сделать таймер поточнее…