A Compact Face-Based Topological Data Structure for Triangle Mesh Representation