---
title: "ksGetSysOptions, ksSetSysOptions - пример использования"
type: guide
api: [api7]
tags: [guide, api7, kssetgetsysoptions]
sources:
  - kssetgetsysoptions_example.html
---

if (ksGetCurrentDocument(1)) {
SnapOptrions par;
char mes[700];
memset(&par, 0, sizeof(SnapOptrions));
//получим параметры привязок
ksGetSysOptions(SNAP_OPTIONS, &par, sizeof(SnapOptrions));
sprintf(mes , "Привязка 'Ближайшая точка '-%s\n", par.nearestPoint ? "включена" : "отключена");
sprintf(mes+strlen(mes), "Привязка 'Середина '-%s\n", par.nearestMiddle ? "включена" : "отключена");
sprintf(mes+strlen(mes), "Привязка 'Пересечение '-%s\n", par.intersect ? "включена" : "отключена");
sprintf(mes+strlen(mes), "Привязка 'Касание '-%s\n", par.tangentToCurve ? "включена" : "отключена");
sprintf(mes+strlen(mes), "Привязка 'Нормаль '-%s\n", par.normalToCurve ? "включена" : "отключена");
sprintf(mes+strlen(mes), "Привязка 'По сетке '-%s\n", par.grid ? "включена" : "отключена");
sprintf(mes+strlen(mes), "Привязка 'Выравнивание '-%s\n", par.xyAlign ? "включена" : "отключена");
sprintf(mes+strlen(mes), "Привязка 'Угловая привязка'-%s\n", par.angSnap ? "включена" : "отключена");
sprintf(mes+strlen(mes), "Привязка 'Точка на кривой '-%s\n", par.pointOnCurve ? "включена" : "отключена");
sprintf(mes+strlen(mes), "Общие настройки : динамически %sотслеживать\n", par.commonOpt & SN_DYNAMICALLY ? "" : "не ");
sprintf(mes+strlen(mes), " : %sотображать текст\n" , par.commonOpt & SN_ASSISTANT ? "" : "не ");
sprintf(mes+strlen(mes), " : %sучитывать фоновые слои и виды\n", par.commonOpt & SN_BACKGROUND_LAYER ? "" : "не ");
sprintf(mes+strlen(mes), " : %sподавить привязки\n", par.commonOpt & SN_SUSPENDED ? "" : "не ");
sprintf(mes+strlen(mes), " угловой шаг %f", par.angleStep);
sprintf(mes+strlen(mes), " локальная привязка = %d", par.localSnap);
Message(mes);
//очистим структуру привязок
memset(&par, 0, sizeof(SnapOptrions));
//включим привязку Касание
par.tangentToCurve = 1;
//включим привязку Точка на кривой
par.pointOnCurve = 1;
//текст отображать
par.commonOpt = par.commonOpt | SN_ASSISTANT;
par.angleStep = 10;
//локальная привязка
par.localSnap = SN_GRID;
// заменим привязки
ksSetSysOptions(SNAP_OPTIONS, &par, sizeof(SnapOptrions));
}
