Как нарисовать вращающийся куб на 2D-холсте на C# без использования внешних библиотек?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Как нарисовать вращающийся куб на 2D-холсте на C# без использования внешних библиотек?

Сообщение Anonymous »

Мне нужно нарисовать трехмерный куб на двумерном холсте в C# (с помощью графики в Windows Forms) и заставить его вращаться вокруг своих осей. Однако мне не разрешено использовать какие-либо внешние библиотеки, такие как OpenGL или DirectX, которые сделают это за меня. Как я могу вручную реализовать 3D-вращение и проекцию на 2D-холст? Будем признательны за любые ресурсы или рекомендации по работе с матрицами вращения и перспективной проекцией на C#!
На данном этапе мне удалось нарисовать только куб с использованием примитивов.
graphics.DrawLine(Pens.Black, width / 2 - x, height / 2 - x, width / 2 + x, height / 2 - x);
graphics.DrawLine(Pens.Black, width / 2 - x, height / 2 - x, width / 2 - x, height / 2 + x);
graphics.DrawLine(Pens.Red, width / 2 + x, height / 2 - x, width / 2 + x, height / 2 + x);
graphics.DrawLine(Pens.Black, width / 2 - x, height / 2 + x, width / 2 + x, height / 2 + x);

graphics.DrawLine(Pens.Black, width / 2 + x, height / 2 - x, width / 2 + x + 3 / 2 * x, height / 2 - x - 3 / 2 * x);
graphics.DrawLine(Pens.Black, width / 2 - x, height / 2 - x, width / 2 - x + 3 / 2 * x, height / 2 - x - 3 / 2 * x);

graphics.DrawLine(Pens.Black, width / 2 - x + 3 / 2 * x, height / 2 - x - 3 / 2 * x, width / 2 + 2 * x, height / 2 - x - 3 / 2 * x);

graphics.DrawLine(Pens.Blue, width / 2 + x, height / 2 + x, width / 2 + 2 * x, height / 2 + x - 3 / 2 * x);

graphics.DrawLine(Pens.Brown, width / 2 + 2 * x, height / 2 + x - 3 / 2 * x, width / 2 + 2 * x, height / 2 + x - 3 / 2 * x - 2 * x);


Подробнее здесь: https://stackoverflow.com/questions/790 ... ternal-lib
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • 3D вращающийся куб с прозрачным окном к фоновому видео (видно только через куб)
    Anonymous » » в форуме CSS
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • 3D вращающийся куб с прозрачным окном к фоновому видео (видно только через куб)
    Anonymous » » в форуме Javascript
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • 3D вращающийся куб с прозрачным окном к фоновому видео (видно только через куб)
    Anonymous » » в форуме CSS
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • CSS вращающийся куб - как постоянно отображать текст прямо вверх?
    Anonymous » » в форуме CSS
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • CSS вращающийся куб - как постоянно отображать текст прямо вверх? [закрыто]
    Anonymous » » в форуме CSS
    0 Ответы
    5 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»