MCPcopy Create free account
hub / github.com/MyGUI/mygui / deconvergeEdge

Function deconvergeEdge

MyGUIEngine/src/msdfgen/core/Shape.cpp:45–63  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

43}
44
45static void deconvergeEdge(EdgeHolder &edgeHolder, int param, Vector2 vector) {
46 switch (edgeHolder->type()) {
47 case (int) QuadraticSegment::EDGE_TYPE:
48 edgeHolder = static_cast<const QuadraticSegment *>(&*edgeHolder)->convertToCubic();
49 // fallthrough
50 case (int) CubicSegment::EDGE_TYPE:
51 {
52 Point2 *p = static_cast<CubicSegment *>(&*edgeHolder)->p;
53 switch (param) {
54 case 0:
55 p[1] += (p[1]-p[0]).length()*vector;
56 break;
57 case 1:
58 p[2] += (p[2]-p[3]).length()*vector;
59 break;
60 }
61 }
62 }
63}
64
65void Shape::normalize() {
66 for (std::vector<Contour>::iterator contour = contours.begin(); contour != contours.end(); ++contour) {

Callers 1

normalizeMethod · 0.85

Calls 3

convertToCubicMethod · 0.80
typeMethod · 0.45
lengthMethod · 0.45

Tested by

no test coverage detected