Перейти к содержимому

3d pdf чем открыть

  • автор:

Что не так с 3D PDF и eDrawings. Как мы заменили просмотрщик 3D-моделей в своем приложении

Это рассказ о том, как мы встроили новый просмотрщик C3D Viewer в систему управления жизненным циклом изделия ЛОЦМАН:PLM, почему мы это сделали, и что у нас получилось.

.1 Что такое «вторичное представление»

Любое достойное упоминания PLM-решение включает в себя механизмы/подсистему PDM (управление данными об изделии).

В базе данных PDM-системы хранятся документы и файлы, созданные в различных САПР: 3D-модели, чертежи, спецификации и расчеты.

Для того, чтобы содержание этих документов было доступно тем пользователям, у которых на рабочем месте не установлены соответствующие приложения САПР (а они бывают о-о-очень дорогими), PDM-система формирует «вторичное представление документа» — копию документа в каком-то «нейтральном» общедоступном формате.

После того, как «вторичное представление» загружено в систему, на его основе можно построить предварительный просмотр содержимого документа непосредственно в интерфейсе клиента PDM-системы; использовать как носитель при обмене информацией с внешними пользователями, в процессах согласования и при обмене замечаниями с помощью заметок и аннотаций.

.2 Вторичное представление в ЛОЦМАН:PLM

В разное время в качестве «вторичного представления» 3D-моделей в ЛОЦМАН:PLM поочередно выступали VRML, eDrawings, 3D PDF.

Про VRML я говорить не буду – ошибки молодости… с кем не бывает.

eDrawings был неплох, но за разработку адаптера к нему и услуги поддержки приходилось платить весьма нескромные деньги. К тому же начиная с 2014 года eDrawings стал доступен только в версии x64. Мы при всем желании не могли больше встраивать его в наш 32bit клиент ЛОЦМАН:PLM как ActiveX.

3D PDF поначалу казался подарком — бесплатный, уже установлен на каждом первом компьютере, стандарт de facto в нашем рукаве галактики, плюс готовая библиотека ActiveX, пригодная для встраивания, но, со временем, нам стала открываться его темная сторона:

  1. Мы имеем право распространять Acrobat Reader в своем дистрибутиве. Оказалось, Acrobat Reader установлен далеко не на каждом первом компьютере. Иногда там установлен Acrobat Reader несовместимой версии, а иногда — вообще другое приложение для просмотра PDF, несовместимое с Acrobat Reader и, при этом, очень дорогое сердцу пользователя.
  2. Вектор развития Acrobat Reader непредсказуем. Каждый релиз полон сюрпризов и пополняет используемый нами арсенал средств, предназначенных для автоматического закрытия окон ненужных сообщений, сворачивания назойливых панелей и установки туманно документированных опций.
  3. Выход обновления Acrobat Reader внезапен и неотвратим. О нем мы узнаем из сообщений пользователей о том, что у нас перестало работать «вторичное представление».
  4. Обратная связь с разработчиком, вероятно, возможна, но, как показывает регулярное изучение печальных форумов, бесперспективна.
  5. Иногда использование ActiveX Acrobat Reader приводит к аварийному завершению вашего приложения. Мы пришли, в итоге, к использованию режима SafeMode в Acrobat Reader. В этом режиме периодически аварийно завершается только скрытый дочерний процесс Acrobat Reader, а наше приложение продолжает работать.
  6. ActiveX Acrobat Reader доступен только в версии 32bit без вариантов.
  • Низкая скорость экспорта из КОМПАС-3D в 3D PDF.
    Возможно, часть ответственности лежит на КОМПАС-3D, но что есть — то есть.
  • Большой размер файла 3D PDF, что увеличивает нагрузку на файловую систему и сеть и требует больше оперативной памяти.
    Поиск оптимальных, с точки зрения соотношений точности вывода моделей к размеру файла, настроек не дал приемлемых результатов.
  • Низкая скорость загрузки больших моделей 3D PDF.
  • Неудовлетворительные скорость / качество рендеринга больших файлов.

.3 Знакомство с C3D Viewer

