14 #ifndef CMOTIONTRAIL_H 15 #define CMOTIONTRAIL_H 31 LVecBase4 _start_color;
40 UnalignedLMatrix4 _transform;
78 void reset_vertex_list();
80 void enable(
bool enable);
82 void set_geom_node(
GeomNode *geom_node);
83 void add_vertex(LVector4 *vertex, LVector4 *start_color, LVector4 *end_color, PN_stdfloat v);
85 void set_parameters(PN_stdfloat sampling_time, PN_stdfloat time_window,
bool use_texture,
bool calculate_relative_matrix,
bool use_nurbs, PN_stdfloat resolution_distance);
87 int check_for_update(PN_stdfloat current_time);
88 void update_motion_trail(PN_stdfloat current_time, LMatrix4 *transform);
92 void begin_geometry();
93 void add_geometry_quad(LVector3 &v0, LVector3 &v1, LVector3 &v2, LVector3 &v3, LVector4 &c0, LVector4 &c1, LVector4 &c2, LVector4 &c3, LVector2 &t0, LVector2 &t1, LVector2 &t2, LVector2 &t3);
94 void add_geometry_quad(LVector4 &v0, LVector4 &v1, LVector4 &v2, LVector4 &v3, LVector4 &c0, LVector4 &c1, LVector4 &c2, LVector4 &c3, LVector2 &t0, LVector2 &t1, LVector2 &t2, LVector2 &t3);
101 PN_stdfloat _pause_time;
105 PN_stdfloat _fade_time;
106 PN_stdfloat _fade_start_time;
107 PN_stdfloat _fade_color_scale;
109 PN_stdfloat _last_update_time;
111 typedef epvector<CMotionTrailVertex> VertexList;
112 VertexList _vertex_list;
117 PN_stdfloat _color_scale;
118 PN_stdfloat _sampling_time;
119 PN_stdfloat _time_window;
122 int _calculate_relative_matrix;
126 PN_stdfloat _resolution_distance;
145 static void init_type() {
146 TypedReferenceCount::init_type();
148 TypedReferenceCount::get_class_type());
151 return get_class_type();
153 virtual TypeHandle force_init_type() {init_type();
return get_class_type();}
This object provides a high-level interface for quickly writing a sequence of numeric values from a v...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This class is an abstraction for evaluating NURBS curves.
void register_type(TypeHandle &type_handle, const std::string &name)
This inline function is just a convenient way to call TypeRegistry::register_type(),...
A base class for things which need to inherit from both TypedObject and from ReferenceCount.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
This defines the actual numeric vertex data stored in a Geom, in the structure defined by a particula...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
Defines a series of disconnected triangles.
TypeHandle is the identifier used to differentiate C++ class types.
A node that holds Geom objects, renderable pieces of geometry.
The method used in creating the motion trail is based on taking samples of time and transformations (...
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.