1 #ifndef SMALLCHANGE_SOCAMERAPATHEDITKIT_H 2 #define SMALLCHANGE_SOCAMERAPATHEDITKIT_H 36 #include <Inventor/nodekits/SoBaseKit.h> 37 #include <Inventor/nodekits/SoShapeKit.h> 39 #include <Inventor/nodes/SoCoordinate3.h> 40 #include <Inventor/nodes/SoPointSet.h> 41 #include <Inventor/draggers/SoDragPointDragger.h> 42 #include <Inventor/nodes/SoText2.h> 43 #include <Inventor/fields/SoSFInt32.h> 44 #include <Inventor/fields/SoMFTime.h> 46 #include <SmallChange/basic.h> 55 SO_KIT_CATALOG_ENTRY_HEADER(rootSeparator);
57 SO_KIT_CATALOG_ENTRY_HEADER(eventCallback);
58 SO_KIT_CATALOG_ENTRY_HEADER(draggerSeparator);
59 SO_KIT_CATALOG_ENTRY_HEADER(feedbackSeparator);
61 SO_KIT_CATALOG_ENTRY_HEADER(draggerPick);
62 SO_KIT_CATALOG_ENTRY_HEADER(draggerDraw);
63 SO_KIT_CATALOG_ENTRY_HEADER(draggerTransform);
64 SO_KIT_CATALOG_ENTRY_HEADER(draggerSwitch);
66 SO_KIT_CATALOG_ENTRY_HEADER(timeDragger);
67 SO_KIT_CATALOG_ENTRY_HEADER(posDragger);
68 SO_KIT_CATALOG_ENTRY_HEADER(orDragger);
70 SO_KIT_CATALOG_ENTRY_HEADER(orLightModel);
71 SO_KIT_CATALOG_ENTRY_HEADER(headingMaterial);
72 SO_KIT_CATALOG_ENTRY_HEADER(heading);
73 SO_KIT_CATALOG_ENTRY_HEADER(pitchMaterial);
74 SO_KIT_CATALOG_ENTRY_HEADER(pitchRotate);
75 SO_KIT_CATALOG_ENTRY_HEADER(pitch);
76 SO_KIT_CATALOG_ENTRY_HEADER(bankMaterial);
77 SO_KIT_CATALOG_ENTRY_HEADER(bankRotate);
78 SO_KIT_CATALOG_ENTRY_HEADER(bank);
80 SO_KIT_CATALOG_ENTRY_HEADER(coordinates);
81 SO_KIT_CATALOG_ENTRY_HEADER(tagSeparator);
82 SO_KIT_CATALOG_ENTRY_HEADER(tagDrawStyle);
83 SO_KIT_CATALOG_ENTRY_HEADER(tags);
84 SO_KIT_CATALOG_ENTRY_HEADER(curveSeparator);
85 SO_KIT_CATALOG_ENTRY_HEADER(curveDrawStyle);
86 SO_KIT_CATALOG_ENTRY_HEADER(controlpoints);
87 SO_KIT_CATALOG_ENTRY_HEADER(curve);
88 SO_KIT_CATALOG_ENTRY_HEADER(objectSeparator);
89 SO_KIT_CATALOG_ENTRY_HEADER(objectTransform);
90 SO_KIT_CATALOG_ENTRY_HEADER(objectDrawStyle);
91 SO_KIT_CATALOG_ENTRY_HEADER(objectModel);
118 void flipEditmode(
void);
119 void setEditmode(Editmode mode);
121 int setTimestamp(
int idx,
const SbTime &time);
122 int setTimestamp(
int idx,
float time);
123 void setPosition(
int idx,
const SbVec3f &pos);
124 void setOrientation(
int idx,
const SbVec3f &orientation);
125 int setActiveTimestamp(
const SbTime &time);
126 void setActivePosition(
const SbVec3f &pos);
127 void setActiveOrientation(
const SbVec3f &orientation);
129 void insertControlpoint(
int idx,
const SbVec3f &pos,
const SbVec3f &orientation);
131 void insertPosition(
int idx,
const SbVec3f &pos);
133 void insertOrientation(
int idx,
const SbVec3f &orientation);
134 int insertOrientation(
const SbVec3f &orientation,
const SbTime &time);
135 int insertControlpoint(
const SbTime &time);
137 void deleteControlpoint(
int idx);
138 void deleteActivePoint(
void);
146 static void posCallback(
void *,
SoSensor *);
147 static void timeCallback(
void *,
SoSensor *);
148 static void orCallback(
void *,
SoSensor *);
151 static void dragtimeFinishCB(
void *,
SoDragger *);
152 static void dragtimeStartCB(
void *,
SoDragger *);
153 static void dragposFinishCB(
void *,
SoDragger *);
154 static void dragposStartCB(
void *,
SoDragger *);
158 static void activePointCB(
void *,
SoSensor *);
160 void updateDraggers(
void);
162 void buildTag(
int tagIdx);
163 void buildTags(
void);
165 int numControlpoints;
170 #endif // !SMALLCHANGE_SOCAMERAPATHEDITKIT_H
Definition: SoCameraPathEditKit.h:49
static void initClass(void)