Мы всегда с интересом следили за успехами и новинками C3D Labs (все-таки дочерняя компания АСКОН, коллеги). Появление нового просмотрщика C3D Viewer не прошло незамеченным. Получив доступ к ранним бета версиям продукта, мы провели сравнительное исследование функциональности и производительности.

Результаты исследования вдохновили нас на запуск проекта, итогом которого должно было стать встраивание компонента C3D Viewer в качестве средства просмотра и аннотирования вторичного представления 3D-моделей в ЛОЦМАН:PLM.

  • Ускорение сохранения в формат C3D по сравнению с PDF – от 6 до 18 раз!
    Корреляции с размером моделей и количеством компонентов не выявлено.
  • Размер файлов C3D меньше файлов PDF – от 2 до 39 раз!
  • Скорость загрузки файлов C3D выше скорости загрузки PDF – от 6 до 264 раз.
    Корреляции с размером моделей и количеством компонентов не выявлено.
  • Качество и плавность отображения при вращении у C3D Viewer значительно превосходит качество Adobe Reader.
    По непонятным причинам замерить FPS в Adobe Reader не всегда получалось. В случаях, когда попытки замера были удачными, FPS не превышал значения «5». C3D Viewer «крутит» со скоростью 30-100++ FPS на разных моделях.

Интерес к проекту был взаимным, что наилучшим образом сказалось на качестве взаимодействия с разработчиками и скорости решения различных проблем.
По нашим запросам команда C3D Labs разработала функционал аннотирования 3D моделей, обеспечила локализацию на русский язык.

Ряд доработок API C3D Viewer был обусловлен спецификой применения компонента в нашем приложении. В результате в API появились новые методы и события, позволившие реализовать собственный механизм индикации прогресса загрузки модели и экстренного прерывания/отмены загрузки.

И раз уж я упоминал о дороговизне eDrawings, то справедливости ради надо сказать, что C3D Viewer тоже не бесплатен для нас, но условия его использования гораздо более демократичные.

.4 Встраивание

В начале следует дать краткое техническое описание системы, в которую нам предстояло встроить C3D Viewer, – клиентского приложения ЛОЦМАН:PLM.

Это десктопное Win32 приложение с MDI интерфейсом, написанное на Delphi 2006.
Компоновка дочерних MDI окон — динамическая, строится на основе описания набора взаимосвязанных «панелей», каждая из которых представляет некоторый аспект информации об указанном объекте.
Программный компонент C3D Viewer – это ActiveX COM Library (C++, Qt).

API простой и компактный, ключевые операции — асинхронные, выполняются в отдельном потоке, поэтому взаимодействие с компонентом основано на вызове методов и обработке событий.

Прототип модуля просмотра вторичного представления удалось собрать и встроить в ЛОЦМАН:PLM всего за пару часов, а вот прочие «мелочи» потребовали значительно больше времени.

Мы реализовали собственные панели инструментов, контекстное меню, панель, отображающую структуру модели, и панель со списком аннотаций — в нужном нам объеме и виде, в соответствии с общей визуальной стилистикой интерфейса приложения.

Мы применяем компонент в нескольких режимах работы с вторичным преставлением: встроенный просмотр, полноэкранный просмотр и режим аннотирования.

Какие были сложности:

Импорт описания библиотеки типов

Одной из первых проблем оказалось то, что Delphi 2006 некорректно импортирует описание библиотеки типов из ActiveX C3D Viewer, которая написана на C++ c Qt.

Выкрутились, применив утилиту импорта библиотеки типов Delphi 2010, которая, впрочем, также давала не 100% правильный результат — пришлось все-таки исправить десяток строк «вручную».

Трудности «усыновления»

В нашем приложении пользователю доступен WYSIWYG редактор компоновки, который позволяет добавлять и перемещать «панели» с информацией. На одной их таких панелей располагается и ActiveX C3D Viewer.

Оказалось, что при перемещении панели с ActiveX C3D Viewer в другой «контейнер» происходит его частичное «разрушение».

Выяснили, что причина — в специфической реализации механизма смены родительского окна VCL Delphi. Если коротко, то в итоге происходит вызов winapi функции DestroyWindow ActiveX C3D Viewer, после чего тот начинает считать себя «убитым», а Delphi тем временем продолжает считать его «живым».

