Esate.ru

Уравнение второго порядка

Есть ф-ия 2 порядка(3д кривая) надо как то её отобразить С помощью каких методов можно сделать такое?


точка отсчета( для вращения объекта)



надо чтобы цилиндр крутился не в начале его основания как показано на присунке а) , а надо чтобы он вращался в центре как показано в b).
Для это надо как то сдвинуть точку отсчета.
Не подскажите как это сделать лучше?


Свет как распространяется?

читаю уроки по тао фреймворку. Там есть замечательная ф-ия для отключения освещения. То ест 3-х мерный объект становиться черным пятном. Скажите как можно управлять светом, для искажения этого пятна? То есть есть разное освещение линейное или рассеивающее. Тут какое применяется?
зс


определение размеров в зависимости от угла

Здравствуйте! не могли бы вы мне помочь. Заранее спасибо за помощь.
Я имею цилиндр.



сначало он под 90 градусов, затем меняю градус относительно х оси. Как видите он изменил форму.

Мне надо определить расстояние 2 картинке(там знак вопроса стоит).
Причем цилиндр- это простая фигура. А может быть вместо него сложная(конус+ цилидр или ещё как -нибудь). Но у них будет всегда точка А и Б - верхняя и нижняя. И между ними надо расстояние определить. Своего рода это проекции(тем более если освещение выключить то будет черная фигура), то есть надо размеры проекции определить. Не знаю понятно ли я выразился, если что переспросите ,если что-то не понятно сказал.


Конус в 3д максе

Мне надо как то нарисовать патрон
http://img-fotki.yandex.ru/get/17/glock-23.2/0_c876_e515f3de_XL

как видите у них верхняя часть как конус только боковые ребра его не прямые линии, а кривые. То есть надо нарисовать как бы выпуклый конус. Как в 3d максе его так деформировать?


Печать \ сохранение

можно ли как то распечатать содержимое simpleopenglcontrol?

можно ли как то сохранить содержимое simpleopenglcontrol в фаил?


нарисовать сетку

вот тут сетка
http://www.esate.ru/page/risovanie-grafikov-v-C-sharp-OpenGL
хочу подобную сделать.

            // стартуем отрисовку в режиме визуализации точек 
            // объединяемых в линии (GL_LINE_STRIP) 
            Gl.glBegin(Gl.GL_LINE_STRIP);

            // рисуем начальную точку 
           // Gl.glVertex2d(GrapValuesArray[0, 0], GrapValuesArray[0, 1]);

            // проходим по массиву с координатами вычисленных точек 
            for (int ax = 0; ax < 5; ax++)
            {
                for (int ay = 0; ay < 5; ay++){
                // передаем в OpenGL информацию о вершине, участвующей в построении линий 
                    Gl.glVertex2d(ax , ay );
            }

            }

            // завершаем режим рисования 
            Gl.glEnd();


Делаю так, по логике он должен нарисовать квадрат.
glVertex2d рисует же точку? Но почему то получается такое:

что не так делаю?


glutSolidCylinder параметры

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

void glutSolidCylinder   (    GLdouble    radius,
GLdouble    height,
GLint    slices,
GLint    stacks
)    
    
Draw a solid cylinder.

Parameters:
radius    Radius of the cylinder.
height    Z height.
slices    Divisions around z axis.
stacks    Divisions along z axis.

radius это радиус. height высота. 2 других параметра не совсем ясно зачем. Если дословно переводить ,то деление вокруг оси z и деление вдоль оси z.

Нашел в уроке про трансформации
Glut.glutSolidCylinder(1,2,32,32);

1,2 это что в пикселях? Как бы это же не реально. Мне надо как-то понять сколько пикселей высота и радиус у него.

спасибо


Построение осей 3d(xyz) для сферы

читаю http://www.esate.ru/page/initsializatsiya-opengl-v-c-sharp

И немного решил поиграться с
            Gl.glRotated(antX, antY, antZ, 0);


немного не понимаю как она крутиться. Запутался.

Скажите как грамотно модернизировать
// обработчик кнопки "визуализировать" 
private void button1_Click(object sender, EventArgs e)
{
Gl.glClear(Gl.GL_COLOR_BUFFER_BIT | Gl.GL_DEPTH_BUFFER_BIT);

Gl.glLoadIdentity();
Gl.glColor3f(1.0f, 0, 0);

Gl.glPushMatrix();
Gl.glTranslated(0,0,-6);
Gl.glRotated(45, 1, 1, 0);

// рисуем сферу с помощью библиотеки FreeGLUT 
Glut.glutWireSphere(2, 32, 32);

Gl.glPopMatrix();
Gl.glFlush();
AnT.Invalidate();
}


чтобы ещё рисовались оси (xyz).
Спасибо


сделать проекцию фигуры

Предположим у вас на форме есть кнопка. По её нажатию строиться сложная фигура ,н-р чайник.

Есть 2-ая кнопка. По её нажатию надо нарисовать проекцию этой сложной фигуры.
Не подскажите как?



Блоги Esate.ru

Регистрация

Регистрируясь, вы принимаете правила сайта. Если вы не получили код подтв. регистрации - не забудьте проверить папку спам.
Логин*
Email*
Пароль*
Подтверждение пароля*
 
Логин*
Код*
 

Восстановление пароля

Пожалуйста, заполните поля, после чего вы получите код подтверждения на ваш E-mail. Если код не пришел в течении нескольких минут - проверьте папку спам.
Логин

или Email
 
Логин*
Код подтверждения*
Новый пароль*
Подтверждение пароля*
 

Авторизация

Пожалуйста, авторизуйтесь, для входа на сайт с помощью соц. сети:
  • Используйте вашу учетную запись на Facebook.com для входа на сайт.
  • Используйте вашу учетную запись VKontakte для входа на сайт.
  • Используйте вашу учетную запись Google для входа на сайт.

или с помощью аккаунта на сайте:

Логин
Пароль