В данном случае,
controllerAs
создает переменную 'startPoint' в текущем scope директивы.
Если scope директивы изолирован или новый (
scope: {}
или
scope: true
} - тогда извне переменная не будет доступна.
В любом случае, директива - самодостаточная единица, и если Вам в другом месте приложения надо получить ее данные - неверно продумано приложение.
Если выхода нет - остаётся использовать сервисы/фабрики, которые по опредленным ключам будут хранить у себя данные, к которым будет доступ в остальных точках приложеня.
// EDIT
1) Директива не должна никому ничего давать. В основном, её обязанность - произвести некую манипуляцию с данными и отобразить это в представлении.
2) Использование
$scope/$element
в контроллере - моветон. Все DOM операции должны происходить в link-функции директивы. Если сложная логика - это всё выносится в сервисы (в которых, собственно, и должна храниться вся бизнес-логика приложения).
3) Попробуйте заменить $scope на this в коде. Почитайте внимательно про
controllerAs syntax.