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


C++ BoundingBox::addUnionWith方法代码示例

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


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

示例1: boundingBox

//===========================================================================
// Bounding box of the entire volume model
BoundingBox VolumeModel::boundingBox()
//===========================================================================
{
  BoundingBox box;
  if (bodies_.size() == 0)
    return box;

  box = bodies_[0]->boundingBox();
  for (size_t ki=1; ki<bodies_.size(); ++ki)
    box.addUnionWith(bodies_[ki]->boundingBox());
  return box;
}
开发者ID:99731,项目名称:GoTools,代码行数:14,代码来源:VolumeModel.C

示例2: containingDomain

//===========================================================================
RectDomain CurveBoundedDomain::containingDomain() const
//===========================================================================
{
    RectDomain dom;
    if ((*loops_[0])[0]->dimension() == 2) {
	// We've got a parametric bound
	BoundingBox b = (*loops_[0])[0]->boundingBox();
	int n1 = (int)loops_.size();
	int i, j;
	for (j=0; j<n1; j++)     {
	    int n2 = loops_[j]->size();
	    for (i = (j==0)?1:0; i < n2; ++i) {
		b.addUnionWith((*loops_[j])[i]->boundingBox());
	    }
	}
	dom = RectDomain(Array<double, 2>(b.low()[0], b.low()[1]),
			   Array<double, 2>(b.high()[0], b.high()[1]));
    } else {
	// We should have a bound consisting of CurveOnSurface objects,
	// and we'll throw an exception if it's not!
	const CurveOnSurface& cv0
	    = dynamic_cast<const CurveOnSurface&>(*(*loops_[0])[0]);
	dom = cv0.containingDomain();
	int n1 = (int)loops_.size();
	int i, j;
	for (j=0; j<n1; j++)     {
	    int n2 = loops_[j]->size();
	    for (i = (j==0)?1:0; i < n2; ++i) {
		const CurveOnSurface& cv1
		    = dynamic_cast<const CurveOnSurface&>(*(*loops_[j])[i]);
		dom.addUnionWith(cv1.containingDomain());
	    }
	}
    }
    return dom;
}
开发者ID:oliverjdb,项目名称:GoTools,代码行数:37,代码来源:CurveBoundedDomain.C


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