Форум программистов, компьютерный форум, киберфорум
C/C++: WinAPI
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.94/47: Рейтинг темы: голосов - 47, средняя оценка - 4.94
2 / 2 / 1
Регистрация: 25.10.2017
Сообщений: 43

Построение сферы

10.11.2017, 11:17. Показов 9973. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, помогите пожалуйста с построением каркасного изображения сферы в Win32 C++.
Пытаюсь сделать следующим образом:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
void formul(HWND hWnd)
{
    HDC hdc;
    hdc = GetDC(hWnd);
    HPEN hPen, hPenOld;
    hPen = CreatePen(PS_SOLID, 1, RGB(255, 255, 255));
    hPenOld = CreatePen(PS_SOLID, 2, RGB(0, 0, 0));
    int R = 200;
    int xc = 600, yc = 300;
    int d = 2*R;
    for (int B = -90; B <= 90; B += 30)
        for (int L = 0; L<360; L += 30)
        {
            double x = R*cos(B)*sin(L);
            double y = R*cos(B)*cos(L);
            double z = R*sin(B);
            int k = 0, f = 0;
 
                        //Вот тут по идее идёт преобразование 3D в 2D...
            double a = 60, b = 0;
            double X = x*cos(a) - y*sin(a);
            double Y = x*sin(a)*cos(b) + y*cos(a)*cos(b) - z*sin(b);
            double Z = x*sin(a)*sin(b) + y*cos(a)*sin(b) + z*cos(b);
 
            SelectObject(hdc, hPenOld);
И вот на этом моменте у меня проблемы... Не понимаю как из линий и всего этого построить меридиан.
Получаются всякие сетки и тд... В общем что то странное. Очень хотелось бы разобраться с этим
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.11.2017, 11:17
Ответы с готовыми решениями:

Обтекание сферы идеальной жидкостью
Подскажите, как лучше решить проблему. Дано задание реализовать процесс обтекания сферы идеальной жидкостью. Результатом должен быть...

Как деформировать сетку элипсоида и сферы?
Как деформировать сетку элипсоида и сферы? сфера: http://www.100byte.ru/stdntswrks/cshrp/sphTK/sphTK.html элипсоид: ...

Построение сферы по параметрическим формулам
Программирую на C++, OpenGL, нужна помощь в деформации сферы, то есть она должна получиться как на рисунке 5.22. Никак не могу разобраться,...

25
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,538
Записей в блоге: 1
11.11.2017, 22:13
Студворк — интернет-сервис помощи студентам
и куда это вставлять? Полную программу выкладывай!
1
2 / 2 / 1
Регистрация: 25.10.2017
Сообщений: 43
11.11.2017, 22:22  [ТС]
ну вот cpp файл этого проекта...
в строке 130 описана приведённая выше функция.
Вложения
Тип файла: rar cpp.rar (2.6 Кб, 6 просмотров)
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,538
Записей в блоге: 1
11.11.2017, 23:06
то есть ты каким-то лядом рисуешь из меню, если я правильно прочитал твой код. Ну, неверно! Чё тут скажешь...
Рисовать надо в WM_PAINT

Добавлено через 2 минуты
О чём вообще эта тема? Ответ правильный дан 10 постов назад.
Плюс, автору сказали, чтоб пользовал WM_PAINT, где результаты-то?
1
2 / 2 / 1
Регистрация: 25.10.2017
Сообщений: 43
11.11.2017, 23:09  [ТС]
Так а есть разница через что рисовать? Как научили в общем) у меня в файле ведь несколько заданий, удобнее как по мне было бы если б они выводились через меню... по желанию пользователя. Но дело ведь не в этом...

Добавлено через 49 секунд
Ладно, вопрос закрыт... Всем спасибо за подсказки
0
 Аватар для Kuzia domovenok
4268 / 3327 / 926
Регистрация: 25.03.2012
Сообщений: 12,538
Записей в блоге: 1
12.11.2017, 00:13
Цитата Сообщение от Ustura Посмотреть сообщение
Так а есть разница через что рисовать?
а ты пробовал изменять размеры окна, чтобы он временно закрывал рисунок? А перемещать окно за пределы экрана и обратно пробовал?
Без обработки WM_PAINT никуда! Рисунок затирается.
1
2 / 2 / 1
Регистрация: 25.10.2017
Сообщений: 43
12.11.2017, 00:27  [ТС]
Спасибо, на будущее пригодится...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.11.2017, 00:27
Помогаю со студенческими работами здесь

Построение контура тени сферы
Нужно построить контур тени сферы, т.е нарисовать источник света(точку нанодящуюся не над центром сферы) сферу и овал на плоскости(контур...

Построение сферы без GLUT (и других расширений)
Использую такой код: i:=0; j:=-90; glEnable(GL_POINT_SMOOTH); glBegin(GL_POINTS); GLColor(Color.R,Color.G,Color.B); repeat...

Найти высоту h, соответствующую положению равновесия шарика относительно сферы, и реакцию сферы N
Вот задача -- сфера радиусом R = 2 м равномерно вращается вокруг оси симметрии с частотой (n) 30 мин-1. Внутри сферы находится шарик массой...

Движение сферы
саму сферы я создала на OpenGl, нашла инфу, как двигатся вокруг себя (т е вокруг своей оси) а вот как заставить ее двигаться ...

Нарисовать 1/8 сферы
Добрый день, необходимо нарисовать 1/8 сферы, как это можно реализовать?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений. . . .
21 мат мед. Планы на развитие модели здравоСохранения
anaschu 01.06.2026
AnyLogic: план развития симуляционной модели рабочего коллектива — динамический абсентеизм, реальные данные, три сценария сравнения Продолжаю серию постов о дискретно-событийной модели рабочего. . .
20. Мат мед. Абсентеизм как отдельный тип простоя
anaschu 29.05.2026
Апдейт модели: исправленные баги, абсентеизм и новые механизмы Продолжаю развивать ранее описанную модель рабочего коллектива на AnyLogic. За последние несколько дней был проведён серьёзный. . .
19. здоровье, усталость и психотип работника влияют на производительность предприятия, и наоборот, производительность на здоровье, усталось и психотип
anaschu 28.05.2026
Дискретно-событийная модель рабочего коллектива на AnyLogic: здоровье, выгорание, психотипы и микростимуляция Привет, коллеги. Хочу поделиться итогами нескольких недель работы над симуляционной. . .
"Прокси" для последовательного порта
Eddy_Em 28.05.2026
Эту штуку написал я достаточно давно. Но сейчас вот понадобилось настроить датчик грозы, но при этом не отключать его от "метеодемона". Соответственно, надо запустить этот "прокси": метеодемон будет. . .
Рефакторинг программы уравнивания.
Massaraksh7 26.05.2026
Пример по предыдущей записи в блоге. Но, надо заметить, что, во-первых, там оптимизация не только математики, но и работы с базой данных, и с графами, а во-вторых, это ещё не всё.
Использование TThread в Lazarus для математических вычислений.
Massaraksh7 25.05.2026
Производя рефакторинг своих программ на предмет ускорения их работы, обратил внимание на такой аспект, как сокращение времени матвычислений. Дело в том, что приходится работать с большими матрицами. . .
Модель здравосохранения 18. Чем здоровее работник, тем быстрее выгорает
anaschu 24.05.2026
Имитационная модель корпоративного здравоохранения: что показывает математика Сегодня в модели рабочего коллектива на AnyLogic появились три новые механики — выгорание через накопленную усталость,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru