static void waterVertices(CompScreen * s, GLenum type, XPoint * p, int n, float v) { WATER_SCREEN(s); if (!s->fragmentProgram) return; scaleVertices(s, p, n); if (!fboVertices(s, type, p, n, v)) softwareVertices(s, type, p, n, v); if (ws->count < 3000) ws->count = 3000; }
void leatherman::scaleVertices(const std::vector<geometry_msgs::Point> &vin, double sx, double sy, double sz, std::vector<geometry_msgs::Point> &vout) { std::vector<Eigen::Vector3d> evin(vin.size()), evout; for(size_t p = 0; p < vin.size(); ++p) { evin[p](0) = vin[p].x; evin[p](1) = vin[p].y; evin[p](2) = vin[p].z; } scaleVertices(evin, sx, sy, sz, evout); vout.resize(evout.size()); for(size_t p = 0; p < evout.size(); ++p) { vout[p].x = evout[p](0); vout[p].y = evout[p](1); vout[p].z = evout[p](2); } }