コード例 #1
0
void testObj::test<50>(void)
{
  PtrNN::element_type *ptr=nn_.get();
  PtrNN                pnn(new int(666));
  pnn=std::move(nn_);
  ensure("invalid pointer after move-ctor", pnn.get()==ptr);
}
コード例 #2
0
void testObj::test<2>(void)
{
  try
  {
    PtrNN pnn(nullptr);
    fail("c-tor didn't throw on NULL");
  }
  catch(const PtrNN::ExceptionNullPointer&)
  {
    // this is expected
  }
}
コード例 #3
0
void testObj::test<6>(void)
{
  BoostPtr bp;
  ensure("precondition failed", bp.get()==nullptr);
  try
  {
    PtrNN pnn(bp);
    fail("c-tor didn't throw on NULL");
  }
  catch(const PtrNN::ExceptionNullPointer&)
  {
    // this is expected
  }
}
コード例 #4
0
ファイル: Polyhedra.cpp プロジェクト: mew-cx/osgtoy
osgToy::TetraStrip::TetraStrip()
{
    osg::Vec3Array* vAry = dynamic_cast<osg::Vec3Array*>( getVertexArray() );

    osg::Vec3Array* nAry = dynamic_cast<osg::Vec3Array*>( getNormalArray() );
    setNormalBinding( osg::Geometry::BIND_PER_VERTEX );

    osg::Vec4Array* cAry = dynamic_cast<osg::Vec4Array*>( getColorArray() );
    setColorBinding( osg::Geometry::BIND_PER_VERTEX );

    osg::Vec3 ppp(  1,  1,  1);   osg::Vec4 white(1,1,1,1);
    osg::Vec3 nnp( -1, -1,  1);   osg::Vec4 blue(0,0,1,1);
    osg::Vec3 pnn(  1, -1, -1);   osg::Vec4 red(1,0,0,1);
    osg::Vec3 npn( -1,  1, -1);   osg::Vec4 green(0,1,0,1);
    osg::Vec3 ppn(  1,  1, -1);   osg::Vec4 yellow(1,1,0,1);
    osg::Vec3 pnp(  1, -1,  1);   osg::Vec4 magenta(1,0,1,1);
    osg::Vec3 nnn( -1, -1, -1);   osg::Vec4 black(0,0,0,1);
    osg::Vec3 npp( -1,  1,  1);   osg::Vec4 cyan(0,1,1,1);

#if 1
    vAry->push_back(ppp); nAry->push_back(ppp); cAry->push_back(white);
    vAry->push_back(nnp); nAry->push_back(nnp); cAry->push_back(blue);
    vAry->push_back(pnn); nAry->push_back(pnn); cAry->push_back(red);
    vAry->push_back(npn); nAry->push_back(npn); cAry->push_back(green);
    vAry->push_back(ppp); nAry->push_back(ppp); cAry->push_back(white);
    vAry->push_back(nnp); nAry->push_back(nnp); cAry->push_back(blue);
#else
    vAry->push_back(ppn); nAry->push_back(ppn); cAry->push_back(yellow);
    vAry->push_back(pnp); nAry->push_back(pnp); cAry->push_back(magenta);
    vAry->push_back(nnn); nAry->push_back(nnn); cAry->push_back(black);
    vAry->push_back(npp); nAry->push_back(npp); cAry->push_back(cyan);
    vAry->push_back(ppn); nAry->push_back(ppn); cAry->push_back(yellow);
    vAry->push_back(pnp); nAry->push_back(pnp); cAry->push_back(magenta);
#endif

    addPrimitiveSet( new osg::DrawArrays( GL_TRIANGLE_STRIP, 0, vAry->size() ) );
}
コード例 #5
0
void testObj::test<4>(void)
{
  PtrNN pnn( returnValue() );
  ensure("invalid pointer after copy-ctor", pnn.get()==nn_.get() );
}
コード例 #6
0
void testObj::test<3>(void)
{
  PtrNN pnn(nn_);
  ensure("invalid pointer after copy-ctor", pnn.get()==nn_.get() );
}