Следуя нашим правилам, начинаем с методов, правка которых вызовет наименьшее влияние на проект.
Этип критериям лучше всего подходит приватный метод midpoint: у него правильно типизированное возвращаемое значение, а поскольку он приватный, то аргументы для него будут изготовлены в этом же классе.
Методология та-же, что и применятась ранее: вызываем ошибку и исправляем ее.
Продублируем и закомментируем строку объявления метода. На память.
Заменим все аргументы метода на один (line:LineSVG).
Разумеется, такого типа не существует и, поэтому редактор подсветит ошибки.
Выделяем LineSVG и комбинацией CTRL+1 вызываем quick fix, соглашаемся на предложение создать класс LineSVG. Сохраняем его, возвращаемся.
Честно говоря, глядя на код хочется пойти по более короткому, хотя и теоретически опасному пути: немедленно перенести метод midpoint в класс LineSVG, поскольку он явно завистлив к данным этого класса и не использует данных текущего класса. Ну, что-ж, сократим путь. Переносим вместе с комментариями.
Теперь, собственно, нужно определиться с тем, что будет из себя представлять этот класс и как будет создаваться.
Задаем конструктор, метод инициализации экземпляра класса и get set методы доступа к стартовой и конечной точкам отрезка.
После этого делаем метод midpoint публичным и не статическим и реализуем аналогичное поведение, но с использованием стандартных методов. Заодно исправим комментарии к методу.
В итоге получаем такой класс:

Код AS3:
package com.itechnica.svg {
import flash.geom.Point;
public class LineSVG {
private var startPoint : Point;
private var endPoint : Point;
public function LineSVG(start:Point, end : Point) {
initInstance(start, end);
}
private function initInstance(start : Point, end : Point) : void {
startPoint = start;
endPoint = end;
}
public function get start() : Point {
return startPoint;
}
public function set start(value : Point):void {
startPoint = value;
}
public function get end() : Point {
return endPoint;
}
public function set end(value : Point):void {
endPoint = value;
}
/**
* @returns Point the midpoint of current line segment
*/
public function midpoint():Point {
return Point.interpolate(startPoint, endPoint, 0.5);
}
}
}
Теперь можно приступить к исправлению образовавшихся ошибок в методе bezierSplit.