#include <cubicCurveseg.h>
Inheritance diagram for CubicCurveseg:
Public Member Functions | |
CubicCurveseg () | |
CubicCurveseg (const LMatrix4f &basis) | |
CubicCurveseg (const BezierSeg &seg) | |
CubicCurveseg (int order, const float knots[], const LVecBase4f cvs[]) | |
virtual | ~CubicCurveseg () |
void | hermite_basis (const HermiteCurveCV &cv0, const HermiteCurveCV &cv1, float tlength=1.0f) |
void | bezier_basis (const BezierSeg &seg) |
void | nurbs_basis (int order, const float knots[], const LVecBase4f cvs[]) |
void | evaluate_point (const LVecBase4f &tv, LVecBase3f &result) const |
void | evaluate_vector (const LVecBase4f &tv, LVecBase3f &result) const |
virtual bool | get_bezier_seg (BezierSeg &seg) const |
virtual TypeHandle | get_type () const |
virtual TypeHandle | force_init_type () |
Static Public Member Functions | |
bool | compute_seg (int rtype0, float t0, const LVecBase4f &v0, int rtype1, float t1, const LVecBase4f &v1, int rtype2, float t2, const LVecBase4f &v2, int rtype3, float t3, const LVecBase4f &v3, const LMatrix4f &B, const LMatrix4f &Bi, LMatrix4f &G) |
void | register_with_read_factory () |
TypeHandle | get_class_type () |
void | init_type () |
Public Attributes | |
LVecBase4f | Bx |
LVecBase4f | By |
LVecBase4f | Bz |
LVecBase4f | Bw |
bool | rational |
Protected Member Functions | |
virtual void | write_datagram (BamWriter *manager, Datagram &me) |
void | fillin (DatagramIterator &scan, BamReader *manager) |
Static Protected Member Functions | |
TypedWritable * | make_CubicCurveseg (const FactoryParams ¶ms) |
Private Member Functions | |
virtual bool | get_tangent (float t, LVecBase3f &tangent) const |
virtual bool | get_pt (float t, LVecBase3f &point, LVecBase3f &tangent) const |
virtual bool | get_2ndtangent (float t, LVecBase3f &tangent2) const |
Private Attributes | |
PUBLISHED | __pad0__: virtual bool get_point(float t |
PUBLISHED LVecBase3f &point | const |
Static Private Attributes | |
TypeHandle | _type_handle |
|
Definition at line 37 of file cubicCurveseg.cxx. |
|
Definition at line 47 of file cubicCurveseg.cxx. |
|
Definition at line 62 of file cubicCurveseg.cxx. References bezier_basis(). |
|
Definition at line 74 of file cubicCurveseg.cxx. References nurbs_basis(). |
|
Definition at line 84 of file cubicCurveseg.cxx. |
|
Definition at line 179 of file cubicCurveseg.cxx. References Bx, By, Bz, and rational. Referenced by CubicCurveseg(), HermiteCurve::invalidate_cv(), and HermiteCurve::recompute_basis(). |
|
Definition at line 510 of file cubicCurveseg.cxx. References compute_seg_col(), invert, and RT_KEEP_ORIG. Referenced by ClassicNurbsCurve::rebuild_curveseg(). |
|
Definition at line 94 of file cubicCurveseg.h. Referenced by get_pt(). |
|
Definition at line 101 of file cubicCurveseg.h. Referenced by get_2ndtangent(), get_pt(), and get_tangent(). |
|
Reimplemented from ParametricCurve. Definition at line 619 of file cubicCurveseg.cxx. References Bw, Bx, By, Bz, ParametricCurve::fillin(), DatagramIterator::get_bool(), and rational. Referenced by make_CubicCurveseg(). |
|
Reimplemented from ParametricCurve. Definition at line 142 of file cubicCurveseg.h. References ParametricCurve::get_class_type(), and ParametricCurve::init_type(). |
|
Implements ParametricCurve. Definition at line 135 of file cubicCurveseg.cxx. References evaluate_vector(), and t. |
|
Definition at line 332 of file cubicCurveseg.cxx. |
|
Reimplemented from ParametricCurve. Definition at line 131 of file cubicCurveseg.h. Referenced by register_with_read_factory(). |
|
Implements ParametricCurve. Definition at line 121 of file cubicCurveseg.cxx. References evaluate_point(), evaluate_vector(), and t. |
|
Implements ParametricCurve. Definition at line 109 of file cubicCurveseg.cxx. References evaluate_vector(), and t. |
|
Reimplemented from ParametricCurve. Definition at line 139 of file cubicCurveseg.h. References ParametricCurve::get_class_type(). |
|
Definition at line 149 of file cubicCurveseg.cxx. References HermiteCurveCV::_in, HermiteCurveCV::_out, HermiteCurveCV::_p, Bx, By, Bz, and rational. Referenced by HermiteCurve::invalidate_cv(), and HermiteCurve::recompute_basis(). |
|
Reimplemented from ParametricCurve. Definition at line 134 of file cubicCurveseg.h. References ParametricCurve::get_class_type(), ParametricCurve::init_type(), and register_type(). Referenced by ConfigureFn(). |
|
Definition at line 583 of file cubicCurveseg.cxx. References fillin(), params, and parse_params(). Referenced by register_with_read_factory(). |
|
Definition at line 302 of file cubicCurveseg.cxx. References Bw, Bx, By, Bz, c, compute_nurbs_basis(), and rational. Referenced by CubicCurveseg(). |
|
Reimplemented from PandaNode. Definition at line 573 of file cubicCurveseg.cxx. References get_class_type(), BamReader::get_factory(), make_CubicCurveseg(), and Factory< TypedWritable >::register_factory(). Referenced by ConfigureFn(). |
|
Reimplemented from ParametricCurve. Definition at line 600 of file cubicCurveseg.cxx. References Datagram::add_bool(), Bw, Bx, By, Bz, rational, and ParametricCurve::write_datagram(). |
|
Reimplemented from ParametricCurve. Definition at line 64 of file cubicCurveseg.h. |
|
Reimplemented from ParametricCurve. Definition at line 29 of file cubicCurveseg.cxx. |
|
Definition at line 117 of file cubicCurveseg.h. Referenced by CubicCurveseg(), fillin(), get_bezier_seg(), nurbs_basis(), and write_datagram(). |
|
Definition at line 117 of file cubicCurveseg.h. Referenced by bezier_basis(), CubicCurveseg(), fillin(), get_bezier_seg(), hermite_basis(), nurbs_basis(), and write_datagram(). |
|
Definition at line 117 of file cubicCurveseg.h. Referenced by bezier_basis(), CubicCurveseg(), fillin(), get_bezier_seg(), hermite_basis(), nurbs_basis(), and write_datagram(). |
|
Definition at line 117 of file cubicCurveseg.h. Referenced by bezier_basis(), CubicCurveseg(), fillin(), get_bezier_seg(), hermite_basis(), nurbs_basis(), and write_datagram(). |
|
Reimplemented from PandaNode. Definition at line 64 of file cubicCurveseg.h. |
|
Definition at line 118 of file cubicCurveseg.h. Referenced by bezier_basis(), CubicCurveseg(), fillin(), hermite_basis(), nurbs_basis(), and write_datagram(). |