00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef NURBSVERTEX_H
00016 #define NURBSVERTEX_H
00017
00018 #include "pandabase.h"
00019 #include "luse.h"
00020 #include "nodePath.h"
00021 #include "pmap.h"
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036 class EXPCL_PANDA_PARAMETRICS NurbsVertex {
00037 public:
00038 INLINE NurbsVertex();
00039 INLINE NurbsVertex(const NurbsVertex ©);
00040 INLINE void operator = (const NurbsVertex ©);
00041 INLINE ~NurbsVertex();
00042
00043 INLINE void set_vertex(const LVecBase4 &vertex);
00044 INLINE const LVecBase4 &get_vertex() const;
00045
00046 INLINE void set_space(const NodePath &space);
00047 INLINE void set_space(const string &space);
00048 INLINE NodePath get_space(const NodePath &rel_to) const;
00049
00050 void set_extended_vertex(int d, PN_stdfloat value);
00051 PN_stdfloat get_extended_vertex(int d) const;
00052
00053 private:
00054 LVecBase4 _vertex;
00055 NodePath _space;
00056 string _space_path;
00057 typedef pmap<int, PN_stdfloat> Extended;
00058 Extended _extended;
00059 };
00060
00061 #include "nurbsVertex.I"
00062
00063 #endif
00064