#include #include using namespace osg; ClipPlane::ClipPlane() { _clipPlane = new double[4]; _clipPlane[0] = 0.0; _clipPlane[1] = 0.0; _clipPlane[2] = 0.0; _clipPlane[3] = 0.0; _clipPlaneNum = 0; } ClipPlane::~ClipPlane() { delete _clipPlane; } void ClipPlane::setClipPlane(const Vec4& plane) { _clipPlane[0] = plane[0]; _clipPlane[1] = plane[1]; _clipPlane[2] = plane[2]; _clipPlane[3] = plane[3]; } void ClipPlane::setClipPlane(const Plane& plane) { _clipPlane[0] = plane[0]; _clipPlane[1] = plane[1]; _clipPlane[2] = plane[2]; _clipPlane[3] = plane[3]; } void ClipPlane::setClipPlane(const double* plane) { if (plane) { _clipPlane[0] = plane[0]; _clipPlane[1] = plane[1]; _clipPlane[2] = plane[2]; _clipPlane[3] = plane[3]; } else { notify(WARN)<<"Warning: ClipPlane::setClipPlane() passed NULL plane array, ignoring operation."<