Jump to content

параметрические объекты СПДС


Recommended Posts

да грабли у каждого свои.

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

а. надо разбираться

б. ты чо самый умный что мы по твоему будем делать, мне спешить некогда

  • Like 2
Link to comment
Share on other sites

В ‎27‎.‎04‎.‎2019 в 13:40, doctorraz сказал:

а. надо разбираться

б. ты чо самый умный что мы по твоему будем делать, мне спешить некогда

:-)

B-A = C - Много свободного времени

С + B = Я: Сам сделаю. Лучше, когда-нибудь, может быть. Знакомо :-(

 

В ‎27‎.‎04‎.‎2019 в 09:42, Mитька сказал:

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

Маркер - он универсальный. Он умеет привязывать и выравнивать геометрию под родительский объект. Но у него нет "геометрических зависимостей"

http://www.youtube.com/watch?v=QMJay5JM8TY&feature=youtu.be

Зависимости подобъектов.zip

  • Like 1
Link to comment
Share on other sites

Маркер - он универсальный. Он умеет привязывать и выравнивать геометрию под родительский объект. Но у него нет "геометрических зависимостей"

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

 

К примеру в группе есть 3 СПДС объекта: круг, квадрат и ромб. У каждого объекта есть переменная А, которая равна 1,2,3 соответственно. При вставке маркера и привязке его к одному из объектов, он считывает пременную А и в зависимости от неё меняет свои свойства/геометрию/поведение. Геометрическая зависимость для маркера в моём представлении достаточна в формате Исполнений.

Но эт философия... Тут кому как вкатывает. Если Доктор предпочитает обставлять маркерами все группы после вставки, то мне милее изначально включать маркера в состав групп... Дело вкуса.

 

Просто часть свойств маркера можно задать уже при вставке. В зависимости от родительского объекта. Что быстрее, чем менять их в маркере полностью с начала до конца. А это уже касается 70% рабочего времени, а не 10...

 

Но тут опять стоит взвесить трудозатраты и экономию времени от них....

Edited by Mитька
  • Like 1
Link to comment
Share on other sites

>> Если Доктор предпочитает обставлять маркерами все группы после вставки

не совсем так, под каждый раздел, свой шаблон, там уже все есть

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

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

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

 

по номенклатуре у меня сейчас около 4к позиций...

и всеравно, нехватает.. разные производители

  • Like 1
Link to comment
Share on other sites

не совсем так, под каждый раздел, свой шаблон, там уже все есть

Ну в основном мы сходимся в итоге: группа+маркеры. Аффтар, делай так! Быстрее всего и универсальней. B)

  • Like 1
Link to comment
Share on other sites

Ну в основном мы сходимся в итоге: группа+маркеры. Аффтар, делай так! Быстрее всего и универсальней. B)

Не, ну маркеры это круто, но тема то про "Параметрические объекты СПДС", так отобьёте всё желание объектами заниматься :-)

Может про "Универсальные маркеры" отдельную тему создадите?

PS: И мне тоже есть что

PSS: Про группы, кстати,

отдельную тему ;-)
  • Like 2
Link to comment
Share on other sites

Не, ну маркеры это круто, но тема то про "Параметрические объекты СПДС", так отобьёте всё желание объектами заниматься :-)

Ненене! Всё не так. =)

Это просто недосказанность! Группа "Параметрических объектов СПДС" + маркеры. =)

  • Like 2
Link to comment
Share on other sites

В общем есть 3 параметра:

IImin;

IImax;

Curve_code;

 

Хочу сделать следующее:

В форме своей путем "Поле со списком" хочу менять значение параметра Curve_code, 4 варианта (A, B, C, D);

И в соответсвии со значением установленным IImax, IImin должны меняться;

Допустим при Curve_code = B, IImin=5, IImax=10;

Вот как это реализовать в скрипте? В мастере скриптов лазил лазил, так и не удалось найти где такую зависимость поставить.

Link to comment
Share on other sites

ну если будет меняться только через форму то логично обработку условия поставить в OnDialogChanged

типа так...

function OnDialogChanged {
if (Curve_code =="B"){
IImin=5;
IImax=10;
}
}

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

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

  • Like 1
Link to comment
Share on other sites

ну если будет меняться только через форму то логично обработку условия поставить в OnDialogChanged

типа так...

function OnDialogChanged {
if (Curve_code =="B"){
IImin=5;
IImax=10;
}
}

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

Link to comment
Share on other sites

я не умею мастер скриптов :wub:

В общем не получается никак. Не хочет воспринимать изменение этого параметра.

Прилагаю скрин и файл.

Вот на скрине есть выделено красным, вот в этой строке должно меняться при смене Параметра (CURVE_CODE);

В форме можно посмотреть я по разному пытался. Не получается

3Untitled.png

SCHEME_04_3_2_FUSE.rar

Link to comment
Share on other sites

Не хочет воспринимать изменение этого параметра.

В форме можно посмотреть я по разному пытался. Не получается

Не вникал. Сделал как быстрее

img-2019-04-29-17-55-23.png

img-2019-04-29-17-55-48.png

  • Like 1
Link to comment
Share on other sites

Не хочет воспринимать изменение этого параметра.

В форме можно посмотреть я по разному пытался. Не получается

Не вникал. Сделал как быстрее

img-2019-04-29-17-55-23.png

img-2019-04-29-17-55-48.png

Отлично, работает. Спасибо!

