Если вы получите свой javascript из внешнего файла, он будет кэширован , так что нет, это, вероятно, не сильно замедлит вас, за исключением, возможно, первого раза.
Возможные причины медлительности и предложения по ускорению:
TWebBrowser упаковывает Internet Explorer , который не совсем известен своей необработанной скоростью, когда дело доходит до этого типа задач; Если вам нужна быстрая обработка JavaScript, рассмотрите DelphiChromiumEmbedded
Если вы рисуете маркер каждые две секунды, вам придется нарисовать 1800 маркеров для одного часа езды. Если вы хотите показать несколько поездок, будет очень сложно нарисовать все значки с альфа-прозрачностью и все.
Обычно я рисую маркер (стрелка с указанием направления движения) каждые 2 минуты , или если с момента последнего маркера пройдено более 200 м . Таким образом, вам не нужно рисовать целое облако маркеров, когда машина стоит на месте.
Вы можете использовать алгоритм Дугласа-Пикера для упрощения линии. В качестве параметра вы дадите максимальную ошибку, которую вы допустите в строке, и она удалит столько точек, сколько возможно, без превышения этой ошибки. Поэтому, если у вас есть прямая линия, она удалит все точки между краями.
Кроме того, вы можете рассмотреть кластеризацию точек на определенных уровнях масштабирования. Если бы вы использовали вместо этого OpenLayers, это было бы проще, но с помощью Google Maps Util Library вы можете сделать то же самое с Google Maps ( Пример ). Если вы уменьшите масштаб, будет немного бесполезно рисовать 2000 перекрывающихся значков в области 10x10 пикселей.
Если вы покажете мне свой код, я могу дать вам еще несколько прямых советов о том, как ускорить процесс.