Jump to content

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


Recommended Posts

Всем добрый день.

 

создал маркер для обозначения координат центра окружности - на скрине(маркер) во вложении.

Вопросы:

1) Каким образом округлить выводимые значения координат? Также интересует каким образом например округлять на два знака после запятой? Текущий способ- {int(xx)} не округляет, а отбрасывает не целую часть.

2) Что в свойствах атрибута означают значки? (три типа: 2 стрелочки, 1 стрелочка, 1 стрелочка с замочком). не нашел этого в справке...

3) Откуда взялись ручки на которые указывают стрелки на скрине "ручки.png" , и зачем они нужны? маркер создавал из блока который видно на скрине и никаких "ручек" нигде не прописывал.как отключить созданные?

4) Создать ручку зеркального отображения значений маркера можно через "мастер объектов" ? Подскажите текст скрипта.

post-45933-0-92343700-1405846699.png

post-45933-0-76318200-1405847614.png

Link to comment
Share on other sites

>> Текущий способ- {int(xx)} не округляет, а отбрасывает не целую часть.

Классика программирования: {int(xx+0.5)} - округление в большую сторону...

Link to comment
Share on other sites

{int((yy)*1000 + 0.5 )/1000} - 3 знака после запятой. {int((yy)*10 + 0.5 )/10} - один знак. Только шрифт маркера как то странно себя ведет, ну да ладно.

Первый вопрос решился...

Edited by Ivanco
Link to comment
Share on other sites

1) Каким образом округлить выводимые значения координат? Также интересует каким образом например округлять на два знака после запятой? Текущий способ- {int(xx)} не округляет, а отбрасывает не целую часть.

Уже ответили? Вообще проще это сделать через "Форму" Смотрите объект в папке "примеры"ScreenShot1044.png

В этом же примере указана возможность использовать"Измеритель".

2) Что в свойствах атрибута означают значки? (три типа: 2 стрелочки, 1 стрелочка, 1 стрелочка с замочком).

При использовании "Взять свойство с объекта" устанавливается "Тип зависимости". Одно направленная, Двунаправленная и Закрытая.
не нашел этого в справке...
Исправим :-(

3) Откуда взялись ручки на которые указывают стрелки на скрине "ручки.png" , и зачем они нужны? маркер создавал из блока который видно на скрине и никаких "ручек" нигде не прописывал.как отключить созданные?

Отключить нельзя. Управляют вписыванием текста.

4) Создать ручку зеркального отображения значений маркера можно через "мастер объектов" ? Подскажите текст скрипта.

Ручку для всего маркера? Нельзя. При перемещении маркера за "красный" грипс текст отзеркалится.ScreenShot1045.png

Скрипт для самого маркер создать нельзя. Можно создать только для обработки исполнений, контролов и событий на "Форме маркера". Пример выложу. Позже. Смотри в архиве и смотри вот эту тему:

Опора воздушной линии.rar

Edited by MCAD
Link to comment
Share on other sites

спасибо- требуемый результат достигнут.

Редактор форм ( да и вообще маркеры) - интересные инструменты. Жаль справка у Вас по этой части непроработанна.

 

При использовании "Взять свойство с объекта" устанавливается "Тип зависимости". Одно направленная, Двунаправленная и Закрытая 

как работают? можно в двух словах?

 

В этом же примере указана возможность использовать"Измеритель".

разобрался как из формы вызывать "измеритель" . Но не понял как из него обращаться напрямую к свойству объекта. Т.е. я поставил режим "свойство" , работает так: выбираю объект- отображается окно свойств- выбираю свойство(в моем случае координату Х центра окружности).

Как мне его(определ.свойство объекта) напрямую в форму брать?

Edited by Ivanco
Link to comment
Share on other sites

В 24.07.2014 в 13:28, Ivanco сказал:

как работают? можно в двух словах?

00:10 Создаём «Универсальный маркер»

00:15 По умолчанию тип поля «Простое»

00:20 Мы можем ввести значение для отображения на поле чертежа

00:26 Открываем маркер на редактирование и начинаем редактировать его свойства.

00:30 Добавляем свойства «Длина стержня» с «объекта Болт». Автоматически устанавливается «Однонаправленная зависимость»

00:40 Значение атрибута автоматически меняется на чертеже

00:45 Редактируем длину болта. Автоматически меняется значение атрибута маркера.

00:50 Редактируем свойства маркера и устанавливаем «Двунаправленную зависимость»

