Jump to content

маркер_вопросы (Универсальный маркер СПДС)


Recommended Posts

В 03.01.2023 в 23:16, doctorraz сказал:

пока откроешь пока найдешь

Как вариант, чтобы долго не искать, можно сделать свою папку и свой "Tab"

А туда уже ярлыков набросать на нужные объекты. Потом можно быстро их похерить.

image.png.5a51771601be6e668e8c9bfc21b22d29.png

  • Like 3
Link to comment
Share on other sites

2 минуты назад, MCAD сказал:

свою папку и свой "Tab"

Спойлер

image.png.8eec6071dddc66e0667de4b32107f609.png

 

  • Like 2
Link to comment
Share on other sites

  • 4 weeks later...

Уважаемые форумчане!
Чуть выше поднималась тема по механизму связи значений в атрибуте с объектами чертежа, и сказано "Маркер берет значения с объекта или примитива  в момент вставки."

Так вот вопрос - возможно ли переопределить связь после вставки маркера?

Т.е. конкретный пример: атрибут маркера (номер листа) берет соответствующее значение с формата СПДС в момент вставки в поле формата. В ходе работы необходимо переместить маркер на другой лист и естественно чтобы атрибут можно было переназначить на этот лист.  Естественно, если у формата СДПС меняется номер листа, то соответствующий атрибут маркера должен автоматом обновиться.
Механизм "взять свойство с объекта" уже на вставленном в чертеж маркере отключает "синхронизацию" (связь) на атрибуте.

 

P.s. в идеале конечно, нужно добиться чтобы при перемещении маркера на другой формат СПДС атрибут маркера автоматом бы определял номер листа формата СПДС на котором он стал располагаться. Но на сколько я понял это невозможно.

синхронизация вклjpg.jpg

синхронизация отк.jpg

кнопка.jpg

  • Confused 1
Link to comment
Share on other sites

5 часов назад, GMaximus сказал:

Так вот вопрос - возможно ли переопределить связь после вставки маркера?

Нет, к сожалению. Только в момент вставки. 

  • Like 1
  • Sad 1
Link to comment
Share on other sites

5 часов назад, GMaximus сказал:

 в идеале конечно, нужно добиться чтобы при перемещении маркера на другой формат СПДС атрибут маркера автоматом бы определял номер листа формата СПДС на котором он стал располагаться

 принципиально именно маркер?

Конечная цель применение этих действий?

  • Like 1
Link to comment
Share on other sites

 

Не по теме

6 часов назад, GMaximus сказал:

конкретный пример: атрибут маркера (номер листа)

Лучше, в качестве разделителя аргументов

image.png.085dc87b1daa49242b42f610f6bd52e2.png

Использовать точку с запятой "; "

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

image.png.2724436b8ab6bb08738ed54a01e391bd.png

Зачем лишний раз  испытывать судьбу? 

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

3 часа назад, doctorraz сказал:

 принципиально именно маркер?

Конечная цель применение этих действий?

Создать маркер обозначения рисунков "Рисунок 1. Схема соединений" и т.п., а в конечном итоге получить из всех маркеров автоматическое оглавление - такой-то рисунок на таком-то листе и т.п.
Но походу разработки чертежа, то номера листов меняются, то рисунки по листам перемещаются.

Link to comment
Share on other sites

20 минут назад, GMaximus сказал:

Создать маркер обозначения рисунков

хех

Спойлер

image.thumb.png.511e339660d5a95c9bd1461fccc65b5a.png

Спойлер

image.png.cb822a474313206e9aa0fee79a1e519f.png

 

Спойлер

image.png.50308e319f558a95f13dfb3edbc7b029.png

 

Спойлер

image.png.43f9b47d019ada9ceeb38768f2722d31.png

только добавить в отчет номер листа

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

добавить форму (по желанию и для красоты)

добавить итог отчета (именованную ячейку) либо формула в данных через section

другой таблицей собирать в отчет (автоматическое оглавление) с этих таблиц

 

 

Edited by doctorraz
  • Like 2
Link to comment
Share on other sites

имха если отображается только текст и не требуется таблица параметров,

маркер совсем не требуется, таблицей удобнее

Бонусом из моих наблюдений:

отчетные связи НИКОГДА не отваливаются, чего не могу сказать об остальных

Минус в таблице через This погано обновляется (мож поправили в 6247, не проверял) , поэтому лучше формулы делать не через именованные ячейки а по прямой или косвенной адресации (off... A1)

и раздел данных с формулами помещать над отчетом (чтоб адресация не сбивалась)

Короче пошли в тему про таблицы

  • Like 2
Link to comment
Share on other sites

9 часов назад, GMaximus сказал:

Так вот вопрос - возможно ли переопределить связь после вставки маркера?

 

3 часа назад, MCAD сказал:

Нет, к сожалению. Только в момент вставки. 

 

Протестую!!!  Можно! Хоть и не особо удобно

 

1. Вот объект свая. К нему "привязан" универсальный маркер с переменной "Номер сваи"

50082680_01.jpg.c4edbe63c76bdf1b4f64b23a038101a3.jpg

 

2. Копируем сваю отдельно от маркера, меняем у нее переменные, в т.ч. и "номер сваи". Затем копируем отдельно универсальный маркер - связь разорвалась (зеленая лампочка не горит)

1036314958_02.jpg.ca75f469e347797a339b428230ec088a.jpg

 

3. Нажимаем "редактировать свойства маркера"

501918874_03.jpg.1deb8444395400dc7e3d9eec74b04830.jpg

 

4. Восстанавливаем связь (берем свойства со 2 сваи)

129318747_04.jpg.1d5549af64c2bdced64c6c12bab642ae.jpg

 

480970132_05.jpg.19234962502f14e5b6493e25e5db2c24.jpg

 

5. нажимаем "ОК"

1967811531_06.jpg.2cc64a104d60574d89b944ebc6d9c5b4.jpg

 

6. Проверяем. Связь есть (зеленая лампочка горит)

1886071502_07.thumb.jpg.18eb934b7b39fdfd2428a0b511e01df8.jpg

  • Like 2
Link to comment
Share on other sites

2 минуты назад, XPom сказал:

Копируем сваю отдельно от маркера

Если копировать через буфер обмена связь пары сохранится

  • Like 2
Link to comment
Share on other sites

Только что, doctorraz сказал:

Если копировать через буфер обмена связь пары сохранится

это мне известно.

  • Like 2
Link to comment
Share on other sites

Кстати хоть поле маркера по взять с чертежа и не создает связь, но

Если по маркерам сделать табличный отчет

И в отчете заполнить по взять чертежа, связь появится, но с обновлением рандом полнейший.. скорее это бага

  • Sad 1
Link to comment
Share on other sites

28 минут назад, doctorraz сказал:

имха если отображается только текст и не требуется таблица параметров,

маркер совсем не требуется, таблицей удобнее

Бонусом из моих наблюдений:

отчетные связи НИКОГДА не отваливаются, чего не могу сказать об остальных

Минус в таблице через This погано обновляется (мож поправили в 6247, не проверял) , поэтому лучше формулы делать не через именованные ячейки а по прямой или косвенной адресации (off... A1)

и раздел данных с формулами помещать над отчетом (чтоб адресация не сбивалась)

Короче пошли в тему про таблицы

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

Link to comment
Share on other sites

 

