Сенсор (Sensor)


Примитив Сенсор используется как управляющий элемент с набором дискретных состояний: нажата/отжата левая кнопка мыши и нажата/отжата правая кнопка мыши, а также с двумя аналоговыми измерениями: координата курсора мыши по оси X и координата по оси Y.
Вставка
- Кликнуть в панели примитивов по кнопке
. - Кликнуть в поле окна проекта или графического редактора в точке вставки сенсора. В окне появится светло-серый квадрат без заливки, обозначающий область окна, контролируемую сенсором. Во время расчета данный квадрат становится невидимым.
Редактирование
- Выделить сенсор, кликнув на его изображении.
- Для перемещения сенсора навести на него указатель мыши - изображение указателя изменится на изображение указывающей руки, нажать ЛКМ и удерживая её переместить сенсор на новое место.
- Для изменения высоты и ширины зоны сенсора подвести указатель мыши к красному квадратному маркеру в центре одной из сторон прямоугольника – изображение указателя изменится на двунаправленную стрелку, нажать ЛКМ и удерживая её переместить маркер на расстояние, соответствующее новому размеру. При этом прямоугольник будет трансформироваться симметрично относительно своего центра.
- Для поворота подвести указатель мыши к красному квадратному маркеру в центре правой (если вращение ещё не выполнялось) стороны прямоугольника – изображение указателя изменится на двунаправленную стрелку, нажать ЛКМ и удерживая её переместить маркер вверх или вниз на требуемый угол. При выполнении данной операции сложно добиться сохранения ширины прямоугольника, приуроченной к данному маркеру, поэтому если важно сохранить размеры и выполнить только поворот, то предпочтительнее задать угол поворота в свойстве "Угол поворота / Angle" данного примитива.
Свойства

| Название | Имя | Значение по умолчанию |
Допустимые значения {в скрипте} в окне свойств |
Справка |
| Имя объекта | Name | SensorZone<N> | Непрерывная последовательность цифр и латинских букв |
Данное имя используется для обращения к свойствам объекта, например, в скрипте: SensorZone3.Visible. |
| Тип элемента | ClassName | Sensor | Значение предопределено | Тип объекта, определяющий его внешний вид объекта и набор свойств. |
| Подсказка | Hint | <нет> | Любой текст | Текст подсказки, всплывающей при наведении курсора мыши на объект. |
| Отображать подсказку при редактировании | ShowHintOnEdit | Нет |
{0} Нет {1} Да |
Включает и отключает отображение всплывающей подсказки в режиме редактирования. |
| Видимость при выполнении | Visible | Да |
{0} Нет {1} Да |
Включает и отключает отображение объекта в режиме "Индикация" при запуске расчёта. |
| Цвет | Color | <черный> | Цвет выбирается из стандартной системной палитры. | не применяется |
| Координаты точек | Points | [(X1,Y1),(X2,Y2), (X3,Y3)] |
Значения float, имена сигналов, математические выражения: [(56 , 104), (112 , src1),(coord3*k4 , 40)] |
(X1,Y1) – координаты центра описывающего прямоугольника. (X2,Y2) – координаты маркера на правой стороне описывающего прямоугольника. Данный маркер также используется для поворота объекта. (X3,Y3) – координаты маркера на верхней стороне описывающего прямоугольника.
|
| Ссылка | Instance | <нет> | Значения, задаваемые в окне "Выбор ссылки". | Вызов окна "Выбор ссылки". Объект используется в качестве чувствительной области для вызова различных действий: переключения между страницами проекта, управления другими блоками, открытия файлов и пр. |
| Ссылка при редактировании | EditInstance | Нет |
{0} Нет {1} Да |
Обработка объектом вызова ссылки в режиме редактирования. |
| Действие для вывода ссылки | InstanceMode | Двойной щелчок |
{0} Двойной щелчок {1} Щелчок левой кнопкой {2} Щелчок правой кнопкой |
Выбор варианта активации ссылки. |
| Ярлык | Tag | 0 | Любое целое число или интерпретируемое выражение | Метка в виде произвольного числа. Позволяет обращаться ко всем объектам с одинаковым ярлыком при написании скриптов. Например, когда в процессе счета требуется скрыть или показать группу объектов. |
| Шаблон автозаполнения | Template | <нет> | Подробнее о шаблонах автозаполнения. | Заданный в специальном формате текст, позволяющий автоматически создавать связи и присваивать имена сигналам объекта. |
| Номер решателя | Layer | 0 | Любое целое число или интерпретируемое выражение | Число, задающее номер расчетного ядра, которое производит расчет математической модели объекта. Применяется при использовании нескольких расчетных программ. |
| Скрипт инициализации объекта | OnInitScript | <нет> | Текст скрипта | Текст скрипта, исполняемого непосредственно перед запуском расчёта. |
| Скрипт исполнения объекта | OnRunScript | <нет> | Текст скрипта | Текст скрипта, исполняемого при выполнении расчёта. |
| Угол поворота | Angle | 0 | Значения float, имена сигналов, математические выражения. | Угол поворота объекта в радианах при вращении вокруг центра прямоугольника, описывающего эллипс. Угол отсчитывается по часовой стрелке от горизонтальной оси. |
| Ширина | Width | 120 | Значения float, имена сигналов, математические выражения. | Ширина описывающего прямоугольника. |
| Высота | Height | 120 | Значения float, имена сигналов, математические выражения. | Высота описывающего прямоугольника. |
| Режим сенсора | Mode | Кнопка без фиксации |
{0} Кнопка без фиксации {1} Кнопка c фиксацией {2} Движок |
Выбор режима активации сенсора курсором мыши. Кнопка без фиксации – сенсор переключается в состояние "нажато" только пока на нем нажата кнопка мыши. Координаты курсора мыши при его прохождении над сенсором постоянно записываются в свойства XPos и YPos. Кнопка c фиксацией – сенсор остается нажатым после клика мышью на нем. Для возврата в исходное состояние нужно повторно кликнуть по сенсору. Координаты курсора мыши при его прохождении над сенсором постоянно записываются в свойства XPos и YPos. Движок – реакция на нажатия мыши аналогична режиму кнопки без фиксации. Координаты курсора мыши записываются в свойства XPos и YPos только при нажатии любой из кнопок мыши. |
| Нормировка координат | Norm | Нет |
{0} Нет {1} Да |
Да – координаты внутри области сенсора, записывающиеся в свойства XPos и YPos, нормируются на диапазон от 0 до 1 по обеим осям. Нет – в свойства XPos и YPos записываются стандартные координаты, попавшие в область сенсора. |
| Нажата левая кнопка | LeftButton | Нет |
{0} Нет {1} Да |
Флаг, сообщающий: нажата или не нажата ЛКМ над областью сенсора. |
| Нажата правая кнопка | RightButton | Нет |
{0} Нет {1} Да |
Флаг, сообщающий: нажата или не нажата ПКМ над областью сенсора. |
| Координата X мыши | XPos | 0 | Значения float, имена сигналов, математические выражения. |
Координата X курсора мыши при его попадании в область сенсора. Диапазон значений зависит от режима сенсора, выбранного в свойстве "Режим сенсора". |
| Координата Y мыши | YPos | 0 | Значения float, имена сигналов, математические выражения. |
Координата Y курсора мыши при его попадании в область сенсора. Диапазон значений зависит от режима сенсора, выбранного в свойстве "Режим сенсора". |
