Архив автора: sv

Пошаговый чертеж в AutoCAD

Содержание задания Подготовка чертежа-шаблона Последовательность формирования чертежа двутавра Особенности построения кривых и ломаных Содержание задания Для того чтобы эффективно использовать AutoCAD API, вы должны быть знакомы с примитивами, объектами и особенностями AutoCAD, связанными с задачами, которые вы хотите автоматизировать. Чем больше у вас знаний по графическим и неграфическим свойствам объектов, тем легче для вас будет… Читать далее »

VLisp параметрический чертеж

Содержание задания Формирование пакетного файла Преобразование пакетного файла в VLISP приложение VLISP приложение для параметрического чертежа Создание пользовательской команды Создание панели инструментов с кнопкой пользователя Обеспечение ввода параметров через диалоговое окно Содержание задания Для одного из вариантов  разработать  программное приложение построения прокладки по заданным параметрам и обеспечить при этом соответствующий интерфейс (кнопка пиктограммы, диалоговое окно).… Читать далее »

VLISP 3D модель

Постановка задачи Создание чертежа-прототипа Анализ задания Пример выполнения Постановка задачи Создать программу на языке VLISP формирования в AutoCAD пространственной модели и чертежа Варианты заданий:   Создание чертежа-прототипа Выберите в качестве чертежа-прототипа acadiso.dwt и начертите 3-и отрезка (команда LINE) – ось X (красным цветом), ось Y (зеленым) и ось Z (синим). Начало отрезков из точки (0,0,0),… Читать далее »

Доступ к dxf на VLisp

Введение Формат DXF-файла Считывание данных из DXF-файла Запись данных в DXF-файл Введение Данные о чертеже обычно сохраняются в файле с расширением .dwg. Также можно сохранить чертеж в файле с расширением .dxf. Формат DXF по своей структуре похож на формат DWG, но более простой для понимания, поскольку основан на тексте ASCII. Формат DXF был создан как… Читать далее »

Алгоритмы распознавания фигур

Моделирование задачи распознавания прямоугольников Распознавание фигур на основе «выборки для обучения» Распознавание фигур «через самообучение» Сортировка плоских деталей Алгоритм задачи “Разбор завала” Программные реализации: Формирование контуров Распознавание прямоугольников (по признаку равенства сторон и диагоналей) Распознавание прямоугольников (по признаку прямого угла) Моделирование задачи распознавания прямоугольников Постановка задачи определяется целью и возможностями ее реализации. Цель. Разработать программу… Читать далее »

Формат и чтение BMP

Формат монохромного BMP файла VLISP программа считывания данных из BMP-файла (монохромного) Формат BMP (24-bit Bitmap) Загрузка и чтение BMP (24-bit Bitmap) на VB.NET C++ программа считывания данных из BMP (24-bit Bitmap) Формат Bmp (256-цветной) Формат монохромного BMP файла Создайте в графическом редакторе PAINT растровое изображение размером 50*35 пикселов. Выберите максимальный масштаб изображения и включите сетку.… Читать далее »

ООП на VB примерах

Введение Первая программа на Visual Basic Приложение со стандартными диалоговыми окнами Приложение «Графический редактор» Приложение с классом разработчика Пример приложения с коллекцией объектов Введение Основная задача этой темы – научиться читать VB программы. Что под этим подразумевается? Знать точку входа в программу, последовательность ее выполнения, уметь читать программу, соблюдая терминологию программиста. Терминов в VB не… Читать далее »

Доступ к файлам на VB

Введение Обработка нетипизированных файлов Обработка текстовых файлов Обработка типизированных файлов Хранение картотеки в типизированном файле Хранение картотеки в нетипизированном файле Введение С точки зрения возможностей Visual Basic по их обработке файлы бывают трех типов: Нетипизированные представляются в виде потока байтов, не объединенных ни в какие логические структуры. Любой файл можно рассматривать как нетипизированный. К достоинствам… Читать далее »

