当前位置: 首页>>代码示例>>C++>>正文


C++ box::IsEmpty方法代码示例

本文整理汇总了C++中box::IsEmpty方法的典型用法代码示例。如果您正苦于以下问题:C++ box::IsEmpty方法的具体用法?C++ box::IsEmpty怎么用?C++ box::IsEmpty使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在box的用法示例。


在下文中一共展示了box::IsEmpty方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Disjoint

//----------------------------------------------------------------------
bool Disjoint(const box& X, const box& Y)
{
	if (X.IsEmpty() || Y.IsEmpty()) return true;
	for (int i = 1; i <= Size(X); i++)
		if (Disjoint(X[i], Y[i])) return true;
	return false;
}
开发者ID:nicolaje,项目名称:interval,代码行数:8,代码来源:box.cpp

示例2: Eloignement

//----------------------------------------------------------------------
double Eloignement(box& X, box& Y)
{
	if ((X.IsEmpty()) || (Y.IsEmpty())) return oo;
	double e = 0;
	for (int k = 1; k <= Size(X); k++) { e = max(e, Eloignement(X[k], Y[k])); }
	return e;
}
开发者ID:nicolaje,项目名称:interval,代码行数:8,代码来源:box.cpp

示例3: SubsetStrict

//----------------------------------------------------------------------
bool SubsetStrict(box& X, box& Y)
{
	if (Y.IsEmpty()) return false;
	if (X.IsEmpty()) return true;
	bool b = true;
	for (int k = 1; k <= Size(X); k++) b = b && SubsetStrict(X[k], Y[k]);
	return (b);
}
开发者ID:nicolaje,项目名称:interval,代码行数:9,代码来源:box.cpp

示例4: NormInf

//----------------------------------------------------------------------
interval NormInf(box X, box Y)
{
	if (Size(X) != Size(Y)) return interval();
	if (X.IsEmpty() || Y.IsEmpty()) return interval();
	interval ans = Abs(Y[1] - X[1]);
	for (int i = 1; i <= Size(X); i++) ans = Max(ans, Abs(Y[i] - X[i]));
	return ans;
}
开发者ID:nicolaje,项目名称:interval,代码行数:9,代码来源:box.cpp

示例5: Marge

//----------------------------------------------------------------------
double Marge(box X, box Y)
{
	if ((X.IsEmpty()) || (Y.IsEmpty())) return -oo;
	double ans = Marge(X[1], Y[1]);
	for (int i = 2; i <= Size(X); i++)
		ans = min(ans, Marge(X[i], Y[i]));
	return ans;
}
开发者ID:nicolaje,项目名称:interval,代码行数:9,代码来源:box.cpp

示例6: Union

//----------------------------------------------------------------------
box Union(const box& X, const box& Y)
{
	box Ans(max(Size(X), Size(Y)));
	if (X.IsEmpty()) return (Y);
	if (Y.IsEmpty()) return (X);
	for (int k = 1; k <= Size(Ans); k++)  Ans[k] = Union(X[k], Y[k]);
	return Ans;
}
开发者ID:nicolaje,项目名称:interval,代码行数:9,代码来源:box.cpp

示例7: Prop

//------------------------------------------------------------------------------
bool Prop(box& X, box& Y)  // Normalement X is a subset of y (used in SIVEX)
{
	if (X.IsEmpty()) return false;
	if (Y.IsEmpty()) return false;
	for (int k = 1; k <= Size(X); k++)
		if ((X[k].inf == Y[k].inf)||(X[k].sup == Y[k].sup)) return (true);
	return false;
}
开发者ID:nicolaje,项目名称:interval,代码行数:9,代码来源:box.cpp

示例8: NormEuclid

//----------------------------------------------------------------------
interval NormEuclid(box X, box Y)
{
	if (Size(X) != Size(Y)) return interval();
	if (X.IsEmpty() || Y.IsEmpty()) return interval();
	interval r = 0;
	for (int i = 1; i <= Size(X); i++) r = r + Sqr(Y[i] - X[i]);
	return (Sqrt(r));
}
开发者ID:nicolaje,项目名称:interval,代码行数:9,代码来源:box.cpp