Эту проблему мы обошли, поместив ActiveX в специальный контейнер, который умеет определять, что происходит смена родительского окна, и в этот момент корректно освобождает ActiveX и создает его заново.

Проблемы с памятью

У нас 32х битное приложение, и «Out of memory» никто не отменял. Возможность появления огромных сборок в условиях ограниченного 2 ГБ объема оперативной памяти неизбежно привела к тому, что проблема стала острее.

Особую остроту придавало то, что если память заканчивалась в процессе загрузки модели в C3D Viewer, то это приводило к неожиданному аварийному завершению всего приложения.
Причину определить удалось не сразу. Пришлось разработать собственный PostMortem Debugger на основе sampling profiler-а, который восстанавливал стек c помощью отладочной информации JDBG.

Поняв причину, мы начали с того, что увеличили лимит доступной оперативной памяти до 3.5 ГБ, добавив флаг IMAGE_FILE_LARGE_ADDRESS_AWARE в заголовок EXE, несколько сократили потребление памяти в своем приложении, но результат не радовал.

Дело в том, что если у вас 32х битное MDI приложение (с многооконным интерфейсом), то пользователь, в принципе, может открыть неограниченное здравым смыслом количество окон. И он это обязательно сделает. Имеет право.

Чтобы снизить вероятность проявления проблем, связанных с нехваткой памяти, мы встроили в приложение механизм контроля и оптимизации использования памяти. При достижении определенного лимита неактивные в данный момент MDI окна погружаются в «спящий режим», высвобождая тем самым ресурсы.

Проблемы с виртуальными машинами

C3D Viewer требует для отображения OGL версии не менее 2.1. Мы попробовали разные виртуальные машины, вот некоторая информация об этом:

Hyper-V — C3D Viewer не работает.
Virtual Box 4.1.44 + Window 7 — C3D Viewer работает.
VMWare Player v14 (Accelerate 3D Graphics + OGL v3 в настройках) — C3D Viewer работает.

В итоге активная фаза разработки и отладки нового просмотрщика заняла около двух месяцев. Еще две-три недели мы затратили на устранение ошибок.

.5 Что впереди

В следующих версиях C3D Viewer мы надеемся увидеть функции динамического сечения, измерения моделей, новые возможности работы с PMI, конфигурациями моделей в связке с КОМПАС-3D и ЛОЦМАН:PLM.

P.S.

Для знакомства с C3D Viewer есть бесплатная версия (скачать здесь). Она не включает API и некоторые другие функции. Версию для встраивания можно запросить на тестирование у разработчиков C3D Labs.

Сергей Ершов, руководитель группы прикладных АРМ, АСКОН.

Включение 3D-содержимого в документе PDF

Включение воспроизведения 3D-содержимого в документе PDF

При открытии документа PDF с 3D-контентом пользователю предлагается включить эту функцию, если документ является надежным.

Включение воспроизведения 3D-содержимого

Включение воспроизведения мультимедийных файлов и 3D-содержимого в текущем документе

Нажмите Параметры и выберите один из следующих параметров:

  • Доверять этому документу только сейчас
  • Доверять этому документу всегда

Включение воспроизведения 3D-содержимого во всех документах для разных операционных систем:

  • Нажмите Command + K (для macOS) или Ctrl + K (для Windows), чтобы открыть «Установки». Выберите Мультимедийный и 3D-контент на боковой панели слева. Затем Разрешить воспроизведение мультимедийных файлов и 3D-содержимого.

Включение 3D-контента для доверенных документов

3D-содержимое по-прежнему можно просматривать, даже если выключен параметр Включить воспроизведение мультимедийных файлов и 3D-содержимого . Чтобы использовать эту функцию, выполните следующие действия для добавления доверенных файлов, папок и хостов в качестве Привилегированные места :

Отключите 3D-содержимое (если оно включено): нажмите Command + K (для macOS) или Ctrl + K (для Windows), чтобы открыть Установки . Выберите параметр 3D и Мультимедиа на боковой панели слева. Отмените выбор Разрешить воспроизведение мультимедийных файлов и 3D-содержимого .

