2 * psychlops_math_extension.cpp
3 * Psychlops Standard Library (Universal)
5 * Last Modified 2010/12/14 by Kenchi HOSOKAWA
6 * (C) 2010 Kenchi HOSOKAWA, Kazushi MARUYA and Takao SATO
10 #include "psychlops_math_extension.h"
15 double distance(Psychlops::Point p1, Psychlops::Point p2) {
16 Psychlops::Point dp = p1 - p2;
17 return sqrt(dp.x*dp.x + dp.y*dp.y);
20 Psychlops::Point interpolate(Psychlops::Point p1, Psychlops::Point p2, double weight_p1) {
21 Psychlops::Point dp = p1 - p2;
28 Color interpolate(Color p1, Color p2, double weight_p1) {
29 if(p1.getB() + ( p2.getB() - p1.getB() ) * weight_p1 > 1) std::cout << "overflow";
31 p1.getR() + ( p2.getR() - p1.getR() ) * weight_p1,
32 p1.getG() + ( p2.getG() - p1.getG() ) * weight_p1,
33 p1.getB() + ( p2.getB() - p1.getB() ) * weight_p1,
34 p1.getA() + ( p2.getA() - p1.getA() ) * weight_p1
39 } /* <- namespace Psycholops */