File indexing completed on 2024-06-23 04:25:56
0001 /* 0002 * SPDX-FileCopyrightText: 2022 Agata Cacko <cacko.azh@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-3.0-or-later 0005 */ 0006 0007 #include "TestAssistants.h" 0008 0009 #include <testui.h> 0010 #include <testutil.h> 0011 0012 0013 #include <kis_painting_assistant.h> 0014 #include <PerspectiveBasedAssistantHelper.h> 0015 #include <kis_algebra_2d.h> 0016 #include <kis_global.h> 0017 0018 #include <ConcentricEllipseAssistant.h> 0019 0020 void TestAssistants::testConcentricEllipseAdjustLine() 0021 { 0022 ConcentricEllipseAssistantFactory factory; 0023 KisPaintingAssistantSP assistant = KisPaintingAssistantSP(factory.createPaintingAssistant()); 0024 //ConcentricEllipseAssistant* ellipse = new ConcentricEllipseAssistant(); 0025 ConcentricEllipseAssistant* ellipse = dynamic_cast<ConcentricEllipseAssistant*>(assistant.data()); 0026 QVERIFY(ellipse); 0027 0028 ellipse->addHandle(new KisPaintingAssistantHandle(0, 100), HandleType::NORMAL); 0029 ellipse->addHandle(new KisPaintingAssistantHandle(100, 0), HandleType::NORMAL); 0030 ellipse->addHandle(new KisPaintingAssistantHandle(200, 200), HandleType::NORMAL); 0031 0032 QPointF begin = QPointF(0, 100); 0033 //QPointF end = QPointF(100, 5); 0034 //QPointF end = QPointF(100, 0); 0035 //ellipse->adjustLine(end, begin); 0036 //ENTER_FUNCTION() << begin << end; 0037 0038 ENTER_FUNCTION() << "Begin is " << begin; 0039 0040 QList<QPointF> ends; 0041 ends << QPointF(100, 0) << QPointF(100, 5) << QPointF(200, 200) << QPointF(400, 400); 0042 0043 for (int i = 0; i < ends.size(); i++) { 0044 QPointF endHere = ends[i]; 0045 ellipse->adjustLine(endHere, begin); 0046 ENTER_FUNCTION() << ends[i] << "=>" << endHere; 0047 } 0048 0049 0050 begin = QPointF(0, 200); 0051 0052 ENTER_FUNCTION() << "Begin is " << begin; 0053 0054 ends.clear(); 0055 ends << QPointF(200, 0) << QPointF(200, 5) << QPointF(400, 400) << QPointF(500, 500); 0056 0057 for (int i = 0; i < ends.size(); i++) { 0058 QPointF endHere = ends[i]; 0059 ellipse->adjustLine(endHere, begin); 0060 ENTER_FUNCTION() << ends[i] << "=>" << endHere; 0061 } 0062 0063 0064 0065 } 0066 0067 0068 KISTEST_MAIN(TestAssistants)