Форум Zentec

Программное обеспечение => Вопросы по zWorkbench => Тема начата: VoronovMaksim88 от 05 июля 2015, 07:14:06

Название: Поковыряемся в связях
Отправлено: VoronovMaksim88 от 05 июля 2015, 07:14:06
Уважаемые разработчики, прошу вас почитать мои рассуждения.

Кидаем на поляну два блока and, соединяем выход первого с любым входом второго, получаем именованную связь, кликаем по ней правой кнопкой. И внимательно всё проверяем.
Тип связи: понятно, работает.
Свойства-название: понятно, работает.
Свойства-блокировка: НЕ понятно. Для чего нужна блокировка связи ?
Закрепить\Освободить: НЕ понятно. Для макросов и блоков закрепление, насколько я понял, это тоже самое что блокировка т.е. фиксирование на поляне, запрет изменения положения, а для неименованных связей как это работает?
Разорвать связь: понятно работает.
При чём если соединить выход первого блока and с двумя входами второго блока and, выделить обе получившиеся связи и разорвать их, то zwb создаст две переменных, правильно ли это? Хорошо бы чтобы он их называл по разному.
Добавить\удалить сегмент: НЕ понятно. Как это работает?
Оптимизировать: понятно, работает. Но я бы всё же попросил сделать где-нибудь галочку "оптимизировать всегда", что бы zwb после любого перемещения сам сразу всё оптимизировал.
В конец\ В начало:  понятно, работает.
Удалить: работает.

Переделываем теперь связь в именованную, кликаем правой кнопкой и пройдемся по тем же пунктам:
Тип связи: понятно, работает.
Свойства-название: понятно, работает.
Свойства-блокировка: НЕ понятно. Для чего нужна блокировка связи ?
Закрепить\Освободить: НЕ понятно.
Разорвать связь: понятно работает. НО если выход первого блока AND соединить именованной связью с двумя входами второго блока and и попробовать разорвать, то ZWB завершает работу с ошибкой, без сохранения проекта. Поэтому я пишу этот текст второй раз ))
Добавить\Удалить сегмент, Оптимизировать: для именованной связи разве нужны эти опции ?
В начало\В конец, Удалить: понятно, работает.

Ещё на мой взгляд, важный момент - перенос именованной связи. Функция "перенос связи", я думаю, должна быть в контекстном меню самой связи, а не входа\выхода к которому она подключена. Ведь переносится именно связь, а не вход\выход. Я даже сперва не сразу нашёл где эта опция, думал для именованных связей не сделали ещё.

Благодарю за внимание.


Название: Re: Поковыряемся в связях
Отправлено: Artem от 06 июля 2015, 10:36:35
1. Свойство Блокировка (команды Закрепить/Освободить) запрещает или разрешает изменять конфигурацию связи. То есть блокирует добавление новых сегментов линии связи и их перемещение. Для добавления сегмента необходимо вызвать контекстное меню около того отрезка которому хотим добавить. При этом этот отрезок связи делится пополам. Добавить новые сегменты можно только к тем отрезкам, которые не примыкают непосредственно к выходам блоков.
2. Пункты меню, относящиеся к блокировке связи в именованной связи не нужны, будут убраны в след. релизе.
3. Команда Разорвать связь переделана в новом релизе. Если к одному выходу подключены несколько связей, то переменная будет создаваться одна. Ошибка при вызове этой команды для именованных связей исправлена.
4. Оптимизация связей. Если производить перемещение блоков с нажатой кнопкой Shift, то все связи, подвязанные к нему будут оптимизированы.
5. По поводу переноса связи. Если этот пункт перенести в контекстное меню связи, то встает вопрос, что переносить - начало связи или конец. Так как при выделении связи (как обычной так и именованной) она выделяется вся целиком.
Название: Re: Поковыряемся в связях
Отправлено: Artem от 06 июля 2015, 11:28:52
Обновление выложено на сервер
Название: Re: Поковыряемся в связях
Отправлено: VoronovMaksim88 от 11 июля 2015, 20:58:08
По поводу добавления сегментов можно чуть подробнее, со скриншотами. Что-то они не добавляется ни как.
Название: Re: Поковыряемся в связях
Отправлено: mike от 14 июля 2015, 09:10:15
Попробовал создать видео. Это мой первый опыт, так что особо не пинайте.

http://www.youtube.com/watch?v=yRP1mXdUuL4
Название: Re: Поковыряемся в связях
Отправлено: VoronovMaksim88 от 14 июля 2015, 18:15:08
Спасибо, за видео. Наглядно понятно.
Но сегменты у меня всё таки иногда не добавляются, к сожалению закономерность установить не удалось.
Название: Re: Поковыряемся в связях
Отправлено: mike от 14 июля 2015, 18:24:24
Мы немного ломаем трассировщик. Чуть позже подштукатурим. У меня то же пару раз отказался делать сегмент.
Название: Re: Поковыряемся в связях
Отправлено: mike от 14 июля 2015, 18:32:43
Кстати, есть еще одна фишка.
Если собираешь макрос из кучи других макросов, то встает вопрос о именование ножек основного (большого макроса).
Сейчас эта проблема решается так:
И вроде все хорошо, но группой нельзя скопировать. ЗВБ недоумевает ;) от такой задачи.

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

Как идея?
Название: Re: Поковыряемся в связях
Отправлено: VoronovMaksim88 от 14 июля 2015, 18:38:52
Хорошая, логичная мысль. Поддерживаю.
Название: Re: Поковыряемся в связях
Отправлено: VoronovMaksim88 от 14 июля 2015, 19:36:14
Цитата: Artem от 06 июля 2015, 10:36:35
5. По поводу переноса связи. Если этот пункт перенести в контекстное меню связи, то встает вопрос, что переносить - начало связи или конец. Так как при выделении связи (как обычной так и именованной) она выделяется вся целиком.

Да, выделяется она целиком, но я ж не могу кликнуть одновременно по входу и выходу правой кнопкой. (ну только если они не залезли друг на друга, хотя и в этом случае кто-то выше). Уверен, так было бы правильнее и удобнее.
Название: Re: Поковыряемся в связях
Отправлено: ALexandr от 08 декабря 2016, 10:00:27
Именованную связь нельзя переименовать двойным кликом, при этом на простой связи работает!
Название: Re: Поковыряемся в связях
Отправлено: mike от 08 декабря 2016, 10:23:56
Уже знаем. Исправим