VR-Forces 4.0.4 Class Documentation
include/vrvOsg/DtOsgMultiRibbon.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2008 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 /******************************************************************************
00006 ** $RCSfile: DtOsgMultiRibbon.h,v $ $Revision: 1.8 $ $State: Exp $
00007 ******************************************************************************/
00008 
00012 
00013 #pragma once
00014 
00015 #include <vrvOsg/vrvOsg.h>
00016 #include <vrvOsg/DtOsgRibbon.h>
00017 
00018 #include <vector>
00019 
00020 namespace osg { class Node; class Group; }
00021 
00022 namespace makVrv
00023 {
00026    class DT_DLL_VRVOSG DtOsgMultiRibbon : public DtOsgRibbon
00027    {
00028    public:
00029       typedef std::vector<DtOsgRibbon*> RibbonSet;
00030 
00032       DtOsgMultiRibbon();
00033 
00035       DtOsgMultiRibbon(RibbonSet& ribbons);
00036 
00038       osg::Node* node();
00039 
00041       void addRibbon(DtOsgRibbon* ribbon);
00042 
00043    protected:
00045       ~DtOsgMultiRibbon();
00046 
00048       virtual void update(double dt, double simTime);
00049 
00050       typedef std::vector<osg::ref_ptr<DtOsgRibbon> > RibbonRefPtrSet;
00051 
00052       virtual void addParticle(osg::Vec3d const& left, osg::Vec3d const& right,
00053          double simTime);
00054 
00056       virtual float currentSegmentLength();
00057 
00059       virtual void extendCurrentSegment(osg::Vec3d const& left, 
00060          osg::Vec3d const& right, double simTime);
00061 
00062       virtual osg::Drawable* getDrawable();
00063 
00065       RibbonRefPtrSet myRibbons;
00066 
00067       osg::ref_ptr<osg::Group> myNode;
00068    };
00069 }
00070 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)