Уроки, алгоритмы, программы, примеры

Вход на сайт

Материалы по разделам

Построения
на плоскости (2D)
Графика
в пространстве (3D)
Вычислительная
геометрия
Физическое
моделирование
Фрактальная
графика

Новые комментарии

Рекурсия присутствует?
И где эти прикрепленные файлы?
Я код на C++ набрал сам. Строил кривую Безье, но "прилипал" к нулю. То есть я задаю точки далеко от нуля, а он строил из нуля, а потом только обходил предложенные точки. Потом я нашёл Ваш сайт и эту статью. Оказалось, что я забыл возвести t в...
просто я не так понял, здесь мы вращаем точки куба что вращает сам куб. Мне нужно вращать просто 3д объект , данный способ не подходит
Задавайте объект в мировых координатах. Вращайте его относительно мировой системы координат. А при отрисовке преобразуйте в экранные координаты. Посмотрите пример преобразования в экранные координаты.

Счетчики и рейтинг

Рейтинг@Mail.ru Яндекс.Метрика
Скриншот к примеру
Среда программирования: 
IntelliJ IDEA
Статья по теме: 

Задача: Нарисовать кривую Леви.
Алгоритм: Метод drawLevy принимает координаты начального отрезка и количество итераций n. Затем высчитываются точки излома и для них вызывается drawLevy с декрементом n и т.д.(пока n != 0). Если n == 0, то рисуется линия по текущими координатам (x1, y1, x2, y2).

Код программы: 

package com.company.tests;
 
import javax.swing.*;
import java.awt.*;
 
public class LevyView extends JPanel {
 
    public void paintComponent(Graphics g) {
        super.paintComponents(g);
        g.setColor(Color.BLUE);
        drawLevy(150, 350, 450, 350, 20, g);//20-количество итераций
    }
    private void drawLevy(int x1, int y1, int x2, int y2, int n, Graphics g ) {//Основная рекурсивная функция
        if (n == 0) g.drawLine(x1, y1, x2, y2);
        else {
            int xx = (x1 + x2) / 2 + (y2 - y1) / 2;//Находим точки для дальнейшего разбиения и поворота(точки излома)
            int yy = (y1 + y2) / 2 - (x2 - x1) / 2;
            drawLevy(x1, y1, xx, yy, n - 1, g);
            drawLevy(xx, yy, x2, y2, n - 1, g);
        }
    }
}

Прикрепленный файлРазмер
Levy.zip10.59 кб