Перейти к содержанию
Fire Monkey от А до Я
  • 1

Отрисовка линий на поверхности 3D сферы


Ilya.Z

Вопрос

Добрый день, может туплю, или не туда копаю.. есть ли Firemonkey более менее стандартный способ рисовать на поверхности  3D фигур?

в частности интересует сфера, есть две координаты, нужно провести чрез них линию, так что бы бы она легла на поверхность, или начертить фигуру так же лежащую на поверхности.

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

ну а заливка фигур как понимаю только через материалы доступна в 3D, но можно залить ограниченную область на поверхности тогда ?

нашел очень симпатичный пример на youtube от QuarkCube - Sketch3d, но там интерактивное рисование мышкой, и каждая линия это множество примитивов, все красиво но не совсем то )

пытаюсь рисовать скажем планету, и показать на ней треки, области, точки:) 

Ссылка на комментарий

Рекомендуемые сообщения

  • 0
1 час назад, POV сказал:

Ну, дружище, это уже крайняя лень когда "у меня лапки" )) 

ничего ж не стоит расчитать путь линии по поверхности сферы и  "патхом" ее вывести.

В этом направлении и думал )) .... Ортодромия. проложить маршрут из точки а в точку б, с выбором величины шага

 но да... надеялся что есть нечто готовое внутри FMX'а - .. другое дело, если не затруднит... кинуть что в меня этим - ничего не стоит) был бы очень признателен за линк на какой нить приемлемый алгоритм расчета пути, линии 

Ссылка на комментарий
  • 0

Но линия идет "по прямой"? Так размести арку или круг с  диаметром на на долю пикселя больше диаметра сферы. Центр как у сферы.

 

P.S. Оказывается арки нет. Только окружность и путь можно нарисовать. С путем не всё ясно, разбираться по докам надо.

 

sphere2.png

Изменено пользователем POV
Ссылка на комментарий
  • 0
36 минут назад, POV сказал:

Но линия идет "по прямой"? Так размести арку или круг с  диаметром на на долю пикселя больше диаметра сферы. Центр как у сферы.

 

P.S. Оказывается арки нет. Только окружность и путь можно нарисовать. С путем не всё ясно, разбираться по докам надо.

 

 

Линия по прямой только как элемент кривой) .. того самого пути, у нас есть координаты в пространстве Viewport3D, которые можно привести к локальным координатам сферы, рисовать можем - DrawLine, DrawRect, DrawPoint, DrawLines, DrawPrimitives (прада их так и не понял) ну и DrawCube , DrawFillPolygon.. вот и получается нужен алгоритм, приведение угловых координат сферы к трехмерным координатам Viewport3D/Sphere , и разбивка каждого отрезка на множество под элементов, как понимаю нечто похожее делают летчики для прокладки курса ) либо я сам уже в мыслях улетел в космос...хм

Ссылка на комментарий
  • 0
1 минуту назад, POV сказал:

Патх3Дэ лишь тады. Но координаты на поверхности самому щитать.

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

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...