В платформе.NET, почему там PointF (плавание) и никакой “PointD” (дважды)?

Может любой объяснять почему в платформе.NET, существует PointF структуры (использующий с одинарной точностью float введите) и никакой "PointD" (использующий двойную точность double введите)?

Они установили, что такая точность никогда не будет иметь смысла в Системе. Рисование пространства имен? Есть ли какая-либо другая причина?

12
задан mskfisher 10 May 2012 в 18:50
поделиться

1 ответ

В то время, когда разрабатывалась GDI + (технология, на которой основана System.Drawing ), аппаратное обеспечение не было даже близко к сегодняшним характеристикам и возможностям, и на основе Double Система координат создала бы тяжелую нагрузку на оборудование и принесла бы очень мало пользы на стороне дисплея, поскольку дисплеи имели такой же размер и разрешение. Даже с сегодняшними видеокартами-монстрами мы только в этом году видим возможность выполнять операции с плавающей запятой двойной точности, которые имеют приемлемую производительность, и это все еще 1/2 скорости операций с одинарной точностью. Таким образом, было целесообразно использовать типы Single для моделирования графических операций.

Сегодня с WPF у нас есть платформа, которая начиналась с прицелом на следующее десятилетие или два, поэтому использование Double для моделирования системы координат имело смысл.

20
ответ дан 2 December 2019 в 18:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: