Перейти к содержанию
swell{d}

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

Рекомендуемые сообщения

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В ‎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

Поделиться сообщением


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

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

 

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

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

 

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

 

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

Изменено пользователем Mитька

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

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

 

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

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

Поделиться сообщением


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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

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

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

Поделиться сообщением


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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

IImin;

IImax;

Curve_code;

 

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

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

типа так...

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

Изменено пользователем doctorraz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

типа так...

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

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

3Untitled.png

SCHEME_04_3_2_FUSE.rar

Поделиться сообщением


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

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

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

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

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

Поделиться сообщением


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

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

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

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

 

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

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

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

 

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

 

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

 

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

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

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

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

----------

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

----------

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Тут только DrawReference. Кроме него ничего не проверял:

img-2019-04-30-14-35-12.png

xRef samples.dwg

xRef samples.zip

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

Изменено пользователем doctorraz

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...

×
×
  • Создать...