Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Жарков В.А. - Visual C++ 2005, DirectX 9.0c и Microsoft Agent в компьютерной графике, мультимедиа и играх (Листинги книги) - 2005

.pdf
Скачиваний:
306
Добавлен:
13.08.2013
Размер:
1.14 Mб
Скачать

320 Жарков В.А. Компьютерная графика, мультимедиа и игры на Visual C++ 2005

d_m=d-s;

//По упрощенной формуле (для экономии места) //рассчитываем силу вытяжки Fdraw в N и //делим на 1000, чтобы было в kN:

Fdraw = pi*d_m*s*sig_u*k_draw/1000; return Fdraw;

}

Листинг 82.3. Метод для кнопки “=” с целью расчета третьей операции.

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)

{

//Расчет и передача в окна формы Form7 //параметров полуфабриката (Semiproduct): textBox1->Text = d.ToString(); textBox2->Text = Semiproduct().ToString(); textBox3->Text = Rn.ToString(); textBox4->Text = s.ToString(); textBox5->Text = Allowance().ToString(); textBox6->Text = H.ToString(); textBox7->Text = ForceDraw().ToString();

}

Листинг 82.4. Код для выполнения анимации.

bool static myHeight = false;//Объявляем булеву переменную. private: System::Void timer1_Tick(System::Object^ sender, System::EventArgs^ e)

{

if (myHeight == false)

{

//Изменяем высоту элемента управления до 70: button1->Height = 70;

//Изменяем значение myHeight на противоположное: myHeight = true;

}

else

{

//Изменяем высоту элемента управления до 50: button1->Height = 50;

//Изменяем значение myHeight на противоположное: myHeight = false;

}

}

Глава 83. Проектирование финишных операций изготовления изделий

Листинг 83.1. Метод для передачи исходных данных с Form7 в Form9.

private: System::Void button3_Click(System::Object^ sender, System::EventArgs^ e)

{

//Объявляем объект myForm9 в классе Form9: Form9^ myForm9 = gcnew Form9();

//Присваиваем исходные данные другим переменным //класса формы Form9, но с такими же именами переменных: myForm9->d = d;

myForm9->H = H; myForm9->Rn = Rn; myForm9->s = s; myForm9->Radio = Radio; myForm9->s_sheet = s_sheet; myForm9->C = C;

myForm9->L = L; myForm9->rho = rho; myForm9->nu = nu; myForm9->El = El; myForm9->sig_ys = sig_ys; myForm9->sig_u = sig_u; myForm9->e_u = e_u; myForm9->e_tot = e_tot;

myForm9->Show();//Выводим форму Form9.

}

Листинг 83.2. Метод для кнопки “=” с целью расчета четвертой операции.

private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e)

{

//Расчет и вывод параметров детали и техпроцесса: textBox1->Text = d.ToString();

textBox2->Text = H.ToString(); textBox3->Text = Rn.ToString(); textBox4->Text = s.ToString(); textBox5->Text = Area().ToString(); textBox6->Text = Volume().ToString(); m = mass();

textBox7->Text = m.ToString();

322 Жарков В.А. Компьютерная графика, мультимедиа и игры на Visual C++ 2005

Cutting();

//Число заготовок (деталей) из листа: textBox8->Text = Nbl.ToString(); //Норма расхода материала на 1 деталь:

textBox9->Text = (s_sheet*C*L*rho*1.0e-9/Nbl).ToString(); //Коэффициент использования материала:

textBox10->Text = (m/(s_sheet*C*L*rho* 1.0e-9/Nbl)).ToString();

}

Листинг 83.3. Код для выполнения анимации.

bool static myWidth = false;//Объявляем булеву переменную.

private: System::Void timer1_Tick(System::Object^ sender, System::EventArgs^ e)

{

if (myWidth == false)

{

//Изменяем ширину элемента управления до 150: button1->Width = 150;

//Изменяем значение myWidth на противоположное: myWidth = true;

}

else

{

//Изменяем ширину элемента управления до 100: button1->Width = 100;

//Изменяем значение myWidth на противоположное: myWidth = false;

}

}

