#include "morphmesh.h" morphmesh::morphmesh() { loaded=false; } morphmesh::morphmesh(string filename) { morphmesh(); loadfile(filename); } morphmesh::~morphmesh() { //dtor } int morphmesh::getNumTargets(){ return morphs.size(); } void morphmesh::draw() { draw(0); } void morphmesh::draw(int target){ clearVertices(); addVertices(morphs[target]); ofMesh::draw(); } void morphmesh::draw(const vector& targets, const vector& weights){ clearVertices(); //normalise weights int targetsNum=min(targets.size(),morphs.size()); float totalWeights=0; for (int i=0;i verts; string vertstring=XML.getAttribute("Attribute","Data","none",0); stringstream ss(vertstring); istream_iterator begin(ss); istream_iterator end; vector vstrings(begin, end); for (int j=0;j norms; string normstring=XML.getAttribute("Attribute","Data","none",1); stringstream ns(normstring); istream_iterator nbegin(ns); istream_iterator nend; vector nstrings(nbegin, nend); for (int j=0;j texcords; string texstring=XML.getAttribute("Attribute","Data","none",2); stringstream ts(texstring); istream_iterator tbegin(ts); istream_iterator tend; vector tstrings(tbegin, tend); for (int j=0;j faces; string facestring=XML.getAttribute("Index","Data","none",0); stringstream fs(facestring); istream_iterator fbegin(fs); istream_iterator fend; vector fstrings(fbegin, fend); for (int j=0;j