diff --git a/src/osgWrappers/osg/Plane.cpp b/src/osgWrappers/osg/Plane.cpp index 15e34a197..4b9651dfe 100644 --- a/src/osgWrappers/osg/Plane.cpp +++ b/src/osgWrappers/osg/Plane.cpp @@ -138,16 +138,16 @@ BEGIN_VALUE_REFLECTOR(osg::Plane) __float__distance__C5_osg_Vec3f_R1, "calculate the distance between a point and the plane. ", ""); - I_Method1(float, distance, IN, const osg::Vec3d &, v, - __float__distance__C5_osg_Vec3d_R1, + I_Method1(double, distance, IN, const osg::Vec3d &, v, + __double__distance__C5_osg_Vec3d_R1, "", ""); I_Method1(float, dotProductNormal, IN, const osg::Vec3f &, v, __float__dotProductNormal__C5_osg_Vec3f_R1, "calculate the dot product of the plane normal and a point. ", ""); - I_Method1(float, dotProductNormal, IN, const osg::Vec3d &, v, - __float__dotProductNormal__C5_osg_Vec3d_R1, + I_Method1(double, dotProductNormal, IN, const osg::Vec3d &, v, + __double__dotProductNormal__C5_osg_Vec3d_R1, "calculate the dot product of the plane normal and a point. ", ""); I_Method1(int, intersect, IN, const std::vector< osg::Vec3 > &, vertices, diff --git a/src/osgWrappers/osgUtil/PlaneIntersector.cpp b/src/osgWrappers/osgUtil/PlaneIntersector.cpp index d380dc01a..8e86e0fee 100644 --- a/src/osgWrappers/osgUtil/PlaneIntersector.cpp +++ b/src/osgWrappers/osgUtil/PlaneIntersector.cpp @@ -10,6 +10,7 @@ #include #include +#include #include #include #include @@ -45,6 +46,22 @@ BEGIN_OBJECT_REFLECTOR(osgUtil::PlaneIntersector) __Intersections_R1__getIntersections, "", ""); + I_Method1(void, setRecordHeightsAsAttributes, IN, bool, flag, + __void__setRecordHeightsAsAttributes__bool, + "", + ""); + I_Method0(bool, getRecordHeightsAsAttributes, + __bool__getRecordHeightsAsAttributes, + "", + ""); + I_Method1(void, setEllipsoidModel, IN, osg::EllipsoidModel *, em, + __void__setEllipsoidModel__osg_EllipsoidModel_P1, + "", + ""); + I_Method0(const osg::EllipsoidModel *, getEllipsoidModel, + __C5_osg_EllipsoidModel_P1__getEllipsoidModel, + "", + ""); I_Method1(osgUtil::Intersector *, clone, IN, osgUtil::IntersectionVisitor &, iv, __Intersector_P1__clone__osgUtil_IntersectionVisitor_R1, "", @@ -69,13 +86,21 @@ BEGIN_OBJECT_REFLECTOR(osgUtil::PlaneIntersector) __bool__containsIntersections, "", ""); + I_SimpleProperty(osg::EllipsoidModel *, EllipsoidModel, + 0, + __void__setEllipsoidModel__osg_EllipsoidModel_P1); I_SimpleProperty(osgUtil::PlaneIntersector::Intersections &, Intersections, __Intersections_R1__getIntersections, 0); + I_SimpleProperty(bool, RecordHeightsAsAttributes, + __bool__getRecordHeightsAsAttributes, + __void__setRecordHeightsAsAttributes__bool); END_REFLECTOR TYPE_NAME_ALIAS(std::vector< osg::Vec3d >, osgUtil::PlaneIntersector::Intersection::Polyline); +TYPE_NAME_ALIAS(std::vector< double >, osgUtil::PlaneIntersector::Intersection::Attributes); + BEGIN_VALUE_REFLECTOR(osgUtil::PlaneIntersector::Intersection) I_Constructor0(____Intersection, "", @@ -84,7 +109,10 @@ BEGIN_VALUE_REFLECTOR(osgUtil::PlaneIntersector::Intersection) I_PublicMemberProperty(osg::ref_ptr< osg::RefMatrix >, matrix); I_PublicMemberProperty(osg::ref_ptr< osg::Drawable >, drawable); I_PublicMemberProperty(osgUtil::PlaneIntersector::Intersection::Polyline, polyline); + I_PublicMemberProperty(osgUtil::PlaneIntersector::Intersection::Attributes, attributes); END_REFLECTOR +STD_VECTOR_REFLECTOR(std::vector< double >); + STD_VECTOR_REFLECTOR(std::vector< osgUtil::PlaneIntersector::Intersection >);