Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2017, 12:07   #1
KAMLS
Форумчанин
 
Регистрация: 09.04.2017
Сообщений: 598
По умолчанию Графика в VS 2015

Здравствуйте!
Не прошу никого делать за меня мою работу. Прошу помощи.
Дано задание к сессии:
Изобразить на экране N кривых-эвольвент, образованных точкой, лежащей на прямой, обкатывающейся по окружности без скольжения. Каждая эвольвента строится при обкатывании по дуге в 2/N угловых градусов.
Какие файлы надо подключать (include), какой тип приложения оформлять и т.п.
Опыта нет в этом вопросе никакого. Я вообще только более-менее основы С++ изучил. Именно основы. С визуалом знаком только по консольным приложениям.
Подскажите пожалуйста где копать и как. Копать я буду сам))
KAMLS вне форума Ответить с цитированием
Старый 16.12.2017, 12:29   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Сообщение от KAMLS Посмотреть сообщение
Какие файлы надо подключать (include), какой тип приложения оформлять и т.п.
Лучше спросить у того, кто задал.

Несмотря на слово "Visual", в VS нет какого-то "стандартного" фреймворка для GUI на С++.

Есть .NET WinForms, но для него намного проще взять C#, а C++/CLI (отдельный язык для .NET) полезен только в некоторых специфических случаях типа связывания кода/библиотеки на чистом C++ с кодом на .NET.

Есть MFC, но это просто тонкая обертка над WinApi и они вроде даже сами уже пишут в MSDN, что не стоит брать его для разработки приложений с 0.

В основном люди подключают сторонние библиотеки типа Qt, GTK, wxWidgets.
Qt наверно проще всего, там хорошая документация, куча примеров, большое сообщество. (там есть своя IDE Qt Creator, но можно и в VS, у них есть плагин для интеграции в VS)
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 16.12.2017 в 12:33.
Alex11223 вне форума Ответить с цитированием
Старый 16.12.2017, 13:27   #3
KAMLS
Форумчанин
 
Регистрация: 09.04.2017
Сообщений: 598
По умолчанию

Борланд С++ может решить эту задачу? Или тоже надо подключать QT?
KAMLS вне форума Ответить с цитированием
Старый 16.12.2017, 13:41   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

В Билдере есть свой фреймворк, VCL.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 16.12.2017, 14:12   #5
KAMLS
Форумчанин
 
Регистрация: 09.04.2017
Сообщений: 598
По умолчанию

Взял пример якобы рабочего решения этой задачи в сети. Для Билдера. Внёс его в Билдер и отладить попытался.
Код:
#include <math.h>
#include <conio.h>
#include <graphics.h>
 
int main() {
 
int gdriver = DETECT, gmode;
initgraph (&gdriver, &gmode, "C:\\BORLANDC\\BGI");
 
setbkcolor (7);
setcolor (4);
 
int n=6, iRadius = 30, midX, midY;
const double mathPi = 3.1415;
double dUgol;
 
midX = getmaxx() / 2;
midY = getmaxy() / 2;
 
circle (midX,midY,iRadius);
 
for (int i = 1; i<=n; i++)  {
 
      for (double j=0; j <=2*mathPi; j+=0.001) {
 
        dUgol = j + 2*mathPi/i;
 
        int x =  midX + (iRadius * (cos(dUgol) + j*sin(dUgol)));
        int y =  midY - (iRadius * (sin(dUgol) - j*cos(dUgol)));
 
        setcolor (2);
 
        moveto (x,y);
        lineto(x,y);
 
       }
 
}
 
getch();
 
closegraph();
 
return 0;
 
}
Выдаёт ошибку что
[C++ Error] Unit1.cpp(3): E2209 Unable to open include file 'graphics.h'
В английском пока не силен, но понял что нет файла для включения в проект.
Получается что что-то не так с VCL?
KAMLS вне форума Ответить с цитированием
Старый 16.12.2017, 14:16   #6
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Это для ДОСовских типа Borland C++ 3.1, a не для Билдера (ну, по крайней мере не VCL, насчет наличия поддержки graphics.h там не помню, может и есть в старых).
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 16.12.2017, 14:33   #7
KAMLS
Форумчанин
 
Регистрация: 09.04.2017
Сообщений: 598
По умолчанию

Знакомлюсь с Билдером, и при запросе в сеть насчет графики, всё время наталкиваюсь на графику именно интерфейса. А мне нужна векторная графика.
Ясное дело в основах программирования на С++ нет данных об использовании VCL в Билдере. Какой класс подключать. Какие объекты этого класса что делают и т.п. Пока ничего внятного в сети не нашел.
Можете подсказать источник где это описано толково?
KAMLS вне форума Ответить с цитированием
Старый 16.12.2017, 14:45   #8
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
Ясное дело в основах программирования на С++ нет данных об использовании VCL в Билдере.
1. Создаёте в билдере обычную форму (вроде в меню это так и называется VCL Application или Form Application)
2. Рисуете на форме всё, что угодно, через Canvas
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 17.12.2017, 07:48   #9
KAMLS
Форумчанин
 
Регистрация: 09.04.2017
Сообщений: 598
По умолчанию

Здравствуйте!
Посоветуйте пожалуйста.
Для использования графики (векторной или растровой) что лучше, подшить к VS 2015 QT?
Или решиться изучить полностью билдер, в котором эти возможности (возможности которые даёт QT) уже есть?
Основы С++ я как бы понимаю.
KAMLS вне форума Ответить с цитированием
Старый 17.12.2017, 10:53   #10
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

А Qt не надо изучать что ли? И зачем полностью?

Есть еще библиотеки только для графики типа Cairo, SFML.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проект в VS 2015 vulel Visual C++ 1 04.03.2016 18:13
Юмор 2015 Человек_Борща Свободное общение 606 26.01.2016 18:30
Скоро 2015-й год Smitt&Wesson О форуме и сайтах клуба 18 01.01.2015 16:59