Язык Си в примерах

Создание консольного приложения Структура Си программы Препроцессорная обработка Преобразование типа переменных Программы из 2-х  и более функций Операции Массивы Указатели на переменные Указатели, как параметры функции Указатели на другие указатели Связь между массивами и указателями Указатели на функции Динамическое управление памятью Структура Примеры деклараций Тестовые примеры Создание консольного приложения Ниже в разделах приводятся исходники программ,… Читать далее »

ООП на С++ примерах

Введение в классы Перегружаемые функции и операторы Встраиваемые функции Конструкторы и деструкторы Обмен данными между объектами и приложением Указатели и ссылки на объекты Наследование в языке С++ Виртуальные функции Динамическое управление памятью Тестовые примеры Введение в классы Класс– это механизм для создания новых типов. Синтаксис описания класса похож на синтаксис описания структуры. В отличие от… Читать далее »

ООП на MFС примерах

Создание MFC приложения Простейшие оконные приложения: 1. Пустое окно 2. Обработка события в окне 3. Рисунок в окне 4. Вставка элементов управления в окно 5. Создание производного класса 6. Вставка панели состояния от события создания окна  Файловая структуризация приложений Обмен данными между объектами Контрольные задания Пример выполнения контрольной работы Библиотека (MicrosoftFoundationClasses – MFC) предоставляет программистам удобные… Читать далее »

ООП на Java примерах

Создание проекта Java Простейшее оконное приложение Оконное приложение с обработкой событий Создание картинки в окне Анимация изображения Игровое приложение ”Snake” Сетевые приложения: Приложение “Date Server and Client” с одним клиентом Приложение “Capitalization Server and Client” с несколькими клиентами Игра для двух игроков “Крестики-нолики” Полезные ссылки Создание проекта Java У Вас уже должны быть установлены среда разработки приложений NetBeans  и… Читать далее »

2D графика на основе WinApi C++

