VR-Forces 4.0.4 Class Documentation
include/vrfExtObjects/envArticulatingCylinderRecord.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2010 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: envArticulatingCylinderRecord.h,v $ $Revision: 1.1 $ $State: Exp $
00007 *********************************************************************/
00008 #ifndef envArticulatingCylinderRecord_H_
00009 #define envArticulatingCylinderRecord_H_
00010 
00011 #include <vrfExtObjects/vrfExtObjectsDefines.h>
00012 #include <vl/envGeometry.h>
00013 
00014 struct DtNetEnvironmentalArticulatingCylinderRecord : DtNetEnvironmentalRecord
00015 {
00016    DtNetVector64    myStartingLocation;
00017    DtNetFloat32     myCylinderLength;
00018    DtNetEulerAngles myRotation; 
00019    DtNetFloat32     myXRadius;
00020    DtNetFloat32     myYRadius;
00021 };
00022 
00023 class DT_DLL_vrfExtObjects DtEnvironmentalArticulatingCylinderRecord :
00024    public DtEnvironmentalGeometryRecord
00025 {
00026 public:
00027    DtEnvironmentalArticulatingCylinderRecord();
00028 
00029    virtual ~DtEnvironmentalArticulatingCylinderRecord();
00030 
00031    DtEnvironmentalArticulatingCylinderRecord(
00032       const DtEnvironmentalArticulatingCylinderRecord& orig);
00033 
00034    DtEnvironmentalArticulatingCylinderRecord& operator=(
00035       const DtEnvironmentalArticulatingCylinderRecord& orig);
00036 
00037    virtual DtEnvironmentalRecord* clone() const;
00038 
00039    virtual void setStartingLocation(const DtVector& loc);
00040    virtual const DtVector& startingLocation() const;
00041 
00042    virtual void setCylinderLength(double len);
00043    virtual double cylinderLength() const;
00044 
00045    virtual void setRotation(const DtTaitBryan& rot);
00046    virtual const DtTaitBryan& rotation() const;
00047 
00048    virtual void setXRadius(double radius);
00049    virtual double xRadius() const;
00050 
00051    virtual void setYRadius(double radius);
00052    virtual double yRadius() const;
00053 
00054    // This doesn't need to be called explicitly.  If any routine that needs
00055    // the repository finds that it hasn't been created yet, it calls this
00056    // method.
00057    virtual bool createNetworkRepresentation();
00058 
00059    virtual int netRepSize() const;
00060    virtual void setFromNet(const DtNetEnvironmentalRecord& buffer);
00061 
00062    const DtNetEnvironmentalArticulatingCylinderRecord* cylinderNetRep() const;
00063    DtNetEnvironmentalArticulatingCylinderRecord* cylinderNetRep();
00064 
00065 protected:
00066    DtVector    myStartingLocation;
00067    double      myCylinderLength;
00068    DtTaitBryan myRotation;
00069    double      myXRadius;
00070    double      myYRadius;
00071 };
00072 
00073 #endif

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)