Часть XVI. Передача приложения заказчику

Глава 84. Методика передачи приложения пользователю

Чтобы передать пользователю (а пользователями можем быть и мы, разработчики приложения) или заказчику разработанное нами любое приложение на базе плат-

формы Microsoft Visual Studio (на четырех основных комплексах: Visual Basic, Visual C#, Visual C++, Visual J#), необходимо выполнить следующие этапы:

создание проекта для установки приложения; добавление (в проект установки приложения) проекта разработанного нами ранее

приложения;

ввод ярлыка в меню Start (Пуск); построение решения из двух проектов;

запуск приложения на компьютере пользователя.

Последовательно рассмотрим эти этапы.

Для создания проекта установки:

1.На стартовой странице Visual Studio щелкаем кнопку или значок New Project (или в меню выбираем File, New, Project).

2.В панели New Project:

вокне Project Types выделяем тип проекта Setup and Deployment Projects; в окне Templates выделяем шаблон Setup Project;

вокне Name оставляем заданное по умолчанию имя проекта Setup1 (рис. 84.1) и щелкаем OK.

Вответ Visual Studio создает решение (Solution), состоящее пока из одного проекта установки приложения, и выводит следующий интерфейс этого проекта установки в виде панели File System (рис. 84.2).

Влевой части этой панели File System показана файловая система компьютера, на который будет установлено приложение, а справа – содержимое выбранной папки из левой части. Пока в этих папках ничего нет, и нам необходимо их заполнить. И то, что мы сейчас видим в правом окне на рис. 84.2, будет добавлено позднее.

Заключение

На этом мы закончили данную книгу и описание нашей методологии разработки компьютерной графики, мультимедиа и игр на базе самого современного, совершенного и мощного языка программирования высокого уровня Visual C++ 2005 из новейшей версии платформы Microsoft Visual Studio 2005. Эта методология может быть использована при разработке разнообразных приложений не только на базе Visual Studio 2005, но и на базе предыдущих версий Visual Studio .NET 2002, Visual Studio

.NET 2003 и Visual Studio 2004.

В начальных главах мы разработали методологию создания личных или корпоративных вычислительных систем для проведения теоретических и экспериментальных исследований и получения расчетных и экспериментальных данных. В этих системах расчеты, а также проектирование мультимедиа в виде анимации и мультипликации изображений осуществлены на базе основных типов приложений Visual C++, таких как Windows Application (приложение на основе диалоговых форм), Console Application (приложение на основе консольных панелей) и др. В последующих главах мы разработали методологию создания графических систем для визуализация полученных расчетных и экспериментальных данных при помощи разнообразных двухмерных и трехмерных графиков, геометрических поверхностей и трехмерных тел.

Впервые в мире мы привели полные тексты мощных программ для построения и управления разнообразными трехмерными телами, поверхностями и линиями уровней этих поверхностей в трехмерном пространстве на трех различных языках: Visual C++ 2005 с новейшим синтаксисом, Visual Basic 2005 и Visual C# 2005.

Главное достоинство данной методологии заключается в том, что для создания двухмерных и трехмерных графических систем при решении широкого круга задач нам не нужно использовать дополнительные и сложные в применении библиотеки типа DirectX и OpenGL, а нужна только одна открытая и мощная среда разработки

Visual Studio последних версий 2002 - 2005 годов.

Тем не менее, мы подробно описали методологию создания очень сложных анимационных двухмерных и трехмерных графических систем для решения крупных задач в проектах Visual C++ при помощи очень мощной библиотеки (точнее, целой технологии) новейшей версии DirectX 9.0с.

Методику создания мультимедийных приложений и игр в проектах Visual C++ мы разработали на основе известной программной технологии Microsoft Agent. Эта технология позволяет включать в Windows-приложения и веб-страницы интерактивные (основанные на диалоге, в том числе и через голосовые команды в микрофон) анимационные персонажи. Персонажи могут и сами говорить (не только на английском, но и на русском языке), и выполнять наши речевые команды (правда, пока только на английском языке) при помощи уникальных программ синтеза и распознавания речи.

Глава 84. Методика передачи приложения пользователю

325

Описание содержимого компакт-диска и схема использования

На прилагаемом к книге компакт-диске приведены все листинги из этой книги в виде файла формата (.doc) для текстового редактора Microsoft Word любой версии, например, 2003.

Эти листинги можно вставлять в любую программу, например, по такой схеме.

1.В Visual Studio мы строим проект на языке Visual C++ (с новым синтаксисом), Visual Basic или Visual C# версии 2002, 2003, 2004 или 2005 года по методике, опи-

санной в главе книги.

2.В этом проекте получаем (по описанной в главе книги схеме) шаблон метода (если это возможно), например, при помощи двойного щелчка по имени события в панели Properties на вкладке Events для формы Form1, элемента управления или компонента.

3.В текстовом редакторе Word открываем с компакт-диска файл формата (.doc) с листингами книги, щелкаем по гиперссылке с номером данной главы в оглавлении файла, находим и выделяем мышью код, который мы хотим вставить в шаблон метода, и копируем в буфер обмена (Clipboard) при помощи стандартного приема: правый щелчок по выделенному коду, Копировать (Copy). Естественно, сам шаблон копировать не нужно.

4.Открываем файл, например, Form1.h нашего проекта Visual C++ и в шаблон метода вставляем (правый щелчок, Вставить – Paste) код из буфера обмена.

5.Если шаблон метода невозможно получить, то с компакт-диска аналогично копируем весь метод (методы) и вставляем в проект Visual C++.

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

7.Мы не приводим проекты Visual Studio 2005, т.к. их невозможно открыть на предыдущих версиях Visual Studio 2002, 2003 и 2004 годов.

Программы с этих листингов могут быть использованы при разработке разнообразных приложений не только на основе Visual Studio 2005, но и на основе предыду-

щих версий Visual Studio .NET 2002, Visual Studio .NET 2003 и Visual Studio 2004. В

тоже время отметим, что программы с этих листингов на языке Visual C++ 2005 с новым синтаксисом могут быть использованы при разработке приложений на основе предыдущих версий Visual Studio .NET 2002, Visual Studio .NET 2003 и Visual Studio 2004 после небольшого редактирования по рекомендациям из первой главы.

Список литературы

1.Жарков В.А. Visual C# .NET в науке и технике. – М .: Жарков Пресс, 2002. 2.Жарков В.А. Самоучитель Жаркова по Visual Studio .NET: Visual Basic .NET,

Visual C# .NET, Visual C++ .NET, Visual J# .NET. – М .: Жарков Пресс, 2002. 3.Жарков В.А. Самоучитель Жаркова по Visual Basic .NET. – М .: Жарков Пресс,

2002.

4.Жарков В.А. Самоучитель Жаркова по анимации и мультипликации в Visual Basic .NET 2003. – М .: Жарков Пресс, 2003.

5.Жарков В.А. Самоучитель Жаркова по анимации и мультипликации в Visual C#

.NET 2003. – М .: Жарков Пресс, 2003.

6.Жарков В.А. Самоучитель Жаркова по анимации и мультипликации в Visual C++.NET 2003. – М .: Жарков Пресс, 2003.

7.Жарков В.А. Самоучитель Жаркова по интеграции Visual Basic .NET 2003 с другими платформами. – М .: Жарков Пресс, 2003.

8.Жарков В.А. Компьютерная графика, мультимедиа и игры на Visual Basic. – М.: Жарков Пресс, 2004.

9.Жарков В.А. Компьютерная графика, мультимедиа и игры на Visual C# 2005. – М.: Жарков Пресс, 2005. – 812 страниц с компакт-диском.

10.Жарков В.А. Visual C++ на практике. – М.: Лаборатория Базовых Знаний, 2002.

11.Zharkov V.A. Theory and Practice of Deep Drawing. – London, Mechanical Engineering Publications Limited, 1995.

Соседние файлы в предмете Программирование на C++