Шаблон WinAPI приложения Рисуем треугольник в оконной СК Логическая система координат Поворот плоскости Анимация изображения Аффинные преобразования треугольника Контрольные задания Исходные файлы проекта приложения Шаблон WinAPI приложения Для начала нам потребуется шаблон , на основе которого можно будет создавать дальнейшие приложения. Создайте в Visual Studio пустой проект (File → New → Project… → Visual C++… Читать далее »

3D графика на основе WinApi C++

Знакомство с возможностями и структурой приложения Контрольные задания Исходные файлы проекта приложения Знакомство с возможностями и структурой приложения Приложение, демонстрирующее аффинное преобразование треугольника в плоскости, было модифицировано в приложение, демонстрирующее аффинное преобразование пространства. Здесь, вместо плоской фигуры (треугольника)  создается и подвергается преобразованиям пространственный объект (рупорная антенна). Для создания проекта используйте исходные файлы проекта приложения. При… Читать далее »

3D графика на основе OpenGL WinApi C++

Описание шаблона приложения Поверхностная модель. Списки. Стек матриц. OpenGL – машина состояний Преобразование объекта Построение вида Перспективная и ортогональная проекции. Отсечение Анимация Режимы модели и проекции Контрольные вопросы Файлы-исходники приложения Описание шаблона приложения Изложение теории будет идти параллельно с практической реализацией на основе шаблона приложения для создания модели рупорной антенны. Создайте проект WinAPI приложения на… Читать далее »

Имитация полета крылатой ракеты на OpenGL WinApi C++

Постановка задачи Моделирование ландшафта Моделирование траектории движения объектов Моделирование сцены Архитектура программы Файлы-исходники приложения Постановка задачи С развитием информационных технологий все более актуальной становится проблематика разработки программных систем с графическим отображением происходящих процессов.  Целью статьи является отображение процесса разработки программной системы,  имитирующей полет крылатой ракеты. Для управления полетом крылатой ракеты используются цифровые картины (карты) предварительно… Читать далее »

Алгоритм 3D-реконструкции под Android device

Введение Формализация задачи Уравнения взаимосвязи между точками изображений Алгоритм и тестовые примеры Выводы Программные реализации Полезные ссылки Введение Ниже излагаются результаты исследования возможности реконструкции 3D модели по изображениям на предмет создания объемной фотографии при помощи мобильных устройств. Трехмерная реконструкция (англ. 3D reconstruction) – это процесс получения 3D объектов на основе изображений.  На вход алгоритма обработки… Читать далее »

3D реконструкция по одному изображению

Постановка задачи Алгоритм восстановления параметров положения Алгоритм смены системы координат Пример решения задачи Постановка задачи При проецировании объекта на плоскость теряется одно измерение.  Как известно, можно его восстановить по двум и более изображениям. А можно ли по одному? Можно, если известны искажения отдельных элементов объекта. Поставим конкретное задание – разработать программную систему, которая определяет по фотографии,… Читать далее »

Аффинные преобразования в WebGL приложениях

Введение 2D преобразования в элементе canvas Матричные преобразования Архитектура WebGL приложения WebGL приложение управления положением рупорной антенны Контрольные задания Введение В статье описывается особенности создания графических приложений для WEB, связанных с аффинными преобразованиями . Изложение теории будет идти параллельно с практической реализацией с переходом от простых примеров создания изображений на плоскости к более сложным примерам… Читать далее »

Преобразования 3D модели на VLISP и DCL

Постановка задачи Алгоритм решения задачи Интерфейс и возможности программы Файлы приложения Постановка задачи Разработать программу моделирования любого из изображений антенны (см. рис.) по её параметрам формы и положения (см. табл.). Алгоритм решения задачи Для решения задачи рекомендуется использовать  три системы координат (СК) – мировая, Монжа и антенны. Проецирование изображений может осуществляться относительно любой из них… Читать далее »

Управление AutoCAD из VB приложения

Основы COM автоматизации Простейший пример управление AutoCAD из VB приложения Создание чертежа на основе пространственной модели Моделирование процесса нарезания резьбы Отличительные особенности VBA приложений Основы COM (Component Object Model) автоматизации COM-автоматизация – технология, с помощью которой приложения, написанные на различных языках программирования, могут получать функциональность программных систем (AutoCAD, Word, Excel и др.). Объектная модель приложения… Читать далее »

Inventor API деталь на VBA

Пример создания модели детали Создание вида детали Особенности эскизирования Профили Доступ к эскизам Элементы тела (Features) Рабочие элементы (Work Features) Граничное представление тела (Boundary Representation, B-Rep) Контрольные задания Пример создания модели детали В этой теме рассматриваются примеры создания модели детали на языке VBA. Чтобы использовать Inventor API, Вы должны познакомиться с объектами, которые он предоставляет, и… Читать далее »

Inventor API сборка на VBA

Введение Простейший пример создания сборки Прокси-объекты Обход дерева сборки Контрольные задания Ограничения между элементами сборки Тексты программ: Процедура Axle() Процедура Wheel() Процедура Body() Процедура WheelAssembly() Процедура CarAssembly() Введение Сборка — соединение компонентов (деталей и подсборок). Например, сборка «Автомобиль» представляет соединение детали «Корпус» и 2-х подсборок «Колесная пара». В свою очередь сборка «Колесная пара» представляет соединение… Читать далее »

Fusion 360 API деталь на Python

Способы реализации API Fusion 360 Примеры моделирования детали: Circle by 3 tangents; BaseFeature; Fillet; Mirror Feature; Constraints (Perpendicular, Parallel and Symmetry) Simple Revolve Feature; Two Rail Sweep Feature; Interference; Trim Feature; Unstitch Feature. Контрольные задания Пример выполнения задания Примеры моделирования детали Создайте скрипт для языка  Python (см. Способы реализации API Fusion 360 ) и используйте для его… Читать далее »

Fusion 360 API сборка на Python

Введение Примеры построения сборки: As-Built Joint RevoluteJointMotion SliderJointMotion CylindricalJointMotion Контрольные задания Введение Один из наиболее важных аспектов построения сборки – соединение подвижных компонентов. Fusion 360 позволяет легко определить соединения (Joints), совмещая геометрические элементы деталей и задавая определенные степени свободы в перемещениях. В зависимости от разновидностей совмещения и перемещений различают семь типов соединений: «Rigid» (неподвижное) фиксирует… Читать далее »

Пользовательский интерфейс через API Fusion 360

Модификация пользовательского интерфейса Создание пользовательских диалогов для команд Модификация пользовательского интерфейса При настройке пользовательского интерфейса Fusion необходимо выделить два понятия – модификация пользовательского интерфейса и создание пользовательских диалогов для команд. На рисунке выделены 3 разновидности пользовательского интерфейса: toolbars – красным цветом; toolbar panels – зеленым цветом; work space – синим цветом. Каждая из них описана… Читать далее »

B-Rep моделирование через API Fusion 360

Введение Иерархическая структура объектов топологии B-Rep модели Доступ к B-Rep объектам: BRepBody BRepLump BRepShell BRepFace BRepLoop BRepVertex BRepCoEdge Другие методы доступа к B-Rep объектам Оценивание (Evaluating) геометрии через топологию объектов Доступ к геометрии из объектов B-Rep Введение Твердотельные модели Fusion представлены группой поверхностей, образующих плотно замкнутый объем. Это широко известно как моделирование представлением границ (Boundary-Representation… Читать далее »

Способы реализации API Fusion 360

Введение Различия между скриптами и Add-In приложениями Основные концепции Fusion API Организация доступа к данным: Product; Component; Occurrence; Proxies. События в Fusion API Редактирование и отладка приложений на языке Python Введение Fusion 360 API реализуется в виде скриптов (сценариев) и  Add-Ins приложений (надстроек), созданных при помощи языков программирования C++, Python и JavaScript. Процесс создания и… Читать далее »

Вспомогательная геометрия Inventor API

Введение Точки Кривые Поверхности Вектора Матрицы Матрицы системы координат Матрица преобразования Введение Вспомогательная геометрия предназначена для решения через API комплекса математических задач, преимущественно геометрических. Объекты вспомогательной геометрии создаются посредством вызовов соответствующих методов объекта TransientGeometry и чрезвычайно широко используются в Inventor API. В отличие от большинства других геометрических объектов API, объекты вспомогательной геометрии не имеют средств визуального… Читать далее »

Обзор способов доступа к Inventor API

Введение Объектная модель Различия между приложениями под Inventor и Apprentice Инсталляция шаблонов для Add-In приложений Пример Add-In «HelloWorld!» на VB.NET Пример Add-In «HelloWorld!» на C# Отличия между VB и VBA приложениями Разновидности VBA проектов Введение API, или интерфейс прикладного программирования – это термин, используемый для описания функциональных возможностей графического редактора Inventor, предоставляемый в рамках программы.… Читать далее »

ObjectARX программирование на C++

Введение Средства разработки приложений Установка свойств проекта Приложение “Hello World” Итерация таблицы символов Открытие и закрытие объектов. Использование итераторов Создание и добавление записи в таблицу символов Создание и добавление объекта XRecord в Named Objects Dictionary Использование словарей расширения (extension dictionaries) Создание примитива и управление его свойствами Использование AcDbGroup протокола Тексты программ Введение ObjectARX (AutoCAD Runtime… Читать далее »

На VLISP из 3D модели 2D-виды

Введение Постановка задачи Алгоритм Программная реализация Выводы Введение  Чертеж пространственного объекта можно выполнить двумя способами: Начертить непосредственно в плоскости (используя команды для плоского черчения). Определить по модели пространственного объекта через аппарат ортогонального проецирования (рис.1). Первый способ очень трудоемкий. Второй способ реализуется в AutoCAD поэтапно: Моделирование объекта. Определение вида. Построение проекции. Уточним, что здесь подразумевается под… Читать далее »

Задача для CAD системы

Введение в проблему. Описательная модель Абстракция. Постановка задачи оптимизации Расчет прочности устройства Расчет кинематики устройства Возможности и перспективы CAD-систем Введение в проблему. Описательная модель Многие при умении решать задачи не всегда умеют их ставить. А постановка задачи, как говорится – это наполовину ее решение. Обычно в учебниках по математике и информатике описание задач формальное и… Читать далее »

Идентификация образов по цвету, текстуре и форме

Постановка задачи. Интерфейс программы Абстрагирование Сопоставление гистограмм цвета Критерии оценки различий гистограмм цвета Уменьшение влияния освещенности на признаки цвета Описание текстуры через колебания сигнала цвета Разложение сигнала цвета в ряд Фурье Признаки текстуры через параметры гармоник в ряде Фурье Оценка информативности признака Анализ изображений на предмет выбора признаков формы Выделение границ и построение сигнатуры Признаки… Читать далее »

Алгоритм векторизации чертежа

Постановка задачи. Этапы алгоритма ЭТАП 1. От точек вдоль рядов к скелетным точкам линий ЭТАП 2. От скелетных точек линий к точкам вдоль линий ЭТАП 3. Определение вида кривой через аппроксимацию Программная реализация 1-го этапа на языке VLISP Постановка задачи. Этапы алгоритма Векторизация – преобразование растрового  изображения (отсканированной картинки или фото) в векторное представление. Задачу… Читать далее »

Параметризация геометрических моделей

Введение Основы метода параметризации объектов Размерность пространства. Определение параметрического числа объекта Параметризация геометрических условий Выделение параметров формы и положения Определение множества решений геометрических задач Определение линий и поверхностей изменением размерности множеств Введение Теория параметризации позволяет формализовать процесс определения числа параметров, необходимых для задания геометрического объекта. Эта теория также позволяет решить обратную задачу – определить размерность… Читать далее »

Геометрические преобразования в графических приложениях

Преобразование из оконной СК в логическую СК Поворот плоскости Аффинные преобразования Композиция матриц. Однородные координаты Смена системы координат Глобальная и локальная СК Матрицы базовых преобразований 3D пространства Алгоритмы построения проекций Преобразование из оконной СК в логическую СК Начало оконной (физической) системы координат располагается в левом верхнем углу экрана. Ось X направлена слева направо, ось Y… Читать далее »

Методология ООП как способ восприятие мира

Восприятие мира на основе психологии Алгоритмизация мышления.  Классификация Формирование сущностей Анализ сложных систем реального мира Классы и объекты Основные аспекты ООП Перспективы методологии программирования Восприятие мира на основе психологии Мозг человека обрабатывают информацию.  Согласно определений из психологии: “информация” в узком понимании – это сведения, которые позволяют выбрать правильное решение; “информация” в широком понимании – это… Читать далее »

От машинного кода до API систем

Машинный код Трансляция программ Повторное использование кода Объектная структуризация Структуризация программных систем Машинный код Компьютер – это электронное устройство, которое обрабатывает информацию, представленную в виде двоичных сигналов. Сначала это был аппарат для выполнения арифметических операций. Прыжком в развитии компьютера послужила идея программного способа реализации задач. Суть этой идеи можно проследить на примере реализации задачи Y=N… Читать далее »

Основы Java

Платформа Java Сравнение C++ и Java Пакеты классов Структура класса Абстрактные классы Абстрактные методы Статические члены класса Внутренние классы Интерфейсы Сетевые приложения Платформа Java Программная платформа Java – ряд программных продуктов и спецификаций, которые совместно представляют систему для разработки кросс-платформенного программного обеспечения. На языке Java все приложения – это текстовые файлы, имеющие расширение .java. Эти файлы… Читать далее »