Алгоритм рисования 3Д дуги
luda2017
Дата: 10.07.2017 17:49:42
Всем доброго дня.
Возможно, ув. сообщество сможет подсказать алгоритм рисования 3Д дуги
Входные данные: 3д точка - центр дуги, радиус дуги, начальный и конечный углы матрица трансформации
На выходе необходимо получить набор точек, по которым можно построить дугу (например линиями)
Например, есть точка - центр дуги с координатами 1,2,3 и радиусом 10, нач. угол =0, конечный =180
матрица поворота например 0.707 0.707 0 0 1 0 0 0 1
x1ca4064
Дата: 10.07.2017 18:46:48
luda2017,
Если нужен быстрый алгоритм - ищите вариации на тему алгоритма Брезенхейма.
Если нужно быстро написать, но эффективность не существенна - перенос координат в декартовом пространстве, переход в сферические координаты, рисование в них и возрат в декартовы, либо рисование в 2d потом повороты в 3d и пр.
mini.weblab
Дата: 10.07.2017 18:59:53
подсказываю: перед тем как вращать, нужно прочитать матчасть
luda2017
Дата: 10.07.2017 21:50:27
mini.weblab |
---|
подсказываю: перед тем как вращать, нужно прочитать матчасть |
Спасибо за совершенно бесполезный ответ
luda2017
Дата: 10.07.2017 21:51:25
x1ca4064,
Рисование в 2Д, потом переход в 3Д дает неверный результат
x1ca4064
Дата: 10.07.2017 22:45:55
luda2017 |
---|
x1ca4064,
Рисование в 2Д, потом переход в 3Д дает неверный результат |
Вы рисовали растр, а потом поворачивали, или вычисляли координаты некоторых точек (вершин многоугольника) поворачивали в 3d и потом соединяли 3d-прямыми?
Вероятно, у Вас есть критерий "правильности" результата, напишите его.
mini.weblab
Дата: 10.07.2017 22:47:59
luda2017,
я поясню, просто у вас задача некорректно сформулирована и в таком виде не решается =)
luda2017
Дата: 11.07.2017 10:26:33
x1ca4064 |
---|
luda2017 |
---|
x1ca4064,
Рисование в 2Д, потом переход в 3Д дает неверный результат |
Вы рисовали растр, а потом поворачивали, или вычисляли координаты некоторых точек (вершин многоугольника) поворачивали в 3d и потом соединяли 3d-прямыми?
Вероятно, у Вас есть критерий "правильности" результата, напишите его. |
Рисовалась 2Д дуга, потом поворачивалась согласно кватерниона
exp98
Дата: 11.07.2017 12:06:53
Ну если, как там? с квакерионами на короткой ноге, то в чём затруднение?
x1ca4064
Дата: 12.07.2017 08:44:38
luda2017 |
---|
Рисовалась 2Д дуга, потом поворачивалась согласно кватерниона |
"Рисовалась 2Д дуга" - как именно? В результате работы получился набор точек, которые соединялись прямыми или просто список соседних точек?