コード例 #1
0
ファイル: MathUtils.cpp プロジェクト: genius2609/care-o-bot
void GetHSV(double r, double g, double b, double& h, double& s, double& v)
{
	v=dblmax(r, dblmax(g, b));
	double d=v-dblmin(r, dblmin(g, b));
	if(d==0.0) {s=0.0; h=0.0; /*std::cerr << "Error in HSV conversion\n";*/ return;}
	s=d/v;
	if(r==v)
	{
		if(g>=b)
			h = 0.167 * (g-b)/d;
		else
			h = 0.167 * (g-b)/d + 1.0;
	}
	if(g==v) h = 0.167 * (b-r)/d + 0.333;
	if(b==v) h = 0.167 * (r-g)/d + 0.667;
	v/=255.0;
}
コード例 #2
0
ファイル: quadtree.c プロジェクト: joe07734/Photometry
void clip_box(box_t *b, box_t *bounds) {
    b->xmin = dblmax(b->xmin, bounds->xmin);
    b->ymin = dblmax(b->ymin, bounds->ymin);
    b->xmax = dblmin(b->xmax, bounds->xmax);
    b->ymax = dblmin(b->ymax, bounds->ymax);
}