Как установить shape.Position без создания новых объектов Point в WPF? - PullRequest
1 голос
/ 14 апреля 2011

У меня есть фигуры 1000 с, чьи StartPoint, EndPoint, Center и т. Д. Устанавливаются 30 раз в секунду, но единственный способ сделать это - каждый раз создавать новый Point, так как System.Windows.Point это структура, поэтому я не могу сделать это:

shape.Center.X = x;

И нет даже SetCenter и т. Д. Метода для решения этой проблемы.

Есть идеи, как это сделать?

Ответы [ 2 ]

3 голосов
/ 14 апреля 2011

Почему вы не хотите создавать новые очки?

Это простые типы значений, никаких проблем с памятью или производительностью, которые я вижу.

2 голосов
/ 14 апреля 2011

Используйте TranslateTransform для размещения фигур. Используйте RenderTransformOrigin, чтобы установить «центр».

EDIT

RenderTransforms может быть ускорено графическим процессором. Вы не добавите преобразование в каждый кадр, а добавите только один и измените его свойства с течением времени. Смотрите BitmapCache и , это тоже довольно интересно

...