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


C++ TObject::print方法代码示例

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


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

示例1: rayObjClosestIntersect

static bool rayObjClosestIntersect( const TRay &ray, const vector<TObject *> &objList,
				    TObject *&obj, float &distance ) {
  //     This routine intersects ray with all of the objects 
  //     in the objList and returns the closest intersection 
  //     distance and the interesting object, if there is one.
  distance = INFINITE;
  for ( vector<TObject *>::const_iterator iter = objList.begin();
	iter != objList.end();
	iter++ ) {
    TObject *object = *iter;
#ifdef __DEBUG__
    object->print("object in node");
#endif
    TIntersection inter;
    if ( object->primitive->intersectionRay( ray, inter ) ) { // if ray intersects object
#ifdef __DEBUG__
      printf("distance: %5.5f\n", inter.distance );
#endif
      if ( inter.distance < distance ) { // if this object is closest than previous
#ifdef __DEBUG__
	printf("closer distance: %5.5f   distance: %5.5f\n", inter.distance, distance );
#endif
	distance = inter.distance; // store new distance and this object
	obj = object;
      }
    }
#ifdef __DEBUG__
    else
      printf("no intersection with this object\n");
#endif
  }

  if ( distance < INFINITE ) { // if ray intersects at least one object
#ifdef __DEBUG__
    printf("found an intersection\n" );
#endif
    return true;
  }

#ifdef __DEBUG__
  printf("no intersection found in this node\n");
#endif

  return false;
}
开发者ID:SinaC,项目名称:OldRaytrace,代码行数:45,代码来源:kdtree.cpp

示例2: rayObjIntersect

static bool rayObjIntersect( const TRay &ray, const vector<TObject *> &objList,
			     const float maxDist2, TObject *&obj ) {
  //     This routine intersects ray with all of the objects 
  //     in the objList and returns the first intersected object
  for ( vector<TObject *>::const_iterator iter = objList.begin();
	iter != objList.end();
	iter++ ) {
    TObject *object = *iter;
#ifdef __DEBUG__
    object->print("object in node");
#endif
    if ( object->primitive->intersectsRay( ray, maxDist2 ) ) { // if ray intersects object
      obj = object; // return this object
      return true;
    }
  }

  return false;
}
开发者ID:SinaC,项目名称:OldRaytrace,代码行数:19,代码来源:kdtree.cpp


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