Generate a reasonable normal for the superfluous control point generated

for lines.
This commit is contained in:
Patrick Walton 2018-03-21 14:56:24 -07:00
parent 5e5148df54
commit dbd3a36f3d
1 changed files with 3 additions and 2 deletions

View File

@ -124,7 +124,8 @@ impl PathNormals {
next_normal_index += 1; next_normal_index += 1;
self.normals.push(SegmentNormals { self.normals.push(SegmentNormals {
from: normals[next_normal_index - 2], from: normals[next_normal_index - 2],
ctrl: Vector2D::zero(), ctrl: normals[next_normal_index - 2].lerp(normals[next_normal_index - 1],
0.5),
to: normals[next_normal_index - 1], to: normals[next_normal_index - 1],
}); });
} }
@ -139,7 +140,7 @@ impl PathNormals {
PathOp::Close => { PathOp::Close => {
self.normals.push(SegmentNormals { self.normals.push(SegmentNormals {
from: normals[next_normal_index - 1], from: normals[next_normal_index - 1],
ctrl: Vector2D::zero(), ctrl: normals[next_normal_index - 1].lerp(normals[0], 0.5),
to: normals[0], to: normals[0],
}); });
break; break;