Clone in a terminal:
Commit b1340a2
Johan Mattsson - 2015-09-14T11:11:10+00:00
b1340a2286670423c7ca3517e57b94d0050ef4e0johan.mattsson.m@gmail.com

Remove old code Drop FastPath

Changed files (1)

Diff

diff --git a/libbirdfont/FastPath.vala b/libbirdfont/FastPath.valadeleted file mode 100644index f5e2873..0000000--- a/libbirdfont/FastPath.vala+++ /dev/null@@ -1,138 +0,0 @@-/*-    Copyright (C) 2014 Johan Mattsson--    This library is free software; you can redistribute it and/or modify -    it under the terms of the GNU Lesser General Public License as -    published by the Free Software Foundation; either version 3 of the -    License, or (at your option) any later version.--    This library is distributed in the hope that it will be useful, but -    WITHOUT ANY WARRANTY; without even the implied warranty of -    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -    Lesser General Public License for more details.-*/--namespace BirdFont {-	-/** A faster implementation of the Path and EditPoint classes. */-public class FastPath : GLib.Object {-	-	/** Control points and control point handles.-	 * -	 * Each point is stored with left handle at index - 2,-	 * the point at index, and right handle at index + 2. Both x and y-	 * coordinates is stores in this array.-	 */-	double* points;-	-	/** Point types. */-	uint* types;-	-	/** The number of points that can be stored in the point array. */-	int capacity;-		-	public static const uint NUMBERS_PER_POINT = 6;--	public static const uint LEFT_HANDLE_POS_X = 0;-	public static const uint LEFT_HANDLE_POS_Y = 1;-	public static const uint POS_X = 2;-	public static const uint POS_Y = 3;-	public static const uint RIGHT_HANDLE_POS_X = 4;-	public static const uint RIGHT_HANDLE_POS_Y = 5;--	/** Various boolean properties */-	uint* flags;--	public static uint ACTIVE = 1 << 0;-	public static uint SELECTED = 1 << 1;-	public static uint DELETED = 1 << 2;-	-	public static uint TIE_HANDLES = 1 << 3;-	public static uint REFLECTIVE_HANDLES = 1 << 4;-	-	/** Number of control points in this path. */-	int number_of_points = 0;-	-	public FastPath () {-		capacity = 1024;-		points = new double[capacity * NUMBERS_PER_POINT];-		types = new uint[capacity];-	}--	~FastPath () {-		delete points;-		delete types;-	}-					-	/** @return number of control points in this path. */-	public int get_length () {-		return number_of_points;-	}-	-	/** Get a slow representation for an edipoint. */-	public EditPoint get_editpoint (int index) {-		EditPoint ep = new EditPoint (get_x (index), get_y (index), get_point_type (index));-		ep.get_left_handle ().move_to_coordinate (get_left_handle_x (index), get_left_handle_y (index));-		ep.get_right_handle ().move_to_coordinate (get_right_handle_x (index), get_right_handle_y (index));		-		return ep;-	}--	public void set_editpoint (int index, EditPoint ep) {-		points[NUMBERS_PER_POINT * index + POS_X] = ep.x;-		points[NUMBERS_PER_POINT * index + POS_Y] = ep.y;-		points[NUMBERS_PER_POINT * index + LEFT_HANDLE_POS_X] = ep.get_left_handle ().x;-		points[NUMBERS_PER_POINT * index + LEFT_HANDLE_POS_Y] = ep.get_left_handle ().y;-		points[NUMBERS_PER_POINT * index + RIGHT_HANDLE_POS_X] = ep.get_right_handle ().x;-		points[NUMBERS_PER_POINT * index + RIGHT_HANDLE_POS_Y] = ep.get_right_handle ().y;-	}--	public double get_x (int index) {-		return points[NUMBERS_PER_POINT * index + POS_X];-	}-	-	public double get_y (int  index) {-		return points[NUMBERS_PER_POINT * index + POS_Y];-	}--	public double get_left_handle_x (int index) {-		return points[NUMBERS_PER_POINT * index + LEFT_HANDLE_POS_X];-	}-	-	public double get_left_handle_y (int  index) {-		return points[NUMBERS_PER_POINT * index + LEFT_HANDLE_POS_Y];-	}--	public double get_right_handle_x (int index) {-		return points[NUMBERS_PER_POINT * index + RIGHT_HANDLE_POS_X];-	}-	-	public double get_right_handle_y (int  index) {-		return points[NUMBERS_PER_POINT * index + RIGHT_HANDLE_POS_Y];-	}-			-	public PointType get_point_type (int index) {-		return (PointType) types[index];-	}--	public bool is_active (int index) {-		return (flags[index] & ACTIVE) > 0;-	}--	public bool is_selected (int index) {-		return (flags[index] & SELECTED) > 0;-	}--	public bool is_deleted (int index) {-		return (flags[index] & DELETED) > 0;-	}--	public bool has_tied_handles (int index) {-		return (flags[index] & TIE_HANDLES) > 0;-	}--	public bool has_reflective_handles (int index) {-		return (flags[index] & REFLECTIVE_HANDLES) > 0;-	}-}--}

Contact

Email: johan.mattsson.m@gmail.com
Mastodon: typo.social/@birdfont
GitHub: johanmattssonm
LinkedIn: johan-mattsson-2ab324112