Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: ZloyEjik от 30-07-2018, 16:41:46

Название: Отрисовка блоков в WPF
Отправлено: ZloyEjik от 30-07-2018, 16:41:46
Добрый день, есть вопрос.

Каким образом можно вставить видовое окно в WPF ссылающееся на определенный блок, а не пространство листа(модели).

Идея в том, чтобы пользователь выбирал определенный блок и видел его рисунок при выборе.
Название: Re: Отрисовка блоков в WPF
Отправлено: Александр Ривилис от 30-07-2018, 18:04:40
Речь идёт о коде http://adn-cis.org/prosmotr-chertezha-v-wpf-palitre.html ?
Я посмотрел его и судя по всему там требуется серьезные переделки. Можно попробовать налету создавать другую Database, в неё экспортировать блок (точнее вставлять его в пространство модели), ну а затем показывать пространство модели из этой Database.
Возможно понадобится переключение  HostApplicationServices.WorkingDatabase на эту базу.
Название: Re: Отрисовка блоков в WPF
Отправлено: ZloyEjik от 30-07-2018, 18:09:10
И снова спасибо. В целом мне и нужна точка старта, а переделать под себя уже как-нибудь постараюсь. Просто остальное получалось гуглить, кроме этих 2-х вопросов.
Название: Re: Отрисовка блоков в WPF
Отправлено: Дима_ от 30-07-2018, 20:02:01
Идея в том, чтобы пользователь выбирал определенный блок и видел его рисунок при выборе.
Получить картинку блока можно через CMLContentSearchPreviews.GetBlockTRThumbnail(BlockTableRecord). А вот откуда он его хочет получить - это уже второй вопрос (у меня блок доставался из БД, куда его картинка и заносилась в соотв. поле вышеуказанным методом).
Название: Re: Отрисовка блоков в WPF
Отправлено: Александр Ривилис от 30-07-2018, 20:05:36
Дима_,
Чтобы эта картинка была, чертеж должен быть сохранён и блок в нём в актуальном состоянии. Кроме того качество картинки может оставлять желать лучшего...
Название: Re: Отрисовка блоков в WPF
Отправлено: ZloyEjik от 30-07-2018, 20:09:13
Дима_, спасибо. Блок будет создаваться при запуске программы и формироваться из нескольких других блоков загружаемых из БД. То есть пользователь просто выбирает артикул одного профиля, затем другого, затем выбирает расстояние а программа в WPF окне рисует как это будет выглядеть.

Александр Ривилис, да, тогда метот Димы не сработает для моего случая.
Название: Re: Отрисовка блоков в WPF
Отправлено: Дима_ от 30-07-2018, 20:09:27
Я же и пишу - откуда пользователь хочет вставить блок? Если он предварительно подготовлен, то картинку лучше взять из "готового". Про "какчество" - оно да - так себе.
Название: Re: Отрисовка блоков в WPF
Отправлено: Дима_ от 30-07-2018, 20:17:03
То есть пользователь просто выбирает артикул одного профиля, затем другого, затем выбирает расстояние а программа в WPF окне рисует как это будет выглядеть.
Сечения витражей формируете? - ИХМО- эти вещи лучше сразу формализировать так что потом можно было бесшовно [
Off-Topic: показать
слезть с автокада
. То есть выгружать "вершины" сечений и из них формировать отображения "сборки".

з.ы. Если мое предположение верное, расстояния между профилями в сечении так-же лучше хранить в параметрах тех-же сечений (а то и их систем) - они прекрасно формализуются (достаточно посмотреть несколько каталогов продукции или как это реализовано в существующих системах автоматизации построения профильных конструкций).
Название: Re: Отрисовка блоков в WPF
Отправлено: ZloyEjik от 30-07-2018, 20:23:19
Да, программа по витражам. Слезать с Автокада не планируется. Но в целом габариты блоков есть в БД и во многом программа работает без автокада вычисляя все данные в уме и беря данные из отдельной БД. Но автокад нужен для удобного внесения сетки.
Название: Re: Отрисовка блоков в WPF
Отправлено: Дима_ от 30-07-2018, 20:25:44
Удачи.