01:00 Меняем значение атрибута маркера на 120. Закрываем диалог редактирования. Меняется и значение маркера и Длина «дочернего» объекта «Болт» (если при этом дочерний объект имел свои зависимости, например участвовал в отчете или спецификации, то там тоже меняется

01:10 Открываем диалог редактирования болта. Смотрим, что максимальная длина болта 200 мм.

01:20 Открываем на редактирование маркер и меняем тип зависимости на связь с табличными атрибутами.

01:30 Вводим в поле редактирование значение длины стержня болта, не предусмотренное ГОСТ’ом. Автоматически определяется максимально допустимое значение, но в поле редактирования доступны и значения введённые пользователем.

Более полно рассмотрены «зависимости» в команде SpConstraint (mcConstraint)

Link to comment
Share on other sites

В 20.07.2014 в 16:20, Ivanco сказал:
Подскажите текст скрипта.

Пример использования скрипта для управлением исполнениями маркера и управления "контролами" на форме.

00:07 Открыли маркер На редактирование mcImplementation - системный атрибут (появляется при создании дополнительного исполения) В нашем случае вычисляемый (иконка соответствующая справа)

00:13 Показываю, что у маркера два исполенения (может быть сколько угодно)

00:20 Задаём условие если атрибут Ground ==1 то исполнение "Main" если нет то "LLL"

00:40 Открываем в мастере объектов: Так как это маркер, то по умолчанию у него скрипт пустой. (можно просто по двойному клику перейти на ""Пользовательские функции" Смотрим: Form.image1.Visible = 1 Человеческим языком- при выполнении функции Рисунок1 на Форме будет видимым :)

00:51 Открываем Форму на редактирование

01:00 Выделяем "Рабиобатон" "Заземление. Ему присвоена переменная "Grounding" созданная при создании маркера.

01:05 Присваиваем значение "1" (оно будет обсчитываться в маркере при вычислении атрибута отвечающего за "исполнение" Уточнение (там, в мультике есть еще один "Имедж") он не участвует в работе маркера (забыл убрать)

То что не смог срежисировать в мультике но важно:

На самой форме в свойствах (когда ни один контрол не выделен) "Событие" " на открытие - функция

 

 function OnOupen()
 { Form.image1.Visible = 1;
  Form.image3.Visible = 0;
 }
//Принудительно выставляем видимость рисунков
//На самой форме в свойствах (когда ни один контрол не выделен)  "Событие" " на открытие - функция
 function OnOupen()
 { Form.image1.Visible = 1;
  Form.image3.Visible = 0;
 }

То есть принудительно выставляем видимость рисунков

И ещё: Там два рисунка, одинаковых размеров один над другим

Исходник тут:

Link to comment
Share on other sites

спасибо за развернутые ответы.пока вопросов больше нет. ушел разбираться)

  • Like 1
Link to comment
Share on other sites

  • 3 months later...
  • 2 years later...

Подскажите пожалуйста как сделать автоматизированную нумерацию?

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

Создал свой маркер как описано в справке. Автонумерация работает, но не могу разобраться как забить ее формулой чтоб при удалении одного из маркеров, она автоматом перенумеровала следующие.

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

Edited by Руслан72
Link to comment
Share on other sites

В 16.08.2017 в 10:51, Руслан72 сказал:

Подскажите пожалуйста как сделать автоматизированную нумерацию?

Автоматической перенумерации пока нет.

Можно это сделать руками в любом порядке.

Например:

В 16.08.2017 в 10:51, Руслан72 сказал:

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

mcShowFormOnInsert - переменная если она 0, то диалог при вставке не показывается, может быть вычисляемой

Формы по слоям и исполнениям.zip

  • Like 1
Link to comment
Share on other sites

Нашел старый ролик с легендой:

 

 

Один и тот же универсальный маркер может по-разному вести себя в зависимости от окружения и задач, которые он должен выполнять:

00:00 На чертеже присутствую элементы расположенные на трёх разных слоях. Два из которых («Зелёненький» и «Красненький»), будут управлять поведением нашего маркера. При указании в качестве «родительского» объекта отрезка не лежащего на этих слоях «Форма» (диалог) не показывается.

00:05 При указании отрезка, расположенного на слое «Красненький» открывается «Форма2»;

00:16 При указании отрезка, расположенного на слое «Зелёненький» открывается «Форма1». В каждом диалоговом окне, для одного и того же атрибута универсального маркера назначены разные контролы, с разными предопределёнными значениями.

00:31 Все маркеры данного вида имеют одинаковые атрибуты, отображаемые в «свойствах объектов» (инспекторе) и доступные для команд быстрого выбора и фильтра в отчете таблиц, например.

00:48 Открываем маркер «на редактирование» . Системный атрибут «Универсального маркера» mcShowFormOnInsert , управляющий показом формы становится равным «1» (показывать диалог) только в том случае если объект лежит на слоях «Зелёненький» или «Красненький». В других случаях он равен «0» и диалог не показывается.

01:01 Системны атрибут mcFormName – отвечающий за то, какая форма будет вызвана, является «Вычисляемым» и равен атрибуту FormList. Который сам является вычисляемым в зависимости от слоя «родительского» объекта.

01:20 Разные формы могут иметь разные значения и виды управляющих элементов для одних и тех же атрибутов.

  • Like 2
Link to comment
Share on other sites

интересно!!!!

а сам маркер... на посмотреть.

все же в СПДС заложен огромный потенциал, но в справке даны далеко не все свойства и команды.

так и приходится собирать по крохам с форумов.

собрать бы все в кучу, я б поучаствовал.

а то возможности у программы есть, а гида нет.

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

все же в СПДС заложен огромный потенциал,

 

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

 

но в справке даны далеко не все свойства и команды.

 

Действительно не все. Часть команд только для "Служебного пользования".

 

а то возможности у программы есть, а гида нет.

 

Я пытался разбить материалы по объектам.

 

img-2017-08-17-18-09-04.png

 

По универсальным маркерам

  • Like 1
Link to comment
Share on other sites

  • 3 years later...

А как сделать самодельный "маркер". То есть аналог для голого нанокада? Задача: сделать блок с атрибутом, значение которого при вставке каждого нового блока изменялось бы на +1 относительно предыдущего блока с атрибутом.  Т.е. условно нужен блок с "автонумерацией"

Link to comment
Share on other sites

 

В 24.09.2020 в 10:34, omsksn сказал:

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

В этой ветке вряд ли кто-то ответит.

 

А просто уникальный номер в атрибуте не устроит? 

Например:

  • Сортировка по Z
  • Сортировка по Y
  • Сортировка по X

В платформе не будет доступа к форме, но переменные в таблице будут доступны в "Инспекторе" приложенного файла.

Тела документов

Link to comment
Share on other sites

  • 2 months later...

Спасибо. Я сделал простой блок в котором есть точка и один атрибут (который является номером точки). Вставляю несколько таких блоков в нужные места, а потом протыкиваю их все и ставлю в атрибутах номер по порядку. Потом делаю таблицу, в которой подхватываются свойства блоков (содержимое атрибутов, координаты по  Х и Y). Вот и хотелось бы автоматизировать вставку каждого нового блока и что бы там автоматом номер точки проставлялся. НУ да ладно. Пока более 50ти точек не приходилось ставить, а 50 точек пронумеровать не долго в принципе. Вообще данными манипуляциями мы выдаем Заказчику таблицу с координатами фундаментов, что бы он мог открыть Подрядчику наряд на земляные работы. Слава богу, пока фундаментов не много обычно, поэтому справляемся пока ручным протыкиванием

 

Edited by omsksn
орфография
Link to comment
Share on other sites

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

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

Где-то был уже пример,  простановки номеров точек НО  с помощью маркера.

 

Тела документов

 

Link to comment
Share on other sites

4 часа назад, omsksn сказал:

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

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

Создаёте ещё один столбец, в котором будете присваивать требуемое значение вашего параметрического объекта значению из столбца с нумерацией.
Далее выбираете область, в которой работать будете и вуалая - все новые параметрические объекты, попавшие в эту область будут нумероваться автоматически)

PS. Я не уверен, но возможно так же можно и с атрибутом блока провернуть) Это лучше спросите у @MCAD

Вот пример, как подобное реализована в параметрике 

 

Edited by dromandon
  • Like 1
Link to comment
Share on other sites

16 минут назад, dromandon сказал:

но возможно так же можно и с атрибутом блока провернуть)

Можно. Вот же пост про атибуты блока 

Я просто не очень понимаю,  по какому "Закону" происходит нумерация 

Link to comment
Share on other sites

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

а, прошу прощения, действительно))

 

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

Я просто не очень понимаю,  по какому "Закону" происходит нумерация 

Я тоже, к слову, перечитал, не совсем понял)
Вначале показалось что по координатам точек, но теперь вижу, что вроде наооборот, вначале объекты нумеруются по какой-то логике, а потом уже с них берутся координаты)

  • Like 1
Link to comment
Share on other sites

  • MCAD changed the title to маркер_вопросы (Универсальный маркер СПДС)

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...