Точка_в_горизонтальной_полосе: точка= <точка>, идеал= <вертикальная_координата>, от= <вертикальная_координата_с_порогом>, до= <вертикальная_координата_с_порогом>; Точка_левее_на: точка1= <точка>, точка2= <точка>, идеал= <длина>, от= <длина с порогом>, до= <длина с__порогом>; Точка_выше_на: точка1= <точка>, точка2= <точка>, идеал= <длина>, от= <длина с порогом>, до= <длина с порогом>; Отношение_длин: делимое=<длина>, делитель=<длина>, от=<литерал_с_порогом>, идеал=<литерал>, до=<литерал_с_порогом>; Запрет: элемент=<структурный элемент>; Величина_^равна : <СПхесШитЬег>/ от=<литерал>, порог__от=<литерал>, порог_до=<литерал>, до=<литерал>; Одну из пар от-порог_от и до-порог_до можно опустить, при этом диапазон штрафования задаётся открытым с одной стороны. Пересекаются:элемент1=<структурный_элемент>/ элемент2=<структурный_элемент>; Вычисляется общая часть двух элементов, и если она существует, возвращается 1, иначе возвращается 0. В параметрах отношений вместо направленного отрезка можно указывать интегральный отрезок, вместо горизонтальной и вертикальной координаты указывать точку. В отношениях можно опускать один из параметров: От или До (за исключением параметров углов). В этом случае, параметр с соответствующей стороны не штрафуется. В отношениях с пятью литералами параметр «От» не должен превышать параметр «Идеал», а параметр «До» должен быть не меньше него. 115 |
2. Направление_равно: отрезок* направленны й_отрезок>, идеал* <литсрал>, от= <литсрал_с_порогом>, до= <литерал с порогом>; 3. Расстояние между_точками_равно: точка1 = <точка>, точка2= <точка>, идеал* <длина>, от* <длина_с_порогом>, до= <длина_с_порогом>; 4. Расстоянисмсждуточкамименыне: точка 1 = <точка>, точка2= <точка>, предел* <дл ина_с_1 юрогом>; 5. Расстояние_равно: расстояние* <длина>, идеал* <длина>, от* <длина с_порогом>, до* <длина_с_порогом>; 6. Расстояние меньше: расстояние* <длина>, предел* <длина_с_порогом>; 7. Точка в вертикальной полосе: точка* <точка>, идеал* <горизонтальная_координата>, от* горизонтальная координата_с_порогом>, до* <горизо нтал ьнаякоорди ната_с_порогом>; 8. Точка в горизонталыюй полосе: точка* <точка>, идеал* <вертикальная_координага>, от* <вертикальная_координата_с_порогом>, до* <вертикальная_координата_с_порогом>; 9. Точка_левсс_на: точка 1= <точка>, точка2= <точка>, идеал* <длина>, от* <длина_с_порогом>, до* <длина_с_порогом>; Ю.Точка выше на: точка!* <точка>, точка2= <точка>, идеал* <длина>, от* <длина с_порогом>, до* <длина_с_порогом>; 11.0тношение_длин: делимое=<длина>, делитель=<длина>, от*<литерал_с_порогом>, идсал=<литерал>, до=<литерал_с. порогом>; 12.3апрет: элемент=<структурный_элемент>; 13. Всличина_равна: <СР1хсс1ЫитЬег>, от=<литерал>, порог_от=<литерал>, порог_до=<литерал>, до=<литерал>; Одну из пар от-порог_от и до-порог_до можно опустить, при этом диапазон штрафования задаётся открытым с одной стороны. 14. Пересекаются: элемент 1 =<структурный_элемент>, элемент2=<структ}рный_элемет>; Вычисляется общая часть двух элементов, и если она существует, возвращается 1, иначе возвращается 0. В параметрах отношений вместо направленного отрезка можно указывать интегральный отрезок, вместо горизонтальной и вертикальной координаты указывать точку. 111 В отношениях можно опускать один из параметров От или До (за исключением параметоров-углов). В этом случае параметр с соответствующей стороны не штрафуется. В отношениях с пятью литералами параметр “от" не должен превышать параметр “идеал”, а параметр “до” должен быть не меньше идеала. Описание отношений Отношения записываются последовательно друг за другом. При этом результаты отношений объединяются по И (их качества перемножаются). Допустимо явно использовать связки ИЛИ и НЕ, а также группировать отношения при помощи скобок. Операция ИЛИ имеет более высокий приоритет, чем объединение отношений в список. При интерпретации связок И и ИЛИ производится отсечение по качеству, равному нулю или единице соответственно. Ого позволяет использовать отношение Запрет для проверки существования структурного элемента. Па верхнем уровне в список отношений допустимо включать операторы заведения переменной. Тип переменной определяется по выражению инициализации. Переменная заводится при помощи ключевого слова “Пусть”, например: Пусть ППП = [Левый_отрезок.Начало, НР.Середина]; В последнем примере заводится переменная ППП типа “Направленный отрезок”. Имя новой переменной не должно совпадать с именами существующих переменных, описанных ранее структурных элементов и предопределённых объектов. Дифференциальный эталон Дифференциальный эталон представляет собой список, состоящий из операций определения переменных и выражений, вычисляющих признаки. Имена структу рных элементов записываются в выражениях как атрибуты объектов “Первый” и “Второй”, дающих доступ к первому и второму эталону соответственно. В дифференциальном эталоне нельзя использовать переменные эталонов первого уровня, однако можно заводить новые переменные. Признаки бывают двух типов: • “Признак=<выражение>”. Выражение должно возвращать число с фиксированной запятой или угол. Аьг |