Моделирование траектории движения брошенного тела

Слайд 2

ЦЕЛИ И ЗАДАЧИ Цель – создание корректно работающего приложения. Задачи: •

ЦЕЛИ И ЗАДАЧИ

Цель – создание корректно работающего приложения.
Задачи:
• Создать

пользовательский интерфейс
• Обеспечить корректное отображение элементов интерфейса в приложении.
• Связать пользовательские элементы приложения с функциями, которые они реализуют.
• Реализовать ввод данных с клавиатуры, а также считывание их с файла.
• Реализовать верные расчеты по введенным пользователем данным.
• Создать анимационную траекторию, используя вычисленные значения.
• Масштабировать анимацию (при слишком больших значениях и при слишком маленьких) для лучшей визуализации.
• Реализовать сохранение результатов вычисления.
• Создать дочернее окно, для реализации ознакомления с теорией в приложении, а также обеспечить переход на веб страницу, при выборе этой опции пользователем.
Слайд 3

ЯЗЫК РЕАЛИЗАЦИИ, СРЕДА РАЗРАБОТКИ, БИБЛИОТЕКИ, ИСПОЛЬЗУЕМЫЕ ПРИ СОЗДАНИИ ПРОЕКТА Подключенные к

ЯЗЫК РЕАЛИЗАЦИИ, СРЕДА РАЗРАБОТКИ, БИБЛИОТЕКИ, ИСПОЛЬЗУЕМЫЕ ПРИ СОЗДАНИИ ПРОЕКТА

Подключенные к проекту

библиотеки:
rom tkinter import * - для создания оконного приложения
import webbrowser – для перехода на веб страницу по ссылке
import urllib.request – для создания url – ссылки на сайт
import math – для математических расчетов
import time – для подключения времени задержки отрисовки изображения (анимация)
from tkinter import filedialog as fd - для реализации выбора файла с компьютера from tkinter.scrolledtext import ScrolledText – для создания многострочного текстового поля с скроллом
from tkinter import messagebox as mb – для создания меню

Язык программирования - Python
Интегрированная среда разработки PyCharm
кросс–платформенную графическая библиотека Tkinter

Слайд 4

СОЗДАНИЕ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА СОЗДАНИЕ КЛАССА INTERFASE() И РАЗМЕЩЕНИЕ В НЕМ НЕОБХОДИМЫХ ВИДЖЕТОВ Label Button MenuButton Entry

СОЗДАНИЕ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА

СОЗДАНИЕ КЛАССА INTERFASE() И РАЗМЕЩЕНИЕ В НЕМ НЕОБХОДИМЫХ ВИДЖЕТОВ
Label
Button
MenuButton
Entry

Слайд 5

ДОБАВЛЕНИЕ ФУНКЦИЙ, ОБРАБАТЫВАЮЩИХ СОБЫТИЯ def openDialog(self): # функция вызова дочернего окна

ДОБАВЛЕНИЕ ФУНКЦИЙ, ОБРАБАТЫВАЮЩИХ СОБЫТИЯ

def openDialog(self): # функция вызова дочернего окна с

теоретической информацией
def url_open(self, url): # функция перехода на веб страницу по ссылке
def openGraphica(self): # функция создания дочернего окна с графикой
def press(self): # функция выбора типа броска (поля ввода неактивны)
def calc(self): # функция вычисления параметров
def clear_text(self): # функция сброса значений в полях ввода
def clickStart(self): # функция прорисовки (анимации) траектории полета тела
def file_save(self): # функция сохранения результатов вычисления в файл
def read_text(self): # функция считывания входных данных из файла
Слайд 6

СОЗДАНИЕ ДОЧЕРНИХ ОКОН ДЛЯ ГРАФИЧЕСКОЙ ВИЗУАЛИЗАЦИИ И ВЫЗОВА ТЕОРЕТИЧЕСКОГО МАТЕРИАЛА НА

СОЗДАНИЕ ДОЧЕРНИХ ОКОН ДЛЯ ГРАФИЧЕСКОЙ ВИЗУАЛИЗАЦИИ И ВЫЗОВА ТЕОРЕТИЧЕСКОГО МАТЕРИАЛА НА

ЭКРАН ПРИЛОЖЕНИЯ

class Theory: # класс для ознакомления с теорий

def create_canv(self): # функция создания дочернего окна для графического изображения

Слайд 7

В ИТОГЕ ПРИЛОЖЕНИЕ СОВЕРШАЕТ РАСЧЕТЫ, ВИЗУАЛИЗИРУЕТ ТРАЕКТОРИЮ ПОЛЕТА, СОХРАНЯЕТ РЕЗУЛЬТАТЫ В

В ИТОГЕ ПРИЛОЖЕНИЕ СОВЕРШАЕТ РАСЧЕТЫ, ВИЗУАЛИЗИРУЕТ ТРАЕКТОРИЮ ПОЛЕТА, СОХРАНЯЕТ РЕЗУЛЬТАТЫ В

ФАЙЛ И СЧИТЫВАЕТ ДАННЫЕ С ФАЙЛА И С КЛАВИАТУРЫ
Слайд 8