Чтобы понять, как и что следует сделать, советую построить диаграмму объектов, на которой показать экземпляры классов. Наверное тогда многое станет проще и понятнее. Насчет зависимостей, то стрелка показывает, какой класс зависит от реализации другого класса (стрелка на нем) + зависимость может иметь, поясняющий стереотип.
Подумайте - форма зависит от реализации программы или реализация программы зависит от реализации формы?
Зависит ли точка от реализации формы МонтеКарло, или все-таки работа формы зависит от реализации класса Точка?
Да в треугольнике у вас дубль операций, они правда отличаются сигнатурами. Но насколько мне известно нельзя иметь две одноименные операции в классе.
Также нужно прояснить зависимость между треугольником и вписанным прямоугольником, может тут лучше подойдет ассоциация или даже композиция, в том смысле что вписанный прямоугольник может существовать при наличии треугольника. С другой стороны прямоугольник может существовать независимо от треугольника и иметь некое свойство - Быть вписанным в определенный треугольник. Так что с какой стороны посмотреть
Если все-таки т-ник инстацирует экземпляр прямоугольника, то наверное зависимость должна иметь обратное направления, правда я могу и ошибаться