Commits

Martin Felis committed 7a9dc5a

fixed column specification issue right after COLUMN statement in animation file

  • Participants
  • Parent commits 90db60a

Comments (0)

Files changed (2)

   t,translation for translational motions
   r,rotation    for rotational motions
   s,scale       for scaling motions
-<axis> can be either of x,y,z for the respective axes
+<axis> can be either of x,y,z for the respective axes. Negative axes can
+  be specified by prepending a '-' to the axis name.
 <unit> (optional) can be r,rad, or radian to specify that the columns
   should be interpreted as radians instead of the default degrees.
 
+For a single frame all column specifications must be consecutive in the
+COLUMN section.
+
 See sampleanimation.txt for an example.
 
 NOTES:

File src/Animation.cc

 
 	AnimationKeyPoses animation_keyposes;
 
+	std::list<std::string> column_frame_names;
+
 	while (!file_in.eof()) {
 		previous_line = line;
 		getline (file_in, line);
 
 			// we set it to -1 and can then easily increasing the value
 			column_index = -1;
-			continue;
+
+			line = strip_comments (strip_whitespaces (line.substr(string("COLUMNS:").size() + 1, line.size())));
+			if (line.size() == 0)
+				continue;
 		}
 
 		if (line.substr (0, string("DATA:").size()) == "DATA:") {
 					cerr << "Error: parsing column definition '" << column_def << "' in " << filename << " line " << line_number << endl;
 
 					if (strict)
-						exit(1);
+						abort();
 
 					return false;
 				}
 				if (column_infos[ci].type==ColumnInfo::TransformTypeRotation && column_infos[ci].is_radian) {
 					value *= 180. / M_PI;
 				}
+//				cout << "Adding value column_time = " << column_time << " ci = " << ci << " value = " << value << endl;
 				values.addKeyValue(column_time, ci, value);
 			}
 			continue;