Добавьте файлы, папки и хосты в качестве привилегированных мест : в области Установки используйте боковую панель для перехода в Безопасность (повышенный уровень) , затем добавьте файлы, папки и хосты в качестве привилегированных мест . После этого нажмите ОК .

Теперь откройте файл PDF с 3D-содержимым:

  • Если файл или местоположение добавляются как привилегированные места , в файле PDF будет выполняться рендеринг 3D-содержимого.
  • Если файл не является доверенным, появится желтая строка с сообщением Мультимедийные файлы и 3D-содержимое отключены. Включите эту функцию, если вы доверяете этому документу. В меню «Параметры» можно выбрать: Доверять этому документу только один раз или Доверять этому документу всегда .

Специальная конфигурация для ИТ-отдела предприятия

ИТ-отдел предприятия может настроить параметры пользователей в папке HKCU\Software\Adobe\Acrobat Reader\\3D\bEnable3DContent . ИТ-отдел предприятия может отключить и заблокировать рендеринг 3D-содержимого, чтобы пользователи не смогли изменять настройки в папке HKLM\SOFTWARE\Policies\Adobe\(название продукта)\(версия)\FeatureLockDown\bEnable3D .

Free online editor for 3D PDF files

*By uploading your files or using our service you agree with our Terms of Service and Privacy Policy.

Please wait a seconds while processing your file, or you can find similar files below:
processed files
uploaded MB

Online 3D PDF editor app is an easy-to-use online application that allows you to edit your 3D PDF document online just using a browser. You do not need to install specialized software to open a 3D PDF document, just open this application using a web browser, and drag your document into the upload area, and click the edit button, your document will open in the browser regardless of whether you are using Windows, Linux, MacOS, Android or even a mobile device. 3D PDF editor application shows your content in an interactive user interface, you can view it from different perspective.

Aspose.3D 3D PDF editor

  • We also support other 3D formats like: 3ds, 3mf, amf, ase, dae, dxf, drc, fbx, gltf, glb, jt, obj, ply, pdf, rvm, stl, u3d, vrml, x, ma, usd, usdz, jpg, jpeg, png, tga, bmp, gif, tiff, bin.
  • Edit your 3D PDF file without installing any softwares.

3D PDF

Portable document format (PDF) is a type of document created by Adobe back in 1990s. The purpose of this file format was to introduce a standard for representation of documents and other reference material in a format that is independent of application software, hardware as well as operating system. PDF files can be opened in Adobe Acrobat Reader/Writer as well in most modern browsers like Chrome, Safari, Firefox via extensions/plug-ins.

Fast and easy editor

Upload your document, click the «Edit» button, you’ll see the 3D content immediately.

Edit from anywhere

It works from all platforms including Windows, Mac, Android and iOS. All files are processed on our servers. No plugin or software installation required for you.

Compatibility

Powered by Aspose.3D. All files are processed using Aspose APIs, which are being used by many Fortune 100 companies across 114 countries.

Other supported editors

You can also edit many other file formats. Please see the complete list below.

  • 3DS editor (3D studio mesh file format)
  • 3MF editor (3D manufacturing file format)
  • AMF editor (Additive manufacturing file)
  • ASE editor (Aseprite sprite file)
  • DAE editor (Digital asset exchange file format)
  • DXF editor (Autodesk drawing exchange file format)
  • DRC editor (Google Draco)
  • FBX editor (Filmbox interchange file)
  • GLTF editor (GL transmission format)
  • GLB editor (Binary glTF file)
  • JT editor (JT file format)
  • OBJ editor (OBJ file format)
  • PLY editor (Polygon file format)
  • 3D PDF editor (3D PDF)
  • RVM editor (RVM file format)
  • STL editor (Stereolithography)
  • U3D editor (Universal 3D file format)
  • VRML editor (Virtual reality modeling language)
  • X editor (DirectX model file)
  • MA editor (Autodesk Maya)
  • USD editor (Universal scene description)
  • USDZ editor (Universal scene description zip archive)

Отображение 3D-моделей в файлах PDF

Узнайте, как с легкостью просматривать 3D-модели в Acrobat и работать с ними.

Перед началом работы

