Постановка на проблема с въртенето - KOMPAS в DELPHI
Да предположим, че трябва да конструирате завъртян равнобедрен триъгълник:
Разбира се, можете да си спомните училищния курс по геометрия и да изчислите координатите на върховете на този триъгълник след въртенето. И вие можете да направите
"по-красива", така да се каже. Първо изградете „нормален“ триъгълник без ротация и след това го завъртете с помощта на системата KOMPAS.
Изпълнението на тази операция е много подобно на изпълнението на симетричното картографиране, за което говорихме в предишната глава. Тук, както и при симетрията, първо се създава група от обекти, които ще бъдат завъртани, след което се извършва самото завъртане.
Група от обекти се създава точно по същия начин, както в случая със симетрията. Затова няма да го описваме тук (за да не се повтаряме).
Самото завъртане се извършва от метода ksRotateObj на интерфейса ksDocument2D. Ето прототипа на този метод:
x: двойно; y: двойно;//координати на центъра на въртене
ъгъл: Двоен//ъгъл за завъртане
При успех този метод връща единица, а при грешка
Следва фрагмент от програма, която
изграждане на обърнат триъгълник.
Документ2D: ksDocument2D; GroupID: цяло число
//Създаване на нова група от обекти
//Изградете елементите на създадената група
Document2D.ksLineSeg(100, 100, 120, 110.1);
Document2D.ksLineSeg(100, 100, 120, 90.1);
Document2D.ksLineSeg(120, 110, 120, 90.1);
//Завършване на изграждането на групата
Document2D.ksRotateObj(GroupID, 100, 100, 60);
Обръщам внимание на факта, че при завъртане оригиналните елементи не се запазват.
Източник: Норсеев Сергей,"РАЗРАБОТКА НА ПРИЛОЖЕНИЯ ПОД КОМПАС В DELPHI"