А как то можно это сохранить чтобы при перезаписи макроса (когда чтото меняться будет) чтобы пользовательские функции не пропадали?

Link to comment
Share on other sites

А как то можно это сохранить чтобы при перезаписи макроса (когда что-то меняться будет) чтобы пользовательские функции не пропадали?

Увы. Сохранить нельзя. :-(

Я, для себя, иногда создаю "левое" "Исполнение" и копирую туда часть скрипта.

 

img-2019-04-30-08-53-13.png

 

Главное потом не забыть удалить.

  • Like 1
Link to comment
Share on other sites

Ну в основном мы сходимся в итоге: группа+маркеры. Аффтар, делай так! Быстрее всего и универсальней. B)

Не, ну маркеры это круто, но тема то про "Параметрические объекты СПДС", так отобьёте всё желание объектами заниматься :-)

Может про "Универсальные маркеры" отдельную тему создадите?

PS: И мне тоже есть что

PSS: Про группы, кстати,

отдельную тему ;-)

 

Да наоборот хорошо, что оно всё здесь, в одном месте. Можно просто название темы расширить. =)

Link to comment
Share on other sites

А как то можно это сохранить чтобы при перезаписи макроса (когда что-то меняться будет) чтобы пользовательские функции не пропадали?

Увы. Сохранить нельзя. :-(

Я, для себя, иногда создаю "левое" "Исполнение" и копирую туда часть скрипта.

 

img-2019-04-30-08-53-13.png

 

Главное потом не забыть удалить.

А то же самое (в плане вот этих условий в пользовательской функции) можно через мастер скриптов сделать? Когда через него тогда не удаляется.

Link to comment
Share on other sites

А то же самое (в плане вот этих условий в пользовательской функции) можно через мастер скриптов сделать? Когда через него тогда не удаляется.

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

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

"Мастер скриптов" - это инструмент быстро создать прототип, Записать в нужные места параметры, расставить плоскости (и то потом руками приходится редактировать некоторые параметры)

Link to comment
Share on other sites

А то же самое (в плане вот этих условий в пользовательской функции) можно через мастер скриптов сделать? Когда через него тогда не удаляется.

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

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

"Мастер скриптов" - это инструмент быстро создать прототип, Записать в нужные места параметры, расставить плоскости (и то потом руками приходится редактировать некоторые параметры)

 

Хорошо с этим понятно.

Теперь появились другие вопросы:

1. Как в форме активировать либо одну часть ввода данных либо ввод данных с помощью таблицы (на скрине выделено)

То есть захожу в форму и там выбираю либо Manual - и ввожу вручную, либо Select и выбираю из таблицы? На каких то видео видел что при установке галочке на форме выплывает вот такая таблица выбора ну и далее... вот так же хочу.

2. Как вообще сделать так чтобы выбранные параметры в этой таблицы вписывались в мои параметры? ну то есть выбрал я автомат определенный, и его определенный параметр вписался в мой основной параметр отображения (FUSE_NAME_1)?

3. Вернемся к параметру CURVE_CODE, который мне удалось настроить благодаря Вашей помощи, но вот если мне эта ручка выбора (A,B,C,D) нужна только в случае Manual ввода, а в случае Select мне надо чтобы параметр CURVE_CODE становился равным выбранному автомату, у которого есть табличный параметр Curve_code (с маленькой буквы). Ну то есть либо CURVE_CODE берет свое значение из табличного параметра в случае выбора Select, либо в случае Manual я его выбираю ручкой (шкалой выбора - A, B, C, D).

 

 

4Untitled.png

 

Link to comment
Share on other sites

>>2. Как вообще сделать так чтобы выбранные параметры в этой таблицы вписывались в мои параметры? ну то есть выбрал я автомат определенный, и его определенный параметр вписался в мой основной параметр отображения (FUSE_NAME_1)?

----------

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

Link to comment
Share on other sites

>>2. Как вообще сделать так чтобы выбранные параметры в этой таблицы вписывались в мои параметры? ну то есть выбрал я автомат определенный, и его определенный параметр вписался в мой основной параметр отображения (FUSE_NAME_1)?

----------

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

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

Link to comment
Share on other sites

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

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

Edited by doctorraz
Link to comment
Share on other sites

1. Как в форме активировать либо одну часть ввода данных либо ввод данных с помощью таблицы (на скрине выделено)

Например как работают картинки в маркере:

 

 

function onImpl ()
{
if mcImplementation == "Квадрат" {
 Form.image1.Visible = TRUE;
 Form.image2.Visible = FALSE;
 Form.image3.Visible = FALSE;
 }
if mcImplementation == "Треугольник" {
 Form.image1.Visible = FALSE;
 Form.image2.Visible = TRUE;
 Form.image3.Visible = FALSE;
 }
if mcImplementation == "Круг" {
 Form.image1.Visible = FALSE;
 Form.image2.Visible = FALSE;
 Form.image3.Visible = TRUE;
 }
}

 

 

 

Повесить на кнопку, например событие "на нажатие" и присвоить пользовательскую функцию:

function Add_prop { // функция вызывающая дополнительную форму. "Висит" на кнопке "дополнительные свойства"
ShowForm("Form2");
}

http://www.youtube.com/watch?v=kBp-fkC9taw&list=PLxzNmJ3Maam60cPuVvKsN2ew17wdd-4fh&index=56&t=0s

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

For Video.zip

  • Like 2
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...