Фон
Я пишу графическую библиотеку для приложений Android (да, да, я знаю, что есть много, но ни одна из них не предлагает настраиваемость, в которой мы нуждаемся).
Я хочу, чтобы графики были масштабируемыми и панорамируемыми.
Проблема
Я хочу, чтобы процесс был плавным, оставил небольшую нагрузку на процессор.
* Решения 1011 *
Использование View.onDraw(Canvas)
Использовать высокое разрешение Bitmap
Использование OpenGL
View.onDraw ():
Преимущества
Что-то, что легко реализовать
1038 * Недостатки *
плохая производительность? (разве это не использует OpenGL, не так ли?)
Bitmap:
Преимущества
Реально просто реализовать
Отличная производительность
1054 * Недостатки *
Нужно использовать некрасивое масштабирование
OpenGL:
Преимущества
Вероятно, хорошая производительность в зависимости от моей реализации
1068 * Недостатки *
Больше работы для реализации
Заключительные слова
OpenGL, вероятно, будет профессиональным решением и определенно предложит больше гибкости, но потребует больше работы (насколько неясно).
Одна вещь, которая определенно легче в OpenGL, это панорамирование / масштабирование, поскольку я могу просто манипулировать матрицей, чтобы получить ее правильно, остальное должно быть сложнее, хотя я думаю.
Я не боюсь испачкать руки, но я хочу знать, что я иду в правильном направлении, прежде чем начать копать.
Я пропустил какие-либо решения? Все ли мои решения в здравом уме?
Дополнительные примечания:
Могу добавить, что когда график меняется, я хочу анимировать изменения, это, возможно, будет самой сложной задачей из всех.