示例9: Inter

//----------------------------------------------------------------------
box Inter(const box& X, const box& Y)
{
	box Ans(Size(X));
	if ((X.IsEmpty()) || (Y.IsEmpty())) { return Ans; }
	for (int k = 1; k <= Size(Ans); k++)
	{
		Ans[k] = Inter(X[k], Y[k]);
		if (Ans[k].isEmpty) { Update(Ans); return Ans; }
	}
	return Ans;
}
开发者ID:nicolaje,项目名称:interval,代码行数:12,代码来源:box.cpp

示例10: Concat

//-----------------------------------------------------------------------
// Produit Cartesien ou Concatenation de deuX paves X et y :
// Ans=[X,Y]     =>     Ans=Concat(X,Y); 
box Concat(const box& X, const box& Y)
{
	double dim = X.dim + Y.dim; box Ans((int)dim);
	if ((!X.IsEmpty()) && (!Y.IsEmpty()))
	{
		for (int i = 1; i <= dim; i++)
		{
			if (i <= Size(X)) Ans[i] = X[i]; else Ans[i] = Y[i - X.dim];
		}
	}
	return Ans;
}
开发者ID:nicolaje,项目名称:interval,代码行数:15,代码来源:box.cpp

示例11: In

//----------------------------------------------------------------------
iboolean In(box X, box Y)
{
	if (X.IsEmpty() || Y.IsEmpty()) return ifalse;
	iboolean r = itrue;
	for (int k = 1; k <= X.dim; k++)
	{
		iboolean in1 = In(X[k], Y[k]);
		if (in1 == false) return ifalse;
		else if (in1.value == iperhaps) r = iperhaps;
	}
	return r;
}
开发者ID:nicolaje,项目名称:interval,代码行数:13,代码来源:box.cpp

示例12: Norm

//----------------------------------------------------------------------
interval Norm(box X)
{
	if (X.IsEmpty()) return interval();
	interval r = 0;
	for (int i = 1; i <= Size(X); i++) r = r + Sqr(X[i]);
	return (Sqrt(r));
}
开发者ID:nicolaje,项目名称:interval,代码行数:8,代码来源:box.cpp

示例13: Rand

//----------------------------------------------------------------------
box Rand(const box& X)
{
	int sizeX = Size(X); box Ans(sizeX);
	//if (X.IsEmpty()) Ans = Empty(sizeX);
	if (X.IsEmpty()) Ans = EmptyBox(X);
	else { for (int k = 1; k <= sizeX; k++) Ans[k] = Rand(X[k]); }
	return Ans;
}
开发者ID:nicolaje,项目名称:interval,代码行数:9,代码来源:box.cpp

示例14: Cnotin

//----------------------------------------------------------------------
void Cnotin(box& X, const box& Y)
{
	int notindim = -1;
	if (Y.IsEmpty()) return;
	if (X.IsEmpty()||(In(X, Y) == itrue))
	{
		X = box();
		return;
	}
	for (int i = 1; i <= Size(X); i++)
	{ 
		if (In(X[i], Y[i]) != itrue) 
		{
			if (notindim != -1) return; else notindim = i;
		}
	}
	Cnotin(X[notindim], Y[notindim]);
}
开发者ID:nicolaje,项目名称:interval,代码行数:19,代码来源:box.cpp

示例15: IsBox

//-----------------------------------------------------------------------
bool IsBox(box X)
{
	if (X.IsEmpty()) return false;
	for (int i = 1; i <= Size(X); i++)
	{
		if (Width(X[i]) == 0) return false;
	}
	return true;
}
开发者ID:nicolaje,项目名称:interval,代码行数:10,代码来源:box.cpp


注:本文中的box::IsEmpty方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。