VR-Forces 4.0.4 Class Documentation
include/symbology/movingObjectSymbol.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2006 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: movingObjectSymbol.h,v $ $Revision: 1.5 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00012 #ifndef MOVINGSYMBOL_H_
00013 #define MOVINGSYMBOL_H_
00014 
00015 #include "symbology/nameLabelSymbol.h"
00016 
00017 class DtLineSymbol;
00018 class DtTTSSymbol;
00019 
00021 #include "symbology/symbologyDefines.h"
00022 class DT_DLL_symbology DtMovingObjectSymbol : public DtNameLabelSymbol
00023 {
00024 
00025 public:
00026 
00028    DtMovingObjectSymbol(DtSymbolDrawer& d);
00029 
00031    virtual ~DtMovingObjectSymbol();
00032 
00034    DtMovingObjectSymbol(const DtMovingObjectSymbol& orig);
00035 
00037    DtMovingObjectSymbol& operator=(const DtMovingObjectSymbol& rhs);
00038 
00040    virtual void copyDataFrom(const DtSymbol* symbol);
00041 
00043    virtual void setHighlight(const bool highlight);
00044 
00045    virtual bool highlight() const;
00046    
00047    virtual void setOrigin(int x, int y );   
00048    virtual void setOrigin(const QPoint& position);
00049    virtual const DtDisplayPoint centerPoint() const;
00050    virtual const QPoint origin() const;
00051 
00052    virtual bool select(const QPoint& point);
00056    virtual bool selectPart(const QPoint& point);
00057    virtual bool select(const QPoint& point, const QSize& s);
00058 
00059    virtual QSize bbox() const;
00060    virtual QRect selBbox() const;
00061 
00062    virtual DtLineSymbol* velocityIndicator();
00063    virtual void setVelocityIndicator(DtLineSymbol* s);
00064 
00065    virtual DtLineSymbol* headingIndicator();
00066    virtual void setHeadingIndicator(DtLineSymbol* s);
00067 
00068    virtual DtSymbol* damagedSymbol();
00069    virtual void setDamagedSymbol(DtSymbol* s);
00070 
00071    virtual DtSymbol* objectConsoleWarningIndicator();
00072    virtual void setObjectConsoleWarningIndicator(DtSymbol* s);
00073 
00074    virtual DtTTSSymbol* location();
00075    virtual void setLocation(DtTTSSymbol* s);
00076 
00077    virtual DtTTSSymbol* velocity();
00078    virtual void setVelocity(DtTTSSymbol* s);
00079 
00080    virtual DtTTSSymbol* acceleration();
00081    virtual void setAcceleration(DtTTSSymbol* s);
00082 
00083    virtual DtTTSSymbol* heading();
00084    virtual void setHeading(DtTTSSymbol* s);
00085 
00086    virtual DtTTSSymbol* entityType();
00087    virtual void setEntityType(DtTTSSymbol* s);
00088 
00089    virtual DtSymbol* clone() const;
00090 
00091    virtual int resetLabelPositions() const;
00092 
00098    virtual void setPenColor(const QColor& color);
00099 
00100    virtual void shift(QPoint p);
00101 
00103    virtual void setRotateToHeading(bool b);
00104    virtual bool rotateToHeading() const;
00105 
00107    virtual void setRotationValue(double d);
00108    virtual double rotationValue() const;
00109 
00110 protected:
00111    enum DtPartSelected
00112    {
00113       DtPartSelected_None = 0,
00114       DtPartSelected_MainSymbol,
00115       DtPartSelected_HeadingIndicator
00116    };
00117 
00119    virtual DtSymbol* editableSymbol();
00120 
00121 protected:
00122    virtual void draw(DtSymbol* symbol, QPainter& paint) const;
00123 
00124 private:
00126    DtMovingObjectSymbol();
00127 
00128 protected:
00129 
00130    DtLineSymbol* myVelocityIndicator;
00131    DtLineSymbol* myHeadingIndicator;
00132    DtTTSSymbol* myLocation;
00133    DtTTSSymbol* myVelocity;
00134    DtTTSSymbol* myAcceleration;
00135    DtTTSSymbol* myHeading;
00136    DtTTSSymbol* myEntityType;
00137    DtSymbol* myDamagedSymbol;
00138    DtSymbol* myObjectConsoleWarningIndicator;
00139 
00140    DtPartSelected myPartSelected;
00141 
00142    bool myRotateToHeading;
00143    double myRotationValue;
00144 
00145    bool myAllowHeadingEditOnSelection;
00146 };
00147 
00148 #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)