С листами всегда не просто, а вот  для группового редактирования (при наложенных связях между объектами) есть группы. Причем связи сохраняются не только между объектами СПДС && объектами оформления платформы , но и между нативными объектами (линии, пЛинии и прочее

 

 

Часто группы даже не сохраняю в базу, просто создаю  копирую в другое место, как "архивчик" идей внутри файла. 

Их потом и в файле легко найти.

image.png.9d93d4bf2278405105f2a17be8eafb11.png

56 минут назад, XPom сказал:

Протестую!!! 

Протест принят !!! :beer2:

 

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Забыл сказать, что группы автоматически ищут потерянные связи и, при указании родительского объекта, берут с него параметры

 

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Уважаемые форумчане!
Кто-нибудь может подсказать какое имя класса у Универсального маркера?
Хочу добраться до него через API. В документации McCOM2 я ничего не нашел.
Свойство obj.ClassName на выбранном объекте чертежа выдает результат "Универсальный маркер", но такое имя класса в выборке pApp.Query("Универсальный маркер", null, null) выдает ошибку.

Конечная цель - скриптом vbs пройтись по Универсальным маркерам с заданными свойствами и поменять у всех нужные поля.

Link to comment
Share on other sites

6 минут назад, GMaximus сказал:

такое имя класса в выборке pApp.Query("Универсальный маркер", null, null) выдает ошибку.

Тоже в свое время столкнулся с этим

Подставил костылик в виде уникального текстового поля и искал по его значению

  • Like 1
  • Confused 1
Link to comment
Share on other sites

  • 1 month later...

 

Сравнение работы универсального маркера и шаблона  выноски.

 

 

 

В принципе, оба похода имеют право на существование. Но "Универсальный маркер" более гибко может работать с дополнительными полями (атрибутами) взятыми с объектов. Что существенно облегчает дальнейшую работу, например при получении от отчётов в таблице по данным полученным с чертежа.

00:00 Проверяем, что примитивы (полилинии) расположены на нужных слоях и имеет соответствующие значения по слою, цвету и "глобальной ширине"

00:14 Вставляем из панели "Инструменты" универсальный маркер. Автоматически начинает заполнятся таблица значений, определяющая длину полилиний.

01:18 Диалог редактора Универсального маркер.

01:39 Из панели "Инструменты" вставляем шаблон "Выноски". В качестве шаблона может быть использован любой объект, созданный в nano СПДС и сохраненный в базе командой sptwiz - Мастер шаблонов. После установки выноски (шаблона) автоматически открывается диалог "Позиционной выноски" которая была использована в качестве шаблона. Все "зависимые свойства", назначенные при создании шаблона, сохранились и выполняют своё функциональное назначение.

01:59 Вызываем команду addcopy - Создать аналог. В опция команды выбираем "несколько" и последовательно, указывая нужный объект, размещаем выноски на чертеже. Аналогичным образом, как и в случае с "Универсальным маркером" динамический выполняется запрос в чертеж и формируется отчёт по заданным алгоритмам.

03:30 Открываем "Построитель выражений" в таблице, выполняющей запрос по "Универсальному маркеру". Так как "Универсальный маркер" умеет брать и хранить свойство непосредственно в атрибуте, то выражение получается гораздо проще, чем в случае с шаблоном "Позиционной выноски"

03:49. Как подключить БД и как создать ссылку на объект базы на панели "Инструменты" тут:    • Подключение базы ...  

  • Like 2
Link to comment
Share on other sites

В 09.02.2023 в 12:30, XPom сказал:

2. Копируем сваю отдельно от маркера, меняем у нее переменные, в т.ч. и "номер сваи". Затем копируем отдельно универсальный маркер - связь разорвалась (зеленая лампочка не горит)

Всё правильно Вы пишете, можно связь восстановить или изменить. Но если вы копируете объект или вставили его вновь, то можно либо "Перевставить" объект (маркер или шаблон) reinsert - (Перевставить) или  сделать копию объекта со всеми свойствами addcopy - (Создать аналог) с опцией <Несколько>image.png.85d7f77dcdd66c3130c3ee2eef95008f.png

 

 

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

В  объектах СПДС есть переменная "CutAcElements" которая отвечает за выбор способа перекрытия примитивов (маскировки) - см. скрин 1.

Если в пользовательский уМаркер добавить переменную с таким именем (см. скрин 2), то в свойствах маркера действительно появляется параметр "Перекрывать примитивы" со списком вариантов (см. скрины 3, 4) - но при этом перекрытие (маскировка) не работает.

 

1) Почему переменная "CutAcElements" доступна для пользователя, но не работает в уМаркере?

2) Можно ли в следующих версиях nCad починить эту переменную в уМаркерах и сделать полноценную маскировку для них?

3) Как сделать в nCad версии 21/22 полноценную маскировки в уМаркере по контуру его графики? (в 23 не пробовал, но думаю всё так же)

 

Ps если включить маскировку в состав представления маркера, то её видно черным квадратом (в том числе и на печати .

 

 

 

 

 

 

screenshot.21.jpg

screenshot.24.jpg

screenshot.23.jpg

screenshot.25.jpg

Edited by Fonkalitin
Link to comment
Share on other sites

4 минуты назад, Fonkalitin сказал:

Если в пользовательский уМаркер добавить переменную с таким именем

У маркера нет и не может быть "Контура перекрытия", как у стандартного объекта.

Спойлер

image.png.f22a53bf168137ebe65dde774c35955e.png

 

Можно  в свойствах маркера найти "Маскировать тексты":

image.png.f2a356cbff08c0d6a14b0fa7d7f13f2e.png

 

Link to comment
Share on other sites

Да, но маскировки только под текстом не всегда достаточно. Почему в собранном маркере маскировка работает не корректно? Её видно на чертеже и при печати. Приходиться добавлять в маркер ненужные мелкие текстовые символы с пробелами и таким образом имитировать маскировку под всем объектом (по контуру)... жуткий костыль без объяснения почему так. 

Link to comment
Share on other sites

22 часа назад, Fonkalitin сказал:

Приходиться добавлять в маркер ненужные мелкие текстовые символы с пробелами и таким образом имитировать маскировку под всем объектом (по контуру)...

Наверное нужен пример такого маркера!? 

Проверил на древних маркерах маскировку.

После этого изменения - замечаний не было.

Варианты подбора ширины маркера.dwg Варианты подбора ширины маркера.mcdi

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Tell a friend

    Love Официальный форум компании Нанософт Разработка? Tell a friend!

×
×
  • Create New...