Praeclarum.Graphics.Stroke.RemoveInitialFlourish C# (CSharp) Метод

RemoveInitialFlourish() приватный Метод

private RemoveInitialFlourish ( ) : int
Результат int
		int RemoveInitialFlourish ()
		{
			var stroke = this;

			var points = stroke.Points;

			var totalLength = 0.0f;
			for (var i = 0; i < points.Length - 1; i++) {
				totalLength += points [i].DistanceTo (points [i+1]);
			}

			//
			// Look for a sharp bend within the first bit of the shape
			//
			var len = 0.0f;
			var lastDir = new PointF ();
			for (var i = 0; i < points.Length - 1; i++) {

				var dir = points [i+1].Subtract (points [i]).Normalized ();

				if (i > 0) {
					var dot = lastDir.Dot (dir);
					if (dot < 0) {
						//
						// Big turn
						//
						//stroke.WriteSvg ("/Users/fak/Desktop/turn.svg");
						return i;
					}
				}

				lastDir = dir;

				//
				// Only look at the first 5%
				//
				len += points [i].DistanceTo (points [i+1]);

				if (len > totalLength * 0.05f) {
					return 0;
				}
			}

			return 0;
		}