Мы добавили новый и более интуитивно понятный интерфейс. Если показанный здесь экран не соответствует вашему интерфейсу, перейдите к справке по текущему интерфейсу.

В Acrobat можно просматривать первоклассные 3D-макеты и работать с ними. Они созданы с помощью профессиональных программ CAD или программ моделирования и встроены в документ PDF. Можно скрывать и отображать части 3D-модели, снимать крышку, чтобы заглянуть внутрь, и поворачивать элементы как будто держа их в руках.

Включение воспроизведения 3D-содержимого в документе PDF

Если открыть документ PDF с 3D-содержимым, вверху отобразится желтая строка с сообщением Мультимедийные файлы и 3D-содержимое отключены. Включите эту функцию, если это надежный документ.

Можно включить 3D-содержимое в документе, чтобы начать воспроизведение 3D-содержимого.

Чтобы включить содержимое, выберите Параметры в правом верхнем углу. Появится раскрывающееся меню.

Выберите Доверять этому документу только сейчас или Доверять этому документу всегда .

Включение 3D-содержимого для всех документов

Нажмите клавиши Ctrl + K (Windows) или Command + K (macOS), чтобы открыть Установки .

Выберите 3D и Мультимедиа , затем установите флажок Разрешить воспроизведение мультимедийных файлов и 3D-содержимого .

Нажмите ОК .

Активация 3D-содержимого в PDF

Первоначально 3D-модель отображается в виде двухмерного изображения.

Откройте файл PDF, содержащий 3D-модель.
Выберите 3D-модель, используя инструменты Рука или Выделение .

3D-модель активирована. Над моделью появится панель инструментов «3D».

Теперь в 3D-модели можно взаимодействовать с анимацией или воспроизводить ее.

Обзор панели инструментов «3D»

При активации 3D-модели над ней отображается панель инструментов «3D». Эту панель можно использовать для увеличения и уменьшения, поворота и перемещения модели.

Для работы с 3D-моделью можно выбрать и перетащить различные инструменты навигации. При навигации по модели представьте, что 3D-модель просматривается с точки зрения камеры.

Чтобы просмотреть другие инструменты, выберите раскрывающийся список справа от панели инструментов «3D».

Инструменты 3D-навигации

повернуть

Поворачивает 3D-объекты относительно экрана. Для поворота объекта можно также использовать инструменты Рука или Выделение. Убедитесь, что на панели инструментов «3D» выбран инструмент «Поворот».

повернуть

Поворачивает 3D-модель параллельно двум фиксированным осям (оси X и Z) в 3D-модели.

повернуть

Позволяет перемещать модель только вертикально или горизонтально. Также с помощью инструментов Рука или Выбрать можно выполнять панорамирование. Нажмите клавишу Ctrl и перетащите.

повернуть

Перемещает камеру ближе или дальше от отображаемого объекта при вертикальном перетаскивании. Также можно выполнять масштабирование с помощью инструментов Рука или Выделение, удерживая клавишу Shift во время перетаскивания.

повернуть

Вращает горизонтально или вертикально по холсту при горизонтальном или вертикальном перетаскивании с сохранением постоянного уровня независимо от способа перетаскивания. Этот инструмент полезен для работы с архитектурными 3D-моделями.

Чтобы изменить скорость обхода, измените единицы измерения отображения в Установки > Измерение (3D) > Использовать масштаб и единицы измерения модели (если есть) .

повернуть

Перемещение по модели при сохранении ориентации поверхности. Выбор модели и перемещение курсора приближает модель. Перетащите указатель мыши вправо или влево для поворота.

Для поворота вида камеры нажмите левой кнопкой мыши внутри 3D-окна и перетащите указатель для поворота вида камеры. Для возврата к исходному положению камеры переместите мышь обратно в место начального щелчка.

Используйте колесо прокрутки для быстрого перемещения назад и вперед вдоль направления обзора камеры. Эта функция полезна, если вы потеряли ориентацию внутри модели или столкнулись с поверхностью.

повернуть

Свойства камеры

Установка угла камеры, выравнивания и других свойств, определяющих тип линзы, через которую рассматривается 3D-модель. Свойства камеры являются составной частью видов, но устанавливаются отдельно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *