Disclaimer: статья предназначается студентам специальности «Информационные системы и технологии», за редким исключением в виде отдельных дисциплин. Советы субъективны и не могут трактоваться как некоторые универсальные правила. В статье указаны только основные моменты, на которые следует обратить внимание, без акцента на предметы, оставшиеся без изменения или не требующие описания.
Данная статья призвана помочь студентам второго курса специальности «Информационные системы и технологии» при написании курсовой работы по дисциплине «Машинная графика». В ней учащимся будет предложено создать программный продукт, который бы рассчитывал параметрическую сборку, созданную в САПР КОМПАС-3D, в зависимости от входных данных и перестраивал её согласно результатам вычислений.
Предположим, на руках у вас уже есть техническое задание на команду, а также исходные чертежи всех деталей, и вы готовы приступать к работе. Первым делом выберите координатора проекта. Пусть это будет ответственный человек, желательно, с опытом работы в САПР, с чертежами или механизмами. Внутри команды распределите обязанности и составьте план по решению задач вплоть до зачётной недели. Можно приступать к выполнению курсовой работы.
В первом семестре второго курса была курсовая работа по информатике, целью которой было создание модели любого технического устройства, содержащего в себе управляющие элементы и визуальную индикацию. Это мог быть MP3-плеер, мобильный телефон, монитор, телевизор и.т.п.. В большинстве своём выбирали телефоны. Это определялось тем, что он есть у каждого и по созданию подобного объекта уже существует методическое пособие от преподавателя по BGI графике.
Поскольку BGI не адаптирован под использование в GNU/Linux, единственным достойным аналогом графической библиотеки был Simple Direct Layer (SDL), на нём и остановился. В качестве исполняемого объекта выбрал коммуникатор HTC Wildfire (в основном из-за простоты реализации). Спустя несколько месяцев по одному-двум четырёхчасовым подходам за неделю, и проект готов (за исключением последней бессонной ночи, за которую успел подшаманить детали и оформить всю документацию). Результат можно видеть на изображении.
Дополнено: в скором времени опубликую пост, в котором более подробно опишу этапы выполнения курсовой работы: то, как должна быть организована структура приложения, а также подводные камни, на которые нужно обратить особое внимание.
Финишная прямая, один день остался. Приложение готово, сборка запилена, документация оформлена, ГОСТы выучены, чертежи начерчены. Завтра демонстрация презентации и защита первого в жизни курсового проекта. Удачи мне.
Дополнено: защита переносится на среду следующей недели. Всему виной неверно сделанные чертежи — их полное несоответствие ГОСТам.
Из цикла «Курсовая работа» по маш. графике. Решение задачи по нахождению параметров закрытого червячного вала больше похоже на поиск смерти Кощея: межосевое расстояние на конце иглы, а игла — в яйце, а яйцо — в утке, а утка — в зайце, а заяц — в ларце, а ларец — на дубу, а дуб — в лесу, а лес — на холме, а холм — на горе, а гора — на острове, а остров — один из тысяч в архипеллаге, а архипелаг — в одном из океанов этой планеты. Около восьми часов связывал несвязанные друг с другом данные и выводил для них алгоритмы в отдельный класс. Было сложно, но я справился. Впереди интеграция уже написанных модулей с ещё не созданной сборкой.
В ходе создания курсового проекта по машинной графике необходимо было забирать значения из некоторого файла конфигурации, с помощью которых производились математические расчёты, необходимые для параметризации детали. Чтобы избежать хранение файла в чёрт-пойми-каком виде, было принято решение использовать электронные таблицы. Это даёт явное преимущество в представлении данных, иначе говоря, данные становятся понятными любому человеку, хоть раз сталкивающимся в своей жизни с таблицами, а это, как мне кажется, главное.
К сожалению, в Интернете не было найдено достойных библиотек для работы с XLS таблицами без использования OLE Microsoft Office, OpenOffice.org OLE, COM и WinAPI (разработка ведётся под Linux Gentoo). libXL оказался платным, ExcelFormat отказался компилироваться, а прочие аналоги умели только читать (и)или генерировать XLS, а не производить запись. Поскольку оформление таблицы не является главным критерием при выборе данных, то было решено использовать CSV (Comma Separated Values), то есть текстовый файл с разделителями.
Опять же, в сети ни одного хорошего парсера найдено не было, поэтому, как истинный гентушник и программист, принялся писать сам. Буквально за один вечер набросал код небольшого класса для работы с текстовым файлом, способный производить чтение, запись, получение значения из отдельной ячейки (или диапазона ячеек), поиск и сохранение в файл.
Скачать класс для работы с CSV.
Дополнено: исправил проблему с выборкой элементов за пределами вектора, а также включил в код поиск по всей таблице данных при отсутствующем аргументе диапазона. Дописал комментарии и примеры работы. Теперь любая функция с использованием диапазонов может быть использована под их группы. Таким образом можно легко осуществить произвольную операцию над нелинейной областью ячеек таблицы. Аппроксимирующий поиск позволяет искать наибольшее приближение алгебраического значения в таблице. Умеет игнорировать строки и читать только необходимые числа. Способен выделять из группы диапазонов общий диапазон вхождений в формате строки с разделителями.
С первой публикацией меня! В прошлом семестре, вместе с Андреем, Антоном В. и Антоном П., принимали участие в научной работе по химии. В этом учебном году вышел сборник студенческих научных работ энергетического факультета УлГТУ с названием «Энергетика. Экология. Химия» с двумя статьями по нашей теме: «Накопление меди в снежном покрове парков Ульяновска» и «Накопление свинца в снежном покрове парков Ульяновска в 2010 году».
Любой студент, при наличии свободного рабочего места на кафедре, может устроиться на работу в УлГТУ. Мало кто знает, что нужно делать, куда идти, какие бланки и как заполнять, к кому и с какими просьбами обращаться, тем более, если это первое официальное место вашей работы, а не случайный заработок или подработка. Думаю, эта заметка пригодится тем, кто не знает, но хотел бы узнать кое-что о работе в университете, а также как и в какой последовательности нужно действовать, чтобы съэкономить время и силы.