Made floatpair fields final to prevent modifying. If setting edge or vertex value, need to use setValue() explicitly