Моя первая кровь в программировании: история первого проекта | 26 декабря 2012 года, 07:23

Это мой первый-первый проект. Делал я его в 1999 году, сразу после окончания вуза. Система проектирования воздуховодов для компании “Эковент” (Рязань). В силу своей неопытности на то время проект как проект вел я ужасно, но софт до определенной контрольной точки дописал. Требования заказчика к финальному результату со стороны заказчика возросли настолько, что были непоставимы с первоначально выставленной сметой, а денег больше не давали. Это был первый урок для меня)

Технически это была система уровня САПР (простого, но 3D). Нужно было иметь инструмент, в котором можно сконструировать каркас воздуховода, а система должна была показать, какие элементы из каталога Эковента нужны, в каком количестве и выпустить смету. Поскольку путь воздуховода делается в квартире, комнате или на производстве, каркас выходит трехмерный. Вот на одном из скриншотов он представлен в wireframe-варианте, на другом – отрендеренный. И то, и другое крутится по всем трем осям, приближается-удаляется и т.д.

Добавление новых элементов сделано а-ля AutoCAD. Есть текстовые команды, которые будучи введенными чисто с клавиатуры, приводят к созданию нужного элемента в нужном месте. Команды типа «add box (10,10,10) size 10» Если какие-то параметры пропущены, система просит их интерактивно ввести, мышкой указав позицию и т.д. На основе этого были реализованы «черновая» запись и чтение файлов с макетами: при записи генерировалась последовательность команд, записывалась в файл, при чтении эти команды прогонялись на чистом листе.

Для wireframe-варианта была реализована вся необходимая «математика», кроме удаления невидимых линий. В render mode за удаление невидимых линий отвечал DirectX.

Написано было на Delphi 5 + MS DirectX для render mode.

Оставьте комментарий