Add Chromium-only Blender WebEngine parity work

This commit is contained in:
mes123456
2026-08-12 04:47:48 -04:00
commit 9fd26010f6
18225 changed files with 11622124 additions and 0 deletions

View File

@@ -0,0 +1,136 @@
//
// Copyright 2015 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
#ifndef OPENSUBDIV_REGRESSION_SHAPES_ALL_H
#define OPENSUBDIV_REGRESSION_SHAPES_ALL_H
#include "catmark_bishop.h"
#include "catmark_car.h"
#include "catmark_chaikin0.h"
#include "catmark_chaikin1.h"
#include "catmark_chaikin2.h"
#include "catmark_cube_corner0.h"
#include "catmark_cube_corner1.h"
#include "catmark_cube_corner2.h"
#include "catmark_cube_corner3.h"
#include "catmark_cube_corner4.h"
#include "catmark_cube_creases0.h"
#include "catmark_cube_creases1.h"
#include "catmark_cube_creases2.h"
#include "catmark_cube.h"
#include "catmark_cubes_infsharp.h"
#include "catmark_cubes_semisharp.h"
#include "catmark_dart_edgecorner.h"
#include "catmark_dart_edgeonly.h"
#include "catmark_edgecorner.h"
#include "catmark_edgenone.h"
#include "catmark_edgeonly.h"
#include "catmark_fan.h"
#include "catmark_flap.h"
#include "catmark_flap2.h"
#include "catmark_fvar_bound0.h"
#include "catmark_fvar_bound1.h"
#include "catmark_fvar_bound2.h"
#include "catmark_fvar_bound3.h"
#include "catmark_fvar_bound4.h"
#include "catmark_fvar_project0.h"
#include "catmark_gregory_test0.h"
#include "catmark_gregory_test1.h"
#include "catmark_gregory_test2.h"
#include "catmark_gregory_test3.h"
#include "catmark_gregory_test4.h"
#include "catmark_gregory_test5.h"
#include "catmark_gregory_test6.h"
#include "catmark_gregory_test7.h"
#include "catmark_gregory_test8.h"
#include "catmark_helmet.h"
#include "catmark_hole_test1.h"
#include "catmark_hole_test2.h"
#include "catmark_hole_test3.h"
#include "catmark_hole_test4.h"
#include "catmark_lefthanded.h"
#include "catmark_righthanded.h"
#include "catmark_pole8.h"
#include "catmark_pole64.h"
#include "catmark_pole360.h"
#include "catmark_nonman_edges.h"
#include "catmark_nonman_edge100.h"
#include "catmark_nonman_verts.h"
#include "catmark_nonman_quadpole8.h"
#include "catmark_nonman_quadpole64.h"
#include "catmark_nonman_quadpole360.h"
#include "catmark_nonman_bareverts.h"
#include "catmark_nonman_creases.h"
#include "catmark_nonquads.h"
#include "catmark_pawn.h"
#include "catmark_pyramid_creases0.h"
#include "catmark_pyramid_creases1.h"
#include "catmark_pyramid_creases2.h"
#include "catmark_pyramid.h"
#include "catmark_quadstrips.h"
#include "catmark_rook.h"
#include "catmark_single_crease.h"
#include "catmark_inf_crease0.h"
#include "catmark_inf_crease1.h"
#include "catmark_smoothtris0.h"
#include "catmark_smoothtris1.h"
#include "catmark_square_hedit0.h"
#include "catmark_square_hedit1.h"
#include "catmark_square_hedit2.h"
#include "catmark_square_hedit3.h"
#include "catmark_square_hedit4.h"
#include "catmark_tent_creases0.h"
#include "catmark_tent_creases1.h"
#include "catmark_tent.h"
#include "catmark_toroidal_tet.h"
#include "catmark_torus.h"
#include "catmark_torus_creases0.h"
#include "catmark_torus_creases1.h"
#include "catmark_val2_interior.h"
#include "catmark_val2_back2back.h"
#include "catmark_val2_foldover.h"
#include "catmark_val2_nonman.h"
#include "catmark_xord_interior.h"
#include "catmark_xord_boundary.h"
#include "bilinear_cube.h"
#include "bilinear_nonplanar.h"
#include "bilinear_nonquads0.h"
#include "bilinear_nonquads1.h"
#include "loop_chaikin0.h"
#include "loop_chaikin1.h"
#include "loop_cube.h"
#include "loop_cube_asymmetric.h"
#include "loop_cube_creases0.h"
#include "loop_cube_creases1.h"
#include "loop_cubes_infsharp.h"
#include "loop_cubes_semisharp.h"
#include "loop_fvar_bound0.h"
#include "loop_fvar_bound1.h"
#include "loop_fvar_bound2.h"
#include "loop_fvar_bound3.h"
#include "loop_icosahedron.h"
#include "loop_icos_infsharp.h"
#include "loop_icos_semisharp.h"
#include "loop_nonman_edges.h"
#include "loop_nonman_edge100.h"
#include "loop_nonman_verts.h"
#include "loop_pole8.h"
#include "loop_pole64.h"
#include "loop_pole360.h"
#include "loop_saddle_edgecorner.h"
#include "loop_saddle_edgeonly.h"
#include "loop_tetrahedron.h"
#include "loop_toroidal_tet.h"
#include "loop_triangle_edgecorner.h"
#include "loop_triangle_edgenone.h"
#include "loop_triangle_edgeonly.h"
#include "loop_xord_boundary.h"
#include "loop_xord_interior.h"
#include "loop_val2_interior.h"
#endif // OPENSUBDIV_REGRESSION_SHAPES_ALL_H

View File

@@ -0,0 +1,64 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string bilinear_cube =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
;

View File

@@ -0,0 +1,28 @@
//
// Copyright 2018 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string bilinear_nonplanar =
"\n"
"v -0.6 -0.5 -0.4\n"
"v -0.1 0.0 0.4\n"
"v -0.6 0.5 -0.4\n"
"v -1.1 0.0 0.4\n"
"v 0.6 -0.5 -0.4\n"
"v 1.1 0.0 0.4\n"
"v 0.6 0.5 -0.4\n"
"v 0.1 0.0 0.4\n"
"\n"
"vt 0 0\n"
"vt 1 0\n"
"vt 1 1\n"
"vt 0 1\n"
"\n"
"f 1/1 2/2 3/3 4/4\n"
"f 6/2 7/3 8/4 5/1\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
;

View File

@@ -0,0 +1,32 @@
//
// Copyright 2018 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string bilinear_nonquads0 =
"\n"
"v -2.05 0 -0.88\n"
"v -0.05 0 -0.88\n"
"v -1.05 0 0.85\n"
"v 0.41 0 -0.91\n"
"v 1.59 0 -0.91\n"
"v 1.95 0 0.21\n"
"v 1.00 0 0.90\n"
"v 0.05 0 0.21\n"
"\n"
"vt 0.0 0.0\n"
"vt 1.0 0.0\n"
"vt 0.5 1.0\n"
"vt 0.20 0.05\n"
"vt 0.74 0.05\n"
"vt 0.98 0.58\n"
"vt 0.50 0.95\n"
"vt 0.02 0.58\n"
"\n"
"f 1/1 2/2 3/3\n"
"f 4/4 5/5 6/6 7/7 8/8\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
;

View File

@@ -0,0 +1,65 @@
//
// Copyright 2018 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string bilinear_nonquads1 =
"\n"
"v 0.80 0.0 -0.9\n"
"v 0.0 0.0 -0.9\n"
"v 0.40 0.0 -1.2\n"
"v 0.80 0.35 -0.5\n"
"v 0.80 0.0 0.9\n"
"v -0.50 0.0 -0.9\n"
"v -0.50 0.0 -0.5\n"
"v 0.0 0.0 -0.5\n"
"v 0.0 0.35 -0.2\n"
"v -0.50 0.35 -0.2\n"
"v -0.0 0.0 0.5\n"
"v -0.50 0.0 0.5\n"
"v 0.40 0.35 -0.2\n"
"v -0.0 0.0 0.9\n"
"v -0.50 0.0 0.9\n"
"v 0.40 0.0 1.2\n"
"v -0.0 0.35 0.2\n"
"v 0.80 0.35 0.5\n"
"v 0.40 0.35 0.2\n"
"v -0.50 0.35 0.2\n"
"\n"
"vt 0.80 0.2\n"
"vt 0.40 0.2\n"
"vt 0.60 0.1\n"
"vt 0.80 0.33\n"
"vt 0.80 0.8\n"
"vt 0.15 0.2\n"
"vt 0.15 0.33\n"
"vt 0.40 0.33\n"
"vt 0.40 0.43\n"
"vt 0.15 0.43\n"
"vt 0.40 0.67\n"
"vt 0.15 0.67\n"
"vt 0.60 0.43\n"
"vt 0.40 0.8\n"
"vt 0.15 0.8\n"
"vt 0.60 0.9\n"
"vt 0.40 0.57\n"
"vt 0.80 0.67\n"
"vt 0.60 0.57\n"
"vt 0.15 0.57\n"
"\n"
"f 13/13 9/9 8/8\n"
"f 11/11 17/17 19/19\n"
"f 11/11 12/12 20/20 17/17\n"
"f 7/7 6/6 2/2 8/8\n"
"f 9/9 10/10 7/7 8/8\n"
"f 14/14 15/15 12/12 11/11\n"
"f 18/18 5/5 16/16 14/14 11/11 19/19\n"
"f 2/2 3/3 1/1 4/4 13/13 8/8\n"
"f 4/4 18/18 19/19 13/13\n"
"f 17/17 20/20 10/10 9/9\n"
"f 19/19 17/17 9/9 13/13\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,136 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_chaikin0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 1.50 -0.50 0.50\n"
"v 1.50 0.50 0.50\n"
"v 0.90 -0.50 0.50\n"
"v 0.90 0.50 0.50\n"
"v 0.30 -0.50 0.50\n"
"v 0.30 0.50 0.50\n"
"v -0.30 -0.50 0.50\n"
"v -0.30 0.50 0.50\n"
"v -0.90 -0.50 0.50\n"
"v -0.90 0.50 0.50\n"
"v -1.50 -0.50 0.50\n"
"v -1.50 0.50 0.50\n"
"v -1.50 -0.50 -0.50\n"
"v -1.50 0.50 -0.50\n"
"v -0.90 -0.50 -0.50\n"
"v -0.90 0.50 -0.50\n"
"v -0.30 -0.50 -0.50\n"
"v -0.30 0.50 -0.50\n"
"v 0.30 -0.50 -0.50\n"
"v 0.30 0.50 -0.50\n"
"v 0.90 -0.50 -0.50\n"
"v 0.90 0.50 -0.50\n"
"v 1.50 -0.50 -0.50\n"
"v 1.50 0.50 -0.50\n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vn -0.577350 -0.577350 0.577350\n"
"vn 0.577350 -0.577350 0.577350\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.577350 0.577350 0.577350\n"
"vn 0.577350 0.577350 0.577350\n"
"vn -0.577350 0.577350 -0.577350\n"
"vn 0.577350 0.577350 -0.577350\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.577350 -0.577350 -0.577350\n"
"vn 0.577350 -0.577350 -0.577350\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/4 3/3/3\n"
"f 3/3/3 4/4/4 6/6/6 5/5/5\n"
"f 5/5/5 6/6/6 8/8/8 7/7/7\n"
"f 7/7/7 8/8/8 10/10/10 9/9/9\n"
"f 9/9/9 10/10/10 12/12/12 11/11/11\n"
"f 11/11/11 12/12/12 14/14/14 13/13/13\n"
"f 13/13/13 14/14/14 16/16/16 15/15/15\n"
"f 15/15/15 16/16/16 18/18/18 17/17/17\n"
"f 17/17/17 18/18/18 20/20/20 19/19/19\n"
"f 19/19/19 20/20/20 22/22/22 21/21/21\n"
"f 21/21/21 22/22/22 24/24/24 23/23/23\n"
"f 23/23/23 24/24/24 2/2/2 1/1/1\n"
"f 2/2/2 24/24/24 22/22/22 4/4/4\n"
"f 4/4/4 22/22/22 20/20/20 6/6/6\n"
"f 6/6/6 20/20/20 18/18/18 8/8/8\n"
"f 8/8/8 18/18/18 16/16/16 10/10/10\n"
"f 10/10/10 16/16/16 14/14/14 12/12/12\n"
"f 23/23/23 1/1/1 3/3/3 21/21/21\n"
"f 21/21/21 3/3/3 5/5/5 19/19/19\n"
"f 19/19/19 5/5/5 7/7/7 17/17/17\n"
"f 17/17/17 7/7/7 9/9/9 15/15/15\n"
"f 15/15/15 9/9/9 11/11/11 13/13/13\n"
"t crease 2/1/0 0 1 5.000000\n"
"t crease 2/1/0 10 11 5.000000\n"
"t crease 2/1/0 12 13 5.000000\n"
"t crease 2/1/0 22 23 5.000000\n"
"t crease 2/1/0 0 2 1.000000\n"
"t crease 2/1/0 1 3 1.000000\n"
"t crease 2/1/0 2 4 2.000000\n"
"t crease 2/1/0 3 5 2.000000\n"
"t crease 2/1/0 4 6 3.000000\n"
"t crease 2/1/0 5 7 3.000000\n"
"t crease 2/1/0 6 8 4.000000\n"
"t crease 2/1/0 7 9 4.000000\n"
"t crease 2/1/0 8 10 5.000000\n"
"t crease 2/1/0 9 11 5.000000\n"
"t crease 2/1/0 10 12 5.000000\n"
"t crease 2/1/0 11 13 5.000000\n"
"t crease 2/1/0 12 14 5.000000\n"
"t crease 2/1/0 13 15 5.000000\n"
"t crease 2/1/0 14 16 4.000000\n"
"t crease 2/1/0 15 17 4.000000\n"
"t crease 2/1/0 16 18 3.000000\n"
"t crease 2/1/0 17 19 3.000000\n"
"t crease 2/1/0 18 20 2.000000\n"
"t crease 2/1/0 19 21 2.000000\n"
"t crease 2/1/0 20 22 1.000000\n"
"t crease 2/1/0 21 23 1.000000\n"
"t crease 2/1/0 22 0 5.000000\n"
"t crease 2/1/0 23 1 5.000000\n"
"t creasemethod 0/0/1 normal\n"
"\n"
;

View File

@@ -0,0 +1,136 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_chaikin1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 1.50 -0.50 0.50\n"
"v 1.50 0.50 0.50\n"
"v 0.90 -0.50 0.50\n"
"v 0.90 0.50 0.50\n"
"v 0.30 -0.50 0.50\n"
"v 0.30 0.50 0.50\n"
"v -0.30 -0.50 0.50\n"
"v -0.30 0.50 0.50\n"
"v -0.90 -0.50 0.50\n"
"v -0.90 0.50 0.50\n"
"v -1.50 -0.50 0.50\n"
"v -1.50 0.50 0.50\n"
"v -1.50 -0.50 -0.50\n"
"v -1.50 0.50 -0.50\n"
"v -0.90 -0.50 -0.50\n"
"v -0.90 0.50 -0.50\n"
"v -0.30 -0.50 -0.50\n"
"v -0.30 0.50 -0.50\n"
"v 0.30 -0.50 -0.50\n"
"v 0.30 0.50 -0.50\n"
"v 0.90 -0.50 -0.50\n"
"v 0.90 0.50 -0.50\n"
"v 1.50 -0.50 -0.50\n"
"v 1.50 0.50 -0.50\n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vn -0.577350 -0.577350 0.577350\n"
"vn 0.577350 -0.577350 0.577350\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.577350 0.577350 0.577350\n"
"vn 0.577350 0.577350 0.577350\n"
"vn -0.577350 0.577350 -0.577350\n"
"vn 0.577350 0.577350 -0.577350\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.577350 -0.577350 -0.577350\n"
"vn 0.577350 -0.577350 -0.577350\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/4 3/3/3\n"
"f 3/3/3 4/4/4 6/6/6 5/5/5\n"
"f 5/5/5 6/6/6 8/8/8 7/7/7\n"
"f 7/7/7 8/8/8 10/10/10 9/9/9\n"
"f 9/9/9 10/10/10 12/12/12 11/11/11\n"
"f 11/11/11 12/12/12 14/14/14 13/13/13\n"
"f 13/13/13 14/14/14 16/16/16 15/15/15\n"
"f 15/15/15 16/16/16 18/18/18 17/17/17\n"
"f 17/17/17 18/18/18 20/20/20 19/19/19\n"
"f 19/19/19 20/20/20 22/22/22 21/21/21\n"
"f 21/21/21 22/22/22 24/24/24 23/23/23\n"
"f 23/23/23 24/24/24 2/2/2 1/1/1\n"
"f 2/2/2 24/24/24 22/22/22 4/4/4\n"
"f 4/4/4 22/22/22 20/20/20 6/6/6\n"
"f 6/6/6 20/20/20 18/18/18 8/8/8\n"
"f 8/8/8 18/18/18 16/16/16 10/10/10\n"
"f 10/10/10 16/16/16 14/14/14 12/12/12\n"
"f 23/23/23 1/1/1 3/3/3 21/21/21\n"
"f 21/21/21 3/3/3 5/5/5 19/19/19\n"
"f 19/19/19 5/5/5 7/7/7 17/17/17\n"
"f 17/17/17 7/7/7 9/9/9 15/15/15\n"
"f 15/15/15 9/9/9 11/11/11 13/13/13\n"
"t crease 2/1/0 0 1 5.000000\n"
"t crease 2/1/0 10 11 5.000000\n"
"t crease 2/1/0 12 13 5.000000\n"
"t crease 2/1/0 22 23 5.000000\n"
"t crease 2/1/0 0 2 1.000000\n"
"t crease 2/1/0 1 3 1.000000\n"
"t crease 2/1/0 2 4 2.000000\n"
"t crease 2/1/0 3 5 2.000000\n"
"t crease 2/1/0 4 6 3.000000\n"
"t crease 2/1/0 5 7 3.000000\n"
"t crease 2/1/0 6 8 4.000000\n"
"t crease 2/1/0 7 9 4.000000\n"
"t crease 2/1/0 8 10 5.000000\n"
"t crease 2/1/0 9 11 5.000000\n"
"t crease 2/1/0 10 12 5.000000\n"
"t crease 2/1/0 11 13 5.000000\n"
"t crease 2/1/0 12 14 5.000000\n"
"t crease 2/1/0 13 15 5.000000\n"
"t crease 2/1/0 14 16 4.000000\n"
"t crease 2/1/0 15 17 4.000000\n"
"t crease 2/1/0 16 18 3.000000\n"
"t crease 2/1/0 17 19 3.000000\n"
"t crease 2/1/0 18 20 2.000000\n"
"t crease 2/1/0 19 21 2.000000\n"
"t crease 2/1/0 20 22 1.000000\n"
"t crease 2/1/0 21 23 1.000000\n"
"t crease 2/1/0 22 0 5.000000\n"
"t crease 2/1/0 23 1 5.000000\n"
"t creasemethod 0/0/1 chaikin\n"
"\n"
;

View File

@@ -0,0 +1,53 @@
//
// Copyright 2014 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_chaikin2 =
"v 1 0 -1\n"
"v 1 1 0\n"
"v 1 0 1\n"
"v 1 -1 0\n"
"v 0.5 0 -1\n"
"v 0.5 1 0\n"
"v 0.5 0 1\n"
"v 0.5 -1 0\n"
"v 0 0 -1\n"
"v 0 1 0\n"
"v 0 0 1\n"
"v 0 -1 0\n"
"v -0.5 0 -1\n"
"v -0.5 1 0\n"
"v -0.5 0 1\n"
"v -0.5 -1 0\n"
"v -1 0 -1\n"
"v -1 1 0\n"
"v -1 0 1\n"
"v -1 -1 0\n"
"\n"
"f 5 6 2 1 \n"
"f 6 7 3 2 \n"
"f 7 8 4 3 \n"
"f 8 5 1 4 \n"
"f 9 10 6 5 \n"
"f 10 11 7 6 \n"
"f 11 12 8 7 \n"
"f 12 9 5 8 \n"
"f 13 14 10 9 \n"
"f 14 15 11 10 \n"
"f 15 16 12 11 \n"
"f 16 13 9 12 \n"
"f 17 18 14 13 \n"
"f 18 19 15 14 \n"
"f 19 20 16 15 \n"
"f 20 17 13 16 \n"
"\n"
"t crease 2/1/0 2 6 0.5\n"
"t crease 2/1/0 6 10 1.5\n"
"t crease 2/1/0 10 14 2.5\n"
"t crease 2/1/0 14 18 3.5\n"
"t creasemethod 0/0/1 chaikin\n"
"\n"
;

View File

@@ -0,0 +1,64 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cube =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
;

View File

@@ -0,0 +1,65 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cube_corner0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
"t corner 1/1/0 0 0.7\n"
;

View File

@@ -0,0 +1,65 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cube_corner1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
"t corner 1/1/0 0 1.4\n"
;

View File

@@ -0,0 +1,65 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cube_corner2 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
"t corner 1/1/0 0 2.8\n"
;

View File

@@ -0,0 +1,65 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cube_corner3 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
"t corner 1/1/0 0 3.0\n"
;

View File

@@ -0,0 +1,65 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cube_corner4 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
"t corner 1/1/0 0 10.0\n"
;

View File

@@ -0,0 +1,67 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cube_creases0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
"t crease 2/1/0 0 1 2.0\n"
"t crease 2/1/0 1 3 2.0\n"
"t interpolateboundary 1/0/0 2\n"
;

View File

@@ -0,0 +1,77 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cube_creases1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
"t crease 2/1/0 0 1 5.0\n"
"t crease 2/1/0 1 3 5.0\n"
"t crease 2/1/0 3 2 5.0\n"
"t crease 2/1/0 2 0 5.0\n"
"t crease 2/1/0 4 5 5.0\n"
"t crease 2/1/0 5 7 5.0\n"
"t crease 2/1/0 7 6 5.0\n"
"t crease 2/1/0 6 4 5.0\n"
"t crease 2/1/0 0 6 5.0\n"
"t crease 2/1/0 1 7 5.0\n"
"t crease 2/1/0 2 4 5.0\n"
"t crease 2/1/0 3 5 0.1\n"
"t interpolateboundary 1/0/0 2\n"
;

View File

@@ -0,0 +1,77 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cube_creases2 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
"t crease 2/1/0 0 1 10.0\n"
"t crease 2/1/0 1 3 10.0\n"
"t crease 2/1/0 3 2 10.0\n"
"t crease 2/1/0 2 0 10.0\n"
"t crease 2/1/0 4 5 10.0\n"
"t crease 2/1/0 5 7 10.0\n"
"t crease 2/1/0 7 6 10.0\n"
"t crease 2/1/0 6 4 10.0\n"
"t crease 2/1/0 0 6 10.0\n"
"t crease 2/1/0 1 7 10.0\n"
"t crease 2/1/0 2 4 10.0\n"
"t crease 2/1/0 3 5 0.1\n"
"t interpolateboundary 1/0/0 2\n"
;

View File

@@ -0,0 +1,176 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cubes_infsharp =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"# 8 vertices\n"
"v -0.25 -0.50 1.25\n"
"v -0.25 0.50 1.25\n"
"v -1.25 -0.50 1.25\n"
"v -1.25 0.50 1.25\n"
"v -1.25 -0.50 0.25\n"
"v -1.25 0.50 0.25\n"
"v -0.25 -0.50 0.25\n"
"v -0.25 0.50 0.25\n"
"\n"
"# 14 uvs\n"
"vt 0.2 0.55\n"
"vt 0.3 0.55\n"
"vt 0.2 0.65\n"
"vt 0.3 0.65\n"
"vt 0.2 0.75\n"
"vt 0.3 0.75\n"
"vt 0.2 0.85\n"
"vt 0.3 0.85\n"
"vt 0.2 0.95\n"
"vt 0.3 0.95\n"
"vt 0.4 0.55\n"
"vt 0.4 0.65\n"
"vt 0.1 0.55\n"
"vt 0.1 0.65\n"
"\n"
"f 1/1 2/2 4/4 3/3\n"
"f 3/3 4/4 6/6 5/5\n"
"f 5/5 6/6 8/8 7/7\n"
"f 7/7 8/8 2/10 1/9\n"
"f 2/2 8/11 6/12 4/4\n"
"f 7/13 1/1 3/3 5/14\n"
"\n"
"t corner 1/1/0 0 10.0\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 1.25 -0.50 1.25\n"
"v 1.25 0.50 1.25\n"
"v 0.25 -0.50 1.25\n"
"v 0.25 0.50 1.25\n"
"v 0.25 -0.50 0.25\n"
"v 0.25 0.50 0.25\n"
"v 1.25 -0.50 0.25\n"
"v 1.25 0.50 0.25\n"
"\n"
"vt 0.7 0.55\n"
"vt 0.8 0.55\n"
"vt 0.7 0.65\n"
"vt 0.8 0.65\n"
"vt 0.7 0.75\n"
"vt 0.8 0.75\n"
"vt 0.7 0.85\n"
"vt 0.8 0.85\n"
"vt 0.7 0.95\n"
"vt 0.8 0.95\n"
"vt 0.9 0.55\n"
"vt 0.9 0.65\n"
"vt 0.6 0.55\n"
"vt 0.6 0.65\n"
"\n"
"f 9/15 10/16 12/18 11/17\n"
"f 11/17 12/18 14/20 13/19\n"
"f 13/19 14/20 16/22 15/21\n"
"f 15/21 16/22 10/24 9/23\n"
"f 10/16 16/25 14/26 12/18\n"
"f 15/27 9/15 11/17 13/28\n"
"\n"
"t crease 2/1/0 8 9 10.0\n"
"t crease 2/1/0 8 10 10.0\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -0.25 -0.50 -0.25\n"
"v -0.25 0.50 -0.25\n"
"v -1.25 -0.50 -0.25\n"
"v -1.25 0.50 -0.25\n"
"v -1.25 -0.50 -1.25\n"
"v -1.25 0.50 -1.25\n"
"v -0.25 -0.50 -1.25\n"
"v -0.25 0.50 -1.25\n"
"\n"
"vt 0.2 0.05\n"
"vt 0.3 0.05\n"
"vt 0.2 0.15\n"
"vt 0.3 0.15\n"
"vt 0.2 0.25\n"
"vt 0.3 0.25\n"
"vt 0.2 0.35\n"
"vt 0.3 0.35\n"
"vt 0.2 0.45\n"
"vt 0.3 0.45\n"
"vt 0.4 0.05\n"
"vt 0.4 0.15\n"
"vt 0.1 0.05\n"
"vt 0.1 0.15\n"
"\n"
"f 17/29 18/30 20/32 19/31\n"
"f 19/31 20/32 22/34 21/33\n"
"f 21/33 22/34 24/36 23/35\n"
"f 23/35 24/36 18/38 17/37\n"
"f 18/30 24/39 22/40 20/32\n"
"f 23/41 17/29 19/31 21/42\n"
"\n"
"t crease 2/1/0 18 16 10.0\n"
"t crease 2/1/0 16 22 10.0\n"
"t crease 2/1/0 22 20 10.0\n"
"t crease 2/1/0 18 20 10.0\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 1.25 -0.50 -0.25\n"
"v 1.25 0.50 -0.25\n"
"v 0.25 -0.50 -0.25\n"
"v 0.25 0.50 -0.25\n"
"v 0.25 -0.50 -1.25\n"
"v 0.25 0.50 -1.25\n"
"v 1.25 -0.50 -1.25\n"
"v 1.25 0.50 -1.25\n"
"\n"
"vt 0.7 0.05\n"
"vt 0.8 0.05\n"
"vt 0.7 0.15\n"
"vt 0.8 0.15\n"
"vt 0.7 0.25\n"
"vt 0.8 0.25\n"
"vt 0.7 0.35\n"
"vt 0.8 0.35\n"
"vt 0.7 0.45\n"
"vt 0.8 0.45\n"
"vt 0.9 0.05\n"
"vt 0.9 0.15\n"
"vt 0.6 0.05\n"
"vt 0.6 0.15\n"
"\n"
"f 25/43 26/44 28/46 27/45\n"
"f 27/45 28/46 30/48 29/47\n"
"f 29/47 30/48 32/50 31/49\n"
"f 31/49 32/50 26/52 25/51\n"
"f 26/44 32/53 30/54 28/46\n"
"f 31/55 25/43 27/45 29/56\n"
"\n"
"t crease 2/1/0 24 25 0.1\n"
"t crease 2/1/0 25 27 10.0\n"
"t crease 2/1/0 27 26 10.0\n"
"t crease 2/1/0 26 24 10.0\n"
"t crease 2/1/0 28 29 10.0\n"
"t crease 2/1/0 29 31 10.0\n"
"t crease 2/1/0 31 30 10.0\n"
"t crease 2/1/0 30 28 10.0\n"
"t crease 2/1/0 24 30 10.0\n"
"t crease 2/1/0 25 31 10.0\n"
"t crease 2/1/0 26 28 10.0\n"
"t crease 2/1/0 27 29 10.0\n"
"\n"
"\n"
"t interpolateboundary 1/0/0 2\n"
"t facevaryinginterpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,174 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_cubes_semisharp =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"# 8 vertices\n"
"v -0.25 -0.50 1.25\n"
"v -0.25 0.50 1.25\n"
"v -1.25 -0.50 1.25\n"
"v -1.25 0.50 1.25\n"
"v -1.25 -0.50 0.25\n"
"v -1.25 0.50 0.25\n"
"v -0.25 -0.50 0.25\n"
"v -0.25 0.50 0.25\n"
"\n"
"# 14 uvs\n"
"vt 0.2 0.55\n"
"vt 0.3 0.55\n"
"vt 0.2 0.65\n"
"vt 0.3 0.65\n"
"vt 0.2 0.75\n"
"vt 0.3 0.75\n"
"vt 0.2 0.85\n"
"vt 0.3 0.85\n"
"vt 0.2 0.95\n"
"vt 0.3 0.95\n"
"vt 0.4 0.55\n"
"vt 0.4 0.65\n"
"vt 0.1 0.55\n"
"vt 0.1 0.65\n"
"\n"
"f 1/1 2/2 4/4 3/3\n"
"f 3/3 4/4 6/6 5/5\n"
"f 5/5 6/6 8/8 7/7\n"
"f 7/7 8/8 2/10 1/9\n"
"f 2/2 8/11 6/12 4/4\n"
"f 7/13 1/1 3/3 5/14\n"
"\n"
"t corner 1/1/0 0 1.4\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 1.25 -0.50 1.25\n"
"v 1.25 0.50 1.25\n"
"v 0.25 -0.50 1.25\n"
"v 0.25 0.50 1.25\n"
"v 0.25 -0.50 0.25\n"
"v 0.25 0.50 0.25\n"
"v 1.25 -0.50 0.25\n"
"v 1.25 0.50 0.25\n"
"\n"
"vt 0.7 0.55\n"
"vt 0.8 0.55\n"
"vt 0.7 0.65\n"
"vt 0.8 0.65\n"
"vt 0.7 0.75\n"
"vt 0.8 0.75\n"
"vt 0.7 0.85\n"
"vt 0.8 0.85\n"
"vt 0.7 0.95\n"
"vt 0.8 0.95\n"
"vt 0.9 0.55\n"
"vt 0.9 0.65\n"
"vt 0.6 0.55\n"
"vt 0.6 0.65\n"
"\n"
"f 9/15 10/16 12/18 11/17\n"
"f 11/17 12/18 14/20 13/19\n"
"f 13/19 14/20 16/22 15/21\n"
"f 15/21 16/22 10/24 9/23\n"
"f 10/16 16/25 14/26 12/18\n"
"f 15/27 9/15 11/17 13/28\n"
"\n"
"t crease 2/1/0 8 9 2.0\n"
"t crease 2/1/0 8 10 2.0\n"
"\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -0.25 -0.50 -0.25\n"
"v -0.25 0.50 -0.25\n"
"v -1.25 -0.50 -0.25\n"
"v -1.25 0.50 -0.25\n"
"v -1.25 -0.50 -1.25\n"
"v -1.25 0.50 -1.25\n"
"v -0.25 -0.50 -1.25\n"
"v -0.25 0.50 -1.25\n"
"\n"
"vt 0.2 0.05\n"
"vt 0.3 0.05\n"
"vt 0.2 0.15\n"
"vt 0.3 0.15\n"
"vt 0.2 0.25\n"
"vt 0.3 0.25\n"
"vt 0.2 0.35\n"
"vt 0.3 0.35\n"
"vt 0.2 0.45\n"
"vt 0.3 0.45\n"
"vt 0.4 0.05\n"
"vt 0.4 0.15\n"
"vt 0.1 0.05\n"
"vt 0.1 0.15\n"
"\n"
"f 17/29 18/30 20/32 19/31\n"
"f 19/31 20/32 22/34 21/33\n"
"f 21/33 22/34 24/36 23/35\n"
"f 23/35 24/36 18/38 17/37\n"
"f 18/30 24/39 22/40 20/32\n"
"f 23/41 17/29 19/31 21/42\n"
"\n"
"t corner 1/1/0 16 3.0\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 1.25 -0.50 -0.25\n"
"v 1.25 0.50 -0.25\n"
"v 0.25 -0.50 -0.25\n"
"v 0.25 0.50 -0.25\n"
"v 0.25 -0.50 -1.25\n"
"v 0.25 0.50 -1.25\n"
"v 1.25 -0.50 -1.25\n"
"v 1.25 0.50 -1.25\n"
"\n"
"vt 0.7 0.05\n"
"vt 0.8 0.05\n"
"vt 0.7 0.15\n"
"vt 0.8 0.15\n"
"vt 0.7 0.25\n"
"vt 0.8 0.25\n"
"vt 0.7 0.35\n"
"vt 0.8 0.35\n"
"vt 0.7 0.45\n"
"vt 0.8 0.45\n"
"vt 0.9 0.05\n"
"vt 0.9 0.15\n"
"vt 0.6 0.05\n"
"vt 0.6 0.15\n"
"\n"
"f 25/43 26/44 28/46 27/45\n"
"f 27/45 28/46 30/48 29/47\n"
"f 29/47 30/48 32/50 31/49\n"
"f 31/49 32/50 26/52 25/51\n"
"f 26/44 32/53 30/54 28/46\n"
"f 31/55 25/43 27/45 29/56\n"
"\n"
"t crease 2/1/0 24 25 0.1\n"
"t crease 2/1/0 25 27 5.0\n"
"t crease 2/1/0 27 26 5.0\n"
"t crease 2/1/0 26 24 5.0\n"
"t crease 2/1/0 28 29 5.0\n"
"t crease 2/1/0 29 31 5.0\n"
"t crease 2/1/0 31 30 5.0\n"
"t crease 2/1/0 30 28 5.0\n"
"t crease 2/1/0 24 30 5.0\n"
"t crease 2/1/0 25 31 5.0\n"
"t crease 2/1/0 26 28 5.0\n"
"t crease 2/1/0 27 29 5.0\n"
"\n"
"\n"
"t interpolateboundary 1/0/0 2\n"
"t facevaryinginterpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,82 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_dart_edgecorner =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -2.000000 0.000000\n"
"v 2.000000 0.000000 0.000000\n"
"v 0.000000 2.000000 0.000000\n"
"v -2.000000 0.000000 0.000000\n"
"v -0.500000 -1.500000 0.000000\n"
"v -1.000000 -1.000000 0.000000\n"
"v -1.500000 -0.500000 0.000000\n"
"v 1.500000 -0.500000 0.000000\n"
"v 1.000000 -1.000000 1.000000\n"
"v 0.500000 -1.500000 0.000000\n"
"v 0.500000 1.500000 0.000000\n"
"v 1.000000 1.000000 0.000000\n"
"v 1.500000 0.500000 0.000000\n"
"v -1.500000 0.500000 0.000000\n"
"v -1.000000 1.000000 0.000000\n"
"v -0.500000 1.500000 0.000000\n"
"v 0.000000 -1.000000 0.000000\n"
"v 0.500000 -0.500000 1.000000\n"
"v 1.000000 0.000000 0.000000\n"
"v -0.500000 -0.500000 0.000000\n"
"v 0.000000 0.000000 1.000000\n"
"v 0.500000 0.500000 0.000000\n"
"v -1.000000 0.000000 0.000000\n"
"v -0.500000 0.500000 0.000000\n"
"v 0.000000 1.000000 0.000000\n"
"vt 0.000000 0.500000\n"
"vt 0.125000 0.375000\n"
"vt 0.250000 0.500000\n"
"vt 0.125000 0.625000\n"
"vt 0.875000 0.625000\n"
"vt 0.750000 0.500000\n"
"vt 0.875000 0.375000\n"
"vt 1.000000 0.500000\n"
"vt 0.625000 0.125000\n"
"vt 0.500000 0.250000\n"
"vt 0.375000 0.125000\n"
"vt 0.500000 0.000000\n"
"vt 0.750000 0.250000\n"
"vt 0.625000 0.375000\n"
"vt 0.750000 0.750000\n"
"vt 0.625000 0.625000\n"
"vt 0.375000 0.375000\n"
"vt 0.250000 0.250000\n"
"vt 0.500000 0.500000\n"
"vt 0.625000 0.875000\n"
"vt 0.500000 0.750000\n"
"vt 0.375000 0.625000\n"
"vt 0.375000 0.875000\n"
"vt 0.500000 1.000000\n"
"vt 0.250000 0.750000\n"
"s 1\n"
"f 4/1 7/2 23/3 14/4\n"
"f 13/5 19/6 8/7 2/8\n"
"f 10/9 17/10 5/11 1/12\n"
"f 9/13 18/14 17/10 10/9\n"
"f 8/7 19/6 18/14 9/13\n"
"f 12/15 22/16 19/6 13/5\n"
"f 17/10 20/17 6/18 5/11\n"
"f 18/14 21/19 20/17 17/10\n"
"f 19/6 22/16 21/19 18/14\n"
"f 11/20 25/21 22/16 12/15\n"
"f 20/17 23/3 7/2 6/18\n"
"f 21/19 24/22 23/3 20/17\n"
"f 22/16 25/21 24/22 21/19\n"
"f 16/23 25/21 11/20 3/24\n"
"f 15/25 24/22 25/21 16/23\n"
"f 14/4 23/3 24/22 15/25\n"
"t crease 2/1/0 8 17 2.0\n"
"t crease 2/1/0 17 20 2.0\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,82 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_dart_edgeonly =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -2.000000 0.000000\n"
"v 2.000000 0.000000 0.000000\n"
"v 0.000000 2.000000 0.000000\n"
"v -2.000000 0.000000 0.000000\n"
"v -0.500000 -1.500000 0.000000\n"
"v -1.000000 -1.000000 0.000000\n"
"v -1.500000 -0.500000 0.000000\n"
"v 1.500000 -0.500000 0.000000\n"
"v 1.000000 -1.000000 1.000000\n"
"v 0.500000 -1.500000 0.000000\n"
"v 0.500000 1.500000 0.000000\n"
"v 1.000000 1.000000 0.000000\n"
"v 1.500000 0.500000 0.000000\n"
"v -1.500000 0.500000 0.000000\n"
"v -1.000000 1.000000 0.000000\n"
"v -0.500000 1.500000 0.000000\n"
"v 0.000000 -1.000000 0.000000\n"
"v 0.500000 -0.500000 1.000000\n"
"v 1.000000 0.000000 0.000000\n"
"v -0.500000 -0.500000 0.000000\n"
"v 0.000000 0.000000 1.000000\n"
"v 0.500000 0.500000 0.000000\n"
"v -1.000000 0.000000 0.000000\n"
"v -0.500000 0.500000 0.000000\n"
"v 0.000000 1.000000 0.000000\n"
"vt 0.000000 0.500000\n"
"vt 0.125000 0.375000\n"
"vt 0.250000 0.500000\n"
"vt 0.125000 0.625000\n"
"vt 0.875000 0.625000\n"
"vt 0.750000 0.500000\n"
"vt 0.875000 0.375000\n"
"vt 1.000000 0.500000\n"
"vt 0.625000 0.125000\n"
"vt 0.500000 0.250000\n"
"vt 0.375000 0.125000\n"
"vt 0.500000 0.000000\n"
"vt 0.750000 0.250000\n"
"vt 0.625000 0.375000\n"
"vt 0.750000 0.750000\n"
"vt 0.625000 0.625000\n"
"vt 0.375000 0.375000\n"
"vt 0.250000 0.250000\n"
"vt 0.500000 0.500000\n"
"vt 0.625000 0.875000\n"
"vt 0.500000 0.750000\n"
"vt 0.375000 0.625000\n"
"vt 0.375000 0.875000\n"
"vt 0.500000 1.000000\n"
"vt 0.250000 0.750000\n"
"s 1\n"
"f 4/1 7/2 23/3 14/4\n"
"f 13/5 19/6 8/7 2/8\n"
"f 10/9 17/10 5/11 1/12\n"
"f 9/13 18/14 17/10 10/9\n"
"f 8/7 19/6 18/14 9/13\n"
"f 12/15 22/16 19/6 13/5\n"
"f 17/10 20/17 6/18 5/11\n"
"f 18/14 21/19 20/17 17/10\n"
"f 19/6 22/16 21/19 18/14\n"
"f 11/20 25/21 22/16 12/15\n"
"f 20/17 23/3 7/2 6/18\n"
"f 21/19 24/22 23/3 20/17\n"
"f 22/16 25/21 24/22 21/19\n"
"f 16/23 25/21 11/20 3/24\n"
"f 15/25 24/22 25/21 16/23\n"
"f 14/4 23/3 24/22 15/25\n"
"t crease 2/1/0 8 17 2.0\n"
"t crease 2/1/0 17 20 2.0\n"
"t interpolateboundary 1/0/0 2\n"
"\n"
;

View File

@@ -0,0 +1,170 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_edgecorner =
"#\n"
"# Test cases for BoundaryInterpolation option \"edge and corner\":\n"
"#\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.250 0.000 0.250\n"
"v -0.917 0.000 0.250\n"
"v -0.583 0.000 0.250\n"
"v -0.250 0.000 0.250\n"
"v -1.250 0.000 0.583\n"
"v -0.917 0.000 0.583\n"
"v -0.583 0.000 0.583\n"
"v -0.250 0.000 0.583\n"
"v -1.250 0.000 0.917\n"
"v -0.917 0.000 0.917\n"
"v -0.583 0.000 0.917\n"
"v -0.250 0.000 0.917\n"
"v -1.250 0.000 1.250\n"
"v -0.917 0.000 1.250\n"
"v -0.583 0.000 1.250\n"
"v -0.250 0.000 1.250\n"
"\n"
"vt 0.000 0.600\n"
"vt 0.133 0.600\n"
"vt 0.267 0.600\n"
"vt 0.400 0.600\n"
"vt 0.000 0.733\n"
"vt 0.133 0.733\n"
"vt 0.267 0.733\n"
"vt 0.400 0.733\n"
"vt 0.000 0.867\n"
"vt 0.133 0.867\n"
"vt 0.267 0.867\n"
"vt 0.400 0.867\n"
"vt 0.000 1.000\n"
"vt 0.133 1.000\n"
"vt 0.267 1.000\n"
"vt 0.400 1.000\n"
"\n"
"f 1/1 2/2 6/6 5/5 \n"
"f 2/2 3/3 7/7 6/6 \n"
"f 3/3 4/4 8/8 7/7 \n"
"f 5/5 6/6 10/10 9/9 \n"
"f 6/6 7/7 11/11 10/10 \n"
"f 7/7 8/8 12/12 11/11 \n"
"f 9/9 10/10 14/14 13/13 \n"
"f 10/10 11/11 15/15 14/14 \n"
"f 11/11 12/12 16/16 15/15 \n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 0.250 0.000 0.250\n"
"v 0.583 -0.250 0.250\n"
"v 0.917 -0.250 0.250\n"
"v 1.250 0.000 0.250\n"
"v 0.250 0.000 0.583\n"
"v 0.583 -0.250 0.583\n"
"v 0.917 -0.250 0.583\n"
"v 1.250 0.000 0.583\n"
"v 0.250 0.000 0.917\n"
"v 0.583 -0.250 0.917\n"
"v 0.917 -0.250 0.917\n"
"v 1.250 0.000 0.917\n"
"v 0.250 0.000 1.250\n"
"v 0.583 -0.250 1.250\n"
"v 0.917 -0.250 1.250\n"
"v 1.250 0.000 1.250\n"
"\n"
"vt 0.600 0.600\n"
"vt 0.733 0.600\n"
"vt 0.867 0.600\n"
"vt 1.000 0.600\n"
"vt 0.600 0.733\n"
"vt 0.733 0.733\n"
"vt 0.867 0.733\n"
"vt 1.000 0.733\n"
"vt 0.600 0.867\n"
"vt 0.733 0.867\n"
"vt 0.867 0.867\n"
"vt 1.000 0.867\n"
"vt 0.600 1.000\n"
"vt 0.733 1.000\n"
"vt 0.867 1.000\n"
"vt 1.000 1.000\n"
"\n"
"f 17/17 18/18 22/22 21/21 \n"
"f 18/18 19/19 23/23 22/22 \n"
"f 19/19 20/20 24/24 23/23 \n"
"f 21/21 22/22 26/26 25/25 \n"
"f 22/22 23/23 27/27 26/26 \n"
"f 23/23 24/24 28/28 27/27 \n"
"f 25/25 26/26 30/30 29/29 \n"
"f 26/26 27/27 31/31 30/30 \n"
"f 27/27 28/28 32/32 31/31 \n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -1.250 0.000 -1.250\n"
"v -0.917 -0.250 -1.250\n"
"v -0.583 -0.250 -1.250\n"
"v -0.250 0.000 -1.250\n"
"v -1.250 -0.250 -0.917\n"
"v -0.917 -0.250 -0.917\n"
"v -0.583 -0.250 -0.917\n"
"v -0.250 -0.250 -0.917\n"
"v -1.250 -0.250 -0.583\n"
"v -0.917 -0.250 -0.583\n"
"v -0.583 -0.250 -0.583\n"
"v -0.250 -0.250 -0.583\n"
"v -1.250 0.000 -0.250\n"
"v -0.917 -0.250 -0.250\n"
"v -0.583 -0.250 -0.250\n"
"v -0.250 0.000 -0.250\n"
"\n"
"vt 0.000 0.000\n"
"vt 0.133 0.000\n"
"vt 0.267 0.000\n"
"vt 0.400 0.000\n"
"vt 0.000 0.133\n"
"vt 0.133 0.133\n"
"vt 0.267 0.133\n"
"vt 0.400 0.133\n"
"vt 0.000 0.267\n"
"vt 0.133 0.267\n"
"vt 0.267 0.267\n"
"vt 0.400 0.267\n"
"vt 0.000 0.400\n"
"vt 0.133 0.400\n"
"vt 0.267 0.400\n"
"vt 0.400 0.400\n"
"\n"
"f 33/33 34/34 38/38 37/37 \n"
"f 34/34 35/35 39/39 38/38 \n"
"f 35/35 36/36 40/40 39/39 \n"
"f 37/37 38/38 42/42 41/41 \n"
"f 38/38 39/39 43/43 42/42 \n"
"f 39/39 40/40 44/44 43/43 \n"
"f 41/41 42/42 46/46 45/45 \n"
"f 42/42 43/43 47/47 46/46 \n"
"f 43/43 44/44 48/48 47/47 \n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 0.250 0.000 -1.250\n"
"v 1.250 0.000 -1.250\n"
"v 0.250 0.000 -0.250\n"
"v 1.250 0.000 -0.250\n"
"\n"
"vt 0.600 0.000\n"
"vt 1.000 0.000\n"
"vt 0.600 0.400\n"
"vt 1.000 0.400\n"
"\n"
"f 49/49 50/50 52/52 51/51 \n"
"\n"
;

View File

@@ -0,0 +1,260 @@
//
// Copyright 2020 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_edgenone =
"#\n"
"# Test cases for BoundaryInterpolation option \"none\":\n"
"#\n"
"t interpolateboundary 1/0/0 0\n"
"\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.250 0.000 0.250\n"
"v -0.917 0.000 0.250\n"
"v -0.583 0.000 0.250\n"
"v -0.250 0.000 0.250\n"
"v -1.250 0.000 0.583\n"
"v -0.917 0.000 0.583\n"
"v -0.583 0.000 0.583\n"
"v -0.250 0.000 0.583\n"
"v -1.250 0.000 0.917\n"
"v -0.917 0.000 0.917\n"
"v -0.583 0.000 0.917\n"
"v -0.250 0.000 0.917\n"
"v -1.250 0.000 1.250\n"
"v -0.917 0.000 1.250\n"
"v -0.583 0.000 1.250\n"
"v -0.250 0.000 1.250\n"
"\n"
"vt 0.000 0.600\n"
"vt 0.133 0.600\n"
"vt 0.267 0.600\n"
"vt 0.400 0.600\n"
"vt 0.000 0.733\n"
"vt 0.133 0.733\n"
"vt 0.267 0.733\n"
"vt 0.400 0.733\n"
"vt 0.000 0.867\n"
"vt 0.133 0.867\n"
"vt 0.267 0.867\n"
"vt 0.400 0.867\n"
"vt 0.000 1.000\n"
"vt 0.133 1.000\n"
"vt 0.267 1.000\n"
"vt 0.400 1.000\n"
"\n"
"f 1/1 2/2 6/6 5/5 \n"
"f 2/2 3/3 7/7 6/6 \n"
"f 3/3 4/4 8/8 7/7 \n"
"f 5/5 6/6 10/10 9/9 \n"
"f 6/6 7/7 11/11 10/10 \n"
"f 7/7 8/8 12/12 11/11 \n"
"f 9/9 10/10 14/14 13/13 \n"
"f 10/10 11/11 15/15 14/14 \n"
"f 11/11 12/12 16/16 15/15 \n"
"\n"
"# crease tags for perimeter:\n"
"#t crease 2/1/0 0 1 10.0\n"
"#t crease 2/1/0 1 2 10.0\n"
"#t crease 2/1/0 2 3 10.0\n"
"#t crease 2/1/0 3 7 10.0\n"
"#t crease 2/1/0 7 11 10.0\n"
"#t crease 2/1/0 11 15 10.0\n"
"#t crease 2/1/0 15 14 10.0\n"
"#t crease 2/1/0 14 13 10.0\n"
"#t crease 2/1/0 13 12 10.0\n"
"#t crease 2/1/0 12 8 10.0\n"
"#t crease 2/1/0 8 4 10.0\n"
"#t crease 2/1/0 4 0 10.0\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 0.250 0.000 0.250\n"
"v 0.583 -0.250 0.250\n"
"v 0.917 -0.250 0.250\n"
"v 1.250 0.000 0.250\n"
"v 0.250 0.000 0.583\n"
"v 0.583 -0.250 0.583\n"
"v 0.917 -0.250 0.583\n"
"v 1.250 0.000 0.583\n"
"v 0.250 0.000 0.917\n"
"v 0.583 -0.250 0.917\n"
"v 0.917 -0.250 0.917\n"
"v 1.250 0.000 0.917\n"
"v 0.250 0.000 1.250\n"
"v 0.583 -0.250 1.250\n"
"v 0.917 -0.250 1.250\n"
"v 1.250 0.000 1.250\n"
"\n"
"vt 0.600 0.600\n"
"vt 0.733 0.600\n"
"vt 0.867 0.600\n"
"vt 1.000 0.600\n"
"vt 0.600 0.733\n"
"vt 0.733 0.733\n"
"vt 0.867 0.733\n"
"vt 1.000 0.733\n"
"vt 0.600 0.867\n"
"vt 0.733 0.867\n"
"vt 0.867 0.867\n"
"vt 1.000 0.867\n"
"vt 0.600 1.000\n"
"vt 0.733 1.000\n"
"vt 0.867 1.000\n"
"vt 1.000 1.000\n"
"\n"
"f 17/17 18/18 22/22 21/21 \n"
"f 18/18 19/19 23/23 22/22 \n"
"f 19/19 20/20 24/24 23/23 \n"
"f 21/21 22/22 26/26 25/25 \n"
"f 22/22 23/23 27/27 26/26 \n"
"f 23/23 24/24 28/28 27/27 \n"
"f 25/25 26/26 30/30 29/29 \n"
"f 26/26 27/27 31/31 30/30 \n"
"f 27/27 28/28 32/32 31/31 \n"
"\n"
"# crease tags for perimeter:\n"
"t crease 2/1/0 16 17 10.0\n"
"t crease 2/1/0 17 18 10.0\n"
"t crease 2/1/0 18 19 10.0\n"
"#t crease 2/1/0 19 23 10.0\n"
"#t crease 2/1/0 23 27 10.0\n"
"#t crease 2/1/0 27 31 10.0\n"
"#t crease 2/1/0 31 30 10.0\n"
"#t crease 2/1/0 30 29 10.0\n"
"#t crease 2/1/0 29 28 10.0\n"
"#t crease 2/1/0 28 24 10.0\n"
"#t crease 2/1/0 24 20 10.0\n"
"#t crease 2/1/0 20 16 10.0\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -1.250 0.000 -1.250\n"
"v -0.917 -0.250 -1.250\n"
"v -0.583 -0.250 -1.250\n"
"v -0.250 0.000 -1.250\n"
"v -1.250 0.000 -0.917\n"
"v -0.917 -0.250 -0.917\n"
"v -0.583 -0.250 -0.917\n"
"v -0.250 0.000 -0.917\n"
"v -1.250 0.000 -0.583\n"
"v -0.917 -0.250 -0.583\n"
"v -0.583 -0.250 -0.583\n"
"v -0.250 0.000 -0.583\n"
"v -1.250 0.000 -0.250\n"
"v -0.917 -0.250 -0.250\n"
"v -0.583 -0.250 -0.250\n"
"v -0.250 0.000 -0.250\n"
"\n"
"vt 0.000 0.000\n"
"vt 0.133 0.000\n"
"vt 0.267 0.000\n"
"vt 0.400 0.000\n"
"vt 0.000 0.133\n"
"vt 0.133 0.133\n"
"vt 0.267 0.133\n"
"vt 0.400 0.133\n"
"vt 0.000 0.267\n"
"vt 0.133 0.267\n"
"vt 0.267 0.267\n"
"vt 0.400 0.267\n"
"vt 0.000 0.400\n"
"vt 0.133 0.400\n"
"vt 0.267 0.400\n"
"vt 0.400 0.400\n"
"\n"
"f 33/33 34/34 38/38 37/37 \n"
"f 34/34 35/35 39/39 38/38 \n"
"f 35/35 36/36 40/40 39/39 \n"
"f 37/37 38/38 42/42 41/41 \n"
"f 38/38 39/39 43/43 42/42 \n"
"f 39/39 40/40 44/44 43/43 \n"
"f 41/41 42/42 46/46 45/45 \n"
"f 42/42 43/43 47/47 46/46 \n"
"f 43/43 44/44 48/48 47/47 \n"
"\n"
"# crease tags for perimeter:\n"
"t crease 2/1/0 32 33 10.0\n"
"t crease 2/1/0 33 34 10.0\n"
"t crease 2/1/0 34 35 10.0\n"
"t crease 2/1/0 35 39 10.0\n"
"t crease 2/1/0 39 43 10.0\n"
"t crease 2/1/0 43 47 10.0\n"
"#t crease 2/1/0 47 46 10.0\n"
"#t crease 2/1/0 46 45 10.0\n"
"#t crease 2/1/0 45 44 10.0\n"
"#t crease 2/1/0 44 40 10.0\n"
"#t crease 2/1/0 40 36 10.0\n"
"#t crease 2/1/0 36 32 10.0\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 0.250 0.000 -1.250\n"
"v 0.583 -0.250 -1.250\n"
"v 0.917 -0.250 -1.250\n"
"v 1.250 0.000 -1.250\n"
"v 0.250 0.000 -0.917\n"
"v 0.583 -0.250 -0.917\n"
"v 0.917 -0.250 -0.917\n"
"v 1.250 0.000 -0.917\n"
"v 0.250 0.000 -0.583\n"
"v 0.583 -0.250 -0.583\n"
"v 0.917 -0.250 -0.583\n"
"v 1.250 0.000 -0.583\n"
"v 0.250 0.000 -0.250\n"
"v 0.583 -0.250 -0.250\n"
"v 0.917 -0.250 -0.250\n"
"v 1.250 0.000 -0.250\n"
"\n"
"vt 0.600 0.000\n"
"vt 0.733 0.000\n"
"vt 0.867 0.000\n"
"vt 1.000 0.000\n"
"vt 0.600 0.133\n"
"vt 0.733 0.133\n"
"vt 0.867 0.133\n"
"vt 1.000 0.133\n"
"vt 0.600 0.267\n"
"vt 0.733 0.267\n"
"vt 0.867 0.267\n"
"vt 1.000 0.267\n"
"vt 0.600 0.400\n"
"vt 0.733 0.400\n"
"vt 0.867 0.400\n"
"vt 1.000 0.400\n"
"\n"
"f 49/49 50/50 54/54 53/53 \n"
"f 50/50 51/51 55/55 54/54 \n"
"f 51/51 52/52 56/56 55/55 \n"
"f 53/53 54/54 58/58 57/57 \n"
"f 54/54 55/55 59/59 58/58 \n"
"f 55/55 56/56 60/60 59/59 \n"
"f 57/57 58/58 62/62 61/61 \n"
"f 58/58 59/59 63/63 62/62 \n"
"f 59/59 60/60 64/64 63/63 \n"
"\n"
"# crease tags for perimeter:\n"
"t crease 2/1/0 48 49 10.0\n"
"t crease 2/1/0 49 50 10.0\n"
"t crease 2/1/0 50 51 10.0\n"
"t crease 2/1/0 51 55 10.0\n"
"t crease 2/1/0 55 59 10.0\n"
"t crease 2/1/0 59 63 10.0\n"
"#t crease 2/1/0 63 62 10.0\n"
"#t crease 2/1/0 62 61 10.0\n"
"#t crease 2/1/0 61 60 10.0\n"
"t crease 2/1/0 60 56 10.0\n"
"t crease 2/1/0 56 52 10.0\n"
"t crease 2/1/0 52 48 10.0\n"
"\n"
"t corner 1/1/0 48 10.0\n"
"\n"
;

View File

@@ -0,0 +1,148 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_edgeonly =
"#\n"
"# Test cases for BoundaryInterpolation option \"edge only\":\n"
"#\n"
"t interpolateboundary 1/0/0 2\n"
"\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.250 0.000 0.250\n"
"v -0.917 0.000 0.250\n"
"v -0.583 0.000 0.250\n"
"v -0.250 0.000 0.250\n"
"v -1.250 0.000 0.583\n"
"v -0.917 0.000 0.583\n"
"v -0.583 0.000 0.583\n"
"v -0.250 0.000 0.583\n"
"v -1.250 0.000 0.917\n"
"v -0.917 0.000 0.917\n"
"v -0.583 0.000 0.917\n"
"v -0.250 0.000 0.917\n"
"v -1.250 0.000 1.250\n"
"v -0.917 0.000 1.250\n"
"v -0.583 0.000 1.250\n"
"v -0.250 0.000 1.250\n"
"\n"
"vt 0.000 0.600\n"
"vt 0.133 0.600\n"
"vt 0.267 0.600\n"
"vt 0.400 0.600\n"
"vt 0.000 0.733\n"
"vt 0.133 0.733\n"
"vt 0.267 0.733\n"
"vt 0.400 0.733\n"
"vt 0.000 0.867\n"
"vt 0.133 0.867\n"
"vt 0.267 0.867\n"
"vt 0.400 0.867\n"
"vt 0.000 1.000\n"
"vt 0.133 1.000\n"
"vt 0.267 1.000\n"
"vt 0.400 1.000\n"
"\n"
"f 1/1 2/2 6/6 5/5 \n"
"f 2/2 3/3 7/7 6/6 \n"
"f 3/3 4/4 8/8 7/7 \n"
"f 5/5 6/6 10/10 9/9 \n"
"f 6/6 7/7 11/11 10/10 \n"
"f 7/7 8/8 12/12 11/11 \n"
"f 9/9 10/10 14/14 13/13 \n"
"f 10/10 11/11 15/15 14/14 \n"
"f 11/11 12/12 16/16 15/15 \n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 0.250 0.000 0.250\n"
"v 0.583 -0.250 0.250\n"
"v 0.917 -0.250 0.250\n"
"v 1.250 0.000 0.250\n"
"v 0.250 0.000 0.583\n"
"v 0.583 -0.250 0.583\n"
"v 0.917 -0.250 0.583\n"
"v 1.250 0.000 0.583\n"
"v 0.250 0.000 0.917\n"
"v 0.583 -0.250 0.917\n"
"v 0.917 -0.250 0.917\n"
"v 1.250 0.000 0.917\n"
"v 0.250 0.000 1.250\n"
"v 0.583 -0.250 1.250\n"
"v 0.917 -0.250 1.250\n"
"v 1.250 0.000 1.250\n"
"\n"
"vt 0.600 0.600\n"
"vt 0.733 0.600\n"
"vt 0.867 0.600\n"
"vt 1.000 0.600\n"
"vt 0.600 0.733\n"
"vt 0.733 0.733\n"
"vt 0.867 0.733\n"
"vt 1.000 0.733\n"
"vt 0.600 0.867\n"
"vt 0.733 0.867\n"
"vt 0.867 0.867\n"
"vt 1.000 0.867\n"
"vt 0.600 1.000\n"
"vt 0.733 1.000\n"
"vt 0.867 1.000\n"
"vt 1.000 1.000\n"
"\n"
"f 17/17 18/18 22/22 21/21 \n"
"f 18/18 19/19 23/23 22/22 \n"
"f 19/19 20/20 24/24 23/23 \n"
"f 21/21 22/22 26/26 25/25 \n"
"f 22/22 23/23 27/27 26/26 \n"
"f 23/23 24/24 28/28 27/27 \n"
"f 25/25 26/26 30/30 29/29 \n"
"f 26/26 27/27 31/31 30/30 \n"
"f 27/27 28/28 32/32 31/31 \n"
"\n"
"# corner tags:\n"
"t corner 1/1/0 16 10.0\n"
"t corner 1/1/0 19 10.0\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -1.250 0.000 -1.250\n"
"v -0.250 0.000 -1.250\n"
"v -1.250 0.000 -0.250\n"
"v -0.250 0.000 -0.250\n"
"\n"
"vt 0.000 0.000\n"
"vt 0.400 0.000\n"
"vt 0.000 0.400\n"
"vt 0.400 0.400\n"
"\n"
"f 33/33 34/34 36/36 35/35 \n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 0.250 0.000 -1.250\n"
"v 1.250 0.000 -1.250\n"
"v 0.250 0.000 -0.250\n"
"v 1.250 0.000 -0.250\n"
"\n"
"vt 0.600 0.000\n"
"vt 1.000 0.000\n"
"vt 0.600 0.400\n"
"vt 1.000 0.400\n"
"\n"
"f 37/37 38/38 40/40 39/39 \n"
"\n"
"# corner tags:\n"
"t corner 1/1/0 36 10.0\n"
"t corner 1/1/0 37 10.0\n"
"t corner 1/1/0 38 2.0\n"
"t corner 1/1/0 39 2.0\n"
"\n"
;

View File

@@ -0,0 +1,78 @@
//
// Copyright 2016 Dreamworks
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_fan =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"# This file uses centimeters as units for non-parametric coordinates.\n"
"v 0.0 0 1.0\n"
"v -0.5 0 0.5\n"
"v 0.5 0 0.5\n"
"v -1.0 0 0.0\n"
"v 1.0 0 0.0\n"
"v -1.5 0 -0.5\n"
"v 1.5 0 -0.5\n"
"v -1.0 0 -1.0\n"
"v -0.5 0 -0.5\n"
"v 0.0 0 0.0\n"
"v 0.5 0 -0.5\n"
"v 1.0 0 -1.0\n"
"v -1.0 .5 -1.0\n"
"v -0.5 .5 -0.5\n"
"v 0.0 .5 0.0\n"
"v 0.5 .5 -0.5\n"
"v 1.0 .5 -1.0\n"
"v -1.0 -.5 -1.0\n"
"v -0.5 -.5 -0.5\n"
"v 0.0 -.5 0.0\n"
"v 0.5 -.5 -0.5\n"
"v 1.0 -.5 -1.0\n"
"\n"
"vt 0.10 0.50\n"
"vt 0.10 0.40\n"
"vt 0.20 0.50\n"
"vt 0.10 0.30\n"
"vt 0.30 0.50\n"
"vt 0.10 0.20\n"
"vt 0.40 0.50\n"
"vt 0.20 0.20\n"
"vt 0.20 0.30\n"
"vt 0.20 0.40\n"
"vt 0.30 0.40\n"
"vt 0.40 0.40\n"
"vt 0.10 0.60\n"
"vt 0.20 0.60\n"
"vt 0.30 0.60\n"
"vt 0.40 0.60\n"
"vt 0.50 0.60\n"
"vt 0.10 0.70\n"
"vt 0.20 0.70\n"
"vt 0.30 0.70\n"
"vt 0.40 0.70\n"
"vt 0.50 0.70\n"
"vt 0.10 0.80\n"
"vt 0.20 0.80\n"
"vt 0.30 0.80\n"
"vt 0.40 0.80\n"
"vt 0.50 0.80\n"
"\n"
"f 1/1 2/2 10/10 3/3\n"
"f 2/2 4/4 9/9 10/10\n"
"f 4/4 6/6 8/8 9/9\n"
"f 5/5 3/3 10/10 11/11\n"
"f 7/7 5/5 11/11 12/12\n"
"f 8/18 9/19 14/24 13/23\n"
"f 9/19 10/20 15/25 14/24\n"
"f 10/20 11/21 16/26 15/25\n"
"f 11/21 12/22 17/27 16/26\n"
"f 9/19 8/18 18/13 19/14\n"
"f 10/20 9/19 19/14 20/15\n"
"f 11/21 10/20 20/15 21/16\n"
"f 12/22 11/21 21/16 22/17\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n";

View File

@@ -0,0 +1,30 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_flap =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"v -0.110026 1.92157 -1.57017 \n"
"v -0.0688233 1.81063 -1.5982 \n"
"v -1.39787e-007 1.79114 -1.57387 \n"
"v -4.40002e-018 1.90219 -1.54412 \n"
"v 0.0688228 1.81062 -1.5983 \n"
"v 0.0765256 1.82442 -1.71797 \n"
"v 0.110026 1.9216 -1.57025 \n"
"v 0.119883 1.95726 -1.70576 \n"
"vt 0.805211 0.695402 \n"
"vt 0.817349 0.720173 \n"
"vt 0.912184 0.729578 \n"
"vt 0.928781 0.70908 \n"
"vt 0.898818 0.720746 \n"
"vt 0.876799 0.716673 \n"
"vt 0.909555 0.697071 \n"
"vt 0.884052 0.693003 \n"
"f 4/4 3/3 5/5 7/7 \n"
"f 7/7 5/5 6/6 8/8 \n"
"f 2/2 3/3 4/4 1/1 \n"
"\n"
;

View File

@@ -0,0 +1,44 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_flap2 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"v -0.500000 -0.125000 0.000000 \n"
"v -0.250000 -0.125000 0.000000 \n"
"v 0.000000 -0.125000 0.000000 \n"
"v 0.250000 -0.125000 0.000000 \n"
"v 0.500000 -0.125000 0.000000 \n"
"v -0.500000 0.125000 0.000000 \n"
"v -0.250000 0.125000 0.000000 \n"
"v 0.000000 0.125000 0.000000 \n"
"v 0.250000 0.125000 0.000000 \n"
"v 0.500000 0.125000 0.000000 \n"
"vt 0.000000 0.000000 \n"
"vt 0.250000 0.000000 \n"
"vt 0.500000 0.000000 \n"
"vt 0.750000 0.000000 \n"
"vt 1.000000 0.000000 \n"
"vt 0.000000 0.250000 \n"
"vt 0.250000 0.250000 \n"
"vt 0.500000 0.250000 \n"
"vt 0.750000 0.250000 \n"
"vt 1.000000 0.250000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"vn 0.000000 0.000000 1.000000 \n"
"f 1/1/1 2/2/2 7/7/3 6/6/4 \n"
"f 2/2/2 3/3/5 8/8/6 7/7/3 \n"
"f 3/3/5 4/4/7 9/9/8 8/8/6 \n"
"f 4/4/7 5/5/9 10/10/10 9/9/8 \n"
;

View File

@@ -0,0 +1,82 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_fvar_bound0 =
"# 4x4 grid of quads -- 25 vertices:\n"
"v 0.00 0.00 0.00\n"
"v 0.25 0.00 0.00\n"
"v 0.50 0.00 0.00\n"
"v 0.75 0.00 0.00\n"
"v 1.00 0.00 0.00\n"
"v 0.00 0.25 0.00\n"
"v 0.25 0.25 0.20\n"
"v 0.50 0.25 0.20\n"
"v 0.75 0.25 0.20\n"
"v 1.00 0.25 0.00\n"
"v 0.00 0.50 0.00\n"
"v 0.25 0.50 0.20\n"
"v 0.50 0.50 0.30\n"
"v 0.75 0.50 0.20\n"
"v 1.00 0.50 0.00\n"
"v 0.00 0.75 0.00\n"
"v 0.25 0.75 0.20\n"
"v 0.50 0.75 0.20\n"
"v 0.75 0.75 0.20\n"
"v 1.00 0.75 0.00\n"
"v 0.00 1.00 0.00\n"
"v 0.25 1.00 0.00\n"
"v 0.50 1.00 0.00\n"
"v 0.75 1.00 0.00\n"
"v 1.00 1.00 0.00\n"
"vt 0.00 0.00\n"
"vt 0.25 0.00\n"
"vt 0.50 0.00\n"
"vt 0.75 0.00\n"
"vt 1.00 0.00\n"
"vt 0.00 0.20\n"
"vt 0.25 0.20\n"
"vt 0.50 0.10\n"
"vt 0.75 0.20\n"
"vt 1.00 0.20\n"
"vt 0.00 0.40\n"
"vt 0.25 0.40\n"
"vt 0.50 0.20\n"
"vt 0.75 0.40\n"
"vt 1.00 0.40\n"
"vt 0.00 0.60\n"
"vt 0.25 0.60\n"
"vt 0.50 0.40\n"
"vt 0.75 0.60\n"
"vt 1.00 0.60\n"
"vt 0.00 0.80\n"
"vt 0.25 0.80\n"
"vt 0.50 0.65\n"
"vt 0.75 0.80\n"
"vt 1.00 0.80\n"
"vt 0.00 1.00\n"
"vt 0.25 1.00\n"
"vt 0.40 1.00\n"
"vt 0.75 1.00\n"
"vt 1.00 1.00\n"
"vt 0.60 1.00\n"
"f 1/1 2/2 7/7 6/6\n"
"f 2/2 3/3 8/8 7/7\n"
"f 3/3 4/4 9/9 8/8\n"
"f 4/4 5/5 10/10 9/9\n"
"f 6/6 7/7 12/12 11/11\n"
"f 7/7 8/8 13/13 12/12\n"
"f 8/8 9/9 14/14 13/13\n"
"f 9/9 10/10 15/15 14/14\n"
"f 11/16 12/17 17/22 16/21\n"
"f 12/17 13/18 18/23 17/22\n"
"f 13/18 14/19 19/24 18/23\n"
"f 14/19 15/20 20/25 19/24\n"
"f 16/21 17/22 22/27 21/26\n"
"f 17/22 18/23 23/28 22/27\n"
"f 18/23 19/24 24/29 23/31\n"
"f 19/24 20/25 25/30 24/29\n"
;

View File

@@ -0,0 +1,89 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_fvar_bound1 =
"# 4x4 grid of quads - 25 vertices:\n"
"v 0.00 0.00 0.00\n"
"v 0.25 0.00 0.00\n"
"v 0.50 0.00 0.00\n"
"v 0.75 0.00 0.00\n"
"v 1.00 0.00 0.00\n"
"v 0.00 0.25 0.00\n"
"v 0.25 0.25 0.20\n"
"v 0.50 0.25 0.20\n"
"v 0.75 0.25 0.20\n"
"v 1.00 0.25 0.00\n"
"v 0.00 0.50 0.00\n"
"v 0.25 0.50 0.20\n"
"v 0.50 0.50 0.30\n"
"v 0.75 0.50 0.20\n"
"v 1.00 0.50 0.00\n"
"v 0.00 0.75 0.00\n"
"v 0.25 0.75 0.20\n"
"v 0.50 0.75 0.20\n"
"v 0.75 0.75 0.20\n"
"v 1.00 0.75 0.00\n"
"v 0.00 1.00 0.00\n"
"v 0.25 1.00 0.00\n"
"v 0.50 1.00 0.00\n"
"v 0.75 1.00 0.00\n"
"v 1.00 1.00 0.00\n"
"vt 0.00 0.00\n"
"vt 0.20 0.00\n"
"vt 0.50 0.00\n"
"vt 0.80 0.00\n"
"vt 1.00 0.00\n"
"vt 0.00 0.20\n"
"vt 0.20 0.20\n"
"vt 0.50 0.10\n"
"vt 0.80 0.20\n"
"vt 1.00 0.20\n"
"vt 0.00 0.40\n"
"vt 0.20 0.40\n"
"vt 0.50 0.20\n"
"vt 0.80 0.40\n"
"vt 1.00 0.40\n"
"vt 0.00 0.60\n"
"vt 0.25 0.60\n"
"vt 0.50 0.40\n"
"vt 0.75 0.60\n"
"vt 1.00 0.60\n"
"vt 0.00 0.80\n"
"vt 0.25 0.80\n"
"vt 0.50 0.65\n"
"vt 0.75 0.80\n"
"vt 1.00 0.80\n"
"vt 0.00 1.00\n"
"vt 0.25 1.00\n"
"vt 0.50 1.00\n"
"vt 0.75 1.00\n"
"vt 1.00 1.00\n"
"vt 0.40 0.00\n"
"vt 0.60 0.00\n"
"vt 0.40 0.10\n"
"vt 0.60 0.10\n"
"vt 0.40 0.25\n"
"vt 0.60 0.25\n"
"vt 0.40 1.00\n"
"vt 0.60 1.00\n"
"f 1/1 2/2 7/7 6/6\n"
"f 2/2 3/31 8/33 7/7\n"
"f 3/32 4/4 9/9 8/34\n"
"f 4/4 5/5 10/10 9/9\n"
"f 6/6 7/7 12/12 11/11\n"
"f 7/7 8/33 13/35 12/12\n"
"f 8/34 9/9 14/14 13/36\n"
"f 9/9 10/10 15/15 14/14\n"
"f 11/16 12/17 17/22 16/21\n"
"f 12/17 13/18 18/23 17/22\n"
"f 13/18 14/19 19/24 18/23\n"
"f 14/19 15/20 20/25 19/24\n"
"f 16/21 17/22 22/27 21/26\n"
"f 17/22 18/23 23/37 22/27\n"
"f 18/23 19/24 24/29 23/38\n"
"f 19/24 20/25 25/30 24/29\n"
;

View File

@@ -0,0 +1,86 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_fvar_bound2 =
"# 4x4 grid of quads - 25 vertices:\n"
"v 0.00 0.00 0.00\n"
"v 0.25 0.00 0.00\n"
"v 0.50 0.00 0.00\n"
"v 0.75 0.00 0.00\n"
"v 1.00 0.00 0.00\n"
"v 0.00 0.25 0.00\n"
"v 0.25 0.25 0.20\n"
"v 0.50 0.25 0.20\n"
"v 0.75 0.25 0.20\n"
"v 1.00 0.25 0.00\n"
"v 0.00 0.50 0.00\n"
"v 0.25 0.50 0.20\n"
"v 0.50 0.50 0.30\n"
"v 0.75 0.50 0.20\n"
"v 1.00 0.50 0.00\n"
"v 0.00 0.75 0.00\n"
"v 0.25 0.75 0.20\n"
"v 0.50 0.75 0.20\n"
"v 0.75 0.75 0.20\n"
"v 1.00 0.75 0.00\n"
"v 0.00 1.00 0.00\n"
"v 0.25 1.00 0.00\n"
"v 0.50 1.00 0.00\n"
"v 0.75 1.00 0.00\n"
"v 1.00 1.00 0.00\n"
"vt 0.00 0.00 0.00\n"
"vt 0.25 0.00 0.00\n"
"vt 0.50 0.00 0.00\n"
"vt 0.75 0.00 0.00\n"
"vt 1.00 0.00 0.00\n"
"vt 0.00 0.25 0.00\n"
"vt 0.25 0.10 0.00\n"
"vt 0.50 0.25 0.00\n"
"vt 0.75 0.10 0.00\n"
"vt 1.00 0.25 0.00\n"
"vt 0.00 0.50 0.00\n"
"vt 0.25 0.25 0.00\n"
"vt 0.50 0.50 0.00\n"
"vt 0.75 0.25 0.00\n"
"vt 1.00 0.50 0.00\n"
"vt 0.00 0.75 0.00\n"
"vt 0.25 0.50 0.00\n"
"vt 0.50 0.75 0.00\n"
"vt 0.75 0.50 0.00\n"
"vt 1.00 0.75 0.00\n"
"vt 0.00 0.90 0.00\n"
"vt 0.25 0.75 0.00\n"
"vt 0.50 0.90 0.00\n"
"vt 0.75 0.75 0.00\n"
"vt 1.00 0.90 0.00\n"
"vt 0.00 1.00 0.00\n"
"vt 0.25 1.00 0.00\n"
"vt 0.50 1.00 0.00\n"
"vt 0.75 1.00 0.00\n"
"vt 1.00 1.00 0.00\n"
"f 1/1 2/2 7/7 6/6\n"
"f 2/2 3/3 8/8 7/7\n"
"f 3/3 4/4 9/9 8/8\n"
"f 4/4 5/5 10/10 9/9\n"
"f 6/6 7/7 12/12 11/11\n"
"f 7/7 8/8 13/13 12/12\n"
"f 8/8 9/9 14/14 13/13\n"
"f 9/9 10/10 15/15 14/14\n"
"f 11/16 12/17 17/22 16/21\n"
"f 12/17 13/18 18/23 17/22\n"
"f 13/18 14/19 19/24 18/23\n"
"f 14/19 15/20 20/25 19/24\n"
"f 16/21 17/22 22/27 21/26\n"
"f 17/22 18/23 23/28 22/27\n"
"f 18/23 19/24 24/29 23/28\n"
"f 19/24 20/25 25/30 24/29\n"
"t corner 1/1/0 10 0.9\n"
"t corner 1/1/0 11 0.9\n"
"t corner 1/1/0 12 2.1\n"
"t corner 1/1/0 13 0.1\n"
"t corner 1/1/0 14 0.1\n"
;

View File

@@ -0,0 +1,47 @@
//
// Copyright 2016 Dreamworks
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_fvar_bound3 =
"v 0.00 0.00 1.00\n"
"v 1.00 0.00 0.00\n"
"v 0.50 0.87 0.00\n"
"v -0.50 0.87 0.00\n"
"v -1.00 0.00 0.00\n"
"v -0.50 -0.87 0.00\n"
"v 0.50 -0.87 0.00\n"
"v 0.75 0.50 0.00\n"
"v 0.00 1.00 0.00\n"
"v -0.75 0.50 0.00\n"
"v -0.75 -0.50 0.00\n"
"v 0.00 -1.00 0.00\n"
"v 0.75 -0.50 0.00\n"
"vt 0.10 0.05\n"
"vt 0.50 0.15\n"
"vt 0.90 0.05\n"
"vt 0.10 0.25\n"
"vt 0.50 0.35\n"
"vt 0.90 0.25\n"
"vt 0.10 0.35\n"
"vt 0.50 0.45\n"
"vt 0.90 0.35\n"
"vt 0.10 0.55\n"
"vt 0.50 0.65\n"
"vt 0.90 0.55\n"
"vt 0.10 0.65\n"
"vt 0.50 0.75\n"
"vt 0.90 0.65\n"
"vt 0.10 0.85\n"
"vt 0.50 0.95\n"
"vt 0.90 0.85\n"
"f 1/2 2/3 8/6 3/5 \n"
"f 1/2 3/5 9/4 4/1 \n"
"f 1/8 4/9 10/12 5/11\n"
"f 1/8 5/11 11/10 6/7 \n"
"f 1/14 6/15 12/18 7/17\n"
"f 1/14 7/17 13/16 2/13\n"
"t interpolateboundary 1/0/0 1\n"
;

View File

@@ -0,0 +1,34 @@
//
// Copyright 2016 Dreamworks
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_fvar_bound4 =
"v -0.5 0.0 -0.5\n"
"v 0.0 0.0 -0.5\n"
"v 0.5 0.0 -0.5\n"
"v -0.5 0.0 0.0\n"
"v 0.0 -0.5 0.0\n"
"v 0.5 0.0 0.0\n"
"v -0.5 0.0 0.5\n"
"v 0.0 0.0 0.5\n"
"v 0.5 0.0 0.5\n"
"vt 0.1 0.1\n"
"vt 0.5 0.0\n"
"vt 1.0 0.1\n"
"vt 0.0 0.5\n"
"vt 0.6 0.6\n"
"vt 1.0 0.4\n"
"vt 1.0 0.6\n"
"vt 0.1 1.0\n"
"vt 0.4 1.0\n"
"vt 0.6 1.0\n"
"vt 1.0 1.0\n"
"f 1/1 2/2 5/5 4/4\n"
"f 2/2 3/3 6/6 5/5\n"
"f 4/4 5/5 8/9 7/8\n"
"f 5/5 6/7 9/11 8/10\n"
"t interpolateboundary 1/0/0 1\n"
;

View File

@@ -0,0 +1,55 @@
//
// Copyright 2016 Dreamworks
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_fvar_project0 =
"v -4 0.464466 -1.25\n"
"v -2.82149 1.64298 -1.25\n"
"v -4 2.82149 1.25\n"
"v -5.17851 1.64298 -1.25\n"
"v -5.17851 4 1.25\n"
"v -6.35702 2.82149 -1.25\n"
"v -6.35702 5.17851 -1.25\n"
"v -7.53553 4 -1.25\n"
"v -1.64298 2.82149 -1.25\n"
"v -2.82149 4 1.25\n"
"v -4 5.17851 1.25\n"
"v -5.17851 6.35702 -1.25\n"
"v -0.464466 4 -1.25\n"
"v -1.64298 5.17851 -1.25\n"
"v -2.82149 6.35702 -1.25\n"
"v -4 7.53553 -1.25\n"
"vt 0 0\n"
"vt 0.333333 0\n"
"vt 0.333333 0.333333\n"
"vt 0 0.333333\n"
"vt 0.333333 0.666667\n"
"vt 0 0.666667\n"
"vt 0.333333 1\n"
"vt 0 1\n"
"vt 0.666667 0\n"
"vt 0.666667 0.333333\n"
"vt 0.666667 0.666667\n"
"vt 0.666667 1\n"
"vt 1 0\n"
"vt 1 0.333333\n"
"vt 1 0.666667\n"
"vt 1 1\n"
"f 1/1 2/2 3/3 4/4\n"
"f 4/4 3/3 5/5 6/6\n"
"f 6/6 5/5 7/7 8/8\n"
"f 2/2 9/9 10/10 3/3\n"
"f 3/3 10/10 11/11 5/5\n"
"f 5/5 11/11 12/12 7/7\n"
"f 9/9 13/13 14/14 10/10\n"
"f 10/10 14/14 15/15 11/11\n"
"f 11/11 15/15 16/16 12/12\n"
"t interpolateboundary 1/0/0 1\n"
"t crease 2/1/0 2 4 10.0\n"
"t crease 2/1/0 2 9 10.0\n"
"t crease 2/1/0 10 9 10.0\n"
"t crease 2/1/0 10 4 10.0\n"
;

View File

@@ -0,0 +1,28 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_gregory_test0 = std::string(
"# This file uses centimeters as units for non-parametric coordinates.\n"
"v -0.500000 0.204097 -0.500000\n"
"v 0.000000 0.117710 -0.500000\n"
"v -0.500000 0.142210 -0.000000\n"
"v 0.000000 0.000000 0.000000\n"
"v -0.500000 0.204097 0.500000\n"
"v 0.000000 0.117710 0.500000\n"
"v 0.500000 0.348563 -0.003642\n"
"vt -0.500000 -0.500000\n"
"vt 0.000000 -0.500000\n"
"vt -0.500000 -0.000000\n"
"vt 0.000000 0.000000\n"
"vt -0.500000 0.500000\n"
"vt 0.000000 0.500000\n"
"vt 0.500000 -0.003642\n"
"s 1\n"
"f 1/1 2/2 4/4 3/3\n"
"f 3/3 4/4 6/6 5/5\n"
"f 2/2 7/7 6/6 4/4\n"
);

View File

@@ -0,0 +1,77 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_gregory_test1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.500000 0.000000 0.500000\n"
"v 0.500000 0.500000 -0.500000\n"
"v 0.000000 0.500000 0.500000\n"
"v -0.500000 -0.500000 0.500000\n"
"v 0.500000 -0.500000 0.500000\n"
"v -0.500000 0.500000 0.500000\n"
"v -0.500000 0.500000 -0.500000\n"
"v -0.500000 -0.500000 -0.500000\n"
"v 0.500000 -0.500000 -0.500000\n"
"v 0.250000 0.250000 0.500000\n"
"vt 0.000000 0.000000\n"
"vt 1.000000 0.000000\n"
"vt 0.200000 0.600000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.625000 0.125000\n"
"vt 0.500000 0.250000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 1.000000\n"
"vt 0.375000 1.000000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.100000 0.300000\n"
"vt 0.562500 0.187500\n"
"vn 0.666667 0.666667 0.333333\n"
"vn 0.666667 0.666667 0.333333\n"
"vn 0.666667 0.666667 0.333333\n"
"vn 0.666667 0.666667 0.333333\n"
"vn 0.000000 -0.000000 1.000000\n"
"vn 0.000000 -0.000000 1.000000\n"
"vn 0.000000 -0.000000 1.000000\n"
"vn 0.000000 -0.000000 1.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 -1.000000 0.000000\n"
"vn 0.000000 -1.000000 0.000000\n"
"vn 0.000000 -1.000000 0.000000\n"
"vn 0.000000 -1.000000 0.000000\n"
"vn -1.000000 0.000000 0.000000\n"
"vn -1.000000 0.000000 0.000000\n"
"vn -1.000000 0.000000 0.000000\n"
"vn -1.000000 0.000000 0.000000\n"
"vn 1.000000 0.000000 0.000000\n"
"vn 1.000000 0.000000 0.000000\n"
"vn 1.000000 0.000000 0.000000\n"
"vn 1.000000 0.000000 0.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"s off\n"
"f 1/1/1 2/2/2 3/3/3 10/19/4\n"
"f 4/4/5 5/5/6 1/6/7 10/20/8\n"
"f 6/8/9 3/7/10 2/9/11 7/10/12\n"
"f 8/12/13 9/11/14 5/13/15 4/14/16\n"
"f 8/15/17 4/4/18 6/8/19 7/16/20\n"
"f 5/5/21 9/17/22 2/18/23 1/6/24\n"
"f 4/4/25 10/20/26 3/7/27 6/8/28\n"
;

View File

@@ -0,0 +1,53 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_gregory_test2 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"mtllib crazy_plane2.mtl\n"
"g default\n"
"v -0.166667 0.000000 0.500000\n"
"v -0.500000 0.000000 0.500000\n"
"v 0.166667 -0.000000 0.250000\n"
"v -0.166667 0.000000 0.250000\n"
"v -0.500000 0.000000 0.250000\n"
"v 0.166667 -0.000000 0.000000\n"
"v -0.500000 0.000000 0.000000\n"
"v 0.166667 -0.000000 -0.250000\n"
"v -0.166667 0.000000 -0.250000\n"
"vt 0.666667 0.000000\n"
"vt 1.000000 0.000000\n"
"vt 0.333333 0.250000\n"
"vt 0.666667 0.250000\n"
"vt 1.000000 0.250000\n"
"vt 0.333333 0.500000\n"
"vt 1.000000 0.500000\n"
"vt 0.333333 0.750000\n"
"vt 0.666667 0.750000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"s 1\n"
"g pPlane1\n"
"usemtl initialShadingGroup\n"
"f 1/1/1 2/2/2 5/5/3 4/4/4\n"
"s off\n"
"f 7/7/5 9/9/6 8/8/7 6/6/8 4/4/9\n"
"f 3/3/10 4/4/11 6/6/12\n"
"s 1\n"
"f 4/4/4 5/5/3 7/7/13\n"
;

View File

@@ -0,0 +1,60 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_gregory_test3 =
"v 1.000000 1.000000 -0.000000\n"
"v 1.000000 0.000000 0.000000\n"
"v 1.000000 -1.000000 0.000000\n"
"v 0.000000 1.000000 -0.000000\n"
"v 0.000000 0.000000 1.527310\n"
"v 0.000000 -1.000000 0.000000\n"
"v -1.000000 2.000000 0.000000\n"
"v -1.000000 1.000000 -0.000000\n"
"v -1.000000 0.000000 1.527310\n"
"v -1.000000 -1.000000 0.000000\n"
"v -2.000000 2.000000 -0.000000\n"
"v -2.000000 1.000000 -0.000000\n"
"v -2.000000 0.000000 0.000000\n"
"v -2.000000 -1.000000 0.000000\n"
"vt 1.000000 1.000000\n"
"vt 1.000000 0.000000\n"
"vt 1.000000 -1.000000\n"
"vt 0.000000 1.000000\n"
"vt 0.000000 0.000000\n"
"vt 0.000000 -1.000000\n"
"vt -1.000000 2.000000\n"
"vt -1.000000 1.000000\n"
"vt -1.000000 0.000000\n"
"vt -1.000000 -1.000000\n"
"vt -2.000000 2.000000\n"
"vt -2.000000 1.000000\n"
"vt -2.000000 0.000000\n"
"vt -2.000000 -1.000000\n"
"vn 0.518841 0.518841 0.679418\n"
"vn 0.606923 0.000000 0.794761\n"
"vn 0.518841 -0.518841 0.679418\n"
"vn 0.272980 0.713157 0.645669\n"
"vn 0.282605 0.000000 0.959236\n"
"vn 0.272980 -0.713157 0.645669\n"
"vn -0.000000 -0.000000 1.000000\n"
"vn -0.195173 0.509888 0.837808\n"
"vn -0.282605 -0.000000 0.959236\n"
"vn -0.272980 -0.713157 0.645669\n"
"vn -0.000000 -0.000000 1.000000\n"
"vn -0.283100 0.283100 0.916356\n"
"vn -0.606923 0.000000 0.794761\n"
"vn -0.518841 -0.518841 0.679418\n"
"s off\n"
"f 2/2/2 1/1/1 4/4/4 5/5/5\n"
"f 3/3/3 2/2/2 5/5/5 6/6/6\n"
"f 5/5/5 4/4/4 8/8/8 9/9/9\n"
"f 6/6/6 5/5/5 9/9/9 10/10/10\n"
"f 8/8/8 7/7/7 11/11/11 12/12/12\n"
"f 9/9/9 8/8/8 12/12/12 13/13/13\n"
"f 10/10/10 9/9/9 13/13/13 14/14/14\n"
"t crease 2/1/0 4 8 0.900000\n"
;

View File

@@ -0,0 +1,35 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_gregory_test4 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"v -0.500000 -0.500000 0.500000\n"
"v 0.000000 -0.500000 0.500000\n"
"v 0.500000 -0.500000 0.500000\n"
"v -0.500000 0.500000 0.500000\n"
"v 0.000000 0.500000 0.500000\n"
"v 0.500000 0.500000 0.500000\n"
"v -0.500000 0.500000 -0.500000\n"
"v 0.000000 0.500000 -0.500000\n"
"v 0.500000 0.500000 -0.500000\n"
"v -0.500000 -0.500000 -0.500000\n"
"v 0.000000 -0.500000 -0.500000\n"
"v 0.500000 -0.500000 -0.500000\n"
"vt 0 0\n"
"vt 1 0\n"
"vt 1 1\n"
"vt 0 1\n"
"f 2/1 3/2 6/3 5/4\n"
"f 4/1 5/2 8/3 7/4\n"
"f 7/1 8/2 11/3 10/4\n"
"f 8/1 9/2 12/3 11/4\n"
"f 10/1 11/2 2/3 1/4\n"
"f 11/1 12/2 3/3 2/4\n"
"f 3/1 12/2 9/3 6/4\n"
"f 10/1 1/2 4/3 7/4\n"
"t interpolateboundary 1/0/0 1\n"
;

View File

@@ -0,0 +1,82 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_gregory_test5 =
"v -1.356808 -0.083528 1.425768\n"
"v 0.019224 -1.134152 1.314912\n"
"v -0.796312 -0.701552 2.527352\n"
"v -1.272248 -0.262936 0.526768\n"
"v -0.355528 -0.399336 -1.325872\n"
"v 0.728824 -0.419232 1.251256\n"
"v 0.595688 -0.416328 0.744344\n"
"v -0.245000 -0.965184 0.623632\n"
"v -0.030728 -0.345264 0.519104\n"
"v 0.391584 -0.345768 0.611264\n"
"v -0.354248 -0.847304 -0.035960\n"
"v 0.591456 -0.431424 0.343048\n"
"v -0.683168 -0.681144 0.361080\n"
"v 0.015632 -0.691216 -0.980472\n"
"v 0.754360 -0.387264 -0.665952\n"
"v -0.121000 -0.535808 -1.348384\n"
"v -0.150464 -0.413896 0.236536\n"
"v -1.068432 -0.389648 -0.244392\n"
"v -0.628200 -0.670280 0.103376\n"
"v 0.472696 -0.352880 0.412584\n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vn -0.598314 -0.016294 0.801096\n"
"vn -0.091008 -0.181684 0.979137\n"
"vn -0.598314 -0.016294 0.801096\n"
"vn -0.583785 -0.026634 0.811471\n"
"vn -0.452613 -0.260227 0.852891\n"
"vn 0.608152 -0.306705 0.732177\n"
"vn 0.541220 -0.545713 0.639748\n"
"vn -0.005690 -0.537551 0.843212\n"
"vn 0.287651 -0.459659 0.840221\n"
"vn 0.233994 -0.625569 0.744252\n"
"vn -0.089072 0.238062 0.967157\n"
"vn 0.164711 0.473793 0.865096\n"
"vn -0.264037 -0.175309 0.948447\n"
"vn -0.129696 -0.168466 0.977138\n"
"vn 0.388886 0.011631 0.921212\n"
"vn -0.452613 -0.260227 0.852891\n"
"vn 0.155237 0.498054 0.853137\n"
"vn -0.501269 -0.167537 0.848917\n"
"vn -0.228587 0.075152 0.970618\n"
"vn -0.078590 0.612564 0.786504\n"
"s off\n"
"f 13/13/13 9/9/9 8/8/8\n"
"f 11/11/11 17/17/17 19/19/19\n"
"f 11/11/11 12/12/12 20/20/20 17/17/17\n"
"f 7/7/7 6/6/6 2/2/2 8/8/8\n"
"f 9/9/9 10/10/10 7/7/7 8/8/8\n"
"f 14/14/14 15/15/15 12/12/12 11/11/11\n"
"f 18/18/18 5/5/5 16/16/16 14/14/14 11/11/11 19/19/19\n"
"f 2/2/2 3/3/3 1/1/1 4/4/4 13/13/13 8/8/8\n"
"f 4/4/4 18/18/18 19/19/19 13/13/13\n"
"f 17/17/17 20/20/20 10/10/10 9/9/9\n"
"f 19/19/19 17/17/17 9/9/9 13/13/13\n"
"\n"
;

View File

@@ -0,0 +1,64 @@
//
// Copyright 2014 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_gregory_test6 = std::string(
"# This file uses centimeters as units for non-parametric coordinates.\n"
"v -1.414 -0.000 -1.414\n"
"v 1.414 -0.000 -1.414\n"
"v 1.414 0.000 1.414\n"
"v -1.414 0.000 1.414\n"
"v 0.000 -0.000 -1.414\n"
"v -0.000 0.000 1.414\n"
"v 1.414 -0.000 -0.707\n"
"v -1.414 -0.000 -0.707\n"
"v -1.414 0.000 0.707\n"
"v 1.414 0.000 0.707\n"
"v 0.000 -1.000 -0.471\n"
"v -0.000 -1.000 0.471\n"
"v 0.707 -0.000 -0.707\n"
"v -0.707 -0.000 -0.707\n"
"v -0.707 0.000 0.707\n"
"v 0.707 0.000 0.707\n"
"v 2.828 -0.000 -1.414\n"
"v 2.828 -0.000 -0.707\n"
"v 2.828 0.000 0.707\n"
"v 2.828 0.000 1.414\n"
"vt 0.000000 0.000000\n"
"vt 0.333333 0.000000\n"
"vt 0.666666 0.000000\n"
"vt 1.000000 0.000000\n"
"vt 0.000000 0.250000\n"
"vt 0.166666 0.250000\n"
"vt 0.500000 0.250000\n"
"vt 0.666666 0.250000\n"
"vt 1.000000 0.250000\n"
"vt 0.000000 0.750000\n"
"vt 0.166666 0.750000\n"
"vt 0.500000 0.750000\n"
"vt 0.666666 0.750000\n"
"vt 1.000000 0.750000\n"
"vt 0.000000 1.000000\n"
"vt 0.333333 1.000000\n"
"vt 0.666666 1.000000\n"
"vt 1.000000 1.000000\n"
"vt 0.333333 0.333333\n"
"vt 0.333333 0.666666\n"
"f 1/1 5/2 14/6 8/5\n"
"f 2/3 7/8 13/7 5/2\n"
"f 3/17 6/16 16/12 10/13\n"
"f 4/15 9/10 15/11 6/16\n"
"f 5/2 13/7 11/19 14/6\n"
"f 6/16 15/11 12/20 16/12\n"
"f 7/8 10/13 16/12 13/7\n"
"f 9/10 8/5 14/6 15/11\n"
"f 11/19 13/7 16/12 12/20\n"
"f 12/20 15/11 14/6 11/19\n"
"f 2/3 17/4 18/9 7/8\n"
"f 3/17 10/13 19/14 20/18\n"
"f 7/8 18/9 19/14 10/13\n"
"t interpolateboundary 1/0/0 2\n"
);

View File

@@ -0,0 +1,70 @@
//
// Copyright 2014 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_gregory_test7 = std::string(
"# This file uses centimeters as units for non-parametric coordinates.\n"
"v -1.414 -0.000 -1.414\n"
"v 1.414 -0.000 -1.414\n"
"v 1.414 0.000 1.414\n"
"v -1.414 0.000 1.414\n"
"v 0.000 -0.000 -1.414\n"
"v -0.000 0.000 1.414\n"
"v 1.414 -0.000 -0.707\n"
"v -1.414 -0.000 -0.707\n"
"v -1.414 0.000 0.707\n"
"v 1.414 0.000 0.707\n"
"v 0.000 -1.000 -0.471\n"
"v -0.000 -1.000 0.471\n"
"v 0.707 -0.000 -0.707\n"
"v -0.707 -0.000 -0.707\n"
"v -0.707 0.000 0.707\n"
"v 0.707 0.000 0.707\n"
"v 2.828 -0.000 -1.414\n"
"v 2.828 -0.000 -0.707\n"
"v 2.828 0.000 0.707\n"
"v 2.828 0.000 1.414\n"
"vt 0.000000 0.000000\n"
"vt 0.333333 0.000000\n"
"vt 0.666666 0.000000\n"
"vt 1.000000 0.000000\n"
"vt 0.000000 0.250000\n"
"vt 0.166666 0.250000\n"
"vt 0.500000 0.250000\n"
"vt 0.666666 0.250000\n"
"vt 1.000000 0.250000\n"
"vt 0.000000 0.750000\n"
"vt 0.166666 0.750000\n"
"vt 0.500000 0.750000\n"
"vt 0.666666 0.750000\n"
"vt 1.000000 0.750000\n"
"vt 0.000000 1.000000\n"
"vt 0.333333 1.000000\n"
"vt 0.666666 1.000000\n"
"vt 1.000000 1.000000\n"
"vt 0.333333 0.333333\n"
"vt 0.333333 0.666666\n"
"f 1/1 5/2 14/6 8/5\n"
"f 2/3 7/8 13/7 5/2\n"
"f 3/17 6/16 16/12 10/13\n"
"f 4/15 9/10 15/11 6/16\n"
"f 5/2 13/7 11/19 14/6\n"
"f 6/16 15/11 12/20 16/12\n"
"f 7/8 10/13 16/12 13/7\n"
"f 9/10 8/5 14/6 15/11\n"
"f 11/19 13/7 16/12 12/20\n"
"f 12/20 15/11 14/6 11/19\n"
"f 2/3 17/4 18/9 7/8\n"
"f 3/17 10/13 19/14 20/18\n"
"f 7/8 18/9 19/14 10/13\n"
"t crease 2/1/0 4 12 9.0\n"
"t crease 2/1/0 12 15 9.0\n"
"t crease 2/1/0 15 5 9.0\n"
"t crease 2/1/0 5 14 9.0\n"
"t crease 2/1/0 14 13 9.0\n"
"t crease 2/1/0 13 4 9.0\n"
"t interpolateboundary 1/0/0 2\n"
);

View File

@@ -0,0 +1,52 @@
//
// Copyright 2014 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_gregory_test8 = std::string(
"v -1.000000 0.500000 0.500000\n"
"v 0.000000 1.000000 1.00000\n"
"v 1.000000 0.500000 0.500000\n"
"v -1.000000 0.500000 -0.500000\n"
"v 1.000000 0.500000 -0.500000\n"
"v -1.000000 -0.500000 -0.500000\n"
"v 1.000000 -0.500000 -0.500000\n"
"v -1.000000 -0.500000 0.500000\n"
"v 1.000000 -0.500000 0.500000\n"
"vt 0.375000 0.000000 \n"
"vt 0.500000 0.000000 \n"
"vt 0.625000 0.000000 \n"
"vt 0.375000 0.250000 \n"
"vt 0.625000 0.250000 \n"
"vt 0.375000 0.500000 \n"
"vt 0.625000 0.500000 \n"
"vt 0.375000 0.750000 \n"
"vt 0.500000 0.750000 \n"
"vt 0.625000 0.750000 \n"
"vt 0.375000 1.000000 \n"
"vt 0.500000 1.000000 \n"
"vt 0.625000 1.000000 \n"
"vt 0.875000 0.000000 \n"
"vt 0.875000 0.250000 \n"
"vt 0.125000 0.000000 \n"
"vt 0.125000 0.250000 \n"
"vn -0.528722 0.664008 0.528722\n"
"vn 0.000000 0.707107 0.707107\n"
"vn 0.528722 0.664008 0.528722\n"
"vn -0.577350 0.577350 -0.577350\n"
"vn 0.577350 0.577350 -0.577350\n"
"vn -0.577350 -0.577350 -0.577350\n"
"vn 0.577350 -0.577350 -0.577350\n"
"vn -0.528722 -0.664008 0.528722\n"
"vn 0.000000 -0.707107 0.707107\n"
"vn 0.528722 -0.664008 0.528722\n"
"s off\n"
"f 4/4/4 1/1/1 2/2/2 3/3/3 5/5/5\n"
"f 6/6/6 4/4/4 5/5/5 7/7/7\n"
"f 8/8/8 6/6/6 7/7/7 9/9/9\n"
"f 2/12/2 1/11/1 8/8/8 9/9/9 3/13/3\n"
"f 3/3/3 9/14/10 7/15/7 5/5/5\n"
"f 8/16/8 1/1/1 4/4/4 6/17/6\n"
);

View File

@@ -0,0 +1,184 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_helmet =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v -0.383022 -0.321394 -0.866025\n"
"v -0.250000 -0.433013 -0.866025\n"
"v -0.086824 -0.492404 -0.866025\n"
"v 0.086824 -0.492404 -0.866025\n"
"v 0.250000 -0.433013 -0.866025\n"
"v 0.383022 -0.321394 -0.866025\n"
"v -0.541675 -0.454519 -0.707107\n"
"v -0.353553 -0.612372 -0.707107\n"
"v -0.122788 -0.696364 -0.707107\n"
"v 0.122788 -0.696364 -0.707107\n"
"v 0.353553 -0.612372 -0.707107\n"
"v 0.541675 -0.454519 -0.707107\n"
"v -0.663414 -0.556670 -0.500000\n"
"v -0.433013 -0.750000 -0.500000\n"
"v -0.150384 -0.852869 -0.500000\n"
"v 0.150384 -0.852869 -0.500000\n"
"v 0.433013 -0.750000 -0.500000\n"
"v 0.663414 -0.556670 -0.500000\n"
"v -0.739942 -0.620885 -0.258819\n"
"v -0.482963 -0.836516 -0.258819\n"
"v -0.167731 -0.951251 -0.258819\n"
"v 0.167731 -0.951251 -0.258819\n"
"v 0.482963 -0.836516 -0.258819\n"
"v 0.739942 -0.620885 -0.258819\n"
"v -0.766045 -0.642787 0.000000\n"
"v -0.500000 -0.866025 0.000000\n"
"v -0.173648 -0.984808 0.000000\n"
"v 0.173648 -0.984808 0.000000\n"
"v 0.500000 -0.866025 0.000000\n"
"v 0.766044 -0.642788 0.000000\n"
"v -0.739942 -0.620885 0.258819\n"
"v -0.482963 -0.836516 0.258819\n"
"v -0.167731 -0.951251 0.258819\n"
"v 0.167731 -0.951251 0.258819\n"
"v 0.482963 -0.836516 0.258819\n"
"v 0.739942 -0.620885 0.258819\n"
"v -0.663414 -0.556670 0.500000\n"
"v -0.433013 -0.750000 0.500000\n"
"v -0.150384 -0.852869 0.500000\n"
"v 0.150384 -0.852869 0.500000\n"
"v 0.433013 -0.750000 0.500000\n"
"v 0.663414 -0.556670 0.500000\n"
"v -0.541675 -0.454519 0.707107\n"
"v -0.353553 -0.612372 0.707107\n"
"v -0.122788 -0.696364 0.707107\n"
"v 0.122788 -0.696364 0.707107\n"
"v 0.353553 -0.612372 0.707107\n"
"v 0.541675 -0.454519 0.707107\n"
"v -0.383022 -0.321394 0.866025\n"
"v -0.250000 -0.433013 0.866025\n"
"v -0.086824 -0.492404 0.866025\n"
"v 0.086824 -0.492404 0.866025\n"
"v 0.250000 -0.433013 0.866025\n"
"v 0.383022 -0.321394 0.866025\n"
"v -0.086824 -0.531654 -0.916400\n"
"v 0.086824 -0.531654 -0.916400\n"
"v 0.122788 -0.741464 -0.751545\n"
"v -0.122788 -0.741464 -0.751545\n"
"v 0.150384 -0.907909 -0.531311\n"
"v -0.150384 -0.907909 -0.531311\n"
"v 0.167731 -1.012482 -0.274985\n"
"v -0.167731 -1.012482 -0.274985\n"
"v 0.173648 -1.048138 0.000000\n"
"v -0.173648 -1.048138 0.000000\n"
"v 0.167731 -1.012482 0.274985\n"
"v -0.167731 -1.012482 0.274985\n"
"v 0.150384 -0.907909 0.531311\n"
"v -0.150384 -0.907909 0.531311\n"
"v 0.122788 -0.741464 0.751545\n"
"v -0.122788 -0.741464 0.751545\n"
"v 0.086824 -0.531654 0.916400\n"
"v -0.086824 -0.531654 0.916400\n"
"vt 0 0\n"
"vt 1 0\n"
"vt 1 1\n"
"vt 0 1\n"
"f 1/1 2/2 8/3 7/4\n"
"f 2/1 3/2 9/3 8/4\n"
"f 55/1 56/2 57/3 58/4\n"
"f 4/1 5/2 11/3 10/4\n"
"f 5/1 6/2 12/3 11/4\n"
"f 7/1 8/2 14/3 13/4\n"
"f 8/1 9/2 15/3 14/4\n"
"f 58/1 57/2 59/3 60/4\n"
"f 10/1 11/2 17/3 16/4\n"
"f 11/1 12/2 18/3 17/4\n"
"f 13/1 14/2 20/3 19/4\n"
"f 14/1 15/2 21/3 20/4\n"
"f 60/1 59/2 61/3 62/4\n"
"f 16/1 17/2 23/3 22/4\n"
"f 17/1 18/2 24/3 23/4\n"
"f 19/1 20/2 26/3 25/4\n"
"f 20/1 21/2 27/3 26/4\n"
"f 62/1 61/2 63/3 64/4\n"
"f 22/1 23/2 29/3 28/4\n"
"f 23/1 24/2 30/3 29/4\n"
"f 25/1 26/2 32/3 31/4\n"
"f 26/1 27/2 33/3 32/4\n"
"f 64/1 63/2 65/3 66/4\n"
"f 28/1 29/2 35/3 34/4\n"
"f 29/1 30/2 36/3 35/4\n"
"f 31/1 32/2 38/3 37/4\n"
"f 32/1 33/2 39/3 38/4\n"
"f 66/1 65/2 67/3 68/4\n"
"f 34/1 35/2 41/3 40/4\n"
"f 35/1 36/2 42/3 41/4\n"
"f 37/1 38/2 44/3 43/4\n"
"f 38/1 39/2 45/3 44/4\n"
"f 68/1 67/2 69/3 70/4\n"
"f 40/1 41/2 47/3 46/4\n"
"f 41/1 42/2 48/3 47/4\n"
"f 43/1 44/2 50/3 49/4\n"
"f 44/1 45/2 51/3 50/4\n"
"f 70/1 69/2 71/3 72/4\n"
"f 46/1 47/2 53/3 52/4\n"
"f 47/1 48/2 54/3 53/4\n"
"f 3/1 4/2 56/3 55/4\n"
"f 4/1 10/2 57/3 56/4\n"
"f 9/1 3/2 55/3 58/4\n"
"f 10/1 16/2 59/3 57/4\n"
"f 15/1 9/2 58/3 60/4\n"
"f 16/1 22/2 61/3 59/4\n"
"f 21/1 15/2 60/3 62/4\n"
"f 22/1 28/2 63/3 61/4\n"
"f 27/1 21/2 62/3 64/4\n"
"f 28/1 34/2 65/3 63/4\n"
"f 33/1 27/2 64/3 66/4\n"
"f 34/1 40/2 67/3 65/4\n"
"f 39/1 33/2 66/3 68/4\n"
"f 40/1 46/2 69/3 67/4\n"
"f 45/1 39/2 68/3 70/4\n"
"f 46/1 52/2 71/3 69/4\n"
"f 52/1 51/2 72/3 71/4\n"
"f 51/1 45/2 70/3 72/4\n"
"t crease 2/1/0 2 8 7.000000 \n"
"t crease 2/1/0 3 9 7.000000 \n"
"t crease 2/1/0 8 14 7.000000 \n"
"t crease 2/1/0 9 15 7.000000 \n"
"t crease 2/1/0 14 20 7.000000 \n"
"t crease 2/1/0 15 21 7.000000 \n"
"t crease 2/1/0 20 26 7.000000 \n"
"t crease 2/1/0 21 27 7.000000 \n"
"t crease 2/1/0 26 32 7.000000 \n"
"t crease 2/1/0 27 33 7.000000 \n"
"t crease 2/1/0 32 38 7.000000 \n"
"t crease 2/1/0 33 39 7.000000 \n"
"t crease 2/1/0 38 44 7.000000 \n"
"t crease 2/1/0 39 45 7.000000 \n"
"t crease 2/1/0 44 50 7.000000 \n"
"t crease 2/1/0 45 51 7.000000 \n"
"t crease 2/1/0 2 54 7.000000 \n"
"t crease 2/1/0 3 55 7.000000 \n"
"t crease 2/1/0 54 55 7.000000 \n"
"t crease 2/1/0 55 56 7.000000 \n"
"t crease 2/1/0 54 57 7.000000 \n"
"t crease 2/1/0 56 58 7.000000 \n"
"t crease 2/1/0 57 59 7.000000 \n"
"t crease 2/1/0 58 60 7.000000 \n"
"t crease 2/1/0 59 61 7.000000 \n"
"t crease 2/1/0 60 62 7.000000 \n"
"t crease 2/1/0 61 63 7.000000 \n"
"t crease 2/1/0 62 64 7.000000 \n"
"t crease 2/1/0 63 65 7.000000 \n"
"t crease 2/1/0 64 66 7.000000 \n"
"t crease 2/1/0 65 67 7.000000 \n"
"t crease 2/1/0 66 68 7.000000 \n"
"t crease 2/1/0 67 69 7.000000 \n"
"t crease 2/1/0 51 70 7.000000 \n"
"t crease 2/1/0 68 70 7.000000 \n"
"t crease 2/1/0 50 71 7.000000 \n"
"t crease 2/1/0 71 70 7.000000 \n"
"t crease 2/1/0 69 71 7.000000 \n"
"t interpolateboundary 1/0/0 1 \n"
;

View File

@@ -0,0 +1,65 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_hole_test1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.414214 1.000000\n"
"v 1.414214 0.000000 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v 0.000000 -1.414214 -1.000000\n"
"v 1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.000000 0.000000 -1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 4/4/3 3/3/4\n"
"f 3/3/5 4/4/6 6/6/7 5/5/8\n"
"f 5/5/9 6/6/10 8/8/11 7/7/12\n"
"f 7/7/13 8/8/14 2/10/15 1/9/16\n"
"f 2/2/17 8/11/18 6/12/19 4/4/20\n"
"f 7/13/21 1/1/22 3/3/23 5/14/24\n"
"t hole 1/0/0 1\n"
;

View File

@@ -0,0 +1,106 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_hole_test2 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v -1.0000 -0.0000 -1.0000\n"
"v -0.5000 -0.0000 -1.0000\n"
"v 0.0000 -0.0000 -1.0000\n"
"v 0.5000 -0.0000 -1.0000\n"
"v 1.0000 -0.0000 -1.0000\n"
"v -1.0000 -0.0000 -0.5000\n"
"v -0.5000 -0.5000 -0.5000\n"
"v 0.0000 -0.5000 -0.5000\n"
"v 0.5000 -0.0000 -0.5000\n"
"v 1.0000 -0.0000 -0.5000\n"
"v -1.0000 0.0000 0.0000\n"
"v -0.5000 0.0000 0.0000\n"
"v 0.0000 0.0000 0.0000\n"
"v 0.5000 0.0000 0.0000\n"
"v 1.0000 0.0000 0.0000\n"
"v -1.0000 0.0000 0.5000\n"
"v -0.5000 0.0000 0.5000\n"
"v 0.0000 0.0000 0.5000\n"
"v 0.5000 0.0000 0.5000\n"
"v 1.0000 0.0000 0.5000\n"
"v -1.0000 0.0000 1.0000\n"
"v -0.5000 0.0000 1.0000\n"
"v 0.0000 0.0000 1.0000\n"
"v 0.5000 0.0000 1.0000\n"
"v 1.0000 0.0000 1.0000\n"
"vt 0.000000 0.000000\n"
"vt 0.250000 0.000000\n"
"vt 0.500000 0.000000\n"
"vt 0.750000 0.000000\n"
"vt 1.000000 0.000000\n"
"vt 0.000000 0.250000\n"
"vt 0.250000 0.250000\n"
"vt 0.500000 0.250000\n"
"vt 0.750000 0.250000\n"
"vt 1.000000 0.250000\n"
"vt 0.000000 0.500000\n"
"vt 0.250000 0.500000\n"
"vt 0.500000 0.500000\n"
"vt 0.750000 0.500000\n"
"vt 1.000000 0.500000\n"
"vt 0.000000 0.750000\n"
"vt 0.250000 0.750000\n"
"vt 0.500000 0.750000\n"
"vt 0.750000 0.750000\n"
"vt 1.000000 0.750000\n"
"vt 0.000000 1.000000\n"
"vt 0.250000 1.000000\n"
"vt 0.500000 1.000000\n"
"vt 0.750000 1.000000\n"
"vt 1.000000 1.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"vn 0.000000 1.000000 0.000000\n"
"s off\n"
"f 1/1/1 2/2/2 7/7/3 6/6/4\n"
"f 2/2/2 3/3/5 8/8/6 7/7/3\n"
"f 3/3/5 4/4/7 9/9/8 8/8/6\n"
"f 4/4/7 5/5/9 10/10/10 9/9/8\n"
"f 6/6/4 7/7/3 12/12/11 11/11/12\n"
"f 7/7/3 8/8/6 13/13/13 12/12/11\n"
"f 8/8/6 9/9/8 14/14/14 13/13/13\n"
"f 9/9/8 10/10/10 15/15/15 14/14/14\n"
"f 11/11/12 12/12/11 17/17/16 16/16/17\n"
"f 12/12/11 13/13/13 18/18/18 17/17/16\n"
"f 13/13/13 14/14/14 19/19/19 18/18/18\n"
"f 14/14/14 15/15/15 20/20/20 19/19/19\n"
"f 16/16/17 17/17/16 22/22/21 21/21/22\n"
"f 17/17/16 18/18/18 23/23/23 22/22/21\n"
"f 18/18/18 19/19/19 24/24/24 23/23/23\n"
"f 19/19/19 20/20/20 25/25/25 24/24/24\n"
"t hole 4/0/0 5 6 9 10\n"
"t interpolateboundary 1/0/0 1\n"
"t crease 2/1/0 6 7 7.5\n"
;

View File

@@ -0,0 +1,120 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_hole_test3 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"g default\n"
"v 1.596037 0.000000 1.006744\n"
"v 0.532012 0.000000 1.006744\n"
"v -0.532012 0.000000 1.006744\n"
"v -1.596037 0.000000 1.006744\n"
"v 1.596037 0.000000 0.099249\n"
"v 0.532012 0.000000 0.099249\n"
"v -0.532012 0.000000 0.099249\n"
"v -1.596037 0.000000 0.099249\n"
"v 1.596037 0.000000 -0.808247\n"
"v 0.532012 0.000000 -0.808247\n"
"v -0.532012 0.000000 -0.808247\n"
"v -1.596037 0.000000 -0.808247\n"
"v 1.596037 0.000000 0.552996\n"
"v 1.064024 0.000000 0.552997\n"
"v 1.064024 0.000000 1.006744\n"
"v 0.532012 0.000000 0.552996\n"
"v 1.064024 0.000000 0.099249\n"
"v 1.596037 0.000000 -0.354499\n"
"v 1.064024 0.000000 -0.354499\n"
"v 0.532012 0.000000 -0.354499\n"
"v 1.064024 0.000000 -0.808247\n"
"v 1.596037 0.000000 -1.261994\n"
"v 1.064024 0.000000 -1.261994\n"
"v 0.532012 0.000000 -1.261994\n"
"vt 0.200000 0.000000\n"
"vt 0.400000 0.000000\n"
"vt 0.600000 0.000000\n"
"vt 0.800000 0.000000\n"
"vt 0.200000 0.170578\n"
"vt 0.400000 0.170578\n"
"vt 0.600000 0.170578\n"
"vt 0.800000 0.170578\n"
"vt 0.200000 0.341156\n"
"vt 0.400000 0.341156\n"
"vt 0.600000 0.341156\n"
"vt 0.800000 0.341156\n"
"vt 0.200000 0.085289\n"
"vt 0.300000 0.085289\n"
"vt 0.300000 0.000000\n"
"vt 0.400000 0.085289\n"
"vt 0.300000 0.170578\n"
"vt 0.200000 0.255867\n"
"vt 0.300000 0.255867\n"
"vt 0.400000 0.255867\n"
"vt 0.300000 0.341156\n"
"vt 0.200000 0.426445\n"
"vt 0.300000 0.426445\n"
"vt 0.400000 0.426445\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"vn -0.000000 -1.000000 0.000000\n"
"f 13/13/1 1/1/2 15/15/3 14/14/4\n"
"f 3/3/5 4/4/6 8/8/7 7/7/8\n"
"f 18/18/9 5/5/10 17/17/11 19/19/12\n"
"f 7/7/8 8/8/7 12/12/13 11/11/14\n"
"f 22/22/15 9/9/16 21/21/17 23/23/18\n"
"f 7/7/8 16/16/19 2/2/20 3/3/5\n"
"f 15/15/21 2/2/20 16/16/19 14/14/22\n"
"f 16/16/23 6/6/24 17/17/25 14/14/26\n"
"f 17/17/11 5/5/10 13/13/27 14/14/28\n"
"f 17/17/25 6/6/24 20/20/29 19/19/30\n"
"f 20/20/31 10/10/32 21/21/33 19/19/34\n"
"f 21/21/17 9/9/16 18/18/35 19/19/36\n"
"f 21/21/33 10/10/32 24/24/37 23/23/38\n"
"f 11/11/39 24/24/37 10/10/32 20/20/31\n"
"f 11/11/14 20/20/40 7/7/8\n"
"f 7/7/41 20/20/29 6/6/24 16/16/23\n"
"t hole 8/0/0 15 2 7 8 9 5 13 14\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,33 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_hole_test4 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"mtllib xord3.mtl\n"
"g default\n"
"v -1 0 1\n"
"v -1 0 0\n"
"v -0.5 0 0\n"
"v -0.5 0 1\n"
"v 0 0 1\n"
"v 0.5 0 0\n"
"v 1 0 0\n"
"v 1 0 1\n"
"v -0.5 0 -1\n"
"v 0 0 -1\n"
"v 1 0 -1\n"
"vt 0.000000 0.000000\n"
"vn 0.000000 -1.000000 0.000000\n"
"f 1/1/1 2/1/1 3/1/1 4/1/1\n"
"f 4/1/1 3/1/1 6/1/1 5/1/1\n"
"f 5/1/1 6/1/1 7/1/1 8/1/1\n"
"f 3/1/1 9/1/1 10/1/1 6/1/1\n"
"f 6/1/1 10/1/1 11/1/1 7/1/1\n"
"t hole 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,108 @@
//
// Copyright 2016 Dreamworks
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_inf_crease0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.00 0.00 0.00\n"
"v 0.50 0.00 0.00\n"
"v 1.00 0.00 0.00\n"
"v 1.50 0.00 0.00\n"
"v 2.00 0.00 0.00\n"
"v 0.00 0.00 0.50\n"
"v 0.50 -0.62 0.50\n"
"v 1.00 0.00 0.50\n"
"v 1.50 -0.62 0.50\n"
"v 2.00 0.00 0.50\n"
"v 0.00 0.00 1.00\n"
"v 0.50 0.00 1.00\n"
"v 1.00 0.00 1.00\n"
"v 1.50 0.00 1.00\n"
"v 2.00 0.00 1.00\n"
"v 0.00 0.00 1.50\n"
"v 0.50 -0.62 1.50\n"
"v 1.00 0.00 1.50\n"
"v 1.50 -0.62 1.50\n"
"v 2.00 0.00 1.50\n"
"v 0.00 0.00 2.00\n"
"v 0.50 0.00 2.00\n"
"v 1.00 0.00 2.00\n"
"v 1.50 0.00 2.00\n"
"v 2.00 0.00 2.00\n"
"\n"
"vt 0.00 0.00\n"
"vt 0.20 0.00\n"
"vt 0.50 0.00\n"
"vt 0.80 0.00\n"
"vt 1.00 0.00\n"
"vt 0.00 0.20\n"
"vt 0.20 0.20\n"
"vt 0.50 0.10\n"
"vt 0.80 0.20\n"
"vt 1.00 0.20\n"
"vt 0.00 0.40\n"
"vt 0.20 0.40\n"
"vt 0.50 0.20\n"
"vt 0.80 0.40\n"
"vt 1.00 0.40\n"
"vt 0.00 0.60\n"
"vt 0.25 0.60\n"
"vt 0.50 0.40\n"
"vt 0.75 0.60\n"
"vt 1.00 0.60\n"
"vt 0.00 0.80\n"
"vt 0.25 0.80\n"
"vt 0.50 0.65\n"
"vt 0.75 0.80\n"
"vt 1.00 0.80\n"
"vt 0.00 1.00\n"
"vt 0.25 1.00\n"
"vt 0.50 1.00\n"
"vt 0.75 1.00\n"
"vt 1.00 1.00\n"
"vt 0.40 0.00\n"
"vt 0.60 0.00\n"
"vt 0.40 0.10\n"
"vt 0.60 0.10\n"
"vt 0.40 0.25\n"
"vt 0.60 0.25\n"
"vt 0.40 1.00\n"
"vt 0.60 1.00\n"
"\n"
"f 1/1 2/2 7/7 6/6\n"
"f 2/2 3/31 8/33 7/7\n"
"f 3/32 4/4 9/9 8/34\n"
"f 4/4 5/5 10/10 9/9\n"
"f 6/6 7/7 12/12 11/11\n"
"f 7/7 8/33 13/35 12/12\n"
"f 8/34 9/9 14/14 13/36\n"
"f 9/9 10/10 15/15 14/14\n"
"f 11/16 12/17 17/22 16/21\n"
"f 12/17 13/18 18/23 17/22\n"
"f 13/18 14/19 19/24 18/23\n"
"f 14/19 15/20 20/25 19/24\n"
"f 16/21 17/22 22/27 21/26\n"
"f 17/22 18/23 23/37 22/27\n"
"f 18/23 19/24 24/29 23/38\n"
"f 19/24 20/25 25/30 24/29\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
"t crease 2/1/0 1 6 10.0\n"
"t crease 2/1/0 3 8 10.0\n"
"t crease 2/1/0 5 6 10.0\n"
"t crease 2/1/0 6 11 10.0\n"
"t crease 2/1/0 8 13 10.0\n"
"t crease 2/1/0 11 16 10.0\n"
"t crease 2/1/0 11 16 10.0\n"
"t crease 2/1/0 13 18 10.0\n"
"t crease 2/1/0 15 16 10.0\n"
"t crease 2/1/0 16 17 10.0\n"
"t crease 2/1/0 18 19 10.0\n"
"t crease 2/1/0 16 21 10.0\n"
"\n"
;

View File

@@ -0,0 +1,97 @@
//
// Copyright 2016 Dreamworks
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_inf_crease1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v -0.5500 -0.3750 0.5500\n"
"v -0.0500 0.0000 0.5500\n"
"v -0.3000 0.0000 0.9850\n"
"v -0.8000 0.0000 0.9850\n"
"v -1.0500 0.0000 0.5500\n"
"v -0.8000 0.0000 0.1150\n"
"v -0.3000 0.0000 0.1150\n"
"v -0.1750 0.0000 0.8000\n"
"v -0.5500 0.0000 1.0500\n"
"v -0.9250 0.0000 0.8000\n"
"v -0.9250 0.0000 0.3000\n"
"v -0.5500 0.0000 0.0500\n"
"v -0.1750 0.0000 0.3000\n"
"v 0.5500 -0.3750 0.5500\n"
"v 1.0500 0.0000 0.5500\n"
"v 0.8000 0.0000 0.9850\n"
"v 0.3000 0.0000 0.9850\n"
"v 0.0500 0.0000 0.5500\n"
"v 0.3000 0.0000 0.1150\n"
"v 0.8000 0.0000 0.1150\n"
"v 0.9250 0.0000 0.8000\n"
"v 0.5500 0.0000 1.0500\n"
"v 0.1750 0.0000 0.8000\n"
"v 0.1750 0.0000 0.3000\n"
"v 0.5500 0.0000 0.0500\n"
"v 0.9250 0.0000 0.3000\n"
"v -0.5500 -0.3750 -0.5500\n"
"v -0.0500 -0.0000 -0.5500\n"
"v -0.3000 -0.0000 -0.1150\n"
"v -0.8000 -0.0000 -0.1150\n"
"v -1.0500 -0.0000 -0.5500\n"
"v -0.8000 -0.0000 -0.9850\n"
"v -0.3000 -0.0000 -0.9850\n"
"v -0.1750 -0.0000 -0.3000\n"
"v -0.5500 -0.0000 -0.0500\n"
"v -0.9250 -0.0000 -0.3000\n"
"v -0.9250 -0.0000 -0.8000\n"
"v -0.5500 -0.0000 -1.0500\n"
"v -0.1750 -0.0000 -0.8000\n"
"v 0.5500 -0.3750 -0.5500\n"
"v 1.0500 -0.0000 -0.5500\n"
"v 0.8000 -0.0000 -0.1150\n"
"v 0.3000 -0.0000 -0.1150\n"
"v 0.0500 -0.0000 -0.5500\n"
"v 0.3000 -0.0000 -0.9850\n"
"v 0.8000 -0.0000 -0.9850\n"
"v 0.9250 -0.0000 -0.3000\n"
"v 0.5500 -0.0000 -0.0500\n"
"v 0.1750 -0.0000 -0.3000\n"
"v 0.1750 -0.0000 -0.8000\n"
"v 0.5500 -0.0000 -1.0500\n"
"v 0.9250 -0.0000 -0.8000\n"
"f 1 2 8 3\n"
"f 1 3 9 4\n"
"f 1 4 10 5\n"
"f 1 5 11 6\n"
"f 1 6 12 7\n"
"f 1 7 13 2\n"
"f 14 15 21 16\n"
"f 14 16 22 17\n"
"f 14 17 23 18\n"
"f 14 18 24 19\n"
"f 14 19 25 20\n"
"f 14 20 26 15\n"
"f 27 28 34 29\n"
"f 27 29 35 30\n"
"f 27 30 36 31\n"
"f 27 31 37 32\n"
"f 27 32 38 33\n"
"f 27 33 39 28\n"
"f 40 41 47 42\n"
"f 40 42 48 43\n"
"f 40 43 49 44\n"
"f 40 44 50 45\n"
"f 40 45 51 46\n"
"f 40 46 52 41\n"
"t interpolateboundary 1/0/0 1\n"
"t crease 2/1/0 0 4 10.0\n"
"t crease 2/1/0 13 15 10.0\n"
"t crease 2/1/0 13 19 10.0\n"
"t crease 2/1/0 26 28 10.0\n"
"t crease 2/1/0 26 29 10.0\n"
"t crease 2/1/0 26 31 10.0\n"
"t crease 2/1/0 39 41 10.0\n"
"t crease 2/1/0 39 44 10.0\n"
"\n"
;

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,74 @@
//
// Copyright 2015 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_nonman_bareverts =
"# 4x4 grid of quads -- 25 vertices:\n"
"v 0.00 0.00 0.00\n"
"v 0.25 0.00 0.00\n"
"v 0.50 0.00 0.00\n"
"v 0.75 0.00 0.00\n"
"v 1.00 0.00 0.00\n"
"v 0.00 0.25 0.00\n"
"v 0.25 0.25 0.20\n"
"v 0.50 0.25 0.20\n"
"v 0.75 0.25 0.20\n"
"v 1.00 0.25 0.00\n"
"v 0.00 0.50 0.00\n"
"v 0.25 0.50 0.20\n"
"v 0.50 0.50 0.30\n"
"v 0.75 0.50 0.20\n"
"v 1.00 0.50 0.00\n"
"v 0.00 0.75 0.00\n"
"v 0.25 0.75 0.20\n"
"v 0.50 0.75 0.20\n"
"v 0.75 0.75 0.20\n"
"v 1.00 0.75 0.00\n"
"v 0.00 1.00 0.00\n"
"v 0.25 1.00 0.00\n"
"v 0.50 1.00 0.00\n"
"v 0.75 1.00 0.00\n"
"v 1.00 1.00 0.00\n"
"vt 0.00 0.00\n"
"vt 0.25 0.00\n"
"vt 0.50 0.00\n"
"vt 0.75 0.00\n"
"vt 1.00 0.00\n"
"vt 0.00 0.20\n"
"vt 0.25 0.20\n"
"vt 0.50 0.10\n"
"vt 0.75 0.20\n"
"vt 1.00 0.20\n"
"vt 0.00 0.40\n"
"vt 0.25 0.40\n"
"vt 0.50 0.20\n"
"vt 0.75 0.40\n"
"vt 1.00 0.40\n"
"vt 0.00 0.60\n"
"vt 0.25 0.60\n"
"vt 0.50 0.40\n"
"vt 0.75 0.60\n"
"vt 1.00 0.60\n"
"vt 0.00 0.80\n"
"vt 0.25 0.80\n"
"vt 0.50 0.65\n"
"vt 0.75 0.80\n"
"vt 1.00 0.80\n"
"vt 0.00 1.00\n"
"vt 0.25 1.00\n"
"vt 0.40 1.00\n"
"vt 0.75 1.00\n"
"vt 1.00 1.00\n"
"vt 0.60 1.00\n"
"f 6/6 7/7 12/12 11/11\n"
"f 7/7 8/8 13/13 12/12\n"
"f 8/8 9/9 14/14 13/13\n"
"f 9/9 10/10 15/15 14/14\n"
"f 11/16 12/17 17/22 16/21\n"
"f 12/17 13/18 18/23 17/22\n"
"f 13/18 14/19 19/24 18/23\n"
"f 14/19 15/20 20/25 19/24\n"
;

View File

@@ -0,0 +1,193 @@
//
// Copyright 2024 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_nonman_creases =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.25 0.0 0.65\n"
"v -0.75 0.0 0.90\n"
"v -0.25 0.0 0.65\n"
"v -1.25 0.0 1.05\n"
"v -0.75 0.0 1.25\n"
"v -0.25 0.0 1.05\n"
"v -1.25 -0.3 0.25\n"
"v -0.75 -0.3 0.55\n"
"v -0.25 -0.3 0.25\n"
"v -1.25 0.3 0.25\n"
"v -0.75 0.3 0.55\n"
"v -0.25 0.3 0.25\n"
"\n"
"vt 0.15 0.525\n"
"vt 0.25 0.575\n"
"vt 0.35 0.525\n"
"vt 0.15 0.625\n"
"vt 0.25 0.675\n"
"vt 0.35 0.625\n"
"vt 0.15 0.675\n"
"vt 0.25 0.725\n"
"vt 0.35 0.675\n"
"vt 0.15 0.775\n"
"vt 0.25 0.825\n"
"vt 0.35 0.775\n"
"vt 0.15 0.825\n"
"vt 0.25 0.875\n"
"vt 0.35 0.825\n"
"vt 0.15 0.925\n"
"vt 0.25 0.975\n"
"vt 0.35 0.925\n"
"\n"
"f 1/1 2/2 5/5 4/4 \n"
"f 2/2 3/3 6/6 5/5 \n"
"f 2/8 1/7 7/10 8/11\n"
"f 3/9 2/8 8/11 9/12\n"
"f 1/13 2/14 11/17 10/16\n"
"f 2/14 3/15 12/18 11/17\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 0.75 0.0 0.25\n"
"v 1.00 0.0 0.50\n"
"v 1.25 0.0 0.75\n"
"v 0.50 0.0 0.50\n"
"v 0.75 0.0 0.75\n"
"v 1.00 0.0 1.00\n"
"v 0.25 0.0 0.75\n"
"v 0.50 0.0 1.00\n"
"v 0.75 0.0 1.25\n"
"v 0.50 -0.3 0.50\n"
"v 0.75 -0.3 0.75\n"
"v 1.00 -0.3 0.50\n"
"\n"
"vt 0.75 0.675\n"
"vt 0.80 0.725\n"
"vt 0.70 0.725\n"
"vt 0.75 0.775\n"
"vt 0.80 0.800\n"
"vt 0.85 0.850\n"
"vt 0.70 0.800\n"
"vt 0.75 0.850\n"
"vt 0.80 0.900\n"
"vt 0.65 0.850\n"
"vt 0.70 0.900\n"
"vt 0.75 0.950\n"
"vt 0.65 0.550\n"
"vt 0.75 0.550\n"
"vt 0.85 0.550\n"
"vt 0.65 0.625\n"
"vt 0.75 0.625\n"
"vt 0.85 0.625\n"
"\n"
"f 13/19 14/20 17/22 16/21\n"
"f 14/23 15/24 18/27 17/26\n"
"f 16/25 17/26 20/29 19/28\n"
"f 17/26 18/27 21/30 20/29\n"
"f 16/34 22/31 23/32 17/35\n"
"f 17/35 23/32 24/33 14/36\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -1.25 0.0 -0.80\n"
"v -0.75 0.0 -0.65\n"
"v -0.25 0.0 -0.80\n"
"v -1.25 0.0 -1.20\n"
"v -0.75 0.0 -1.05\n"
"v -0.25 0.0 -1.20\n"
"v -1.25 -0.3 -0.80\n"
"v -0.75 -0.3 -0.65\n"
"v -0.25 -0.3 -0.80\n"
"v -1.25 0.3 -0.80\n"
"v -0.75 0.3 -0.65\n"
"v -0.25 0.3 -0.80\n"
"v -1.05 0.0 -0.30\n"
"v -0.75 -0.3 -0.30\n"
"v -0.45 0.0 -0.30\n"
"v -0.75 0.3 -0.30\n"
"\n"
"vt 0.15 0.05\n"
"vt 0.25 0.05\n"
"vt 0.35 0.05\n"
"vt 0.15 0.10\n"
"vt 0.25 0.10\n"
"vt 0.35 0.10\n"
"vt 0.15 0.15\n"
"vt 0.25 0.15\n"
"vt 0.35 0.15\n"
"vt 0.15 0.20\n"
"vt 0.25 0.20\n"
"vt 0.35 0.20\n"
"vt 0.15 0.25\n"
"vt 0.25 0.25\n"
"vt 0.35 0.25\n"
"vt 0.25 0.35\n"
"vt 0.30 0.40\n"
"vt 0.20 0.40\n"
"vt 0.20 0.30\n"
"vt 0.30 0.30\n"
"\n"
"f 28/37 29/38 26/41 25/40\n"
"f 29/38 30/39 27/42 26/41\n"
"f 31/43 32/44 26/47 25/46\n"
"f 32/44 33/45 27/48 26/47\n"
"f 35/50 34/49 25/46 26/47\n"
"f 36/51 35/50 26/47 27/48\n"
"f 37/56 26/52 38/53\n"
"f 38/53 26/52 39/54\n"
"f 39/54 26/52 40/55\n"
"f 40/55 26/52 37/56\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 0.75 0.0 -0.60\n"
"v 0.25 -0.3 -0.60\n"
"v 0.25 0.0 -0.90\n"
"v 0.25 0.3 -0.60\n"
"v 0.25 0.0 -0.30\n"
"v 1.25 -0.3 -0.60\n"
"v 1.25 0.0 -0.90\n"
"v 1.25 0.3 -0.60\n"
"v 1.25 0.0 -0.30\n"
"v 0.25 0.0 -1.20\n"
"v 0.75 0.0 -0.90\n"
"v 1.25 0.0 -1.20\n"
"\n"
"vt 0.65 0.35\n"
"vt 0.60 0.40\n"
"vt 0.60 0.30\n"
"vt 0.70 0.30\n"
"vt 0.70 0.40\n"
"vt 0.85 0.35\n"
"vt 0.80 0.30\n"
"vt 0.90 0.30\n"
"vt 0.90 0.40\n"
"vt 0.80 0.40\n"
"vt 0.65 0.10\n"
"vt 0.75 0.15\n"
"vt 0.85 0.10\n"
"vt 0.65 0.20\n"
"vt 0.75 0.25\n"
"vt 0.85 0.20\n"
"\n"
"f 41/57 42/58 43/59\n"
"f 41/57 43/59 44/60\n"
"f 41/57 44/60 45/61\n"
"f 41/57 45/61 42/58\n"
"f 41/62 46/63 49/66\n"
"f 41/62 47/64 46/63\n"
"f 41/62 48/65 47/64\n"
"f 41/62 49/66 48/65\n"
"f 41/71 43/70 50/67 51/68\n"
"f 41/71 51/68 52/69 47/72\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,521 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_nonman_edge100 =
"#\n"
"# 100 quads arranged radially and sharing a common edge:\n"
"#\n"
"v 1.000 -0.500 0.000\n"
"v 0.998 -0.500 0.063\n"
"v 0.992 -0.500 0.125\n"
"v 0.982 -0.500 0.187\n"
"v 0.969 -0.500 0.249\n"
"v 0.951 -0.500 0.309\n"
"v 0.930 -0.500 0.368\n"
"v 0.905 -0.500 0.426\n"
"v 0.876 -0.500 0.482\n"
"v 0.844 -0.500 0.536\n"
"v 0.809 -0.500 0.588\n"
"v 0.771 -0.500 0.637\n"
"v 0.729 -0.500 0.685\n"
"v 0.685 -0.500 0.729\n"
"v 0.637 -0.500 0.771\n"
"v 0.588 -0.500 0.809\n"
"v 0.536 -0.500 0.844\n"
"v 0.482 -0.500 0.876\n"
"v 0.426 -0.500 0.905\n"
"v 0.368 -0.500 0.930\n"
"v 0.309 -0.500 0.951\n"
"v 0.249 -0.500 0.969\n"
"v 0.187 -0.500 0.982\n"
"v 0.125 -0.500 0.992\n"
"v 0.063 -0.500 0.998\n"
"v 0.000 -0.500 1.000\n"
"v -0.063 -0.500 0.998\n"
"v -0.125 -0.500 0.992\n"
"v -0.187 -0.500 0.982\n"
"v -0.249 -0.500 0.969\n"
"v -0.309 -0.500 0.951\n"
"v -0.368 -0.500 0.930\n"
"v -0.426 -0.500 0.905\n"
"v -0.482 -0.500 0.876\n"
"v -0.536 -0.500 0.844\n"
"v -0.588 -0.500 0.809\n"
"v -0.637 -0.500 0.771\n"
"v -0.685 -0.500 0.729\n"
"v -0.729 -0.500 0.685\n"
"v -0.771 -0.500 0.637\n"
"v -0.809 -0.500 0.588\n"
"v -0.844 -0.500 0.536\n"
"v -0.876 -0.500 0.482\n"
"v -0.905 -0.500 0.426\n"
"v -0.930 -0.500 0.368\n"
"v -0.951 -0.500 0.309\n"
"v -0.969 -0.500 0.249\n"
"v -0.982 -0.500 0.187\n"
"v -0.992 -0.500 0.125\n"
"v -0.998 -0.500 0.063\n"
"v -1.000 -0.500 0.000\n"
"v -0.998 -0.500 -0.063\n"
"v -0.992 -0.500 -0.125\n"
"v -0.982 -0.500 -0.187\n"
"v -0.969 -0.500 -0.249\n"
"v -0.951 -0.500 -0.309\n"
"v -0.930 -0.500 -0.368\n"
"v -0.905 -0.500 -0.426\n"
"v -0.876 -0.500 -0.482\n"
"v -0.844 -0.500 -0.536\n"
"v -0.809 -0.500 -0.588\n"
"v -0.771 -0.500 -0.637\n"
"v -0.729 -0.500 -0.685\n"
"v -0.685 -0.500 -0.729\n"
"v -0.637 -0.500 -0.771\n"
"v -0.588 -0.500 -0.809\n"
"v -0.536 -0.500 -0.844\n"
"v -0.482 -0.500 -0.876\n"
"v -0.426 -0.500 -0.905\n"
"v -0.368 -0.500 -0.930\n"
"v -0.309 -0.500 -0.951\n"
"v -0.249 -0.500 -0.969\n"
"v -0.187 -0.500 -0.982\n"
"v -0.125 -0.500 -0.992\n"
"v -0.063 -0.500 -0.998\n"
"v 0.000 -0.500 -1.000\n"
"v 0.063 -0.500 -0.998\n"
"v 0.125 -0.500 -0.992\n"
"v 0.187 -0.500 -0.982\n"
"v 0.249 -0.500 -0.969\n"
"v 0.309 -0.500 -0.951\n"
"v 0.368 -0.500 -0.930\n"
"v 0.426 -0.500 -0.905\n"
"v 0.482 -0.500 -0.876\n"
"v 0.536 -0.500 -0.844\n"
"v 0.588 -0.500 -0.809\n"
"v 0.637 -0.500 -0.771\n"
"v 0.685 -0.500 -0.729\n"
"v 0.729 -0.500 -0.685\n"
"v 0.771 -0.500 -0.637\n"
"v 0.809 -0.500 -0.588\n"
"v 0.844 -0.500 -0.536\n"
"v 0.876 -0.500 -0.482\n"
"v 0.905 -0.500 -0.426\n"
"v 0.930 -0.500 -0.368\n"
"v 0.951 -0.500 -0.309\n"
"v 0.969 -0.500 -0.249\n"
"v 0.982 -0.500 -0.187\n"
"v 0.992 -0.500 -0.125\n"
"v 0.998 -0.500 -0.063\n"
"v 1.000 0.500 0.000\n"
"v 0.998 0.500 0.063\n"
"v 0.992 0.500 0.125\n"
"v 0.982 0.500 0.187\n"
"v 0.969 0.500 0.249\n"
"v 0.951 0.500 0.309\n"
"v 0.930 0.500 0.368\n"
"v 0.905 0.500 0.426\n"
"v 0.876 0.500 0.482\n"
"v 0.844 0.500 0.536\n"
"v 0.809 0.500 0.588\n"
"v 0.771 0.500 0.637\n"
"v 0.729 0.500 0.685\n"
"v 0.685 0.500 0.729\n"
"v 0.637 0.500 0.771\n"
"v 0.588 0.500 0.809\n"
"v 0.536 0.500 0.844\n"
"v 0.482 0.500 0.876\n"
"v 0.426 0.500 0.905\n"
"v 0.368 0.500 0.930\n"
"v 0.309 0.500 0.951\n"
"v 0.249 0.500 0.969\n"
"v 0.187 0.500 0.982\n"
"v 0.125 0.500 0.992\n"
"v 0.063 0.500 0.998\n"
"v 0.000 0.500 1.000\n"
"v -0.063 0.500 0.998\n"
"v -0.125 0.500 0.992\n"
"v -0.187 0.500 0.982\n"
"v -0.249 0.500 0.969\n"
"v -0.309 0.500 0.951\n"
"v -0.368 0.500 0.930\n"
"v -0.426 0.500 0.905\n"
"v -0.482 0.500 0.876\n"
"v -0.536 0.500 0.844\n"
"v -0.588 0.500 0.809\n"
"v -0.637 0.500 0.771\n"
"v -0.685 0.500 0.729\n"
"v -0.729 0.500 0.685\n"
"v -0.771 0.500 0.637\n"
"v -0.809 0.500 0.588\n"
"v -0.844 0.500 0.536\n"
"v -0.876 0.500 0.482\n"
"v -0.905 0.500 0.426\n"
"v -0.930 0.500 0.368\n"
"v -0.951 0.500 0.309\n"
"v -0.969 0.500 0.249\n"
"v -0.982 0.500 0.187\n"
"v -0.992 0.500 0.125\n"
"v -0.998 0.500 0.063\n"
"v -1.000 0.500 0.000\n"
"v -0.998 0.500 -0.063\n"
"v -0.992 0.500 -0.125\n"
"v -0.982 0.500 -0.187\n"
"v -0.969 0.500 -0.249\n"
"v -0.951 0.500 -0.309\n"
"v -0.930 0.500 -0.368\n"
"v -0.905 0.500 -0.426\n"
"v -0.876 0.500 -0.482\n"
"v -0.844 0.500 -0.536\n"
"v -0.809 0.500 -0.588\n"
"v -0.771 0.500 -0.637\n"
"v -0.729 0.500 -0.685\n"
"v -0.685 0.500 -0.729\n"
"v -0.637 0.500 -0.771\n"
"v -0.588 0.500 -0.809\n"
"v -0.536 0.500 -0.844\n"
"v -0.482 0.500 -0.876\n"
"v -0.426 0.500 -0.905\n"
"v -0.368 0.500 -0.930\n"
"v -0.309 0.500 -0.951\n"
"v -0.249 0.500 -0.969\n"
"v -0.187 0.500 -0.982\n"
"v -0.125 0.500 -0.992\n"
"v -0.063 0.500 -0.998\n"
"v 0.000 0.500 -1.000\n"
"v 0.063 0.500 -0.998\n"
"v 0.125 0.500 -0.992\n"
"v 0.187 0.500 -0.982\n"
"v 0.249 0.500 -0.969\n"
"v 0.309 0.500 -0.951\n"
"v 0.368 0.500 -0.930\n"
"v 0.426 0.500 -0.905\n"
"v 0.482 0.500 -0.876\n"
"v 0.536 0.500 -0.844\n"
"v 0.588 0.500 -0.809\n"
"v 0.637 0.500 -0.771\n"
"v 0.685 0.500 -0.729\n"
"v 0.729 0.500 -0.685\n"
"v 0.771 0.500 -0.637\n"
"v 0.809 0.500 -0.588\n"
"v 0.844 0.500 -0.536\n"
"v 0.876 0.500 -0.482\n"
"v 0.905 0.500 -0.426\n"
"v 0.930 0.500 -0.368\n"
"v 0.951 0.500 -0.309\n"
"v 0.969 0.500 -0.249\n"
"v 0.982 0.500 -0.187\n"
"v 0.992 0.500 -0.125\n"
"v 0.998 0.500 -0.063\n"
"v 0.000 -0.500 0.000\n"
"v 0.000 0.500 0.000\n"
"\n"
"vt 1.000 0.500\n"
"vt 0.999 0.531\n"
"vt 0.996 0.563\n"
"vt 0.991 0.594\n"
"vt 0.984 0.624\n"
"vt 0.976 0.655\n"
"vt 0.965 0.684\n"
"vt 0.952 0.713\n"
"vt 0.938 0.741\n"
"vt 0.922 0.768\n"
"vt 0.905 0.794\n"
"vt 0.885 0.819\n"
"vt 0.864 0.842\n"
"vt 0.842 0.864\n"
"vt 0.819 0.885\n"
"vt 0.794 0.905\n"
"vt 0.768 0.922\n"
"vt 0.741 0.938\n"
"vt 0.713 0.952\n"
"vt 0.684 0.965\n"
"vt 0.655 0.976\n"
"vt 0.624 0.984\n"
"vt 0.594 0.991\n"
"vt 0.563 0.996\n"
"vt 0.531 0.999\n"
"vt 0.500 1.000\n"
"vt 0.469 0.999\n"
"vt 0.437 0.996\n"
"vt 0.406 0.991\n"
"vt 0.376 0.984\n"
"vt 0.345 0.976\n"
"vt 0.316 0.965\n"
"vt 0.287 0.952\n"
"vt 0.259 0.938\n"
"vt 0.232 0.922\n"
"vt 0.206 0.905\n"
"vt 0.181 0.885\n"
"vt 0.158 0.864\n"
"vt 0.136 0.842\n"
"vt 0.115 0.819\n"
"vt 0.095 0.794\n"
"vt 0.078 0.768\n"
"vt 0.062 0.741\n"
"vt 0.048 0.713\n"
"vt 0.035 0.684\n"
"vt 0.024 0.655\n"
"vt 0.016 0.624\n"
"vt 0.009 0.594\n"
"vt 0.004 0.563\n"
"vt 0.001 0.531\n"
"vt 0.000 0.500\n"
"vt 0.001 0.469\n"
"vt 0.004 0.437\n"
"vt 0.009 0.406\n"
"vt 0.016 0.376\n"
"vt 0.024 0.345\n"
"vt 0.035 0.316\n"
"vt 0.048 0.287\n"
"vt 0.062 0.259\n"
"vt 0.078 0.232\n"
"vt 0.095 0.206\n"
"vt 0.115 0.181\n"
"vt 0.136 0.158\n"
"vt 0.158 0.136\n"
"vt 0.181 0.115\n"
"vt 0.206 0.095\n"
"vt 0.232 0.078\n"
"vt 0.259 0.062\n"
"vt 0.287 0.048\n"
"vt 0.316 0.035\n"
"vt 0.345 0.024\n"
"vt 0.376 0.016\n"
"vt 0.406 0.009\n"
"vt 0.437 0.004\n"
"vt 0.469 0.001\n"
"vt 0.500 0.000\n"
"vt 0.531 0.001\n"
"vt 0.563 0.004\n"
"vt 0.594 0.009\n"
"vt 0.624 0.016\n"
"vt 0.655 0.024\n"
"vt 0.684 0.035\n"
"vt 0.713 0.048\n"
"vt 0.741 0.062\n"
"vt 0.768 0.078\n"
"vt 0.794 0.095\n"
"vt 0.819 0.115\n"
"vt 0.842 0.136\n"
"vt 0.864 0.158\n"
"vt 0.885 0.181\n"
"vt 0.905 0.206\n"
"vt 0.922 0.232\n"
"vt 0.938 0.259\n"
"vt 0.952 0.287\n"
"vt 0.965 0.316\n"
"vt 0.976 0.345\n"
"vt 0.984 0.376\n"
"vt 0.991 0.406\n"
"vt 0.996 0.437\n"
"vt 0.999 0.469\n"
"vt 1.000 0.500\n"
"vt 0.999 0.531\n"
"vt 0.996 0.563\n"
"vt 0.991 0.594\n"
"vt 0.984 0.624\n"
"vt 0.976 0.655\n"
"vt 0.965 0.684\n"
"vt 0.952 0.713\n"
"vt 0.938 0.741\n"
"vt 0.922 0.768\n"
"vt 0.905 0.794\n"
"vt 0.885 0.819\n"
"vt 0.864 0.842\n"
"vt 0.842 0.864\n"
"vt 0.819 0.885\n"
"vt 0.794 0.905\n"
"vt 0.768 0.922\n"
"vt 0.741 0.938\n"
"vt 0.713 0.952\n"
"vt 0.684 0.965\n"
"vt 0.655 0.976\n"
"vt 0.624 0.984\n"
"vt 0.594 0.991\n"
"vt 0.563 0.996\n"
"vt 0.531 0.999\n"
"vt 0.500 1.000\n"
"vt 0.469 0.999\n"
"vt 0.437 0.996\n"
"vt 0.406 0.991\n"
"vt 0.376 0.984\n"
"vt 0.345 0.976\n"
"vt 0.316 0.965\n"
"vt 0.287 0.952\n"
"vt 0.259 0.938\n"
"vt 0.232 0.922\n"
"vt 0.206 0.905\n"
"vt 0.181 0.885\n"
"vt 0.158 0.864\n"
"vt 0.136 0.842\n"
"vt 0.115 0.819\n"
"vt 0.095 0.794\n"
"vt 0.078 0.768\n"
"vt 0.062 0.741\n"
"vt 0.048 0.713\n"
"vt 0.035 0.684\n"
"vt 0.024 0.655\n"
"vt 0.016 0.624\n"
"vt 0.009 0.594\n"
"vt 0.004 0.563\n"
"vt 0.001 0.531\n"
"vt 0.000 0.500\n"
"vt 0.001 0.469\n"
"vt 0.004 0.437\n"
"vt 0.009 0.406\n"
"vt 0.016 0.376\n"
"vt 0.024 0.345\n"
"vt 0.035 0.316\n"
"vt 0.048 0.287\n"
"vt 0.062 0.259\n"
"vt 0.078 0.232\n"
"vt 0.095 0.206\n"
"vt 0.115 0.181\n"
"vt 0.136 0.158\n"
"vt 0.158 0.136\n"
"vt 0.181 0.115\n"
"vt 0.206 0.095\n"
"vt 0.232 0.078\n"
"vt 0.259 0.062\n"
"vt 0.287 0.048\n"
"vt 0.316 0.035\n"
"vt 0.345 0.024\n"
"vt 0.376 0.016\n"
"vt 0.406 0.009\n"
"vt 0.437 0.004\n"
"vt 0.469 0.001\n"
"vt 0.500 0.000\n"
"vt 0.531 0.001\n"
"vt 0.563 0.004\n"
"vt 0.594 0.009\n"
"vt 0.624 0.016\n"
"vt 0.655 0.024\n"
"vt 0.684 0.035\n"
"vt 0.713 0.048\n"
"vt 0.741 0.062\n"
"vt 0.768 0.078\n"
"vt 0.794 0.095\n"
"vt 0.819 0.115\n"
"vt 0.842 0.136\n"
"vt 0.864 0.158\n"
"vt 0.885 0.181\n"
"vt 0.905 0.206\n"
"vt 0.922 0.232\n"
"vt 0.938 0.259\n"
"vt 0.952 0.287\n"
"vt 0.965 0.316\n"
"vt 0.976 0.345\n"
"vt 0.984 0.376\n"
"vt 0.991 0.406\n"
"vt 0.996 0.437\n"
"vt 0.999 0.469\n"
"vt 0.500 0.500\n"
"vt 0.500 0.500\n"
"\n"
"f 101/101 1/1 201/201 202/202\n"
"f 102/102 2/2 201/201 202/202\n"
"f 103/103 3/3 201/201 202/202\n"
"f 104/104 4/4 201/201 202/202\n"
"f 105/105 5/5 201/201 202/202\n"
"f 106/106 6/6 201/201 202/202\n"
"f 107/107 7/7 201/201 202/202\n"
"f 108/108 8/8 201/201 202/202\n"
"f 109/109 9/9 201/201 202/202\n"
"f 110/110 10/10 201/201 202/202\n"
"f 111/111 11/11 201/201 202/202\n"
"f 112/112 12/12 201/201 202/202\n"
"f 113/113 13/13 201/201 202/202\n"
"f 114/114 14/14 201/201 202/202\n"
"f 115/115 15/15 201/201 202/202\n"
"f 116/116 16/16 201/201 202/202\n"
"f 117/117 17/17 201/201 202/202\n"
"f 118/118 18/18 201/201 202/202\n"
"f 119/119 19/19 201/201 202/202\n"
"f 120/120 20/20 201/201 202/202\n"
"f 121/121 21/21 201/201 202/202\n"
"f 122/122 22/22 201/201 202/202\n"
"f 123/123 23/23 201/201 202/202\n"
"f 124/124 24/24 201/201 202/202\n"
"f 125/125 25/25 201/201 202/202\n"
"f 126/126 26/26 201/201 202/202\n"
"f 127/127 27/27 201/201 202/202\n"
"f 128/128 28/28 201/201 202/202\n"
"f 129/129 29/29 201/201 202/202\n"
"f 130/130 30/30 201/201 202/202\n"
"f 131/131 31/31 201/201 202/202\n"
"f 132/132 32/32 201/201 202/202\n"
"f 133/133 33/33 201/201 202/202\n"
"f 134/134 34/34 201/201 202/202\n"
"f 135/135 35/35 201/201 202/202\n"
"f 136/136 36/36 201/201 202/202\n"
"f 137/137 37/37 201/201 202/202\n"
"f 138/138 38/38 201/201 202/202\n"
"f 139/139 39/39 201/201 202/202\n"
"f 140/140 40/40 201/201 202/202\n"
"f 141/141 41/41 201/201 202/202\n"
"f 142/142 42/42 201/201 202/202\n"
"f 143/143 43/43 201/201 202/202\n"
"f 144/144 44/44 201/201 202/202\n"
"f 145/145 45/45 201/201 202/202\n"
"f 146/146 46/46 201/201 202/202\n"
"f 147/147 47/47 201/201 202/202\n"
"f 148/148 48/48 201/201 202/202\n"
"f 149/149 49/49 201/201 202/202\n"
"f 150/150 50/50 201/201 202/202\n"
"f 151/151 51/51 201/201 202/202\n"
"f 152/152 52/52 201/201 202/202\n"
"f 153/153 53/53 201/201 202/202\n"
"f 154/154 54/54 201/201 202/202\n"
"f 155/155 55/55 201/201 202/202\n"
"f 156/156 56/56 201/201 202/202\n"
"f 157/157 57/57 201/201 202/202\n"
"f 158/158 58/58 201/201 202/202\n"
"f 159/159 59/59 201/201 202/202\n"
"f 160/160 60/60 201/201 202/202\n"
"f 161/161 61/61 201/201 202/202\n"
"f 162/162 62/62 201/201 202/202\n"
"f 163/163 63/63 201/201 202/202\n"
"f 164/164 64/64 201/201 202/202\n"
"f 165/165 65/65 201/201 202/202\n"
"f 166/166 66/66 201/201 202/202\n"
"f 167/167 67/67 201/201 202/202\n"
"f 168/168 68/68 201/201 202/202\n"
"f 169/169 69/69 201/201 202/202\n"
"f 170/170 70/70 201/201 202/202\n"
"f 171/171 71/71 201/201 202/202\n"
"f 172/172 72/72 201/201 202/202\n"
"f 173/173 73/73 201/201 202/202\n"
"f 174/174 74/74 201/201 202/202\n"
"f 175/175 75/75 201/201 202/202\n"
"f 176/176 76/76 201/201 202/202\n"
"f 177/177 77/77 201/201 202/202\n"
"f 178/178 78/78 201/201 202/202\n"
"f 179/179 79/79 201/201 202/202\n"
"f 180/180 80/80 201/201 202/202\n"
"f 181/181 81/81 201/201 202/202\n"
"f 182/182 82/82 201/201 202/202\n"
"f 183/183 83/83 201/201 202/202\n"
"f 184/184 84/84 201/201 202/202\n"
"f 185/185 85/85 201/201 202/202\n"
"f 186/186 86/86 201/201 202/202\n"
"f 187/187 87/87 201/201 202/202\n"
"f 188/188 88/88 201/201 202/202\n"
"f 189/189 89/89 201/201 202/202\n"
"f 190/190 90/90 201/201 202/202\n"
"f 191/191 91/91 201/201 202/202\n"
"f 192/192 92/92 201/201 202/202\n"
"f 193/193 93/93 201/201 202/202\n"
"f 194/194 94/94 201/201 202/202\n"
"f 195/195 95/95 201/201 202/202\n"
"f 196/196 96/96 201/201 202/202\n"
"f 197/197 97/97 201/201 202/202\n"
"f 198/198 98/98 201/201 202/202\n"
"f 199/199 99/99 201/201 202/202\n"
"f 200/200 100/100 201/201 202/202\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,459 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_nonman_edges =
"#\n"
"# Nine shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.25 0.00 1.58\n"
"v -1.42 0.00 1.42\n"
"v -1.08 0.00 1.42\n"
"v -1.58 0.00 1.25\n"
"v -0.92 0.00 1.25\n"
"v -1.75 0.00 1.08\n"
"v -0.75 0.00 1.08\n"
"v -1.58 0.00 0.92\n"
"v -1.42 0.00 1.08\n"
"v -1.25 0.00 1.25\n"
"v -1.08 0.00 1.08\n"
"v -0.92 0.00 0.92\n"
"v -1.58 0.17 0.92\n"
"v -1.42 0.17 1.08\n"
"v -1.25 0.17 1.25\n"
"v -1.08 0.17 1.08\n"
"v -0.92 0.17 0.92\n"
"v -1.58 -0.17 0.92\n"
"v -1.42 -0.17 1.08\n"
"v -1.25 -0.17 1.25\n"
"v -1.08 -0.17 1.08\n"
"v -0.92 -0.17 0.92\n"
"\n"
"vt 0.05 0.83\n"
"vt 0.05 0.78\n"
"vt 0.10 0.83\n"
"vt 0.05 0.73\n"
"vt 0.15 0.83\n"
"vt 0.05 0.68\n"
"vt 0.20 0.83\n"
"vt 0.10 0.68\n"
"vt 0.10 0.73\n"
"vt 0.10 0.78\n"
"vt 0.15 0.78\n"
"vt 0.20 0.78\n"
"vt 0.05 0.88\n"
"vt 0.10 0.88\n"
"vt 0.15 0.88\n"
"vt 0.20 0.88\n"
"vt 0.25 0.88\n"
"vt 0.05 0.93\n"
"vt 0.10 0.93\n"
"vt 0.15 0.93\n"
"vt 0.20 0.93\n"
"vt 0.25 0.93\n"
"vt 0.05 0.98\n"
"vt 0.10 0.98\n"
"vt 0.15 0.98\n"
"vt 0.20 0.98\n"
"vt 0.25 0.98\n"
"\n"
"f 1/1 2/2 10/10 3/3 \n"
"f 2/2 4/4 9/9 10/10\n"
"f 4/4 6/6 8/8 9/9 \n"
"f 5/5 3/3 10/10 11/11\n"
"f 7/7 5/5 11/11 12/12\n"
"f 8/18 9/19 14/24 13/23\n"
"f 9/19 10/20 15/25 14/24\n"
"f 10/20 11/21 16/26 15/25\n"
"f 11/21 12/22 17/27 16/26\n"
"f 9/19 8/18 18/13 19/14\n"
"f 10/20 9/19 19/14 20/15\n"
"f 11/21 10/20 20/15 21/16\n"
"f 12/22 11/21 21/16 22/17\n"
"\n"
"#\n"
"# Shape 2: top-middle\n"
"#\n"
"v -0.50 0.00 0.75\n"
"v -0.17 0.00 0.75\n"
"v 0.17 0.00 0.75\n"
"v 0.50 0.00 0.75\n"
"v 0.50 0.00 1.08\n"
"v 0.50 0.00 1.42\n"
"v 0.50 0.00 1.75\n"
"v 0.17 0.00 1.75\n"
"v -0.17 0.00 1.75\n"
"v -0.50 0.00 1.75\n"
"v -0.50 0.00 1.42\n"
"v -0.50 0.00 1.08\n"
"v -0.17 -0.30 1.08\n"
"v 0.17 -0.30 1.08\n"
"v 0.17 -0.30 1.42\n"
"v -0.17 -0.30 1.42\n"
"v 0.00 -0.60 1.25\n"
"\n"
"vt 0.38 0.69\n"
"vt 0.46 0.69\n"
"vt 0.54 0.69\n"
"vt 0.62 0.69\n"
"vt 0.62 0.77\n"
"vt 0.62 0.85\n"
"vt 0.62 0.93\n"
"vt 0.54 0.93\n"
"vt 0.46 0.93\n"
"vt 0.38 0.93\n"
"vt 0.38 0.85\n"
"vt 0.38 0.77\n"
"vt 0.46 0.77\n"
"vt 0.54 0.77\n"
"vt 0.54 0.85\n"
"vt 0.46 0.85\n"
"vt 0.50 0.99\n"
"vt 0.48 0.95\n"
"vt 0.52 0.95\n"
"\n"
"f 23/28 24/29 35/40 34/39\n"
"f 24/29 25/30 36/41 35/40\n"
"f 25/30 26/31 27/32 36/41\n"
"f 36/41 27/32 28/33 37/42\n"
"f 37/42 28/33 29/34 30/35\n"
"f 38/43 37/42 30/35 31/36\n"
"f 33/38 38/43 31/36 32/37\n"
"f 34/39 35/40 38/43 33/38\n"
"f 35/40 36/41 37/42 38/43\n"
"\n"
"f 35/45 36/46 39/44\n"
"\n"
"#\n"
"# Shape 3: top-right\n"
"#\n"
"v 0.75 0.00 0.75\n"
"v 1.08 0.00 0.75\n"
"v 1.42 0.00 0.75\n"
"v 1.75 0.00 0.75\n"
"v 1.75 0.00 1.08\n"
"v 1.75 0.00 1.42\n"
"v 1.75 0.00 1.75\n"
"v 1.42 0.00 1.75\n"
"v 1.08 0.00 1.75\n"
"v 0.75 0.00 1.75\n"
"v 0.75 0.00 1.42\n"
"v 0.75 0.00 1.08\n"
"v 1.25 -0.30 1.08\n"
"v 1.42 -0.30 1.42\n"
"v 1.08 -0.30 1.42\n"
"\n"
"vt 0.68 0.68\n"
"vt 0.78 0.68\n"
"vt 0.88 0.68\n"
"vt 0.98 0.68\n"
"vt 0.98 0.78\n"
"vt 0.98 0.88\n"
"vt 0.98 0.98\n"
"vt 0.88 0.98\n"
"vt 0.78 0.98\n"
"vt 0.68 0.98\n"
"vt 0.68 0.88\n"
"vt 0.68 0.78\n"
"vt 0.78 0.78\n"
"vt 0.88 0.78\n"
"vt 0.88 0.88\n"
"vt 0.78 0.88\n"
"\n"
"f 40/47 41/48 52/59 51/58\n"
"f 41/48 42/49 52/60 52/59\n"
"f 42/49 43/50 44/51 52/60\n"
"f 52/60 44/51 45/52 53/61\n"
"f 53/61 45/52 46/53 47/54\n"
"f 54/62 53/61 47/54 48/55\n"
"f 50/57 54/62 48/55 49/56\n"
"f 51/58 52/59 54/62 50/57\n"
"\n"
"f 52/59 52/60 53/61 54/62\n"
"\n"
"#\n"
"# Shape 4: center-left\n"
"#\n"
"v -1.75 0.00 -0.50\n"
"v -1.42 0.00 -0.50\n"
"v -1.08 0.00 -0.50\n"
"v -0.75 0.00 -0.50\n"
"v -0.75 0.00 -0.17\n"
"v -0.75 0.00 0.17\n"
"v -0.75 0.00 0.50\n"
"v -1.08 0.00 0.50\n"
"v -1.42 0.00 0.50\n"
"v -1.75 0.00 0.50\n"
"v -1.75 0.00 0.17\n"
"v -1.75 0.00 -0.17\n"
"v -1.25 -0.30 -0.17\n"
"v -1.25 -0.30 0.17\n"
"\n"
"vt 0.02 0.35\n"
"vt 0.12 0.35\n"
"vt 0.22 0.35\n"
"vt 0.32 0.35\n"
"vt 0.32 0.45\n"
"vt 0.32 0.55\n"
"vt 0.32 0.65\n"
"vt 0.22 0.65\n"
"vt 0.12 0.65\n"
"vt 0.02 0.65\n"
"vt 0.02 0.55\n"
"vt 0.02 0.45\n"
"vt 0.12 0.45\n"
"vt 0.22 0.45\n"
"vt 0.22 0.55\n"
"vt 0.12 0.55\n"
"\n"
"f 55/63 56/64 67/75 66/74\n"
"f 56/64 57/65 67/76 67/75\n"
"f 57/65 58/66 59/67 67/76\n"
"f 67/76 59/67 60/68 68/77\n"
"f 68/77 60/68 61/69 62/70\n"
"f 68/78 68/77 62/70 63/71\n"
"f 65/73 68/78 63/71 64/72\n"
"f 66/74 67/75 68/78 65/73\n"
"\n"
"f 67/75 67/76 68/77 68/78\n"
"\n"
"#\n"
"# Shape 5: center-middle\n"
"#\n"
"v -0.50 0.00 -0.50\n"
"v -0.17 0.00 -0.50\n"
"v 0.17 0.00 -0.50\n"
"v 0.50 0.00 -0.50\n"
"v 0.50 0.00 -0.17\n"
"v 0.50 0.00 0.17\n"
"v 0.50 0.00 0.50\n"
"v 0.17 0.00 0.50\n"
"v -0.17 0.00 0.50\n"
"v -0.50 0.00 0.50\n"
"v -0.50 0.00 0.17\n"
"v -0.50 0.00 -0.17\n"
"v 0.00 -0.30 -0.17\n"
"v -0.17 -0.30 0.17\n"
"\n"
"vt 0.35 0.35\n"
"vt 0.45 0.35\n"
"vt 0.55 0.35\n"
"vt 0.65 0.35\n"
"vt 0.65 0.45\n"
"vt 0.65 0.55\n"
"vt 0.65 0.65\n"
"vt 0.55 0.65\n"
"vt 0.45 0.65\n"
"vt 0.35 0.65\n"
"vt 0.35 0.55\n"
"vt 0.35 0.45\n"
"vt 0.45 0.45\n"
"vt 0.55 0.45\n"
"vt 0.55 0.55\n"
"vt 0.45 0.55\n"
"\n"
"f 69/79 70/80 81/91 80/90\n"
"f 70/80 71/81 81/92 81/91\n"
"f 71/81 72/82 73/83 81/92\n"
"f 81/92 73/83 74/84 81/93\n"
"f 81/93 74/84 75/85 76/86\n"
"f 82/94 81/93 76/86 77/87\n"
"f 79/89 82/94 77/87 78/88\n"
"f 80/90 81/91 82/94 79/89\n"
"\n"
"f 81/91 81/92 81/93 82/94\n"
"\n"
"#\n"
"# Shape 6: center-right\n"
"#\n"
"v 0.75 0.00 -0.50\n"
"v 1.08 0.00 -0.50\n"
"v 1.42 0.00 -0.50\n"
"v 1.75 0.00 -0.50\n"
"v 1.75 0.00 -0.17\n"
"v 1.75 0.00 0.17\n"
"v 1.75 0.00 0.50\n"
"v 1.42 0.00 0.50\n"
"v 1.08 0.00 0.50\n"
"v 0.75 0.00 0.50\n"
"v 0.75 0.00 0.17\n"
"v 0.75 0.00 -0.17\n"
"v 1.25 -0.40 0.00\n"
"v 1.42 -0.20 -0.17\n"
"v 1.08 -0.20 0.17\n"
"\n"
"vt 0.68 0.35\n"
"vt 0.78 0.35\n"
"vt 0.88 0.35\n"
"vt 0.98 0.35\n"
"vt 0.98 0.45\n"
"vt 0.98 0.55\n"
"vt 0.98 0.65\n"
"vt 0.88 0.65\n"
"vt 0.78 0.65\n"
"vt 0.68 0.65\n"
"vt 0.68 0.55\n"
"vt 0.68 0.45\n"
"vt 0.78 0.45\n"
"vt 0.88 0.45\n"
"vt 0.88 0.55\n"
"vt 0.78 0.55\n"
"\n"
"f 83/95 84/96 95/107 94/106\n"
"f 84/96 85/97 96/108 95/107\n"
"f 85/97 86/98 87/99 96/108\n"
"f 96/108 87/99 88/100 95/109\n"
"f 95/109 88/100 89/101 90/102\n"
"f 97/110 95/109 90/102 91/103\n"
"f 93/105 97/110 91/103 92/104\n"
"f 94/106 95/107 97/110 93/105\n"
"\n"
"f 95/107 96/108 95/109 97/110\n"
"\n"
"#\n"
"# Shape 7: bottom-left\n"
"#\n"
"v -1.75 0.00 -1.75\n"
"v -1.42 0.00 -1.75\n"
"v -1.08 0.00 -1.75\n"
"v -0.75 0.00 -1.75\n"
"v -0.75 0.00 -1.42\n"
"v -0.75 0.00 -1.08\n"
"v -0.75 0.00 -0.75\n"
"v -1.08 0.00 -0.75\n"
"v -1.42 0.00 -0.75\n"
"v -1.75 0.00 -0.75\n"
"v -1.75 0.00 -1.08\n"
"v -1.75 0.00 -1.42\n"
"v -1.25 -0.30 -1.25\n"
"\n"
"vt 0.02 0.02\n"
"vt 0.12 0.02\n"
"vt 0.22 0.02\n"
"vt 0.32 0.02\n"
"vt 0.32 0.12\n"
"vt 0.32 0.22\n"
"vt 0.32 0.32\n"
"vt 0.22 0.32\n"
"vt 0.12 0.32\n"
"vt 0.02 0.32\n"
"vt 0.02 0.22\n"
"vt 0.02 0.12\n"
"vt 0.12 0.12\n"
"vt 0.22 0.12\n"
"vt 0.22 0.22\n"
"vt 0.12 0.22\n"
"\n"
"f 98/111 99/112 110/123 109/122\n"
"f 99/112 100/113 110/124 110/123\n"
"f 100/113 101/114 102/115 110/124\n"
"f 110/124 102/115 103/116 110/125\n"
"f 110/125 103/116 104/117 105/118\n"
"f 110/126 110/125 105/118 106/119\n"
"f 108/121 110/126 106/119 107/120\n"
"f 109/122 110/123 110/126 108/121\n"
"\n"
"f 110/123 110/124 110/125 110/126\n"
"\n"
"#\n"
"# Shape 8: bottom-middle\n"
"#\n"
"v -0.50 0.00 -1.75\n"
"v -0.17 0.00 -1.75\n"
"v 0.17 0.00 -1.75\n"
"v 0.50 0.00 -1.75\n"
"v 0.50 0.00 -1.42\n"
"v 0.50 0.00 -1.08\n"
"v 0.50 0.00 -0.75\n"
"v 0.17 0.00 -0.75\n"
"v -0.17 0.00 -0.75\n"
"v -0.50 0.00 -0.75\n"
"v -0.50 0.00 -1.08\n"
"v -0.50 0.00 -1.42\n"
"v -0.17 -0.30 -1.42\n"
"v 0.17 -0.30 -1.42\n"
"v 0.17 -0.30 -1.08\n"
"v -0.17 -0.30 -1.08\n"
"\n"
"vt 0.35 0.02\n"
"vt 0.45 0.02\n"
"vt 0.55 0.02\n"
"vt 0.65 0.02\n"
"vt 0.65 0.12\n"
"vt 0.65 0.22\n"
"vt 0.65 0.32\n"
"vt 0.55 0.32\n"
"vt 0.45 0.32\n"
"vt 0.35 0.32\n"
"vt 0.35 0.22\n"
"vt 0.35 0.12\n"
"vt 0.45 0.12\n"
"vt 0.55 0.12\n"
"vt 0.55 0.22\n"
"vt 0.45 0.22\n"
"\n"
"f 111/127 112/128 123/139 122/138\n"
"f 112/128 113/129 124/140 123/139\n"
"f 113/129 114/130 115/131 124/140\n"
"f 124/140 115/131 116/132 125/141\n"
"f 125/141 116/132 117/133 118/134\n"
"f 126/142 125/141 118/134 119/135\n"
"f 121/137 126/142 119/135 120/136\n"
"f 122/138 123/139 126/142 121/137\n"
"\n"
"f 126/142 125/141 124/140 123/139\n"
"\n"
"#\n"
"# Shape 9: bottom-right\n"
"#\n"
"v 1.2500 -0.5000 -1.45\n"
"v 1.6035 -0.3535 -1.45\n"
"v 1.7500 0.0000 -1.45\n"
"v 1.6035 0.3535 -1.45\n"
"v 1.2500 0.5000 -1.45\n"
"v 0.8965 0.3535 -1.45\n"
"v 0.7500 0.0000 -1.45\n"
"v 0.8965 -0.3535 -1.45\n"
"v 1.2500 -0.5000 -1.05\n"
"v 1.6035 -0.3535 -1.05\n"
"v 1.7500 0.0000 -1.05\n"
"v 1.6035 0.3535 -1.05\n"
"v 1.2500 0.5000 -1.05\n"
"v 0.8965 0.3535 -1.05\n"
"v 0.7500 0.0000 -1.05\n"
"v 0.8965 -0.3535 -1.05\n"
"\n"
"vt 0.8300 0.0450\n"
"vt 0.9184 0.0816\n"
"vt 0.9550 0.1700\n"
"vt 0.9184 0.2584\n"
"vt 0.8300 0.2950\n"
"vt 0.7416 0.2584\n"
"vt 0.7050 0.1700\n"
"vt 0.7416 0.0816\n"
"vt 0.8300 0.1075\n"
"vt 0.8742 0.1258\n"
"vt 0.8925 0.1700\n"
"vt 0.8742 0.2142\n"
"vt 0.8300 0.2325\n"
"vt 0.7858 0.2142\n"
"vt 0.7675 0.1700\n"
"vt 0.7858 0.1258\n"
"\n"
"f 127/143 135/151 136/152 128/144\n"
"f 128/144 136/152 137/153 129/145\n"
"f 129/145 137/153 138/154 130/146\n"
"f 130/146 138/154 139/155 131/147\n"
"f 131/147 132/148 140/156 139/155\n"
"f 132/148 133/149 141/157 140/156\n"
"f 133/149 134/150 142/158 141/157\n"
"f 134/150 127/143 135/151 142/158\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,267 @@
//
// Copyright 2015 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_nonman_quadpole64 =
"v 0.7811 -0.7836 -0.0769\n"
"v 0.7849 -0.7836 0.0000\n"
"v 0.2616 -1.0000 0.0000\n"
"v 0.2604 -1.0000 -0.0256\n"
"v 0.0000 -1.0000 0.0000\n"
"v 0.7811 -0.7836 0.0769\n"
"v 0.2604 -1.0000 0.0256\n"
"v 0.7698 -0.7836 0.1531\n"
"v 0.2566 -1.0000 0.0510\n"
"v 0.7511 -0.7836 0.2278\n"
"v 0.2504 -1.0000 0.0760\n"
"v 0.7251 -0.7836 0.3004\n"
"v 0.2417 -1.0000 0.1001\n"
"v 0.6922 -0.7836 0.3700\n"
"v 0.2307 -1.0000 0.1233\n"
"v 0.6526 -0.7836 0.4361\n"
"v 0.2175 -1.0000 0.1454\n"
"v 0.6067 -0.7836 0.4979\n"
"v 0.2022 -1.0000 0.1660\n"
"v 0.5550 -0.7836 0.5550\n"
"v 0.1850 -1.0000 0.1850\n"
"v 0.4979 -0.7836 0.6067\n"
"v 0.1660 -1.0000 0.2022\n"
"v 0.4361 -0.7836 0.6526\n"
"v 0.1454 -1.0000 0.2175\n"
"v 0.3700 -0.7836 0.6922\n"
"v 0.1233 -1.0000 0.2307\n"
"v 0.3004 -0.7836 0.7251\n"
"v 0.1001 -1.0000 0.2417\n"
"v 0.2278 -0.7836 0.7511\n"
"v 0.0760 -1.0000 0.2504\n"
"v 0.1531 -0.7836 0.7698\n"
"v 0.0510 -1.0000 0.2566\n"
"v 0.0769 -0.7836 0.7811\n"
"v 0.0256 -1.0000 0.2604\n"
"v 0.0000 -0.7836 0.7849\n"
"v 0.0000 -1.0000 0.2616\n"
"v -0.0769 -0.7836 0.7811\n"
"v -0.0256 -1.0000 0.2604\n"
"v -0.1531 -0.7836 0.7698\n"
"v -0.0510 -1.0000 0.2566\n"
"v -0.2278 -0.7836 0.7511\n"
"v -0.0760 -1.0000 0.2504\n"
"v -0.3004 -0.7836 0.7251\n"
"v -0.1001 -1.0000 0.2417\n"
"v -0.3700 -0.7836 0.6922\n"
"v -0.1233 -1.0000 0.2307\n"
"v -0.4361 -0.7836 0.6526\n"
"v -0.1454 -1.0000 0.2175\n"
"v -0.4979 -0.7836 0.6067\n"
"v -0.1660 -1.0000 0.2022\n"
"v -0.5550 -0.7836 0.5550\n"
"v -0.1850 -1.0000 0.1850\n"
"v -0.6067 -0.7836 0.4979\n"
"v -0.2022 -1.0000 0.1660\n"
"v -0.6526 -0.7836 0.4361\n"
"v -0.2175 -1.0000 0.1454\n"
"v -0.6922 -0.7836 0.3700\n"
"v -0.2307 -1.0000 0.1233\n"
"v -0.7251 -0.7836 0.3004\n"
"v -0.2417 -1.0000 0.1001\n"
"v -0.7511 -0.7836 0.2278\n"
"v -0.2504 -1.0000 0.0760\n"
"v -0.7698 -0.7836 0.1531\n"
"v -0.2566 -1.0000 0.0510\n"
"v -0.7811 -0.7836 0.0769\n"
"v -0.2604 -1.0000 0.0256\n"
"v -0.7849 -0.7836 0.0000\n"
"v -0.2616 -1.0000 0.0000\n"
"v -0.7811 -0.7836 -0.0769\n"
"v -0.2604 -1.0000 -0.0256\n"
"v -0.7698 -0.7836 -0.1531\n"
"v -0.2566 -1.0000 -0.0510\n"
"v -0.7511 -0.7836 -0.2278\n"
"v -0.2504 -1.0000 -0.0759\n"
"v -0.7251 -0.7836 -0.3004\n"
"v -0.2417 -1.0000 -0.1001\n"
"v -0.6922 -0.7836 -0.3700\n"
"v -0.2307 -1.0000 -0.1233\n"
"v -0.6526 -0.7836 -0.4361\n"
"v -0.2175 -1.0000 -0.1454\n"
"v -0.6067 -0.7836 -0.4979\n"
"v -0.2022 -1.0000 -0.1660\n"
"v -0.5550 -0.7836 -0.5550\n"
"v -0.1850 -1.0000 -0.1850\n"
"v -0.4979 -0.7836 -0.6067\n"
"v -0.1660 -1.0000 -0.2022\n"
"v -0.4361 -0.7836 -0.6526\n"
"v -0.1454 -1.0000 -0.2175\n"
"v -0.3700 -0.7836 -0.6922\n"
"v -0.1233 -1.0000 -0.2307\n"
"v -0.3004 -0.7836 -0.7251\n"
"v -0.1001 -1.0000 -0.2417\n"
"v -0.2278 -0.7836 -0.7511\n"
"v -0.0760 -1.0000 -0.2504\n"
"v -0.1531 -0.7836 -0.7698\n"
"v -0.0510 -1.0000 -0.2566\n"
"v -0.0769 -0.7836 -0.7811\n"
"v -0.0256 -1.0000 -0.2604\n"
"v -0.0000 -0.7836 -0.7849\n"
"v 0.0000 -1.0000 -0.2616\n"
"v 0.0769 -0.7836 -0.7811\n"
"v 0.0256 -1.0000 -0.2604\n"
"v 0.1531 -0.7836 -0.7698\n"
"v 0.0510 -1.0000 -0.2566\n"
"v 0.2278 -0.7836 -0.7511\n"
"v 0.0760 -1.0000 -0.2504\n"
"v 0.3004 -0.7836 -0.7251\n"
"v 0.1001 -1.0000 -0.2417\n"
"v 0.3700 -0.7836 -0.6922\n"
"v 0.1233 -1.0000 -0.2307\n"
"v 0.4361 -0.7836 -0.6526\n"
"v 0.1454 -1.0000 -0.2175\n"
"v 0.4979 -0.7836 -0.6067\n"
"v 0.1660 -1.0000 -0.2022\n"
"v 0.5550 -0.7836 -0.5550\n"
"v 0.1850 -1.0000 -0.1850\n"
"v 0.6067 -0.7836 -0.4979\n"
"v 0.2022 -1.0000 -0.1660\n"
"v 0.6526 -0.7836 -0.4361\n"
"v 0.2175 -1.0000 -0.1454\n"
"v 0.6922 -0.7836 -0.3700\n"
"v 0.2307 -1.0000 -0.1233\n"
"v 0.7251 -0.7836 -0.3004\n"
"v 0.2417 -1.0000 -0.1001\n"
"v 0.7511 -0.7836 -0.2278\n"
"v 0.2504 -1.0000 -0.0759\n"
"v 0.7698 -0.7836 -0.1531\n"
"v 0.2566 -1.0000 -0.0510\n"
"f 1 2 3 4 \n"
"f 4 3 5 5 \n"
"f 2 6 7 3 \n"
"f 3 7 5 5 \n"
"f 6 8 9 7 \n"
"f 7 9 5 5 \n"
"f 8 10 11 9 \n"
"f 9 11 5 5 \n"
"f 10 12 13 11 \n"
"f 11 13 5 5 \n"
"f 12 14 15 13 \n"
"f 13 15 5 5 \n"
"f 14 16 17 15 \n"
"f 15 17 5 5 \n"
"f 16 18 19 17 \n"
"f 17 19 5 5 \n"
"f 18 20 21 19 \n"
"f 19 21 5 5 \n"
"f 20 22 23 21 \n"
"f 21 23 5 5 \n"
"f 22 24 25 23 \n"
"f 23 25 5 5 \n"
"f 24 26 27 25 \n"
"f 25 27 5 5 \n"
"f 26 28 29 27 \n"
"f 27 29 5 5 \n"
"f 28 30 31 29 \n"
"f 29 31 5 5 \n"
"f 30 32 33 31 \n"
"f 31 33 5 5 \n"
"f 32 34 35 33 \n"
"f 33 35 5 5 \n"
"f 34 36 37 35 \n"
"f 35 37 5 5 \n"
"f 36 38 39 37 \n"
"f 37 39 5 5 \n"
"f 38 40 41 39 \n"
"f 39 41 5 5 \n"
"f 40 42 43 41 \n"
"f 41 43 5 5 \n"
"f 42 44 45 43 \n"
"f 43 45 5 5 \n"
"f 44 46 47 45 \n"
"f 45 47 5 5 \n"
"f 46 48 49 47 \n"
"f 47 49 5 5 \n"
"f 48 50 51 49 \n"
"f 49 51 5 5 \n"
"f 50 52 53 51 \n"
"f 51 53 5 5 \n"
"f 52 54 55 53 \n"
"f 53 55 5 5 \n"
"f 54 56 57 55 \n"
"f 55 57 5 5 \n"
"f 56 58 59 57 \n"
"f 57 59 5 5 \n"
"f 58 60 61 59 \n"
"f 59 61 5 5 \n"
"f 60 62 63 61 \n"
"f 61 63 5 5 \n"
"f 62 64 65 63 \n"
"f 63 65 5 5 \n"
"f 64 66 67 65 \n"
"f 65 67 5 5 \n"
"f 66 68 69 67 \n"
"f 67 69 5 5 \n"
"f 68 70 71 69 \n"
"f 69 71 5 5 \n"
"f 70 72 73 71 \n"
"f 71 73 5 5 \n"
"f 72 74 75 73 \n"
"f 73 75 5 5 \n"
"f 74 76 77 75 \n"
"f 75 77 5 5 \n"
"f 76 78 79 77 \n"
"f 77 79 5 5 \n"
"f 78 80 81 79 \n"
"f 79 81 5 5 \n"
"f 80 82 83 81 \n"
"f 81 83 5 5 \n"
"f 82 84 85 83 \n"
"f 83 85 5 5 \n"
"f 84 86 87 85 \n"
"f 85 87 5 5 \n"
"f 86 88 89 87 \n"
"f 87 89 5 5 \n"
"f 88 90 91 89 \n"
"f 89 91 5 5 \n"
"f 90 92 93 91 \n"
"f 91 93 5 5 \n"
"f 92 94 95 93 \n"
"f 93 95 5 5 \n"
"f 94 96 97 95 \n"
"f 95 97 5 5 \n"
"f 96 98 99 97 \n"
"f 97 99 5 5 \n"
"f 98 100 101 99 \n"
"f 99 101 5 5 \n"
"f 100 102 103 101 \n"
"f 101 103 5 5 \n"
"f 102 104 105 103 \n"
"f 103 105 5 5 \n"
"f 104 106 107 105 \n"
"f 105 107 5 5 \n"
"f 106 108 109 107 \n"
"f 107 109 5 5 \n"
"f 108 110 111 109 \n"
"f 109 111 5 5 \n"
"f 110 112 113 111 \n"
"f 111 113 5 5 \n"
"f 112 114 115 113 \n"
"f 113 115 5 5 \n"
"f 114 116 117 115 \n"
"f 115 117 5 5 \n"
"f 116 118 119 117 \n"
"f 117 119 5 5 \n"
"f 118 120 121 119 \n"
"f 119 121 5 5 \n"
"f 120 122 123 121 \n"
"f 121 123 5 5 \n"
"f 122 124 125 123 \n"
"f 123 125 5 5 \n"
"f 124 126 127 125 \n"
"f 125 127 5 5 \n"
"f 126 128 129 127 \n"
"f 127 129 5 5 \n"
"f 128 1 4 129 \n"
"f 129 4 5 5 \n"
"\n"
;

View File

@@ -0,0 +1,43 @@
//
// Copyright 2015 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_nonman_quadpole8 =
"v 0.6140 -0.7836 -0.6140\n"
"v 0.8684 -0.7836 0.0000\n"
"v 0.2895 -1.0000 0.0000\n"
"v 0.2047 -1.0000 -0.2047\n"
"v 0.0000 -1.0000 0.0000\n"
"v 0.6140 -0.7836 0.6140\n"
"v 0.2047 -1.0000 0.2047\n"
"v 0.0000 -0.7836 0.8684\n"
"v 0.0000 -1.0000 0.2895\n"
"v -0.6140 -0.7836 0.6140\n"
"v -0.2047 -1.0000 0.2047\n"
"v -0.8684 -0.7836 0.0000\n"
"v -0.2895 -1.0000 0.0000\n"
"v -0.6140 -0.7836 -0.6140\n"
"v -0.2047 -1.0000 -0.2047\n"
"v -0.0000 -0.7836 -0.8684\n"
"v -0.0000 -1.0000 -0.2895\n"
"f 1 2 3 4 \n"
"f 4 3 5 5 \n"
"f 2 6 7 3 \n"
"f 3 7 5 5 \n"
"f 6 8 9 7 \n"
"f 7 9 5 5 \n"
"f 8 10 11 9 \n"
"f 9 11 5 5 \n"
"f 10 12 13 11 \n"
"f 11 13 5 5 \n"
"f 12 14 15 13 \n"
"f 13 15 5 5 \n"
"f 14 16 17 15 \n"
"f 15 17 5 5 \n"
"f 16 1 4 17 \n"
"f 17 4 5 5 \n"
"\n"
;

View File

@@ -0,0 +1,161 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_nonman_verts =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.25 0 0.75\n"
"v -0.75 -0.3 0.75\n"
"v -0.25 0 0.75\n"
"v -1.25 0 1.25\n"
"v -0.75 0 1.25\n"
"v -0.25 0 1.25\n"
"v -1.0 0 0.5 \n"
"v -0.75 0 0.25 \n"
"v -0.5 0 0.5 \n"
"#\n"
"vt 0.05 0.85\n"
"vt 0.25 0.75\n"
"vt 0.45 0.85\n"
"vt 0.05 1.00\n"
"vt 0.25 0.90\n"
"vt 0.45 1.00\n"
"vt 0.15 0.65\n"
"vt 0.25 0.55\n"
"vt 0.35 0.65\n"
"\n"
"f 1/1 2/2 5/5 4/4\n"
"f 2/2 3/3 6/6 5/5\n"
"f 2/2 7/7 8/8 9/9\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 0.25 0 0.85\n"
"v 0.75 -0.3 0.75\n"
"v 1.25 0 0.85\n"
"v 0.25 0 1.25\n"
"v 0.75 0 1.25\n"
"v 1.25 0 1.25\n"
"v 0.25 0 0.65\n"
"v 1.25 0 0.65\n"
"v 0.25 0 0.25\n"
"v 0.75 0 0.25\n"
"v 1.25 0 0.25\n"
"\n"
"vt 0.55 0.85\n"
"vt 0.75 0.76\n"
"vt 0.95 0.85\n"
"vt 0.55 1.00\n"
"vt 0.75 0.90\n"
"vt 0.95 1.00\n"
"vt 0.55 0.65\n"
"vt 0.95 0.65\n"
"vt 0.55 0.50\n"
"vt 0.75 0.60\n"
"vt 0.95 0.50\n"
"vt 0.75 0.74\n"
"\n"
"f 10/10 11/11 14/14 13/13\n"
"f 11/11 12/12 15/15 14/14\n"
"f 11/21 16/16 18/18 19/19\n"
"f 17/17 11/21 19/19 20/20\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -1.25 -0.5 -1.25\n"
"v -0.75 -0.5 -1.25\n"
"v -0.25 -0.5 -1.25\n"
"v -1.25 0 -1.25\n"
"v -0.75 0 -0.75\n"
"v -0.25 0 -1.25\n"
"v -1.25 0.5 -1.25\n"
"v -0.75 0.5 -1.25\n"
"v -0.25 0.5 -1.25\n"
"v -1.1 0 -0.25\n"
"v -0.4 0 -0.25\n"
"#\n"
"vt 0.15 0.025\n"
"vt 0.25 0.025\n"
"vt 0.35 0.025\n"
"vt 0.15 0.125\n"
"vt 0.25 0.125\n"
"vt 0.35 0.125\n"
"vt 0.15 0.225\n"
"vt 0.25 0.225\n"
"vt 0.35 0.225\n"
"vt 0.15 0.45\n"
"vt 0.35 0.45\n"
"vt 0.25 0.30\n"
"\n"
"f 21/22 22/23 25/26 24/25\n"
"f 22/23 23/24 26/27 25/26\n"
"f 24/25 25/26 28/29 27/28\n"
"f 25/26 26/27 29/30 28/29\n"
"f 30/31 25/33 31/32\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 0.25 -0.5 -1.25\n"
"v 0.75 -0.5 -1.25\n"
"v 1.25 -0.5 -1.25\n"
"v 0.25 0 -1.25\n"
"v 0.75 0 -0.75\n"
"v 1.25 0 -1.25\n"
"v 0.25 0.5 -1.25\n"
"v 0.75 0.5 -1.25\n"
"v 1.25 0.5 -1.25\n"
"v 0.25 -0.5 -0.25\n"
"v 0.75 -0.5 -0.25\n"
"v 1.25 -0.5 -0.25\n"
"v 0.25 0 -0.25\n"
"v 1.25 0 -0.25\n"
"v 0.25 0.5 -0.25\n"
"v 0.75 0.5 -0.25\n"
"v 1.25 0.5 -0.25\n"
"#\n"
"vt 0.65 0.025\n"
"vt 0.75 0.025\n"
"vt 0.85 0.025\n"
"vt 0.65 0.125\n"
"vt 0.75 0.125\n"
"vt 0.85 0.125\n"
"vt 0.65 0.225\n"
"vt 0.75 0.225\n"
"vt 0.85 0.225\n"
"vt 0.65 0.475\n"
"vt 0.75 0.475\n"
"vt 0.85 0.475\n"
"vt 0.65 0.375\n"
"vt 0.85 0.375\n"
"vt 0.65 0.275\n"
"vt 0.75 0.275\n"
"vt 0.85 0.275\n"
"vt 0.75 0.375\n"
"\n"
"f 32/34 33/35 36/38 35/37\n"
"f 33/35 34/36 37/39 36/38\n"
"f 35/37 36/38 39/41 38/40\n"
"f 36/38 37/39 40/42 39/41\n"
"f 41/43 44/46 36/51 42/44\n"
"f 42/44 36/51 45/47 43/45\n"
"f 44/46 46/48 47/49 36/51\n"
"f 36/51 47/49 48/50 45/47\n"
"\n"
"#\n"
"# Additional 'shape' 5: isolated non-manifold vertex in center\n"
"#\n"
"v 0 0 0\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,120 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_nonquads =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.25 0 0.25\n"
"v -0.25 0 0.25\n"
"v -0.75 0 1.25\n"
"\n"
"vt 0.05 0.55\n"
"vt 0.45 0.55\n"
"vt 0.25 0.95\n"
"\n"
"f 1/1 2/2 3/3\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 0.44 0 0.25\n"
"v 1.06 0 0.25\n"
"v 1.25 -0.3 0.87\n"
"v 0.75 0 1.25\n"
"v 0.25 -0.3 0.87\n"
"\n"
"vt 0.60 0.53\n"
"vt 0.87 0.53\n"
"vt 0.99 0.79\n"
"vt 0.75 0.97\n"
"vt 0.51 0.79\n"
"\n"
"f 4/4 5/5 6/6 7/7 8/8\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -0.75 -0.5 -0.75\n"
"v -1.25 0 -1.25\n"
"v -0.25 0 -1.25\n"
"v -0.25 0 -0.25\n"
"v -1.25 0 -0.25\n"
"\n"
"vt 0.25 0.25\n"
"vt 0.05 0.05\n"
"vt 0.45 0.05\n"
"vt 0.45 0.45\n"
"vt 0.05 0.45\n"
"\n"
"f 9/9 10/10 11/11\n"
"f 9/9 11/11 12/12\n"
"f 9/9 12/12 13/13\n"
"f 9/9 13/13 10/10\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 1.075 0.0 -1.20\n"
"v 0.675 0.0 -1.20\n"
"v 0.875 0.0 -1.35\n"
"v 1.025 0.15 -1.00\n"
"v 1.025 0.0 -0.30\n"
"v 0.425 0.0 -1.20\n"
"v 0.425 0.0 -1.00\n"
"v 0.675 0.0 -1.00\n"
"v 0.675 0.15 -0.85\n"
"v 0.425 0.15 -0.85\n"
"v 0.675 0.0 -0.50\n"
"v 0.425 0.0 -0.50\n"
"v 0.875 0.15 -0.85\n"
"v 0.675 0.0 -0.30\n"
"v 0.425 0.0 -0.30\n"
"v 0.875 0.0 -0.15\n"
"v 0.675 0.15 -0.65\n"
"v 1.075 0.15 -0.50\n"
"v 0.875 0.15 -0.65\n"
"v 0.425 0.15 -0.65\n"
"\n"
"vt 0.90 0.1\n"
"vt 0.70 0.1\n"
"vt 0.80 0.05\n"
"vt 0.90 0.17\n"
"vt 0.90 0.4\n"
"vt 0.58 0.1\n"
"vt 0.58 0.17\n"
"vt 0.70 0.17\n"
"vt 0.70 0.22\n"
"vt 0.58 0.22\n"
"vt 0.70 0.33\n"
"vt 0.58 0.33\n"
"vt 0.80 0.22\n"
"vt 0.70 0.4\n"
"vt 0.58 0.4\n"
"vt 0.80 0.45\n"
"vt 0.70 0.28\n"
"vt 0.90 0.33\n"
"vt 0.80 0.28\n"
"vt 0.58 0.28\n"
"\n"
"f 26/26 22/22 21/21\n"
"f 24/24 30/30 32/32\n"
"f 24/24 25/25 33/33 30/30\n"
"f 20/20 19/19 15/15 21/21\n"
"f 22/22 23/23 20/20 21/21\n"
"f 27/27 28/28 25/25 24/24\n"
"f 31/31 18/18 29/29 27/27 24/24 32/32\n"
"f 15/15 16/16 14/14 17/17 26/26 21/21\n"
"f 17/17 31/31 32/32 26/26\n"
"f 30/30 33/33 23/23 22/22\n"
"f 32/32 30/30 22/22 26/26\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,267 @@
//
// Copyright 2015 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_pole64 =
"v 0.7811 -0.7836 -0.0769\n"
"v 0.7849 -0.7836 0.0000\n"
"v 0.2616 -1.0000 0.0000\n"
"v 0.2604 -1.0000 -0.0256\n"
"v 0.0000 -1.0000 0.0000\n"
"v 0.7811 -0.7836 0.0769\n"
"v 0.2604 -1.0000 0.0256\n"
"v 0.7698 -0.7836 0.1531\n"
"v 0.2566 -1.0000 0.0510\n"
"v 0.7511 -0.7836 0.2278\n"
"v 0.2504 -1.0000 0.0760\n"
"v 0.7251 -0.7836 0.3004\n"
"v 0.2417 -1.0000 0.1001\n"
"v 0.6922 -0.7836 0.3700\n"
"v 0.2307 -1.0000 0.1233\n"
"v 0.6526 -0.7836 0.4361\n"
"v 0.2175 -1.0000 0.1454\n"
"v 0.6067 -0.7836 0.4979\n"
"v 0.2022 -1.0000 0.1660\n"
"v 0.5550 -0.7836 0.5550\n"
"v 0.1850 -1.0000 0.1850\n"
"v 0.4979 -0.7836 0.6067\n"
"v 0.1660 -1.0000 0.2022\n"
"v 0.4361 -0.7836 0.6526\n"
"v 0.1454 -1.0000 0.2175\n"
"v 0.3700 -0.7836 0.6922\n"
"v 0.1233 -1.0000 0.2307\n"
"v 0.3004 -0.7836 0.7251\n"
"v 0.1001 -1.0000 0.2417\n"
"v 0.2278 -0.7836 0.7511\n"
"v 0.0760 -1.0000 0.2504\n"
"v 0.1531 -0.7836 0.7698\n"
"v 0.0510 -1.0000 0.2566\n"
"v 0.0769 -0.7836 0.7811\n"
"v 0.0256 -1.0000 0.2604\n"
"v 0.0000 -0.7836 0.7849\n"
"v 0.0000 -1.0000 0.2616\n"
"v -0.0769 -0.7836 0.7811\n"
"v -0.0256 -1.0000 0.2604\n"
"v -0.1531 -0.7836 0.7698\n"
"v -0.0510 -1.0000 0.2566\n"
"v -0.2278 -0.7836 0.7511\n"
"v -0.0760 -1.0000 0.2504\n"
"v -0.3004 -0.7836 0.7251\n"
"v -0.1001 -1.0000 0.2417\n"
"v -0.3700 -0.7836 0.6922\n"
"v -0.1233 -1.0000 0.2307\n"
"v -0.4361 -0.7836 0.6526\n"
"v -0.1454 -1.0000 0.2175\n"
"v -0.4979 -0.7836 0.6067\n"
"v -0.1660 -1.0000 0.2022\n"
"v -0.5550 -0.7836 0.5550\n"
"v -0.1850 -1.0000 0.1850\n"
"v -0.6067 -0.7836 0.4979\n"
"v -0.2022 -1.0000 0.1660\n"
"v -0.6526 -0.7836 0.4361\n"
"v -0.2175 -1.0000 0.1454\n"
"v -0.6922 -0.7836 0.3700\n"
"v -0.2307 -1.0000 0.1233\n"
"v -0.7251 -0.7836 0.3004\n"
"v -0.2417 -1.0000 0.1001\n"
"v -0.7511 -0.7836 0.2278\n"
"v -0.2504 -1.0000 0.0760\n"
"v -0.7698 -0.7836 0.1531\n"
"v -0.2566 -1.0000 0.0510\n"
"v -0.7811 -0.7836 0.0769\n"
"v -0.2604 -1.0000 0.0256\n"
"v -0.7849 -0.7836 0.0000\n"
"v -0.2616 -1.0000 0.0000\n"
"v -0.7811 -0.7836 -0.0769\n"
"v -0.2604 -1.0000 -0.0256\n"
"v -0.7698 -0.7836 -0.1531\n"
"v -0.2566 -1.0000 -0.0510\n"
"v -0.7511 -0.7836 -0.2278\n"
"v -0.2504 -1.0000 -0.0759\n"
"v -0.7251 -0.7836 -0.3004\n"
"v -0.2417 -1.0000 -0.1001\n"
"v -0.6922 -0.7836 -0.3700\n"
"v -0.2307 -1.0000 -0.1233\n"
"v -0.6526 -0.7836 -0.4361\n"
"v -0.2175 -1.0000 -0.1454\n"
"v -0.6067 -0.7836 -0.4979\n"
"v -0.2022 -1.0000 -0.1660\n"
"v -0.5550 -0.7836 -0.5550\n"
"v -0.1850 -1.0000 -0.1850\n"
"v -0.4979 -0.7836 -0.6067\n"
"v -0.1660 -1.0000 -0.2022\n"
"v -0.4361 -0.7836 -0.6526\n"
"v -0.1454 -1.0000 -0.2175\n"
"v -0.3700 -0.7836 -0.6922\n"
"v -0.1233 -1.0000 -0.2307\n"
"v -0.3004 -0.7836 -0.7251\n"
"v -0.1001 -1.0000 -0.2417\n"
"v -0.2278 -0.7836 -0.7511\n"
"v -0.0760 -1.0000 -0.2504\n"
"v -0.1531 -0.7836 -0.7698\n"
"v -0.0510 -1.0000 -0.2566\n"
"v -0.0769 -0.7836 -0.7811\n"
"v -0.0256 -1.0000 -0.2604\n"
"v -0.0000 -0.7836 -0.7849\n"
"v 0.0000 -1.0000 -0.2616\n"
"v 0.0769 -0.7836 -0.7811\n"
"v 0.0256 -1.0000 -0.2604\n"
"v 0.1531 -0.7836 -0.7698\n"
"v 0.0510 -1.0000 -0.2566\n"
"v 0.2278 -0.7836 -0.7511\n"
"v 0.0760 -1.0000 -0.2504\n"
"v 0.3004 -0.7836 -0.7251\n"
"v 0.1001 -1.0000 -0.2417\n"
"v 0.3700 -0.7836 -0.6922\n"
"v 0.1233 -1.0000 -0.2307\n"
"v 0.4361 -0.7836 -0.6526\n"
"v 0.1454 -1.0000 -0.2175\n"
"v 0.4979 -0.7836 -0.6067\n"
"v 0.1660 -1.0000 -0.2022\n"
"v 0.5550 -0.7836 -0.5550\n"
"v 0.1850 -1.0000 -0.1850\n"
"v 0.6067 -0.7836 -0.4979\n"
"v 0.2022 -1.0000 -0.1660\n"
"v 0.6526 -0.7836 -0.4361\n"
"v 0.2175 -1.0000 -0.1454\n"
"v 0.6922 -0.7836 -0.3700\n"
"v 0.2307 -1.0000 -0.1233\n"
"v 0.7251 -0.7836 -0.3004\n"
"v 0.2417 -1.0000 -0.1001\n"
"v 0.7511 -0.7836 -0.2278\n"
"v 0.2504 -1.0000 -0.0759\n"
"v 0.7698 -0.7836 -0.1531\n"
"v 0.2566 -1.0000 -0.0510\n"
"f 1 2 3 4 \n"
"f 4 3 5 \n"
"f 2 6 7 3 \n"
"f 3 7 5 \n"
"f 6 8 9 7 \n"
"f 7 9 5 \n"
"f 8 10 11 9 \n"
"f 9 11 5 \n"
"f 10 12 13 11 \n"
"f 11 13 5 \n"
"f 12 14 15 13 \n"
"f 13 15 5 \n"
"f 14 16 17 15 \n"
"f 15 17 5 \n"
"f 16 18 19 17 \n"
"f 17 19 5 \n"
"f 18 20 21 19 \n"
"f 19 21 5 \n"
"f 20 22 23 21 \n"
"f 21 23 5 \n"
"f 22 24 25 23 \n"
"f 23 25 5 \n"
"f 24 26 27 25 \n"
"f 25 27 5 \n"
"f 26 28 29 27 \n"
"f 27 29 5 \n"
"f 28 30 31 29 \n"
"f 29 31 5 \n"
"f 30 32 33 31 \n"
"f 31 33 5 \n"
"f 32 34 35 33 \n"
"f 33 35 5 \n"
"f 34 36 37 35 \n"
"f 35 37 5 \n"
"f 36 38 39 37 \n"
"f 37 39 5 \n"
"f 38 40 41 39 \n"
"f 39 41 5 \n"
"f 40 42 43 41 \n"
"f 41 43 5 \n"
"f 42 44 45 43 \n"
"f 43 45 5 \n"
"f 44 46 47 45 \n"
"f 45 47 5 \n"
"f 46 48 49 47 \n"
"f 47 49 5 \n"
"f 48 50 51 49 \n"
"f 49 51 5 \n"
"f 50 52 53 51 \n"
"f 51 53 5 \n"
"f 52 54 55 53 \n"
"f 53 55 5 \n"
"f 54 56 57 55 \n"
"f 55 57 5 \n"
"f 56 58 59 57 \n"
"f 57 59 5 \n"
"f 58 60 61 59 \n"
"f 59 61 5 \n"
"f 60 62 63 61 \n"
"f 61 63 5 \n"
"f 62 64 65 63 \n"
"f 63 65 5 \n"
"f 64 66 67 65 \n"
"f 65 67 5 \n"
"f 66 68 69 67 \n"
"f 67 69 5 \n"
"f 68 70 71 69 \n"
"f 69 71 5 \n"
"f 70 72 73 71 \n"
"f 71 73 5 \n"
"f 72 74 75 73 \n"
"f 73 75 5 \n"
"f 74 76 77 75 \n"
"f 75 77 5 \n"
"f 76 78 79 77 \n"
"f 77 79 5 \n"
"f 78 80 81 79 \n"
"f 79 81 5 \n"
"f 80 82 83 81 \n"
"f 81 83 5 \n"
"f 82 84 85 83 \n"
"f 83 85 5 \n"
"f 84 86 87 85 \n"
"f 85 87 5 \n"
"f 86 88 89 87 \n"
"f 87 89 5 \n"
"f 88 90 91 89 \n"
"f 89 91 5 \n"
"f 90 92 93 91 \n"
"f 91 93 5 \n"
"f 92 94 95 93 \n"
"f 93 95 5 \n"
"f 94 96 97 95 \n"
"f 95 97 5 \n"
"f 96 98 99 97 \n"
"f 97 99 5 \n"
"f 98 100 101 99 \n"
"f 99 101 5 \n"
"f 100 102 103 101 \n"
"f 101 103 5 \n"
"f 102 104 105 103 \n"
"f 103 105 5 \n"
"f 104 106 107 105 \n"
"f 105 107 5 \n"
"f 106 108 109 107 \n"
"f 107 109 5 \n"
"f 108 110 111 109 \n"
"f 109 111 5 \n"
"f 110 112 113 111 \n"
"f 111 113 5 \n"
"f 112 114 115 113 \n"
"f 113 115 5 \n"
"f 114 116 117 115 \n"
"f 115 117 5 \n"
"f 116 118 119 117 \n"
"f 117 119 5 \n"
"f 118 120 121 119 \n"
"f 119 121 5 \n"
"f 120 122 123 121 \n"
"f 121 123 5 \n"
"f 122 124 125 123 \n"
"f 123 125 5 \n"
"f 124 126 127 125 \n"
"f 125 127 5 \n"
"f 126 128 129 127 \n"
"f 127 129 5 \n"
"f 128 1 4 129 \n"
"f 129 4 5 \n"
"\n"
;

View File

@@ -0,0 +1,43 @@
//
// Copyright 2015 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_pole8 =
"v 0.6140 -0.7836 -0.6140\n"
"v 0.8684 -0.7836 0.0000\n"
"v 0.2895 -1.0000 0.0000\n"
"v 0.2047 -1.0000 -0.2047\n"
"v 0.0000 -1.0000 0.0000\n"
"v 0.6140 -0.7836 0.6140\n"
"v 0.2047 -1.0000 0.2047\n"
"v 0.0000 -0.7836 0.8684\n"
"v 0.0000 -1.0000 0.2895\n"
"v -0.6140 -0.7836 0.6140\n"
"v -0.2047 -1.0000 0.2047\n"
"v -0.8684 -0.7836 0.0000\n"
"v -0.2895 -1.0000 0.0000\n"
"v -0.6140 -0.7836 -0.6140\n"
"v -0.2047 -1.0000 -0.2047\n"
"v -0.0000 -0.7836 -0.8684\n"
"v -0.0000 -1.0000 -0.2895\n"
"f 1 2 3 4 \n"
"f 4 3 5 \n"
"f 2 6 7 3 \n"
"f 3 7 5 \n"
"f 6 8 9 7 \n"
"f 7 9 5 \n"
"f 8 10 11 9 \n"
"f 9 11 5 \n"
"f 10 12 13 11 \n"
"f 11 13 5 \n"
"f 12 14 15 13 \n"
"f 13 15 5 \n"
"f 14 16 17 15 \n"
"f 15 17 5 \n"
"f 16 1 4 17 \n"
"f 17 4 5 \n"
"\n"
;

View File

@@ -0,0 +1,47 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_pyramid =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.0 0.0 2.0\n"
"v 0.0 -2.0 0.0\n"
"v 2.0 0.0 0.0\n"
"v 0.0 2.0 0.0\n"
"v -2.0 0.0 0.0\n"
"vt 0.500000 0.000000\n"
"vt 0.000000 0.500000\n"
"vt 0.500000 1.000000\n"
"vt 1.000000 0.500000\n"
"vt 1.000000 1.000000\n"
"vt 0.000000 1.000000\n"
"vt 0.000000 0.000000\n"
"vt 1.000000 0.000000\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"vn 0.0 0.0 0.0\n"
"s off\n"
"f 1/5/1 2/4/2 3/3/3\n"
"f 1/6/1 3/3/3 4/2/4\n"
"f 1/7/1 4/2/4 5/1/5\n"
"f 1/8/1 5/1/5 2/4/2\n"
"f 5/1/5 4/2/4 3/3/3 2/4/2\n"
"\n"
;

View File

@@ -0,0 +1,33 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_pyramid_creases0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.0 0.0 2.0\n"
"v 0.0 -2.0 0.0\n"
"v 2.0 0.0 0.0\n"
"v 0.0 2.0 0.0\n"
"v -2.0 0.0 0.0\n"
"vt 0.0 0.0\n"
"vt 0.0 -2.0\n"
"vt 2.0 0.0\n"
"vt 0.0 2.0\n"
"vt -2.0 0.0\n"
"s off\n"
"f 1/1 2/2 3/3\n"
"f 1/1 3/3 4/4\n"
"f 1/1 4/4 5/5\n"
"f 1/1 5/5 2/2\n"
"f 5/5 4/4 3/3 2/2\n"
"t crease 2/1/0 4 3 3.0\n"
"t crease 2/1/0 3 2 3.0\n"
"t crease 2/1/0 2 1 3.0\n"
"t crease 2/1/0 1 4 3.0\n"
"t interpolateboundary 1/0/0 2\n"
"\n"
;

View File

@@ -0,0 +1,35 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_pyramid_creases1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.0 0.0 2.0\n"
"v 0.0 -2.0 0.0\n"
"v 2.0 0.0 0.0\n"
"v 0.0 2.0 0.0\n"
"v -2.0 0.0 0.0\n"
"vt 0.0 0.0\n"
"vt 0.0 -2.0\n"
"vt 2.0 0.0\n"
"vt 0.0 2.0\n"
"vt -2.0 0.0\n"
"s off\n"
"f 1/1 2/2 3/3\n"
"f 1/1 3/3 4/4\n"
"f 1/1 4/4 5/5\n"
"f 1/1 5/5 2/2\n"
"f 5/5 4/4 3/3 2/2\n"
"t crease 2/1/0 1 2 2.5\n"
"t crease 2/1/0 2 3 2.5\n"
"t crease 2/1/0 3 4 2.5\n"
"t crease 2/1/0 4 1 2.5\n"
"t corner 1/1/0 0 3.5\n"
"t corner 1/1/0 1 2.5\n"
"t interpolateboundary 1/0/0 2\n"
"\n"
;

View File

@@ -0,0 +1,27 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_pyramid_creases2 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0 0 1.4142135\n"
"v -1 -1 0\n"
"v 1 -1 0\n"
"v 1 1 0\n"
"v -1 1 0\n"
"s off\n"
"f 1 2 3\n"
"f 1 3 4\n"
"f 1 4 5\n"
"f 1 5 2\n"
"f 5 4 3 2\n"
"t crease 2/1/0 4 3 4.0\n"
"t crease 2/1/0 3 2 4.0\n"
"t crease 2/1/0 2 1 4.0\n"
"t crease 2/1/0 1 4 4.0\n"
"\n"
;

View File

@@ -0,0 +1,318 @@
//
// Copyright 2018 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_quadstrips =
"v -1.375 0.000 1.375\n"
"v -1.125 -0.150 1.375\n"
"v -0.875 0.000 1.375\n"
"v -0.625 0.000 1.375\n"
"v -0.375 -0.150 1.375\n"
"v -0.125 -0.150 1.375\n"
"v 0.125 0.000 1.375\n"
"v 0.375 0.000 1.375\n"
"v 0.625 -0.150 1.375\n"
"v 0.875 0.000 1.375\n"
"v 1.125 -0.150 1.375\n"
"v 1.375 0.000 1.375\n"
"v -1.375 0.000 1.125\n"
"v -1.125 -0.150 1.125\n"
"v -0.875 0.000 1.125\n"
"v -0.625 0.000 1.125\n"
"v -0.375 -0.150 1.125\n"
"v -0.125 -0.150 1.125\n"
"v 0.125 0.000 1.125\n"
"v 0.375 0.000 1.125\n"
"v 0.625 -0.150 1.125\n"
"v 0.875 0.000 1.125\n"
"v 1.125 -0.150 1.125\n"
"v 1.375 0.000 1.125\n"
"v -1.375 -0.150 0.875\n"
"v -1.125 -0.150 0.875\n"
"v -0.875 0.000 0.875\n"
"v -0.375 0.000 0.875\n"
"v -0.125 0.000 0.875\n"
"v 0.375 0.000 0.875\n"
"v 0.625 -0.150 0.875\n"
"v 0.875 -0.150 0.875\n"
"v 1.125 0.000 0.875\n"
"v -1.375 -0.150 0.625\n"
"v -1.125 -0.150 0.625\n"
"v -0.875 0.000 0.625\n"
"v -0.625 0.000 0.625\n"
"v -0.375 -0.150 0.625\n"
"v -0.125 -0.150 0.625\n"
"v 0.125 0.000 0.625\n"
"v 0.375 0.000 0.625\n"
"v 0.625 -0.150 0.625\n"
"v 0.875 -0.150 0.625\n"
"v 1.125 0.000 0.625\n"
"v -1.375 0.000 0.375\n"
"v -1.125 0.000 0.375\n"
"v -0.625 0.000 0.375\n"
"v -0.375 -0.150 0.375\n"
"v -0.125 -0.150 0.375\n"
"v 0.125 0.000 0.375\n"
"v 0.625 0.000 0.375\n"
"v 0.875 0.000 0.375\n"
"v -1.125 0.000 0.125\n"
"v -0.875 0.000 0.125\n"
"v -0.625 0.000 0.125\n"
"v -0.375 0.000 0.125\n"
"v -0.125 0.000 0.125\n"
"v 0.125 0.000 0.125\n"
"v 0.375 0.000 0.125\n"
"v 0.625 0.000 0.125\n"
"v 0.875 0.000 0.125\n"
"v -1.375 0.000 -0.125\n"
"v -1.125 -0.150 -0.125\n"
"v -0.875 -0.150 -0.125\n"
"v -0.625 0.000 -0.125\n"
"v -0.375 0.000 -0.125\n"
"v -0.125 0.000 -0.125\n"
"v 0.125 0.000 -0.125\n"
"v 0.375 0.000 -0.125\n"
"v 0.625 -0.150 -0.125\n"
"v 0.875 -0.150 -0.125\n"
"v 1.125 0.000 -0.125\n"
"v 1.375 0.000 -0.125\n"
"v -1.375 0.000 -0.375\n"
"v -1.125 0.000 -0.375\n"
"v -0.875 0.000 -0.375\n"
"v -0.375 0.000 -0.375\n"
"v -0.125 0.000 -0.375\n"
"v 0.625 0.000 -0.375\n"
"v 0.875 0.000 -0.375\n"
"v 1.125 0.000 -0.375\n"
"v 1.375 0.000 -0.375\n"
"v -1.375 0.000 -0.625\n"
"v -1.125 0.000 -0.625\n"
"v -0.875 0.000 -0.625\n"
"v -0.625 0.000 -0.625\n"
"v -0.375 -0.150 -0.625\n"
"v -0.125 -0.150 -0.625\n"
"v 0.125 0.000 -0.625\n"
"v 0.375 0.000 -0.625\n"
"v 0.625 0.000 -0.625\n"
"v 0.875 0.000 -0.625\n"
"v -1.375 0.000 -0.875\n"
"v -1.125 0.000 -0.875\n"
"v -0.875 0.000 -0.875\n"
"v -0.625 0.000 -0.875\n"
"v -0.375 -0.150 -0.875\n"
"v -0.125 -0.150 -0.875\n"
"v 0.125 0.000 -0.875\n"
"v 0.375 0.000 -0.875\n"
"v 0.625 0.000 -0.875\n"
"v 0.875 0.000 -0.875\n"
"v -1.375 -0.150 -1.125\n"
"v -1.125 -0.150 -1.125\n"
"v -0.875 0.000 -1.125\n"
"v -0.625 0.000 -1.125\n"
"v -0.375 0.000 -1.125\n"
"v -0.125 0.000 -1.125\n"
"v 0.125 0.000 -1.125\n"
"v 0.375 0.000 -1.125\n"
"v 0.625 -0.150 -1.125\n"
"v 0.875 -0.150 -1.125\n"
"v 1.125 0.000 -1.125\n"
"v 1.375 0.000 -1.125\n"
"v -1.375 -0.150 -1.375\n"
"v -1.125 -0.150 -1.375\n"
"v -0.875 0.000 -1.375\n"
"v -0.625 0.000 -1.375\n"
"v -0.375 0.000 -1.375\n"
"v -0.125 0.000 -1.375\n"
"v 0.125 0.000 -1.375\n"
"v 0.375 0.000 -1.375\n"
"v 0.625 -0.150 -1.375\n"
"v 0.875 -0.150 -1.375\n"
"v 1.125 0.000 -1.375\n"
"v 1.375 0.000 -1.375\n"
"\n"
"vt 0.000000 1.000000\n"
"vt 0.090909 1.000000\n"
"vt 0.181818 1.000000\n"
"vt 0.272727 1.000000\n"
"vt 0.363636 1.000000\n"
"vt 0.454545 1.000000\n"
"vt 0.545455 1.000000\n"
"vt 0.636364 1.000000\n"
"vt 0.727273 1.000000\n"
"vt 0.818182 1.000000\n"
"vt 0.909091 1.000000\n"
"vt 1.000000 1.000000\n"
"vt 0.000000 0.909091\n"
"vt 0.090909 0.909091\n"
"vt 0.181818 0.909091\n"
"vt 0.272727 0.909091\n"
"vt 0.363636 0.909091\n"
"vt 0.454545 0.909091\n"
"vt 0.545455 0.909091\n"
"vt 0.636364 0.909091\n"
"vt 0.727273 0.909091\n"
"vt 0.818182 0.909091\n"
"vt 0.909091 0.909091\n"
"vt 1.000000 0.909091\n"
"vt 0.000000 0.818182\n"
"vt 0.090909 0.818182\n"
"vt 0.181818 0.818182\n"
"vt 0.363636 0.818182\n"
"vt 0.454545 0.818182\n"
"vt 0.636364 0.818182\n"
"vt 0.727273 0.818182\n"
"vt 0.818182 0.818182\n"
"vt 0.909091 0.818182\n"
"vt 0.000000 0.727273\n"
"vt 0.090909 0.727273\n"
"vt 0.181818 0.727273\n"
"vt 0.272727 0.727273\n"
"vt 0.363636 0.727273\n"
"vt 0.454545 0.727273\n"
"vt 0.545455 0.727273\n"
"vt 0.636364 0.727273\n"
"vt 0.727273 0.727273\n"
"vt 0.818182 0.727273\n"
"vt 0.909091 0.727273\n"
"vt 0.000000 0.636364\n"
"vt 0.090909 0.636364\n"
"vt 0.272727 0.636364\n"
"vt 0.363636 0.636364\n"
"vt 0.454545 0.636364\n"
"vt 0.545455 0.636364\n"
"vt 0.727273 0.636364\n"
"vt 0.818182 0.636364\n"
"vt 0.090909 0.545455\n"
"vt 0.181818 0.545455\n"
"vt 0.272727 0.545455\n"
"vt 0.363636 0.545455\n"
"vt 0.454545 0.545455\n"
"vt 0.545455 0.545455\n"
"vt 0.636364 0.545455\n"
"vt 0.727273 0.545455\n"
"vt 0.818182 0.545455\n"
"vt 0.000000 0.454545\n"
"vt 0.090909 0.454545\n"
"vt 0.181818 0.454545\n"
"vt 0.272727 0.454545\n"
"vt 0.363636 0.454545\n"
"vt 0.454545 0.454545\n"
"vt 0.545455 0.454545\n"
"vt 0.636364 0.454545\n"
"vt 0.727273 0.454545\n"
"vt 0.818182 0.454545\n"
"vt 0.909091 0.454545\n"
"vt 1.000000 0.454545\n"
"vt 0.000000 0.363636\n"
"vt 0.090909 0.363636\n"
"vt 0.181818 0.363636\n"
"vt 0.363636 0.363636\n"
"vt 0.454545 0.363636\n"
"vt 0.727273 0.363636\n"
"vt 0.818182 0.363636\n"
"vt 0.909091 0.363636\n"
"vt 1.000000 0.363636\n"
"vt 0.000000 0.272727\n"
"vt 0.090909 0.272727\n"
"vt 0.181818 0.272727\n"
"vt 0.272727 0.272727\n"
"vt 0.363636 0.272727\n"
"vt 0.454545 0.272727\n"
"vt 0.545455 0.272727\n"
"vt 0.636364 0.272727\n"
"vt 0.727273 0.272727\n"
"vt 0.818182 0.272727\n"
"vt 0.000000 0.181818\n"
"vt 0.090909 0.181818\n"
"vt 0.181818 0.181818\n"
"vt 0.272727 0.181818\n"
"vt 0.363636 0.181818\n"
"vt 0.454545 0.181818\n"
"vt 0.545455 0.181818\n"
"vt 0.636364 0.181818\n"
"vt 0.727273 0.181818\n"
"vt 0.818182 0.181818\n"
"vt 0.000000 0.090909\n"
"vt 0.090909 0.090909\n"
"vt 0.181818 0.090909\n"
"vt 0.272727 0.090909\n"
"vt 0.363636 0.090909\n"
"vt 0.454545 0.090909\n"
"vt 0.545455 0.090909\n"
"vt 0.636364 0.090909\n"
"vt 0.727273 0.090909\n"
"vt 0.818182 0.090909\n"
"vt 0.909091 0.090909\n"
"vt 1.000000 0.090909\n"
"vt 0.000000 -0.000000\n"
"vt 0.090909 -0.000000\n"
"vt 0.181818 -0.000000\n"
"vt 0.272727 -0.000000\n"
"vt 0.363636 -0.000000\n"
"vt 0.454545 -0.000000\n"
"vt 0.545455 -0.000000\n"
"vt 0.636364 -0.000000\n"
"vt 0.727273 -0.000000\n"
"vt 0.818182 -0.000000\n"
"vt 0.909091 -0.000000\n"
"vt 1.000000 -0.000000\n"
"\n"
"f 13/13 14/14 2/2 1/1\n"
"f 14/14 15/15 3/3 2/2\n"
"f 16/16 17/17 5/5 4/4\n"
"f 17/17 18/18 6/6 5/5\n"
"f 18/18 19/19 7/7 6/6\n"
"f 20/20 21/21 9/9 8/8\n"
"f 21/21 22/22 10/10 9/9\n"
"f 22/22 23/23 11/11 10/10\n"
"f 23/23 24/24 12/12 11/11\n"
"f 34/34 35/35 26/26 25/25\n"
"f 35/35 36/36 27/27 26/26\n"
"f 38/38 39/39 29/29 28/28\n"
"f 41/41 42/42 31/31 30/30\n"
"f 42/42 43/43 32/32 31/31\n"
"f 43/43 44/44 33/33 32/32\n"
"f 45/45 46/46 35/35 34/34\n"
"f 47/47 48/48 38/38 37/37\n"
"f 48/48 49/49 39/39 38/38\n"
"f 49/49 50/50 40/40 39/39\n"
"f 51/51 52/52 43/43 42/42\n"
"f 56/56 57/57 49/49 48/48\n"
"f 63/63 64/64 54/54 53/53\n"
"f 64/64 65/65 55/55 54/54\n"
"f 68/68 69/69 59/59 58/58\n"
"f 69/69 70/70 60/60 59/59\n"
"f 70/70 71/71 61/61 60/60\n"
"f 74/74 75/75 63/63 62/62\n"
"f 75/75 76/76 64/64 63/63\n"
"f 77/77 78/78 67/67 66/66\n"
"f 79/79 80/80 71/71 70/70\n"
"f 80/80 81/81 72/72 71/71\n"
"f 81/81 82/82 73/73 72/72\n"
"f 87/87 88/88 78/78 77/77\n"
"f 93/93 94/94 84/84 83/83\n"
"f 95/95 96/96 86/86 85/85\n"
"f 96/96 97/97 87/87 86/86\n"
"f 97/97 98/98 88/88 87/87\n"
"f 98/98 99/99 89/89 88/88\n"
"f 99/99 100/100 90/90 89/89\n"
"f 101/101 102/102 92/92 91/91\n"
"f 103/103 104/104 94/94 93/93\n"
"f 107/107 108/108 98/98 97/97\n"
"f 111/111 112/112 102/102 101/101\n"
"f 115/115 116/116 104/104 103/103\n"
"f 116/116 117/117 105/105 104/104\n"
"f 117/117 118/118 106/106 105/105\n"
"f 119/119 120/120 108/108 107/107\n"
"f 121/121 122/122 110/110 109/109\n"
"f 122/122 123/123 111/111 110/110\n"
"f 123/123 124/124 112/112 111/111\n"
"f 124/124 125/125 113/113 112/112\n"
"f 125/125 126/126 114/114 113/113\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,441 @@
//
// Copyright 2015 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_single_crease =
"v -2.0000 -0.0000 -0.5000\n"
"v -1.8000 -0.2000 -0.5000\n"
"v -1.6000 -0.0000 -0.5000\n"
"v -1.4000 -0.2000 -0.5000\n"
"v -1.2000 -0.0000 -0.5000\n"
"v -1.0000 -0.2000 -0.5000\n"
"v -0.8000 -0.0000 -0.5000\n"
"v -0.6000 -0.2000 -0.5000\n"
"v -0.4000 -0.0000 -0.5000\n"
"v -0.2000 -0.2000 -0.5000\n"
"v 0.0000 -0.0000 -0.5000\n"
"v 0.2000 -0.2000 -0.5000\n"
"v 0.4000 -0.0000 -0.5000\n"
"v 0.6000 -0.2000 -0.5000\n"
"v 0.8000 -0.0000 -0.5000\n"
"v 1.0000 -0.2000 -0.5000\n"
"v 1.2000 -0.0000 -0.5000\n"
"v 1.4000 -0.2000 -0.5000\n"
"v 1.6000 -0.0000 -0.5000\n"
"v 1.8000 -0.2000 -0.5000\n"
"v 2.0000 -0.0000 -0.5000\n"
"v -2.0000 -0.0000 -0.2500\n"
"v -1.8000 -0.5000 -0.2500\n"
"v -1.6000 -0.0000 -0.2500\n"
"v -1.4000 -0.5000 -0.2500\n"
"v -1.2000 -0.0000 -0.2500\n"
"v -1.0000 -0.5000 -0.2500\n"
"v -0.8000 -0.0000 -0.2500\n"
"v -0.6000 -0.5000 -0.2500\n"
"v -0.4000 -0.0000 -0.2500\n"
"v -0.2000 -0.5000 -0.2500\n"
"v 0.0000 -0.0000 -0.2500\n"
"v 0.2000 -0.5000 -0.2500\n"
"v 0.4000 -0.0000 -0.2500\n"
"v 0.6000 -0.5000 -0.2500\n"
"v 0.8000 -0.0000 -0.2500\n"
"v 1.0000 -0.5000 -0.2500\n"
"v 1.2000 -0.0000 -0.2500\n"
"v 1.4000 -0.5000 -0.2500\n"
"v 1.6000 -0.0000 -0.2500\n"
"v 1.8000 -0.5000 -0.2500\n"
"v 2.0000 -0.0000 -0.2500\n"
"v -2.0000 0.0000 0.0000\n"
"v -1.8000 -0.5000 0.0000\n"
"v -1.6000 0.0000 0.0000\n"
"v -1.4000 -0.5000 0.0000\n"
"v -1.2000 0.0000 0.0000\n"
"v -1.0000 -0.5000 0.0000\n"
"v -0.8000 0.0000 0.0000\n"
"v -0.6000 -0.5000 0.0000\n"
"v -0.4000 0.0000 0.0000\n"
"v -0.2000 -0.5000 0.0000\n"
"v 0.0000 0.0000 0.0000\n"
"v 0.2000 -0.5000 0.0000\n"
"v 0.4000 0.0000 0.0000\n"
"v 0.6000 -0.5000 0.0000\n"
"v 0.8000 0.0000 0.0000\n"
"v 1.0000 -0.5000 0.0000\n"
"v 1.2000 0.0000 0.0000\n"
"v 1.4000 -0.5000 0.0000\n"
"v 1.6000 0.0000 0.0000\n"
"v 1.8000 -0.5000 0.0000\n"
"v 2.0000 0.0000 0.0000\n"
"v -2.0000 0.0000 0.2500\n"
"v -1.8000 -0.5000 0.2500\n"
"v -1.6000 0.0000 0.2500\n"
"v -1.4000 -0.5000 0.2500\n"
"v -1.2000 0.0000 0.2500\n"
"v -1.0000 -0.5000 0.2500\n"
"v -0.8000 0.0000 0.2500\n"
"v -0.6000 -0.5000 0.2500\n"
"v -0.4000 0.0000 0.2500\n"
"v -0.2000 -0.5000 0.2500\n"
"v 0.0000 0.0000 0.2500\n"
"v 0.2000 -0.5000 0.2500\n"
"v 0.4000 0.0000 0.2500\n"
"v 0.6000 -0.5000 0.2500\n"
"v 0.8000 0.0000 0.2500\n"
"v 1.0000 -0.5000 0.2500\n"
"v 1.2000 0.0000 0.2500\n"
"v 1.4000 -0.5000 0.2500\n"
"v 1.6000 0.0000 0.2500\n"
"v 1.8000 -0.5000 0.2500\n"
"v 2.0000 0.0000 0.2500\n"
"v -2.0000 0.0000 0.5000\n"
"v -1.8000 -0.5000 0.5000\n"
"v -1.6000 0.0000 0.5000\n"
"v -1.4000 -0.5000 0.5000\n"
"v -1.2000 0.0000 0.5000\n"
"v -1.0000 -0.5000 0.5000\n"
"v -0.8000 0.0000 0.5000\n"
"v -0.6000 -0.5000 0.5000\n"
"v -0.4000 0.0000 0.5000\n"
"v -0.2000 -0.5000 0.5000\n"
"v 0.0000 0.0000 0.5000\n"
"v 0.2000 -0.5000 0.5000\n"
"v 0.4000 0.0000 0.5000\n"
"v 0.6000 -0.5000 0.5000\n"
"v 0.8000 0.0000 0.5000\n"
"v 1.0000 -0.5000 0.5000\n"
"v 1.2000 0.0000 0.5000\n"
"v 1.4000 -0.5000 0.5000\n"
"v 1.6000 0.0000 0.5000\n"
"v 1.8000 -0.5000 0.5000\n"
"v 2.0000 0.0000 0.5000\n"
"vt 0.000000 0.000000 \n"
"vt 0.050000 0.000000 \n"
"vt 0.100000 0.000000 \n"
"vt 0.150000 0.000000 \n"
"vt 0.200000 0.000000 \n"
"vt 0.250000 0.000000 \n"
"vt 0.300000 0.000000 \n"
"vt 0.350000 0.000000 \n"
"vt 0.400000 0.000000 \n"
"vt 0.450000 0.000000 \n"
"vt 0.500000 0.000000 \n"
"vt 0.550000 0.000000 \n"
"vt 0.600000 0.000000 \n"
"vt 0.650000 0.000000 \n"
"vt 0.700000 0.000000 \n"
"vt 0.750000 0.000000 \n"
"vt 0.800000 0.000000 \n"
"vt 0.850000 0.000000 \n"
"vt 0.900000 0.000000 \n"
"vt 0.950000 0.000000 \n"
"vt 1.000000 0.000000 \n"
"vt 0.000000 0.062500 \n"
"vt 0.050000 0.062500 \n"
"vt 0.100000 0.062500 \n"
"vt 0.150000 0.062500 \n"
"vt 0.200000 0.062500 \n"
"vt 0.250000 0.062500 \n"
"vt 0.300000 0.062500 \n"
"vt 0.350000 0.062500 \n"
"vt 0.400000 0.062500 \n"
"vt 0.450000 0.062500 \n"
"vt 0.500000 0.062500 \n"
"vt 0.550000 0.062500 \n"
"vt 0.600000 0.062500 \n"
"vt 0.650000 0.062500 \n"
"vt 0.700000 0.062500 \n"
"vt 0.750000 0.062500 \n"
"vt 0.800000 0.062500 \n"
"vt 0.850000 0.062500 \n"
"vt 0.900000 0.062500 \n"
"vt 0.950000 0.062500 \n"
"vt 1.000000 0.062500 \n"
"vt 0.000000 0.125000 \n"
"vt 0.050000 0.125000 \n"
"vt 0.100000 0.125000 \n"
"vt 0.150000 0.125000 \n"
"vt 0.200000 0.125000 \n"
"vt 0.250000 0.125000 \n"
"vt 0.300000 0.125000 \n"
"vt 0.350000 0.125000 \n"
"vt 0.400000 0.125000 \n"
"vt 0.450000 0.125000 \n"
"vt 0.500000 0.125000 \n"
"vt 0.550000 0.125000 \n"
"vt 0.600000 0.125000 \n"
"vt 0.650000 0.125000 \n"
"vt 0.700000 0.125000 \n"
"vt 0.750000 0.125000 \n"
"vt 0.800000 0.125000 \n"
"vt 0.850000 0.125000 \n"
"vt 0.900000 0.125000 \n"
"vt 0.950000 0.125000 \n"
"vt 1.000000 0.125000 \n"
"vt 0.000000 0.187500 \n"
"vt 0.050000 0.187500 \n"
"vt 0.100000 0.187500 \n"
"vt 0.150000 0.187500 \n"
"vt 0.200000 0.187500 \n"
"vt 0.250000 0.187500 \n"
"vt 0.300000 0.187500 \n"
"vt 0.350000 0.187500 \n"
"vt 0.400000 0.187500 \n"
"vt 0.450000 0.187500 \n"
"vt 0.500000 0.187500 \n"
"vt 0.550000 0.187500 \n"
"vt 0.600000 0.187500 \n"
"vt 0.650000 0.187500 \n"
"vt 0.700000 0.187500 \n"
"vt 0.750000 0.187500 \n"
"vt 0.800000 0.187500 \n"
"vt 0.850000 0.187500 \n"
"vt 0.900000 0.187500 \n"
"vt 0.950000 0.187500 \n"
"vt 1.000000 0.187500 \n"
"vt 0.000000 0.250000 \n"
"vt 0.050000 0.250000 \n"
"vt 0.100000 0.250000 \n"
"vt 0.150000 0.250000 \n"
"vt 0.200000 0.250000 \n"
"vt 0.250000 0.250000 \n"
"vt 0.300000 0.250000 \n"
"vt 0.350000 0.250000 \n"
"vt 0.400000 0.250000 \n"
"vt 0.450000 0.250000 \n"
"vt 0.500000 0.250000 \n"
"vt 0.550000 0.250000 \n"
"vt 0.600000 0.250000 \n"
"vt 0.650000 0.250000 \n"
"vt 0.700000 0.250000 \n"
"vt 0.750000 0.250000 \n"
"vt 0.800000 0.250000 \n"
"vt 0.850000 0.250000 \n"
"vt 0.900000 0.250000 \n"
"vt 0.950000 0.250000 \n"
"vt 1.000000 0.250000 \n"
"vn -0.832155 -0.285311 0.475517\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn -0.000000 -0.514496 0.857493\n"
"vn -0.000000 -0.514496 0.857493\n"
"vn -0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn 0.000000 -0.514496 0.857493\n"
"vn -0.000000 -0.514496 0.857493\n"
"vn -0.000000 -0.514496 0.857493\n"
"vn 0.832155 -0.285311 0.475517\n"
"vn -0.891704 -0.144501 0.428932\n"
"vn 0.000000 -0.226541 0.974002\n"
"vn 0.000000 -0.319255 0.947669\n"
"vn 0.000000 -0.226541 0.974002\n"
"vn 0.000000 -0.319255 0.947669\n"
"vn 0.000000 -0.226541 0.974002\n"
"vn -0.000000 -0.319255 0.947669\n"
"vn -0.000000 -0.226541 0.974002\n"
"vn 0.000000 -0.319255 0.947669\n"
"vn 0.000000 -0.226541 0.974002\n"
"vn 0.000000 -0.319255 0.947669\n"
"vn 0.000000 -0.226541 0.974002\n"
"vn 0.000000 -0.319255 0.947669\n"
"vn 0.000000 -0.226541 0.974002\n"
"vn 0.000000 -0.319255 0.947669\n"
"vn 0.000000 -0.226541 0.974002\n"
"vn 0.000000 -0.319255 0.947669\n"
"vn 0.000000 -0.226541 0.974002\n"
"vn -0.000000 -0.319255 0.947669\n"
"vn -0.000000 -0.226541 0.974002\n"
"vn 0.891704 -0.144501 0.428932\n"
"vn -0.928477 0.000000 0.371391\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn 0.928477 0.000000 0.371391\n"
"vn -0.928477 0.000000 0.371391\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn 0.928477 0.000000 0.371391\n"
"vn -0.928477 0.000000 0.371391\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn -0.000000 0.000000 1.000000\n"
"vn 0.928477 0.000000 0.371391\n"
"s off\n"
"f 1/1/1 2/2/2 23/23/23 22/22/22\n"
"f 2/2/2 3/3/3 24/24/24 23/23/23\n"
"f 3/3/3 4/4/4 25/25/25 24/24/24\n"
"f 4/4/4 5/5/5 26/26/26 25/25/25\n"
"f 5/5/5 6/6/6 27/27/27 26/26/26\n"
"f 6/6/6 7/7/7 28/28/28 27/27/27\n"
"f 7/7/7 8/8/8 29/29/29 28/28/28\n"
"f 8/8/8 9/9/9 30/30/30 29/29/29\n"
"f 9/9/9 10/10/10 31/31/31 30/30/30\n"
"f 10/10/10 11/11/11 32/32/32 31/31/31\n"
"f 11/11/11 12/12/12 33/33/33 32/32/32\n"
"f 12/12/12 13/13/13 34/34/34 33/33/33\n"
"f 13/13/13 14/14/14 35/35/35 34/34/34\n"
"f 14/14/14 15/15/15 36/36/36 35/35/35\n"
"f 15/15/15 16/16/16 37/37/37 36/36/36\n"
"f 16/16/16 17/17/17 38/38/38 37/37/37\n"
"f 17/17/17 18/18/18 39/39/39 38/38/38\n"
"f 18/18/18 19/19/19 40/40/40 39/39/39\n"
"f 19/19/19 20/20/20 41/41/41 40/40/40\n"
"f 20/20/20 21/21/21 42/42/42 41/41/41\n"
"f 22/22/22 23/23/23 44/44/44 43/43/43\n"
"f 23/23/23 24/24/24 45/45/45 44/44/44\n"
"f 24/24/24 25/25/25 46/46/46 45/45/45\n"
"f 25/25/25 26/26/26 47/47/47 46/46/46\n"
"f 26/26/26 27/27/27 48/48/48 47/47/47\n"
"f 27/27/27 28/28/28 49/49/49 48/48/48\n"
"f 28/28/28 29/29/29 50/50/50 49/49/49\n"
"f 29/29/29 30/30/30 51/51/51 50/50/50\n"
"f 30/30/30 31/31/31 52/52/52 51/51/51\n"
"f 31/31/31 32/32/32 53/53/53 52/52/52\n"
"f 32/32/32 33/33/33 54/54/54 53/53/53\n"
"f 33/33/33 34/34/34 55/55/55 54/54/54\n"
"f 34/34/34 35/35/35 56/56/56 55/55/55\n"
"f 35/35/35 36/36/36 57/57/57 56/56/56\n"
"f 36/36/36 37/37/37 58/58/58 57/57/57\n"
"f 37/37/37 38/38/38 59/59/59 58/58/58\n"
"f 38/38/38 39/39/39 60/60/60 59/59/59\n"
"f 39/39/39 40/40/40 61/61/61 60/60/60\n"
"f 40/40/40 41/41/41 62/62/62 61/61/61\n"
"f 41/41/41 42/42/42 63/63/63 62/62/62\n"
"f 43/43/43 44/44/44 65/65/65 64/64/64\n"
"f 44/44/44 45/45/45 66/66/66 65/65/65\n"
"f 45/45/45 46/46/46 67/67/67 66/66/66\n"
"f 46/46/46 47/47/47 68/68/68 67/67/67\n"
"f 47/47/47 48/48/48 69/69/69 68/68/68\n"
"f 48/48/48 49/49/49 70/70/70 69/69/69\n"
"f 49/49/49 50/50/50 71/71/71 70/70/70\n"
"f 50/50/50 51/51/51 72/72/72 71/71/71\n"
"f 51/51/51 52/52/52 73/73/73 72/72/72\n"
"f 52/52/52 53/53/53 74/74/74 73/73/73\n"
"f 53/53/53 54/54/54 75/75/75 74/74/74\n"
"f 54/54/54 55/55/55 76/76/76 75/75/75\n"
"f 55/55/55 56/56/56 77/77/77 76/76/76\n"
"f 56/56/56 57/57/57 78/78/78 77/77/77\n"
"f 57/57/57 58/58/58 79/79/79 78/78/78\n"
"f 58/58/58 59/59/59 80/80/80 79/79/79\n"
"f 59/59/59 60/60/60 81/81/81 80/80/80\n"
"f 60/60/60 61/61/61 82/82/82 81/81/81\n"
"f 61/61/61 62/62/62 83/83/83 82/82/82\n"
"f 62/62/62 63/63/63 84/84/84 83/83/83\n"
"f 64/64/64 65/65/65 86/86/86 85/85/85\n"
"f 65/65/65 66/66/66 87/87/87 86/86/86\n"
"f 66/66/66 67/67/67 88/88/88 87/87/87\n"
"f 67/67/67 68/68/68 89/89/89 88/88/88\n"
"f 68/68/68 69/69/69 90/90/90 89/89/89\n"
"f 69/69/69 70/70/70 91/91/91 90/90/90\n"
"f 70/70/70 71/71/71 92/92/92 91/91/91\n"
"f 71/71/71 72/72/72 93/93/93 92/92/92\n"
"f 72/72/72 73/73/73 94/94/94 93/93/93\n"
"f 73/73/73 74/74/74 95/95/95 94/94/94\n"
"f 74/74/74 75/75/75 96/96/96 95/95/95\n"
"f 75/75/75 76/76/76 97/97/97 96/96/96\n"
"f 76/76/76 77/77/77 98/98/98 97/97/97\n"
"f 77/77/77 78/78/78 99/99/99 98/98/98\n"
"f 78/78/78 79/79/79 100/100/100 99/99/99\n"
"f 79/79/79 80/80/80 101/101/101 100/100/100\n"
"f 80/80/80 81/81/81 102/102/102 101/101/101\n"
"f 81/81/81 82/82/82 103/103/103 102/102/102\n"
"f 82/82/82 83/83/83 104/104/104 103/103/103\n"
"f 83/83/83 84/84/84 105/105/105 104/104/104\n"
"t crease 2/1/0 1 22 10.000000\n"
"t crease 2/1/0 3 24 5.700000\n"
"t crease 2/1/0 5 26 5.000000\n"
"t crease 2/1/0 7 28 2.800000\n"
"t crease 2/1/0 9 30 2.000000\n"
"t crease 2/1/0 11 32 1.400000\n"
"t crease 2/1/0 13 34 1.000000\n"
"t crease 2/1/0 15 36 0.800000\n"
"t crease 2/1/0 17 38 0.200000\n"
"t crease 2/1/0 22 43 10.000000\n"
"t crease 2/1/0 24 45 5.700000\n"
"t crease 2/1/0 26 47 5.000000\n"
"t crease 2/1/0 28 49 2.800000\n"
"t crease 2/1/0 30 51 2.000000\n"
"t crease 2/1/0 32 53 1.400000\n"
"t crease 2/1/0 34 55 1.000000\n"
"t crease 2/1/0 36 57 0.800000\n"
"t crease 2/1/0 38 59 0.200000\n"
"t crease 2/1/0 43 64 10.000000\n"
"t crease 2/1/0 45 66 5.700000\n"
"t crease 2/1/0 47 68 5.000000\n"
"t crease 2/1/0 49 70 2.800000\n"
"t crease 2/1/0 51 72 2.000000\n"
"t crease 2/1/0 53 74 1.400000\n"
"t crease 2/1/0 55 76 1.000000\n"
"t crease 2/1/0 57 78 0.800000\n"
"t crease 2/1/0 59 80 0.200000\n"
"t crease 2/1/0 64 85 10.000000\n"
"t crease 2/1/0 66 87 5.700000\n"
"t crease 2/1/0 68 89 5.000000\n"
"t crease 2/1/0 70 91 2.800000\n"
"t crease 2/1/0 72 93 2.000000\n"
"t crease 2/1/0 74 95 1.400000\n"
"t crease 2/1/0 76 97 1.000000\n"
"t crease 2/1/0 78 99 0.800000\n"
"t crease 2/1/0 80 101 0.200000\n"
;

View File

@@ -0,0 +1,218 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_smoothtris0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.951057 -1.000000 -0.309017\n"
"v 0.809018 -1.000000 -0.587786\n"
"v 0.587786 -1.000000 -0.809017\n"
"v 0.309017 -1.000000 -0.951057\n"
"v 0.000000 -1.000000 -1.000000\n"
"v -0.309017 -1.000000 -0.951057\n"
"v -0.587785 -1.000000 -0.809017\n"
"v -0.809017 -1.000000 -0.587785\n"
"v -0.951057 -1.000000 -0.309017\n"
"v -1.000000 -1.000000 0.000000\n"
"v -0.951057 -1.000000 0.309017\n"
"v -0.809017 -1.000000 0.587785\n"
"v -0.587785 -1.000000 0.809017\n"
"v -0.309017 -1.000000 0.951057\n"
"v -0.000000 -1.000000 1.000000\n"
"v 0.309017 -1.000000 0.951057\n"
"v 0.587785 -1.000000 0.809017\n"
"v 0.809017 -1.000000 0.587785\n"
"v 0.951057 -1.000000 0.309017\n"
"v 1.000000 -1.000000 0.000000\n"
"v 0.951057 1.000000 -0.309017\n"
"v 0.809018 1.000000 -0.587786\n"
"v 0.587786 1.000000 -0.809017\n"
"v 0.309017 1.000000 -0.951057\n"
"v 0.000000 1.000000 -1.000000\n"
"v -0.309017 1.000000 -0.951057\n"
"v -0.587785 1.000000 -0.809017\n"
"v -0.809017 1.000000 -0.587785\n"
"v -0.951057 1.000000 -0.309017\n"
"v -1.000000 1.000000 0.000000\n"
"v -0.951057 1.000000 0.309017\n"
"v -0.809017 1.000000 0.587785\n"
"v -0.587785 1.000000 0.809017\n"
"v -0.309017 1.000000 0.951057\n"
"v -0.000000 1.000000 1.000000\n"
"v 0.309017 1.000000 0.951057\n"
"v 0.587785 1.000000 0.809017\n"
"v 0.809017 1.000000 0.587785\n"
"v 0.951057 1.000000 0.309017\n"
"v 1.000000 1.000000 0.000000\n"
"v 0.000000 -1.000000 0.000000\n"
"v 0.000000 1.000000 0.000000\n"
"vt 0.648603 0.107966\n"
"vt 0.626409 0.064408\n"
"vt 0.591842 0.029841\n"
"vt 0.548284 0.007647\n"
"vt 0.500000 -0.000000\n"
"vt 0.451716 0.007647\n"
"vt 0.408159 0.029841\n"
"vt 0.373591 0.064409\n"
"vt 0.351397 0.107966\n"
"vt 0.343750 0.156250\n"
"vt 0.351397 0.204534\n"
"vt 0.373591 0.248091\n"
"vt 0.408159 0.282659\n"
"vt 0.451716 0.304853\n"
"vt 0.500000 0.312500\n"
"vt 0.548284 0.304853\n"
"vt 0.591841 0.282659\n"
"vt 0.626409 0.248091\n"
"vt 0.648603 0.204534\n"
"vt 0.656250 0.156250\n"
"vt 0.375000 0.312500\n"
"vt 0.387500 0.312500\n"
"vt 0.400000 0.312500\n"
"vt 0.412500 0.312500\n"
"vt 0.425000 0.312500\n"
"vt 0.437500 0.312500\n"
"vt 0.450000 0.312500\n"
"vt 0.462500 0.312500\n"
"vt 0.475000 0.312500\n"
"vt 0.487500 0.312500\n"
"vt 0.500000 0.312500\n"
"vt 0.512500 0.312500\n"
"vt 0.525000 0.312500\n"
"vt 0.537500 0.312500\n"
"vt 0.550000 0.312500\n"
"vt 0.562500 0.312500\n"
"vt 0.575000 0.312500\n"
"vt 0.587500 0.312500\n"
"vt 0.600000 0.312500\n"
"vt 0.612500 0.312500\n"
"vt 0.625000 0.312500\n"
"vt 0.375000 0.688440\n"
"vt 0.387500 0.688440\n"
"vt 0.400000 0.688440\n"
"vt 0.412500 0.688440\n"
"vt 0.425000 0.688440\n"
"vt 0.437500 0.688440\n"
"vt 0.450000 0.688440\n"
"vt 0.462500 0.688440\n"
"vt 0.475000 0.688440\n"
"vt 0.487500 0.688440\n"
"vt 0.500000 0.688440\n"
"vt 0.512500 0.688440\n"
"vt 0.525000 0.688440\n"
"vt 0.537500 0.688440\n"
"vt 0.550000 0.688440\n"
"vt 0.562500 0.688440\n"
"vt 0.575000 0.688440\n"
"vt 0.587500 0.688440\n"
"vt 0.600000 0.688440\n"
"vt 0.612500 0.688440\n"
"vt 0.625000 0.688440\n"
"vt 0.648603 0.795466\n"
"vt 0.626409 0.751908\n"
"vt 0.591842 0.717341\n"
"vt 0.548284 0.695147\n"
"vt 0.500000 0.687500\n"
"vt 0.451716 0.695147\n"
"vt 0.408159 0.717341\n"
"vt 0.373591 0.751909\n"
"vt 0.351397 0.795466\n"
"vt 0.343750 0.843750\n"
"vt 0.351397 0.892034\n"
"vt 0.373591 0.935591\n"
"vt 0.408159 0.970159\n"
"vt 0.451716 0.992353\n"
"vt 0.500000 1.000000\n"
"vt 0.548284 0.992353\n"
"vt 0.591841 0.970159\n"
"vt 0.626409 0.935591\n"
"vt 0.648603 0.892034\n"
"vt 0.656250 0.843750\n"
"vt 0.500000 0.150000\n"
"vt 0.500000 0.837500\n"
"f 1/21 2/22 21/42\n"
"f 21/42 2/22 22/43\n"
"f 2/22 3/23 22/43\n"
"f 22/43 3/23 23/44\n"
"f 3/23 4/24 23/44\n"
"f 23/44 4/24 24/45\n"
"f 4/24 5/25 24/45\n"
"f 24/45 5/25 25/46\n"
"f 5/25 6/26 25/46\n"
"f 25/46 6/26 26/47\n"
"f 6/26 7/27 26/47\n"
"f 26/47 7/27 27/48\n"
"f 7/27 8/28 27/48\n"
"f 27/48 8/28 28/49\n"
"f 8/28 9/29 28/49\n"
"f 28/49 9/29 29/50\n"
"f 9/29 10/30 29/50\n"
"f 29/50 10/30 30/51\n"
"f 10/30 11/31 30/51\n"
"f 30/51 11/31 31/52\n"
"f 11/31 12/32 31/52\n"
"f 31/52 12/32 32/53\n"
"f 12/32 13/33 32/53\n"
"f 32/53 13/33 33/54\n"
"f 13/33 14/34 33/54\n"
"f 33/54 14/34 34/55\n"
"f 14/34 15/35 34/55\n"
"f 34/55 15/35 35/56\n"
"f 15/35 16/36 35/56\n"
"f 35/56 16/36 36/57\n"
"f 16/36 17/37 36/57\n"
"f 36/57 17/37 37/58\n"
"f 17/37 18/38 37/58\n"
"f 37/58 18/38 38/59\n"
"f 18/38 19/39 38/59\n"
"f 38/59 19/39 39/60\n"
"f 19/39 20/40 39/60\n"
"f 39/60 20/40 40/61\n"
"f 20/40 1/41 40/61\n"
"f 40/61 1/41 21/62\n"
"f 2/2 1/1 41/83\n"
"f 3/3 2/2 41/83\n"
"f 4/4 3/3 41/83\n"
"f 5/5 4/4 41/83\n"
"f 6/6 5/5 41/83\n"
"f 7/7 6/6 41/83\n"
"f 8/8 7/7 41/83\n"
"f 9/9 8/8 41/83\n"
"f 10/10 9/9 41/83\n"
"f 11/11 10/10 41/83\n"
"f 12/12 11/11 41/83\n"
"f 13/13 12/12 41/83\n"
"f 14/14 13/13 41/83\n"
"f 15/15 14/14 41/83\n"
"f 16/16 15/15 41/83\n"
"f 17/17 16/16 41/83\n"
"f 18/18 17/17 41/83\n"
"f 19/19 18/18 41/83\n"
"f 20/20 19/19 41/83\n"
"f 1/1 20/20 41/83\n"
"f 21/81 22/80 42/84\n"
"f 22/80 23/79 42/84\n"
"f 23/79 24/78 42/84\n"
"f 24/78 25/77 42/84\n"
"f 25/77 26/76 42/84\n"
"f 26/76 27/75 42/84\n"
"f 27/75 28/74 42/84\n"
"f 28/74 29/73 42/84\n"
"f 29/73 30/72 42/84\n"
"f 30/72 31/71 42/84\n"
"f 31/71 32/70 42/84\n"
"f 32/70 33/69 42/84\n"
"f 33/69 34/68 42/84\n"
"f 34/68 35/67 42/84\n"
"f 35/67 36/66 42/84\n"
"f 36/66 37/65 42/84\n"
"f 37/65 38/64 42/84\n"
"f 38/64 39/63 42/84\n"
"f 39/63 40/82 42/84\n"
"f 40/82 21/81 42/84\n"
"t smoothtriangles 0/0/1 catmark\n"
"\n";

View File

@@ -0,0 +1,218 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_smoothtris1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.951057 -1.000000 -0.309017\n"
"v 0.809018 -1.000000 -0.587786\n"
"v 0.587786 -1.000000 -0.809017\n"
"v 0.309017 -1.000000 -0.951057\n"
"v 0.000000 -1.000000 -1.000000\n"
"v -0.309017 -1.000000 -0.951057\n"
"v -0.587785 -1.000000 -0.809017\n"
"v -0.809017 -1.000000 -0.587785\n"
"v -0.951057 -1.000000 -0.309017\n"
"v -1.000000 -1.000000 0.000000\n"
"v -0.951057 -1.000000 0.309017\n"
"v -0.809017 -1.000000 0.587785\n"
"v -0.587785 -1.000000 0.809017\n"
"v -0.309017 -1.000000 0.951057\n"
"v -0.000000 -1.000000 1.000000\n"
"v 0.309017 -1.000000 0.951057\n"
"v 0.587785 -1.000000 0.809017\n"
"v 0.809017 -1.000000 0.587785\n"
"v 0.951057 -1.000000 0.309017\n"
"v 1.000000 -1.000000 0.000000\n"
"v 0.951057 1.000000 -0.309017\n"
"v 0.809018 1.000000 -0.587786\n"
"v 0.587786 1.000000 -0.809017\n"
"v 0.309017 1.000000 -0.951057\n"
"v 0.000000 1.000000 -1.000000\n"
"v -0.309017 1.000000 -0.951057\n"
"v -0.587785 1.000000 -0.809017\n"
"v -0.809017 1.000000 -0.587785\n"
"v -0.951057 1.000000 -0.309017\n"
"v -1.000000 1.000000 0.000000\n"
"v -0.951057 1.000000 0.309017\n"
"v -0.809017 1.000000 0.587785\n"
"v -0.587785 1.000000 0.809017\n"
"v -0.309017 1.000000 0.951057\n"
"v -0.000000 1.000000 1.000000\n"
"v 0.309017 1.000000 0.951057\n"
"v 0.587785 1.000000 0.809017\n"
"v 0.809017 1.000000 0.587785\n"
"v 0.951057 1.000000 0.309017\n"
"v 1.000000 1.000000 0.000000\n"
"v 0.000000 -1.000000 0.000000\n"
"v 0.000000 1.000000 0.000000\n"
"vt 0.648603 0.107966\n"
"vt 0.626409 0.064408\n"
"vt 0.591842 0.029841\n"
"vt 0.548284 0.007647\n"
"vt 0.500000 -0.000000\n"
"vt 0.451716 0.007647\n"
"vt 0.408159 0.029841\n"
"vt 0.373591 0.064409\n"
"vt 0.351397 0.107966\n"
"vt 0.343750 0.156250\n"
"vt 0.351397 0.204534\n"
"vt 0.373591 0.248091\n"
"vt 0.408159 0.282659\n"
"vt 0.451716 0.304853\n"
"vt 0.500000 0.312500\n"
"vt 0.548284 0.304853\n"
"vt 0.591841 0.282659\n"
"vt 0.626409 0.248091\n"
"vt 0.648603 0.204534\n"
"vt 0.656250 0.156250\n"
"vt 0.375000 0.312500\n"
"vt 0.387500 0.312500\n"
"vt 0.400000 0.312500\n"
"vt 0.412500 0.312500\n"
"vt 0.425000 0.312500\n"
"vt 0.437500 0.312500\n"
"vt 0.450000 0.312500\n"
"vt 0.462500 0.312500\n"
"vt 0.475000 0.312500\n"
"vt 0.487500 0.312500\n"
"vt 0.500000 0.312500\n"
"vt 0.512500 0.312500\n"
"vt 0.525000 0.312500\n"
"vt 0.537500 0.312500\n"
"vt 0.550000 0.312500\n"
"vt 0.562500 0.312500\n"
"vt 0.575000 0.312500\n"
"vt 0.587500 0.312500\n"
"vt 0.600000 0.312500\n"
"vt 0.612500 0.312500\n"
"vt 0.625000 0.312500\n"
"vt 0.375000 0.688440\n"
"vt 0.387500 0.688440\n"
"vt 0.400000 0.688440\n"
"vt 0.412500 0.688440\n"
"vt 0.425000 0.688440\n"
"vt 0.437500 0.688440\n"
"vt 0.450000 0.688440\n"
"vt 0.462500 0.688440\n"
"vt 0.475000 0.688440\n"
"vt 0.487500 0.688440\n"
"vt 0.500000 0.688440\n"
"vt 0.512500 0.688440\n"
"vt 0.525000 0.688440\n"
"vt 0.537500 0.688440\n"
"vt 0.550000 0.688440\n"
"vt 0.562500 0.688440\n"
"vt 0.575000 0.688440\n"
"vt 0.587500 0.688440\n"
"vt 0.600000 0.688440\n"
"vt 0.612500 0.688440\n"
"vt 0.625000 0.688440\n"
"vt 0.648603 0.795466\n"
"vt 0.626409 0.751908\n"
"vt 0.591842 0.717341\n"
"vt 0.548284 0.695147\n"
"vt 0.500000 0.687500\n"
"vt 0.451716 0.695147\n"
"vt 0.408159 0.717341\n"
"vt 0.373591 0.751909\n"
"vt 0.351397 0.795466\n"
"vt 0.343750 0.843750\n"
"vt 0.351397 0.892034\n"
"vt 0.373591 0.935591\n"
"vt 0.408159 0.970159\n"
"vt 0.451716 0.992353\n"
"vt 0.500000 1.000000\n"
"vt 0.548284 0.992353\n"
"vt 0.591841 0.970159\n"
"vt 0.626409 0.935591\n"
"vt 0.648603 0.892034\n"
"vt 0.656250 0.843750\n"
"vt 0.500000 0.150000\n"
"vt 0.500000 0.837500\n"
"f 1/21 2/22 21/42\n"
"f 21/42 2/22 22/43\n"
"f 2/22 3/23 22/43\n"
"f 22/43 3/23 23/44\n"
"f 3/23 4/24 23/44\n"
"f 23/44 4/24 24/45\n"
"f 4/24 5/25 24/45\n"
"f 24/45 5/25 25/46\n"
"f 5/25 6/26 25/46\n"
"f 25/46 6/26 26/47\n"
"f 6/26 7/27 26/47\n"
"f 26/47 7/27 27/48\n"
"f 7/27 8/28 27/48\n"
"f 27/48 8/28 28/49\n"
"f 8/28 9/29 28/49\n"
"f 28/49 9/29 29/50\n"
"f 9/29 10/30 29/50\n"
"f 29/50 10/30 30/51\n"
"f 10/30 11/31 30/51\n"
"f 30/51 11/31 31/52\n"
"f 11/31 12/32 31/52\n"
"f 31/52 12/32 32/53\n"
"f 12/32 13/33 32/53\n"
"f 32/53 13/33 33/54\n"
"f 13/33 14/34 33/54\n"
"f 33/54 14/34 34/55\n"
"f 14/34 15/35 34/55\n"
"f 34/55 15/35 35/56\n"
"f 15/35 16/36 35/56\n"
"f 35/56 16/36 36/57\n"
"f 16/36 17/37 36/57\n"
"f 36/57 17/37 37/58\n"
"f 17/37 18/38 37/58\n"
"f 37/58 18/38 38/59\n"
"f 18/38 19/39 38/59\n"
"f 38/59 19/39 39/60\n"
"f 19/39 20/40 39/60\n"
"f 39/60 20/40 40/61\n"
"f 20/40 1/41 40/61\n"
"f 40/61 1/41 21/62\n"
"f 2/2 1/1 41/83\n"
"f 3/3 2/2 41/83\n"
"f 4/4 3/3 41/83\n"
"f 5/5 4/4 41/83\n"
"f 6/6 5/5 41/83\n"
"f 7/7 6/6 41/83\n"
"f 8/8 7/7 41/83\n"
"f 9/9 8/8 41/83\n"
"f 10/10 9/9 41/83\n"
"f 11/11 10/10 41/83\n"
"f 12/12 11/11 41/83\n"
"f 13/13 12/12 41/83\n"
"f 14/14 13/13 41/83\n"
"f 15/15 14/14 41/83\n"
"f 16/16 15/15 41/83\n"
"f 17/17 16/16 41/83\n"
"f 18/18 17/17 41/83\n"
"f 19/19 18/18 41/83\n"
"f 20/20 19/19 41/83\n"
"f 1/1 20/20 41/83\n"
"f 21/81 22/80 42/84\n"
"f 22/80 23/79 42/84\n"
"f 23/79 24/78 42/84\n"
"f 24/78 25/77 42/84\n"
"f 25/77 26/76 42/84\n"
"f 26/76 27/75 42/84\n"
"f 27/75 28/74 42/84\n"
"f 28/74 29/73 42/84\n"
"f 29/73 30/72 42/84\n"
"f 30/72 31/71 42/84\n"
"f 31/71 32/70 42/84\n"
"f 32/70 33/69 42/84\n"
"f 33/69 34/68 42/84\n"
"f 34/68 35/67 42/84\n"
"f 35/67 36/66 42/84\n"
"f 36/66 37/65 42/84\n"
"f 37/65 38/64 42/84\n"
"f 38/64 39/63 42/84\n"
"f 39/63 40/82 42/84\n"
"f 40/82 21/81 42/84\n"
"t smoothtriangles 0/0/1 smooth\n"
"\n";

View File

@@ -0,0 +1,57 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_square_hedit0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v -1 -1 0\n"
"v -0.333333 -1 0\n"
"v 0.333333 -1 0\n"
"v 1 -1 0\n"
"v -1 -0.333333 0\n"
"v -0.333333 -0.333333 0\n"
"v 0.333333 -0.333333 0\n"
"v 1 -0.333333 0\n"
"v -1 0.333333 0\n"
"v -0.333333 0.333333 0\n"
"v 0.333333 0.333333 0\n"
"v 1 0.333333 0\n"
"v -1 1 0\n"
"v -0.333333 1 0\n"
"v 0.333333 1 0\n"
"v 1 1 0\n"
"vt -1 -1\n"
"vt -0.333333 -1\n"
"vt 0.333333 -1\n"
"vt 1 -1\n"
"vt -1 -0.333333\n"
"vt -0.333333 -0.333333\n"
"vt 0.333333 -0.333333\n"
"vt 1 -0.333333\n"
"vt -1 0.333333\n"
"vt -0.333333 0.333333\n"
"vt 0.333333 0.333333\n"
"vt 1 0.333333\n"
"vt -1 1\n"
"vt -0.333333 1\n"
"vt 0.333333 1\n"
"vt 1 1\n"
"s off\n"
"f 1/1 2/2 6/6 5/5\n"
"f 2/2 3/3 7/7 6/6\n"
"f 3/3 4/4 8/8 7/7\n"
"f 5/5 6/6 10/10 9/9\n"
"f 6/6 7/7 11/11 10/10\n"
"f 7/7 8/8 12/12 11/11\n"
"f 9/9 10/10 14/14 13/13\n"
"f 10/10 11/11 15/15 14/14\n"
"f 11/11 12/12 16/16 15/15\n"
"t interpolateboundary 1/0/0 2\n"
"t vertexedit 16/24/3 3 0 1 0 3 0 1 1 3 0 1 2 3 0 1 3 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 add P value\n"
"t vertexedit 20/24/3 4 4 1 1 0 4 4 1 1 1 4 4 1 1 2 4 4 1 1 3 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 add P value\n"
"t vertexedit 24/24/3 5 8 0 1 1 0 5 8 0 1 1 1 5 8 0 1 1 2 5 8 0 1 1 3 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 add P value\n"
;

View File

@@ -0,0 +1,56 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_square_hedit1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v -1 -1 0\n"
"v -0.333333 -1 0\n"
"v 0.333333 -1 0\n"
"v 1 -1 0\n"
"v -1 -0.333333 0\n"
"v -0.333333 -0.333333 0\n"
"v 0.333333 -0.333333 0\n"
"v 1 -0.333333 0\n"
"v -1 0.333333 0\n"
"v -0.333333 0.333333 0\n"
"v 0.333333 0.333333 0\n"
"v 1 0.333333 0\n"
"v -1 1 0\n"
"v -0.333333 1 0\n"
"v 0.333333 1 0\n"
"v 1 1 0\n"
"vt -1 -1\n"
"vt -0.333333 -1\n"
"vt 0.333333 -1\n"
"vt 1 -1\n"
"vt -1 -0.333333\n"
"vt -0.333333 -0.333333\n"
"vt 0.333333 -0.333333\n"
"vt 1 -0.333333\n"
"vt -1 0.333333\n"
"vt -0.333333 0.333333\n"
"vt 0.333333 0.333333\n"
"vt 1 0.333333\n"
"vt -1 1\n"
"vt -0.333333 1\n"
"vt 0.333333 1\n"
"vt 1 1\n"
"s off\n"
"f 1/1 2/2 6/6 5/5\n"
"f 2/2 3/3 7/7 6/6\n"
"f 3/3 4/4 8/8 7/7\n"
"f 5/5 6/6 10/10 9/9\n"
"f 6/6 7/7 11/11 10/10\n"
"f 7/7 8/8 12/12 11/11\n"
"f 9/9 10/10 14/14 13/13\n"
"f 10/10 11/11 15/15 14/14\n"
"f 11/11 12/12 16/16 15/15\n"
"t interpolateboundary 1/0/0 2\n"
"t vertexedit 16/24/3 3 4 1 0 3 4 1 1 3 4 1 2 3 4 1 3 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 add P value\n"
"t vertexedit 16/4/3 3 4 1 0 3 4 1 1 3 4 1 2 3 4 1 3 10 10 10 10 set P sharpness\n"
;

View File

@@ -0,0 +1,56 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_square_hedit2 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v -1 -1 0\n"
"v -0.333333 -1 0\n"
"v 0.333333 -1 0\n"
"v 1 -1 0\n"
"v -1 -0.333333 0\n"
"v -0.333333 -0.333333 0\n"
"v 0.333333 -0.333333 0\n"
"v 1 -0.333333 0\n"
"v -1 0.333333 0\n"
"v -0.333333 0.333333 0\n"
"v 0.333333 0.333333 0\n"
"v 1 0.333333 0\n"
"v -1 1 0\n"
"v -0.333333 1 0\n"
"v 0.333333 1 0\n"
"v 1 1 0\n"
"vt -1 -1\n"
"vt -0.333333 -1\n"
"vt 0.333333 -1\n"
"vt 1 -1\n"
"vt -1 -0.333333\n"
"vt -0.333333 -0.333333\n"
"vt 0.333333 -0.333333\n"
"vt 1 -0.333333\n"
"vt -1 0.333333\n"
"vt -0.333333 0.333333\n"
"vt 0.333333 0.333333\n"
"vt 1 0.333333\n"
"vt -1 1\n"
"vt -0.333333 1\n"
"vt 0.333333 1\n"
"vt 1 1\n"
"s off\n"
"f 1/1 2/2 6/6 5/5\n"
"f 2/2 3/3 7/7 6/6\n"
"f 3/3 4/4 8/8 7/7\n"
"f 5/5 6/6 10/10 9/9\n"
"f 6/6 7/7 11/11 10/10\n"
"f 7/7 8/8 12/12 11/11\n"
"f 9/9 10/10 14/14 13/13\n"
"f 10/10 11/11 15/15 14/14\n"
"f 11/11 12/12 16/16 15/15\n"
"t interpolateboundary 1/0/0 2\n"
"t vertexedit 16/24/3 3 4 1 0 3 4 1 1 3 4 1 2 3 4 1 3 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 add P value\n"
"t edgeedit 16/4/3 3 4 1 0 3 4 1 1 3 4 1 2 3 4 1 3 10 10 10 10 set P sharpness\n"
;

View File

@@ -0,0 +1,57 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_square_hedit3 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v -1 -1 0\n"
"v -0.333333 -1 0\n"
"v 0.333333 -1 0\n"
"v 1 -1 0\n"
"v -1 -0.333333 0\n"
"v -0.333333 -0.333333 0\n"
"v 0.333333 -0.333333 0\n"
"v 1 -0.333333 0\n"
"v -1 0.333333 0\n"
"v -0.333333 0.333333 0\n"
"v 0.333333 0.333333 0\n"
"v 1 0.333333 0\n"
"v -1 1 0\n"
"v -0.333333 1 0\n"
"v 0.333333 1 0\n"
"v 1 1 0\n"
"vt -1 -1\n"
"vt -0.333333 -1\n"
"vt 0.333333 -1\n"
"vt 1 -1\n"
"vt -1 -0.333333\n"
"vt -0.333333 -0.333333\n"
"vt 0.333333 -0.333333\n"
"vt 1 -0.333333\n"
"vt -1 0.333333\n"
"vt -0.333333 0.333333\n"
"vt 0.333333 0.333333\n"
"vt 1 0.333333\n"
"vt -1 1\n"
"vt -0.333333 1\n"
"vt 0.333333 1\n"
"vt 1 1\n"
"s off\n"
"f 1/1 2/2 6/6 5/5\n"
"f 2/2 3/3 7/7 6/6\n"
"f 3/3 4/4 8/8 7/7\n"
"f 5/5 6/6 10/10 9/9\n"
"f 6/6 7/7 11/11 10/10\n"
"f 7/7 8/8 12/12 11/11\n"
"f 9/9 10/10 14/14 13/13\n"
"f 10/10 11/11 15/15 14/14\n"
"f 11/11 12/12 16/16 15/15\n"
"t interpolateboundary 1/0/0 2\n"
"t vertexedit 16/24/3 3 4 1 0 3 4 1 1 3 4 1 2 3 4 1 3 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 add P value\n"
"t edgeedit 16/4/3 3 4 1 0 3 4 1 1 3 4 1 2 3 4 1 3 10 10 10 10 set P sharpness\n"
"t vertexedit 16/4/3 3 4 1 0 3 4 1 1 3 4 1 2 3 4 1 3 10 10 10 10 set P sharpness\n"
;

View File

@@ -0,0 +1,56 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_square_hedit4 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v -1 -1 0\n"
"v -0.333333 -1 0\n"
"v 0.333333 -1 0\n"
"v 1 -1 0\n"
"v -1 -0.333333 0\n"
"v -0.333333 -0.333333 0\n"
"v 0.333333 -0.333333 0\n"
"v 1 -0.333333 0\n"
"v -1 0.333333 0\n"
"v -0.333333 0.333333 0\n"
"v 0.333333 0.333333 0\n"
"v 1 0.333333 0\n"
"v -1 1 0\n"
"v -0.333333 1 0\n"
"v 0.333333 1 0\n"
"v 1 1 0\n"
"vt -1 -1\n"
"vt -0.333333 -1\n"
"vt 0.333333 -1\n"
"vt 1 -1\n"
"vt -1 -0.333333\n"
"vt -0.333333 -0.333333\n"
"vt 0.333333 -0.333333\n"
"vt 1 -0.333333\n"
"vt -1 0.333333\n"
"vt -0.333333 0.333333\n"
"vt 0.333333 0.333333\n"
"vt 1 0.333333\n"
"vt -1 1\n"
"vt -0.333333 1\n"
"vt 0.333333 1\n"
"vt 1 1\n"
"s off\n"
"f 1/1 2/2 6/6 5/5\n"
"f 2/2 3/3 7/7 6/6\n"
"f 3/3 4/4 8/8 7/7\n"
"f 5/5 6/6 10/10 9/9\n"
"f 6/6 7/7 11/11 10/10\n"
"f 7/7 8/8 12/12 11/11\n"
"f 9/9 10/10 14/14 13/13\n"
"f 10/10 11/11 15/15 14/14\n"
"f 11/11 12/12 16/16 15/15\n"
"t interpolateboundary 1/0/0 2\n"
"t vertexedit 20/12/3 4 4 1 1 0 4 4 1 1 1 4 4 1 1 2 4 4 1 1 3 0.0 0.0 1.0 0.0 0.0 1.0 0.0 0.0 1.0 0.0 0.0 1.0 add P value\n"
"t faceedit 4/0/1 3 4 1 1 hole\n"
;

View File

@@ -0,0 +1,90 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_tent =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.697056 0.000000\n"
"v 0.565686 -1.131370 0.000000\n"
"v 1.131371 -0.565686 0.800000\n"
"v 1.697056 0.000000 0.000000\n"
"v -0.565686 -1.131370 0.000000\n"
"v 0.000000 -0.565686 0.000000\n"
"v 0.565686 0.000000 0.800000\n"
"v 1.131370 0.565686 0.000000\n"
"v -1.131371 -0.565686 0.000000\n"
"v -0.565686 0.000000 0.000000\n"
"v 0.000000 0.565686 0.000000\n"
"v 0.565686 1.131371 0.000000\n"
"v -1.697056 0.000000 0.000000\n"
"v -1.131370 0.565686 0.000000\n"
"v -0.565686 1.131371 0.000000\n"
"v 0.000000 1.697056 0.000000\n"
"vt 0.000000 0.000000\n"
"vt 0.333333 0.000000\n"
"vt 0.333333 0.333333\n"
"vt 0.000000 0.333333\n"
"vt 0.666667 0.000000\n"
"vt 0.666667 0.333333\n"
"vt 1.000000 0.000000\n"
"vt 1.000000 0.333333\n"
"vt 0.333333 0.666667\n"
"vt 0.000000 0.666667\n"
"vt 0.666667 0.666667\n"
"vt 1.000000 0.666667\n"
"vt 0.333333 1.000000\n"
"vt 0.000000 1.000000\n"
"vt 0.666667 1.000000\n"
"vt 1.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.270598 -0.270598 0.923880\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.270598 -0.270598 0.923880\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.183013 0.183013 0.965926\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.500000 0.500000 0.707107\n"
"vn 0.258819 0.557678 0.788675\n"
"vn -0.183013 0.183013 0.965926\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn -0.149576 0.000000 0.988750\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn -0.183013 0.183013 0.965926\n"
"vn -0.155051 0.155051 0.975663\n"
"vn -0.149576 0.000000 0.988750\n"
"vn -0.183013 0.183013 0.965926\n"
"vn 0.258819 0.557678 0.788675\n"
"vn 0.000000 0.302905 0.953021\n"
"vn -0.155051 0.155051 0.975663\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.149576 0.000000 0.988750\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.149576 0.000000 0.988750\n"
"vn -0.155051 0.155051 0.975663\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.155051 0.155051 0.975663\n"
"vn 0.000000 0.302905 0.953021\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"f 1/1/1 2/2/2 6/3/3 5/4/4\n"
"f 2/2/5 3/5/6 7/6/7 6/3/8\n"
"f 3/5/9 4/7/10 8/8/11 7/6/12\n"
"f 5/4/13 6/3/14 10/9/15 9/10/16\n"
"f 6/3/17 7/6/18 11/11/19 10/9/20\n"
"f 7/6/21 8/8/22 12/12/23 11/11/24\n"
"f 9/10/25 10/9/26 14/13/27 13/14/28\n"
"f 10/9/29 11/11/30 15/15/31 14/13/32\n"
"f 11/11/33 12/12/34 16/16/35 15/15/36\n"
"t interpolateboundary 1/0/0 2\n"
"\n"
;

View File

@@ -0,0 +1,92 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_tent_creases0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.697056 0.000000\n"
"v 0.565686 -1.131370 0.000000\n"
"v 1.131371 -0.565686 0.800000\n"
"v 1.697056 0.000000 0.000000\n"
"v -0.565686 -1.131370 0.000000\n"
"v 0.000000 -0.565686 0.000000\n"
"v 0.565686 0.000000 0.800000\n"
"v 1.131370 0.565686 0.000000\n"
"v -1.131371 -0.565686 0.000000\n"
"v -0.565686 0.000000 0.000000\n"
"v 0.000000 0.565686 0.000000\n"
"v 0.565686 1.131371 0.000000\n"
"v -1.697056 0.000000 0.000000\n"
"v -1.131370 0.565686 0.000000\n"
"v -0.565686 1.131371 0.000000\n"
"v 0.000000 1.697056 0.000000\n"
"vt 0.000000 0.000000\n"
"vt 0.333333 0.000000\n"
"vt 0.333333 0.333333\n"
"vt 0.000000 0.333333\n"
"vt 0.666667 0.000000\n"
"vt 0.666667 0.333333\n"
"vt 1.000000 0.000000\n"
"vt 1.000000 0.333333\n"
"vt 0.333333 0.666667\n"
"vt 0.000000 0.666667\n"
"vt 0.666667 0.666667\n"
"vt 1.000000 0.666667\n"
"vt 0.333333 1.000000\n"
"vt 0.000000 1.000000\n"
"vt 0.666667 1.000000\n"
"vt 1.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.270598 -0.270598 0.923880\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.270598 -0.270598 0.923880\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.183013 0.183013 0.965926\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.500000 0.500000 0.707107\n"
"vn 0.258819 0.557678 0.788675\n"
"vn -0.183013 0.183013 0.965926\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn -0.149576 0.000000 0.988750\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn -0.183013 0.183013 0.965926\n"
"vn -0.155051 0.155051 0.975663\n"
"vn -0.149576 0.000000 0.988750\n"
"vn -0.183013 0.183013 0.965926\n"
"vn 0.258819 0.557678 0.788675\n"
"vn 0.000000 0.302905 0.953021\n"
"vn -0.155051 0.155051 0.975663\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.149576 0.000000 0.988750\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.149576 0.000000 0.988750\n"
"vn -0.155051 0.155051 0.975663\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.155051 0.155051 0.975663\n"
"vn 0.000000 0.302905 0.953021\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"f 1/1/1 2/2/2 6/3/3 5/4/4\n"
"f 2/2/5 3/5/6 7/6/7 6/3/8\n"
"f 3/5/9 4/7/10 8/8/11 7/6/12\n"
"f 5/4/13 6/3/14 10/9/15 9/10/16\n"
"f 6/3/17 7/6/18 11/11/19 10/9/20\n"
"f 7/6/21 8/8/22 12/12/23 11/11/24\n"
"f 9/10/25 10/9/26 14/13/27 13/14/28\n"
"f 10/9/29 11/11/30 15/15/31 14/13/32\n"
"f 11/11/33 12/12/34 16/16/35 15/15/36\n"
"t crease 2/1/0 2 6 2.0\n"
"t crease 2/1/0 6 10 2.0\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,93 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_tent_creases1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 -1.697056 0.000000\n"
"v 0.565686 -1.131370 0.000000\n"
"v 1.131371 -0.565686 0.800000\n"
"v 1.697056 0.000000 0.000000\n"
"v -0.565686 -1.131370 0.000000\n"
"v 0.000000 -0.565686 0.000000\n"
"v 0.565686 0.000000 0.800000\n"
"v 1.131370 0.565686 0.000000\n"
"v -1.131371 -0.565686 0.000000\n"
"v -0.565686 0.000000 0.000000\n"
"v 0.000000 0.565686 0.000000\n"
"v 0.565686 1.131371 0.000000\n"
"v -1.697056 0.000000 0.000000\n"
"v -1.131370 0.565686 0.000000\n"
"v -0.565686 1.131371 0.000000\n"
"v 0.000000 1.697056 0.000000\n"
"vt 0.000000 0.000000\n"
"vt 0.333333 0.000000\n"
"vt 0.333333 0.333333\n"
"vt 0.000000 0.333333\n"
"vt 0.666667 0.000000\n"
"vt 0.666667 0.333333\n"
"vt 1.000000 0.000000\n"
"vt 1.000000 0.333333\n"
"vt 0.333333 0.666667\n"
"vt 0.000000 0.666667\n"
"vt 0.666667 0.666667\n"
"vt 1.000000 0.666667\n"
"vt 0.333333 1.000000\n"
"vt 0.000000 1.000000\n"
"vt 0.666667 1.000000\n"
"vt 1.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.270598 -0.270598 0.923880\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.270598 -0.270598 0.923880\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.183013 0.183013 0.965926\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.500000 0.500000 0.707107\n"
"vn 0.258819 0.557678 0.788675\n"
"vn -0.183013 0.183013 0.965926\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn -0.149576 0.000000 0.988750\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.289735 -0.134467 0.947614\n"
"vn -0.183013 0.183013 0.965926\n"
"vn -0.155051 0.155051 0.975663\n"
"vn -0.149576 0.000000 0.988750\n"
"vn -0.183013 0.183013 0.965926\n"
"vn 0.258819 0.557678 0.788675\n"
"vn 0.000000 0.302905 0.953021\n"
"vn -0.155051 0.155051 0.975663\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.149576 0.000000 0.988750\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.149576 0.000000 0.988750\n"
"vn -0.155051 0.155051 0.975663\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn -0.155051 0.155051 0.975663\n"
"vn 0.000000 0.302905 0.953021\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"f 1/1/1 2/2/2 6/3/3 5/4/4\n"
"f 2/2/5 3/5/6 7/6/7 6/3/8\n"
"f 3/5/9 4/7/10 8/8/11 7/6/12\n"
"f 5/4/13 6/3/14 10/9/15 9/10/16\n"
"f 6/3/17 7/6/18 11/11/19 10/9/20\n"
"f 7/6/21 8/8/22 12/12/23 11/11/24\n"
"f 9/10/25 10/9/26 14/13/27 13/14/28\n"
"f 10/9/29 11/11/30 15/15/31 14/13/32\n"
"f 11/11/33 12/12/34 16/16/35 15/15/36\n"
"t crease 2/1/0 2 6 2.0\n"
"t crease 2/1/0 6 10 2.0\n"
"t corner 1/1/0 6 3.0\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,95 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_toroidal_tet =
"#\n"
"# Toroidal tetrahedron oriented within an axially aligned cube:\n"
"#\n"
"v -1.0 1.0 -1.0\n"
"v -1.0 -1.0 1.0\n"
"v 1.0 -1.0 -1.0\n"
"v 1.0 1.0 1.0\n"
"v 0.2 -0.6 -0.6\n"
"v -0.6 0.2 -0.6\n"
"v -0.6 -0.6 0.2\n"
"v -0.6 0.6 -0.2\n"
"v -0.6 -0.2 0.6\n"
"v 0.2 0.6 0.6\n"
"v -0.2 -0.6 0.6\n"
"v 0.6 -0.6 -0.2\n"
"v 0.6 0.2 0.6\n"
"v 0.6 -0.2 -0.6\n"
"v -0.2 0.6 -0.6\n"
"v 0.6 0.6 0.2\n"
"v -0.4 0.4 -0.4\n"
"v -0.4 -0.4 0.4\n"
"v 0.4 -0.4 -0.4\n"
"v 0.4 0.4 0.4\n"
"\n"
"vt 0.250 0.410\n"
"vt 0.025 0.020\n"
"vt 0.475 0.020\n"
"vt 0.750 0.410\n"
"vt 0.525 0.020\n"
"vt 0.975 0.020\n"
"vt 0.250 0.910\n"
"vt 0.025 0.520\n"
"vt 0.475 0.520\n"
"vt 0.750 0.910\n"
"vt 0.525 0.520\n"
"vt 0.975 0.520\n"
"vt 0.250 0.254\n"
"vt 0.160 0.100\n"
"vt 0.340 0.100\n"
"vt 0.750 0.254\n"
"vt 0.660 0.100\n"
"vt 0.840 0.100\n"
"vt 0.250 0.754\n"
"vt 0.160 0.600\n"
"vt 0.340 0.600\n"
"vt 0.750 0.754\n"
"vt 0.660 0.600\n"
"vt 0.840 0.600\n"
"vt 0.250 0.175\n"
"vt 0.228 0.137\n"
"vt 0.273 0.137\n"
"vt 0.750 0.175\n"
"vt 0.728 0.137\n"
"vt 0.772 0.137\n"
"vt 0.250 0.675\n"
"vt 0.228 0.637\n"
"vt 0.273 0.637\n"
"vt 0.750 0.675\n"
"vt 0.728 0.637\n"
"vt 0.772 0.637\n"
"\n"
"f 1/1 3/2 5/14 6/13\n"
"f 3/2 2/3 7/15 5/14\n"
"f 2/3 1/1 6/13 7/15\n"
"f 2/4 4/5 10/17 9/16\n"
"f 4/5 1/6 8/18 10/17\n"
"f 1/6 2/4 9/16 8/18\n"
"f 3/7 4/8 13/20 12/19\n"
"f 4/8 2/9 11/21 13/20\n"
"f 2/9 3/7 12/19 11/21\n"
"f 4/10 3/11 14/23 16/22\n"
"f 3/11 1/12 15/24 14/23\n"
"f 1/12 4/10 16/22 15/24\n"
"f 6/13 5/14 19/26 17/25\n"
"f 5/14 7/15 18/27 19/26\n"
"f 7/15 6/13 17/25 18/27\n"
"f 9/16 10/17 20/29 18/28\n"
"f 10/17 8/18 17/30 20/29\n"
"f 8/18 9/16 18/28 17/30\n"
"f 12/19 13/20 20/32 19/31\n"
"f 13/20 11/21 18/33 20/32\n"
"f 11/21 12/19 19/31 18/33\n"
"f 14/23 15/24 17/36 19/35\n"
"f 15/24 16/22 20/34 17/36\n"
"f 16/22 14/23 19/35 20/34\n"
"\n"
;

View File

@@ -0,0 +1,120 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_torus =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 1.250520 -0.353553 0.517982\n"
"v 0.597239 -0.353553 0.247384\n"
"v 0.597239 0.353553 0.247384\n"
"v 1.250520 0.353553 0.517982\n"
"v 0.517982 -0.353553 1.250520\n"
"v 0.247384 -0.353553 0.597239\n"
"v 0.247384 0.353553 0.597239\n"
"v 0.517982 0.353553 1.250520\n"
"v -0.517982 -0.353553 1.250520\n"
"v -0.247384 -0.353553 0.597239\n"
"v -0.247384 0.353553 0.597239\n"
"v -0.517982 0.353553 1.250520\n"
"v -1.250520 -0.353553 0.517982\n"
"v -0.597239 -0.353553 0.247384\n"
"v -0.597239 0.353553 0.247384\n"
"v -1.250520 0.353553 0.517982\n"
"v -1.250520 -0.353553 -0.517982\n"
"v -0.597239 -0.353553 -0.247384\n"
"v -0.597239 0.353553 -0.247384\n"
"v -1.250520 0.353553 -0.517982\n"
"v -0.517982 -0.353553 -1.250520\n"
"v -0.247384 -0.353553 -0.597239\n"
"v -0.247384 0.353553 -0.597239\n"
"v -0.517982 0.353553 -1.250520\n"
"v 0.517982 -0.353553 -1.250520\n"
"v 0.247384 -0.353553 -0.597239\n"
"v 0.247384 0.353553 -0.597239\n"
"v 0.517982 0.353553 -1.250520\n"
"v 1.250520 -0.353553 -0.517982\n"
"v 0.597239 -0.353553 -0.247384\n"
"v 0.597239 0.353553 -0.247384\n"
"v 1.250520 0.353553 -0.517982\n"
"vt 0.1 0.1\n"
"vt 0.1 0.2\n"
"vt 0.1 0.3\n"
"vt 0.1 0.4\n"
"vt 0.2 0.1\n"
"vt 0.2 0.2\n"
"vt 0.2 0.3\n"
"vt 0.2 0.4\n"
"vt 0.3 0.1\n"
"vt 0.3 0.2\n"
"vt 0.3 0.3\n"
"vt 0.3 0.4\n"
"vt 0.4 0.1\n"
"vt 0.4 0.2\n"
"vt 0.4 0.3\n"
"vt 0.4 0.4\n"
"vt 0.5 0.1\n"
"vt 0.5 0.2\n"
"vt 0.5 0.3\n"
"vt 0.5 0.4\n"
"vt 0.6 0.1\n"
"vt 0.6 0.2\n"
"vt 0.6 0.3\n"
"vt 0.6 0.4\n"
"vt 0.7 0.1\n"
"vt 0.7 0.2\n"
"vt 0.7 0.3\n"
"vt 0.7 0.4\n"
"vt 0.8 0.1\n"
"vt 0.8 0.2\n"
"vt 0.8 0.3\n"
"vt 0.8 0.4\n"
"vt 0.9 0.1\n"
"vt 0.9 0.2\n"
"vt 0.9 0.3\n"
"vt 0.9 0.4\n"
"vt 0.1 0.5\n"
"vt 0.2 0.5\n"
"vt 0.3 0.5\n"
"vt 0.4 0.5\n"
"vt 0.5 0.5\n"
"vt 0.6 0.5\n"
"vt 0.7 0.5\n"
"vt 0.8 0.5\n"
"vt 0.9 0.5\n"
"f 5/5 6/6 2/2 1/1\n"
"f 6/6 7/7 3/3 2/2\n"
"f 7/7 8/8 4/4 3/3\n"
"f 8/8 5/38 1/37 4/4\n"
"f 9/9 10/10 6/6 5/5\n"
"f 10/10 11/11 7/7 6/6\n"
"f 11/11 12/12 8/8 7/7\n"
"f 12/12 9/39 5/38 8/8\n"
"f 13/13 14/14 10/10 9/9\n"
"f 14/14 15/15 11/11 10/10\n"
"f 15/15 16/16 12/12 11/11\n"
"f 16/16 13/40 9/39 12/12\n"
"f 17/17 18/18 14/14 13/13\n"
"f 18/18 19/19 15/15 14/14\n"
"f 19/19 20/20 16/16 15/15\n"
"f 20/20 17/41 13/40 16/16\n"
"f 21/21 22/22 18/18 17/17\n"
"f 22/22 23/23 19/19 18/18\n"
"f 23/23 24/24 20/20 19/19\n"
"f 24/24 21/42 17/41 20/20\n"
"f 25/25 26/26 22/22 21/21\n"
"f 26/26 27/27 23/23 22/22\n"
"f 27/27 28/28 24/24 23/23\n"
"f 28/28 25/43 21/42 24/24\n"
"f 29/29 30/30 26/26 25/25\n"
"f 30/30 31/31 27/27 26/26\n"
"f 31/31 32/32 28/28 27/27\n"
"f 32/32 29/44 25/43 28/28\n"
"f 1/33 2/34 30/30 29/29\n"
"f 2/34 3/35 31/31 30/30\n"
"f 3/35 4/36 32/32 31/31\n"
"f 4/36 1/45 29/44 32/32\n"
;

View File

@@ -0,0 +1,87 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_torus_creases0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 1.250520 -0.353553 0.517982\n"
"v 0.597239 -0.353553 0.247384\n"
"v 0.597239 0.353553 0.247384\n"
"v 1.250520 0.353553 0.517982\n"
"v 0.517982 -0.353553 1.250520\n"
"v 0.247384 -0.353553 0.597239\n"
"v 0.247384 0.353553 0.597239\n"
"v 0.517982 0.353553 1.250520\n"
"v -0.517982 -0.353553 1.250520\n"
"v -0.247384 -0.353553 0.597239\n"
"v -0.247384 0.353553 0.597239\n"
"v -0.517982 0.353553 1.250520\n"
"v -1.250520 -0.353553 0.517982\n"
"v -0.597239 -0.353553 0.247384\n"
"v -0.597239 0.353553 0.247384\n"
"v -1.250520 0.353553 0.517982\n"
"v -1.250520 -0.353553 -0.517982\n"
"v -0.597239 -0.353553 -0.247384\n"
"v -0.597239 0.353553 -0.247384\n"
"v -1.250520 0.353553 -0.517982\n"
"v -0.517982 -0.353553 -1.250520\n"
"v -0.247384 -0.353553 -0.597239\n"
"v -0.247384 0.353553 -0.597239\n"
"v -0.517982 0.353553 -1.250520\n"
"v 0.517982 -0.353553 -1.250520\n"
"v 0.247384 -0.353553 -0.597239\n"
"v 0.247384 0.353553 -0.597239\n"
"v 0.517982 0.353553 -1.250520\n"
"v 1.250520 -0.353553 -0.517982\n"
"v 0.597239 -0.353553 -0.247384\n"
"v 0.597239 0.353553 -0.247384\n"
"v 1.250520 0.353553 -0.517982\n"
"vt 0 0\n"
"vt 1 0\n"
"vt 1 1\n"
"vt 0 1\n"
"f 5/1 6/2 2/3 1/4\n"
"f 6/1 7/2 3/3 2/4\n"
"f 7/1 8/2 4/3 3/4\n"
"f 8/1 5/2 1/3 4/4\n"
"f 9/1 10/2 6/3 5/4\n"
"f 10/1 11/2 7/3 6/4\n"
"f 11/1 12/2 8/3 7/4\n"
"f 12/1 9/2 5/3 8/4\n"
"f 13/1 14/2 10/3 9/4\n"
"f 14/1 15/2 11/3 10/4\n"
"f 15/1 16/2 12/3 11/4\n"
"f 16/1 13/2 9/3 12/4\n"
"f 17/1 18/2 14/3 13/4\n"
"f 18/1 19/2 15/3 14/4\n"
"f 19/1 20/2 16/3 15/4\n"
"f 20/1 17/2 13/3 16/4\n"
"f 21/1 22/2 18/3 17/4\n"
"f 22/1 23/2 19/3 18/4\n"
"f 23/1 24/2 20/3 19/4\n"
"f 24/1 21/2 17/3 20/4\n"
"f 25/1 26/2 22/3 21/4\n"
"f 26/1 27/2 23/3 22/4\n"
"f 27/1 28/2 24/3 23/4\n"
"f 28/1 25/2 21/3 24/4\n"
"f 29/1 30/2 26/3 25/4\n"
"f 30/1 31/2 27/3 26/4\n"
"f 31/1 32/2 28/3 27/4\n"
"f 32/1 29/2 25/3 28/4\n"
"f 1/1 2/2 30/3 29/4\n"
"f 2/1 3/2 31/3 30/4\n"
"f 3/1 4/2 32/3 31/4\n"
"f 4/1 1/2 29/3 32/4\n"
"t crease 2/1/0 1 5 4.7\n"
"t crease 2/1/0 5 9 4.7\n"
"t crease 2/1/0 9 13 4.7\n"
"t crease 2/1/0 13 17 4.7\n"
"t crease 2/1/0 17 21 4.7\n"
"t crease 2/1/0 21 25 4.7\n"
"t crease 2/1/0 25 29 4.7\n"
"t crease 2/1/0 29 1 4.7\n"
;

View File

@@ -0,0 +1,86 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_torus_creases1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 1.250520 -0.353553 0.517982\n"
"v 0.597239 -0.353553 0.247384\n"
"v 0.597239 0.353553 0.247384\n"
"v 1.250520 0.353553 0.517982\n"
"v 0.517982 -0.353553 1.250520\n"
"v 0.247384 -0.353553 0.597239\n"
"v 0.247384 0.353553 0.597239\n"
"v 0.517982 0.353553 1.250520\n"
"v -0.517982 -0.353553 1.250520\n"
"v -0.247384 -0.353553 0.597239\n"
"v -0.247384 0.353553 0.597239\n"
"v -0.517982 0.353553 1.250520\n"
"v -1.250520 -0.353553 0.517982\n"
"v -0.597239 -0.353553 0.247384\n"
"v -0.597239 0.353553 0.247384\n"
"v -1.250520 0.353553 0.517982\n"
"v -1.250520 -0.353553 -0.517982\n"
"v -0.597239 -0.353553 -0.247384\n"
"v -0.597239 0.353553 -0.247384\n"
"v -1.250520 0.353553 -0.517982\n"
"v -0.517982 -0.353553 -1.250520\n"
"v -0.247384 -0.353553 -0.597239\n"
"v -0.247384 0.353553 -0.597239\n"
"v -0.517982 0.353553 -1.250520\n"
"v 0.517982 -0.353553 -1.250520\n"
"v 0.247384 -0.353553 -0.597239\n"
"v 0.247384 0.353553 -0.597239\n"
"v 0.517982 0.353553 -1.250520\n"
"v 1.250520 -0.353553 -0.517982\n"
"v 0.597239 -0.353553 -0.247384\n"
"v 0.597239 0.353553 -0.247384\n"
"v 1.250520 0.353553 -0.517982\n"
"\n"
"f 5 6 2 1\n"
"f 6 7 3 2\n"
"f 7 8 4 3\n"
"f 8 5 1 4\n"
"f 9 10 6 5\n"
"f 10 11 7 6\n"
"f 11 12 8 7\n"
"f 12 9 5 8\n"
"f 13 14 10 9\n"
"f 14 15 11 10\n"
"f 15 16 12 11\n"
"f 16 13 9 12\n"
"f 17 18 14 13\n"
"f 18 19 15 14\n"
"f 19 20 16 15\n"
"f 20 17 13 16\n"
"f 21 22 18 17\n"
"f 22 23 19 18\n"
"f 23 24 20 19\n"
"f 24 21 17 20\n"
"f 25 26 22 21\n"
"f 26 27 23 22\n"
"f 27 28 24 23\n"
"f 28 25 21 24\n"
"f 29 30 26 25\n"
"f 30 31 27 26\n"
"f 31 32 28 27\n"
"f 32 29 25 28\n"
"f 1 2 30 29\n"
"f 2 3 31 30\n"
"f 3 4 32 31\n"
"f 4 1 29 32\n"
"\n"
"t crease 2/1/0 1 5 4.7\n"
"t crease 2/1/0 5 9 4.7\n"
"t crease 2/1/0 9 13 4.7\n"
"t crease 2/1/0 13 17 4.7\n"
"t crease 2/1/0 17 21 4.7\n"
"t crease 2/1/0 21 25 4.7\n"
"t crease 2/1/0 25 29 4.7\n"
"t crease 2/1/0 29 1 4.7\n"
"t crease 2/1/0 29 30 4.7\n"
;

View File

@@ -0,0 +1,85 @@
//
// Copyright 2022 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_val2_back2back =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -0.90 0 0.10\n"
"v -0.10 0 0.10\n"
"v -0.50 0 0.90\n"
"\n"
"vt -0.90 0.10\n"
"vt -0.10 0.10\n"
"vt -0.50 0.90\n"
"\n"
"f 1/1 2/2 3/3\n"
"f 3/3 2/2 1/1\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 0.10 0 0.10\n"
"v 0.90 0 0.10\n"
"v 0.90 0 0.90\n"
"v 0.10 0 0.90\n"
"\n"
"vt 0.10 0.10\n"
"vt 0.90 0.10\n"
"vt 0.90 0.90\n"
"vt 0.10 0.90\n"
"\n"
"f 4/4 5/5 6/6 7/7\n"
"f 7/7 6/6 5/5 4/4\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -0.70 0 -0.90\n"
"v -0.30 0 -0.90\n"
"v -0.10 0 -0.50\n"
"v -0.50 0 -0.10\n"
"v -0.90 0 -0.50\n"
"\n"
"vt -0.70 -0.90\n"
"vt -0.30 -0.90\n"
"vt -0.10 -0.50\n"
"vt -0.50 -0.10\n"
"vt -0.90 -0.50\n"
"\n"
"f 8/8 9/9 10/10 11/11 12/12\n"
"f 12/12 11/11 10/10 9/9 8/8\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 0.30 0 -0.90\n"
"v 0.70 0 -0.90\n"
"v 0.90 0 -0.50\n"
"v 0.70 0 -0.10\n"
"v 0.30 0 -0.10\n"
"v 0.10 0 -0.50\n"
"\n"
"vt 0.30 -0.90\n"
"vt 0.70 -0.90\n"
"vt 0.90 -0.50\n"
"vt 0.70 -0.10\n"
"vt 0.30 -0.10\n"
"vt 0.10 -0.50\n"
"\n"
"f 13/13 14/14 15/15 16/16 17/17 18/18\n"
"f 18/18 17/17 16/16 15/15 14/14 13/13\n"
"\n"
"t crease 2/1/0 17 12 10.0\n"
"t crease 2/1/0 12 13 10.0\n"
"t crease 2/1/0 13 14 10.0\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,190 @@
//
// Copyright 2022 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_val2_foldover =
"#\n"
"# Nine shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.4 0.0 0.6\n"
"v -0.6 0.0 0.6\n"
"v -0.6 0.0 1.4\n"
"v -1.4 0.0 1.4\n"
"\n"
"vt -1.4 0.6\n"
"vt -0.6 0.6\n"
"vt -0.6 1.4\n"
"vt -1.4 1.4\n"
"\n"
"f 1/1 2/2 3/3 4/4\n"
"f 1/1 4/4 3/3\n"
"f 1/1 3/3 2/2\n"
"\n"
"#\n"
"# Shape 2: top-middle\n"
"#\n"
"v -0.4 0.0 0.6\n"
"v 0.4 0.0 0.6\n"
"v 0.4 0.0 1.4\n"
"v -0.4 0.0 1.4\n"
"\n"
"vt -0.4 0.6\n"
"vt 0.4 0.6\n"
"vt 0.4 1.4\n"
"vt -0.4 1.4\n"
"\n"
"f 5/5 6/6 7/7 8/8\n"
"f 5/5 8/8 7/7\n"
"\n"
"#\n"
"# Shape 3: top-right\n"
"#\n"
"v 0.8 0.0 0.6\n"
"v 1.2 0.0 0.6\n"
"v 1.4 0.0 1.0\n"
"v 1.0 0.0 1.4\n"
"v 0.6 0.0 1.0\n"
"\n"
"vt 0.8 0.6\n"
"vt 1.2 0.6\n"
"vt 1.4 1.0\n"
"vt 1.0 1.4\n"
"vt 0.6 1.0\n"
"\n"
"f 9/9 10/10 11/11 12/12 13/13\n"
"f 12/12 11/11 10/10 9/9 \n"
"f 12/12 9/9 13/13\n"
"\n"
"#\n"
"# Shape 4: center-left\n"
"#\n"
"v -1.2 0.0 -0.4\n"
"v -0.8 0.0 -0.4\n"
"v -0.6 0.0 0.0\n"
"v -1.0 0.0 0.4\n"
"v -1.4 0.0 0.0\n"
"\n"
"vt -1.2 -0.4\n"
"vt -0.8 -0.4\n"
"vt -0.6 0.0\n"
"vt -1.0 0.4\n"
"vt -1.4 0.0\n"
"\n"
"f 14/14 15/15 16/16 17/17 18/18\n"
"f 17/17 16/16 15/15\n"
"f 17/17 15/15 14/14\n"
"f 17/17 14/14 18/18\n"
"\n"
"#\n"
"# Shape 5: center-middle\n"
"#\n"
"v -0.2 0.0 -0.4\n"
"v 0.2 0.0 -0.4\n"
"v 0.4 0.0 0.0\n"
"v 0.0 0.0 0.4\n"
"v -0.4 0.0 0.0\n"
"\n"
"vt -0.2 -0.4\n"
"vt 0.2 -0.4\n"
"vt 0.4 0.0\n"
"vt 0.0 0.4\n"
"vt -0.4 0.0\n"
"\n"
"f 19/19 20/20 21/21 22/22 23/23\n"
"f 22/22 19/19 23/23\n"
"\n"
"#\n"
"# Shape 6: center-right\n"
"#\n"
"v 0.8 0.0 -0.4\n"
"v 1.2 0.0 -0.4\n"
"v 1.4 0.0 0.0\n"
"v 1.2 0.0 0.4\n"
"v 0.8 0.0 0.4\n"
"v 0.6 0.0 0.0\n"
"\n"
"vt 0.8 -0.4\n"
"vt 1.2 -0.4\n"
"vt 1.4 0.0\n"
"vt 1.2 0.4\n"
"vt 0.8 0.4\n"
"vt 0.6 0.0\n"
"\n"
"f 24/24 25/25 26/26 27/27 28/28 29/29\n"
"f 29/29 28/28 27/27 26/26\n"
"f 29/29 26/26 25/25 24/24\n"
"\n"
"#\n"
"# Shape 7: bottom-left\n"
"#\n"
"v -1.2 0.0 -1.4\n"
"v -0.8 0.0 -1.4\n"
"v -0.6 0.0 -1.0\n"
"v -0.8 0.0 -0.6\n"
"v -1.2 0.0 -0.6\n"
"v -1.4 0.0 -1.0\n"
"\n"
"vt -1.2 -1.4\n"
"vt -0.8 -1.4\n"
"vt -0.6 -1.0\n"
"vt -0.8 -0.6\n"
"vt -1.2 -0.6\n"
"vt -1.4 -1.0\n"
"\n"
"f 30/30 31/31 32/32 33/33 34/34 35/35\n"
"f 35/35 34/34 33/33\n"
"f 35/35 33/33 32/32\n"
"f 35/35 32/32 31/31\n"
"f 35/35 31/31 30/30\n"
"\n"
"#\n"
"# Shape 8: bottom-middle\n"
"#\n"
"v -0.2 0.0 -1.4\n"
"v 0.2 0.0 -1.4\n"
"v 0.4 0.0 -1.0\n"
"v 0.2 0.0 -0.6\n"
"v -0.2 0.0 -0.6\n"
"v -0.4 0.0 -1.0\n"
"\n"
"vt -0.2 -1.4\n"
"vt 0.2 -1.4\n"
"vt 0.4 -1.0\n"
"vt 0.2 -0.6\n"
"vt -0.2 -0.6\n"
"vt -0.4 -1.0\n"
"\n"
"f 36/36 37/37 38/38 39/39 40/40 41/41\n"
"f 41/41 40/40 39/39\n"
"f 41/41 37/37 36/36\n"
"\n"
"#\n"
"# Shape 9: bottom-right\n"
"#\n"
"v 0.8 0.0 -1.4\n"
"v 1.2 0.0 -1.4\n"
"v 1.4 0.0 -1.0\n"
"v 1.2 0.0 -0.6\n"
"v 0.8 0.0 -0.6\n"
"v 0.6 0.0 -1.0\n"
"\n"
"vt 0.8 -1.4\n"
"vt 1.2 -1.4\n"
"vt 1.4 -1.0\n"
"vt 1.2 -0.6\n"
"vt 0.8 -0.6\n"
"vt 0.6 -1.0\n"
"\n"
"f 42/42 43/43 44/44 45/45 46/46 47/47\n"
"f 47/47 46/46 45/45\n"
"f 47/47 45/45 44/44 43/43\n"
"f 47/47 43/43 42/42\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,353 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_val2_interior =
"#\n"
"# Nine shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.75 0.0 0.75\n"
"v -1.42 0.0 0.75\n"
"v -1.08 0.0 0.75\n"
"v -0.75 0.0 0.75\n"
"v -0.75 0.0 1.08\n"
"v -0.75 0.0 1.42\n"
"v -0.75 0.0 1.75\n"
"v -1.08 0.0 1.75\n"
"v -1.42 0.0 1.75\n"
"v -1.75 0.0 1.75\n"
"v -1.75 0.0 1.42\n"
"v -1.75 0.0 1.08\n"
"v -1.42 0.0 1.08\n"
"v -1.08 0.0 1.08\n"
"v -1.08 0.0 1.42\n"
"v -1.42 0.0 1.42\n"
"v -1.25 -0.5 1.25\n"
"\n"
"vt -1.75 0.75\n"
"vt -1.42 0.75\n"
"vt -1.08 0.75\n"
"vt -0.75 0.75\n"
"vt -0.75 1.08\n"
"vt -0.75 1.42\n"
"vt -0.75 1.75\n"
"vt -1.08 1.75\n"
"vt -1.42 1.75\n"
"vt -1.75 1.75\n"
"vt -1.75 1.42\n"
"vt -1.75 1.08\n"
"vt -1.42 1.08\n"
"vt -1.08 1.08\n"
"vt -1.08 1.42\n"
"vt -1.42 1.42\n"
"vt -1.25 1.25\n"
"\n"
"f 1/1 2/2 13/13 12/12\n"
"f 2/2 3/3 14/14 13/13\n"
"f 3/3 4/4 5/5 14/14\n"
"f 14/14 5/5 6/6 15/15\n"
"f 15/15 6/6 7/7 8/8\n"
"f 16/16 15/15 8/8 9/9\n"
"f 11/11 16/16 9/9 10/10\n"
"f 12/12 13/13 16/16 11/11\n"
"f 13/13 14/14 15/15 17/17\n"
"f 13/13 17/17 15/15 16/16\n"
"\n"
"#\n"
"# Shape 2: top-middle\n"
"#\n"
"v 0.0 -0.5 1.25\n"
"v 0.25 0.0 1.5\n"
"v -0.25 0.0 1.5\n"
"v -0.25 0.0 1.0\n"
"v 0.25 0.0 1.0\n"
"v 0.5 0.0 1.75\n"
"v -0.25 0.0 1.75\n"
"v -0.5 0.0 1.75\n"
"v -0.5 0.0 1.5\n"
"v -0.5 0.0 0.75\n"
"v 0.25 0.0 0.75\n"
"v 0.5 0.0 0.75\n"
"v 0.5 0.0 1.0\n"
"\n"
"vt 0.0 1.25\n"
"vt 0.25 1.5\n"
"vt -0.25 1.5\n"
"vt -0.25 1.0\n"
"vt 0.25 1.0\n"
"vt 0.5 1.75\n"
"vt -0.25 1.75\n"
"vt -0.5 1.75\n"
"vt -0.5 1.5\n"
"vt -0.5 0.75\n"
"vt 0.25 0.75\n"
"vt 0.5 0.75\n"
"vt 0.5 1.0\n"
"\n"
"f 18/18 19/19 20/20 21/21\n"
"f 18/18 21/21 22/22 19/19\n"
"f 19/19 23/23 24/24 20/20\n"
"f 20/20 24/24 25/25 26/26\n"
"f 20/20 26/26 27/27 21/21\n"
"f 21/21 27/27 28/28 22/22\n"
"f 22/22 28/28 29/29 30/30\n"
"f 22/22 30/30 23/23 19/19\n"
"\n"
"#\n"
"# Shape 3: top-right\n"
"#\n"
"v 1.25 -0.5 1.25\n"
"v 1.50 0.0 1.5 \n"
"v 1.0 0.0 1.5 \n"
"v 1.0 0.0 1.0 \n"
"v 1.5 0.0 1.0 \n"
"v 1.75 0.0 1.75\n"
"v 1.0 0.0 1.75\n"
"v 0.75 0.0 1.75\n"
"v 0.75 0.0 1.5 \n"
"v 0.75 0.0 0.75\n"
"v 1.5 0.0 0.75\n"
"v 1.75 0.0 0.75\n"
"v 1.75 0.0 1.0 \n"
"\n"
"vt 1.25 1.25\n"
"vt 1.50 1.5 \n"
"vt 1.0 1.5 \n"
"vt 1.0 1.0 \n"
"vt 1.5 1.0 \n"
"vt 1.75 1.75\n"
"vt 1.0 1.75\n"
"vt 0.75 1.75\n"
"vt 0.75 1.5 \n"
"vt 0.75 0.75\n"
"vt 1.5 0.75\n"
"vt 1.75 0.75\n"
"vt 1.75 1.0 \n"
"\n"
"f 31/31 32/32 33/33 34/34\n"
"f 31/31 34/34 35/35 32/32\n"
"f 32/32 36/36 37/37 33/33\n"
"f 33/33 37/37 38/38 39/39\n"
"f 33/33 39/39 40/40 34/34\n"
"f 34/34 40/40 41/41 35/35\n"
"f 35/35 41/41 42/42 43/43\n"
"f 35/35 43/43 36/36 32/32\n"
"\n"
"t crease 2/1/0 30 31 10.0\n"
"t crease 2/1/0 31 35 10.0\n"
"t crease 2/1/0 30 33 10.0\n"
"t crease 2/1/0 33 39 10.0\n"
"\n"
"#\n"
"# Shape 4: center-left\n"
"#\n"
"v -1.75 0.0 -0.5\n"
"v -1.42 0.0 -0.5\n"
"v -1.08 0.0 -0.5\n"
"v -0.75 0.0 -0.5\n"
"v -1.75 0.0 -0.17\n"
"v -1.42 -0.5 -0.17\n"
"v -1.08 -0.5 -0.17\n"
"v -0.75 0.0 -0.17\n"
"v -1.75 0.0 0.17\n"
"v -1.42 -0.5 0.17\n"
"v -1.08 -0.5 0.17\n"
"v -0.75 0.0 0.17\n"
"v -1.75 0.0 0.5\n"
"v -1.42 0.0 0.5\n"
"v -1.08 0.0 0.5\n"
"v -0.75 0.0 0.5\n"
"v -1.31 -0.5 -0.06\n"
"v -1.19 -0.5 0.06\n"
"\n"
"vt -1.75 -0.5\n"
"vt -1.42 -0.5\n"
"vt -1.08 -0.5\n"
"vt -0.75 -0.5\n"
"vt -1.75 -0.17\n"
"vt -1.42 -0.17\n"
"vt -1.08 -0.17\n"
"vt -0.75 -0.17\n"
"vt -1.75 0.17\n"
"vt -1.42 0.17\n"
"vt -1.08 0.17\n"
"vt -0.75 0.17\n"
"vt -1.75 0.5\n"
"vt -1.42 0.5\n"
"vt -1.08 0.5\n"
"vt -0.75 0.5\n"
"vt -1.31 -0.06\n"
"vt -1.19 0.06\n"
"\n"
"f 44/44 45/45 49/49 48/48\n"
"f 45/45 46/46 50/50 49/49\n"
"f 46/46 47/47 51/51 50/50\n"
"f 48/48 49/49 53/53 52/52\n"
"f 50/50 60/60 53/53 49/49\n"
"f 50/50 54/54 53/53 61/61\n"
"f 50/50 61/61 53/53 60/60\n"
"f 50/50 51/51 55/55 54/54\n"
"f 52/52 53/53 57/57 56/56\n"
"f 53/53 54/54 58/58 57/57\n"
"f 54/54 55/55 59/59 58/58\n"
"\n"
"#\n"
"# Shape 5: center-middle\n"
"#\n"
"v -0.5 0.0 -0.5\n"
"v 0.17 0.0 -0.5\n"
"v 0.5 0.0 -0.5\n"
"v -0.17 -0.5 -0.17\n"
"v -0.5 0.0 0.17\n"
"v 0.17 0.0 0.17\n"
"v -0.5 0.0 0.5\n"
"v 0.5 0.0 0.5\n"
"\n"
"vt -0.5 -0.5\n"
"vt 0.17 -0.5\n"
"vt 0.5 -0.5\n"
"vt -0.17 -0.17\n"
"vt -0.5 0.17\n"
"vt 0.17 0.17\n"
"vt -0.5 0.5\n"
"vt 0.5 0.5\n"
"\n"
"f 62/62 63/63 67/67 65/65\n"
"f 63/63 64/64 69/69 67/67\n"
"f 62/62 65/65 67/67 66/66\n"
"f 66/66 67/67 69/69 68/68\n"
"\n"
"t crease 2/1/0 61 64 10.0\n"
"\n"
"#\n"
"# Shape 6: center-right\n"
"#\n"
"# - starts at vertex 52\n"
"v 0.75 0.0 -0.5\n"
"v 1.25 0.0 -0.5\n"
"v 1.75 0.0 -0.5\n"
"v 0.75 0.0 0.0\n"
"v 1.25 0.0 0.0\n"
"v 1.75 0.0 0.0\n"
"v 0.75 0.0 0.5\n"
"v 1.25 0.0 0.5\n"
"v 1.75 0.0 0.5\n"
"v 0.75 -0.5 -0.5\n"
"\n"
"vt 0.75 -0.5\n"
"vt 1.25 -0.5\n"
"vt 1.75 -0.5\n"
"vt 0.75 0.0\n"
"vt 1.25 0.0\n"
"vt 1.75 0.0\n"
"vt 0.75 0.5\n"
"vt 1.25 0.5\n"
"vt 1.75 0.5\n"
"vt 0.75 -0.5\n"
"\n"
"f 70/70 71/71 74/74 73/73\n"
"f 71/71 72/72 75/75 74/74\n"
"f 73/73 74/74 77/77 76/76\n"
"f 74/74 75/75 78/78 77/77\n"
"f 71/71 70/70 73/73 79/79\n"
"\n"
"#\n"
"# Shape 7: bottom-left\n"
"#\n"
"v -1.75 0.0 -1.75\n"
"v -1.25 0.0 -1.75\n"
"v -0.75 0.0 -1.75\n"
"v -1.25 -0.5 -1.25\n"
"v -1.75 0.0 -0.75\n"
"v -1.25 0.0 -0.75\n"
"v -0.75 0.0 -0.75\n"
"\n"
"vt -1.75 -1.75\n"
"vt -1.25 -1.75\n"
"vt -0.75 -1.75\n"
"vt -1.25 -1.25\n"
"vt -1.75 -0.75\n"
"vt -1.25 -0.75\n"
"vt -0.75 -0.75\n"
"\n"
"f 80/80 81/81 83/83 85/85 84/84\n"
"f 81/81 82/82 86/86 85/85 83/83\n"
"\n"
"t crease 2/1/0 80 82 10.0\n"
"\n"
"#\n"
"# Shape 8: bottom-middle\n"
"#\n"
"v -0.5 0.0 -1.75\n"
"v 0.0 0.0 -1.75\n"
"v 0.0 -0.5 -1.75\n"
"v 0.5 0.0 -1.75\n"
"v -0.5 0.0 -0.75\n"
"v 0.0 0.0 -0.75\n"
"v 0.0 -0.5 -0.75\n"
"v 0.5 0.0 -0.75\n"
"\n"
"vt -0.5 -1.75\n"
"vt 0.0 -1.75\n"
"vt 0.0 -1.75\n"
"vt 0.5 -1.75\n"
"vt -0.5 -0.75\n"
"vt 0.0 -0.75\n"
"vt 0.0 -0.75\n"
"vt 0.5 -0.75\n"
"\n"
"f 87/87 88/88 89/89 93/93 92/92 91/91\n"
"f 94/94 92/92 93/93 89/89 88/88 90/90\n"
"\n"
"t crease 2/1/0 87 88 5.0\n"
"t crease 2/1/0 88 92 5.0\n"
"t crease 2/1/0 92 91 5.0\n"
"\n"
"#\n"
"# Shape 9: bottom-right\n"
"#\n"
"v 1.75 -0.5 -0.75\n"
"v 1.25 -1.0 -0.75\n"
"v 0.75 -0.5 -0.75\n"
"v 1.75 -0.5 -1.75\n"
"v 0.75 -0.5 -1.75\n"
"v 1.75 0.5 -1.75\n"
"v 0.75 0.5 -1.75\n"
"v 1.75 0.5 -0.75\n"
"v 0.75 0.5 -0.75\n"
"\n"
"vt 1.15 -1.65\n"
"vt 1.35 -1.65\n"
"vt 1.15 -1.45\n"
"vt 1.35 -1.45\n"
"vt 1.05 -1.25\n"
"vt 1.25 -1.25\n"
"vt 1.45 -1.25\n"
"vt 1.15 -1.05\n"
"vt 1.35 -1.05\n"
"vt 1.15 -0.85\n"
"vt 1.35 -0.85\n"
"vt 1.00 -1.15\n"
"vt 0.80 -1.15\n"
"vt 0.80 -1.35\n"
"vt 1.00 -1.35\n"
"vt 1.70 -1.15\n"
"vt 1.50 -1.15\n"
"vt 1.50 -1.35\n"
"vt 1.70 -1.35\n"
"\n"
"f 98/98 95/101 96/100 97/99 99/97\n"
"f 100/96 98/98 99/97 101/95\n"
"f 102/103 100/105 101/104 103/102\n"
"f 95/101 102/103 103/102 97/99 96/100\n"
"f 97/106 103/107 101/108 99/109\n"
"f 102/110 95/111 98/112 100/113\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,108 @@
//
// Copyright 2022 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_val2_nonman =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -0.70 0 0.30\n"
"v -0.30 0 0.30\n"
"v -0.30 0 0.70\n"
"v -0.70 0 0.70\n"
"v -0.70 0.2 0.10\n"
"v -0.30 0.2 0.10\n"
"v -0.70 -0.2 0.10\n"
"v -0.30 -0.2 0.10\n"
"\n"
"vt -0.70 0.30\n"
"vt -0.30 0.30\n"
"vt -0.30 0.70\n"
"vt -0.70 0.70\n"
"vt -0.70 0.10\n"
"vt -0.30 0.10\n"
"vt -0.70 0.10\n"
"vt -0.30 0.10\n"
"\n"
"f 1/1 2/2 3/3 4/4\n"
"f 4/4 3/3 2/2 1/1\n"
"f 1/1 2/2 6/6 5/5\n"
"f 2/2 1/1 7/7 8/8\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 0.30 0 0.30\n"
"v 0.70 0 0.30\n"
"v 0.50 0 0.70\n"
"v 0.50 0 0.70\n"
"v 0.30 0.2 0.10\n"
"v 0.70 0.2 0.10\n"
"v 0.30 -0.2 0.10\n"
"v 0.70 -0.2 0.10\n"
"\n"
"vt 0.30 0.30\n"
"vt 0.70 0.30\n"
"vt 0.50 0.70\n"
"vt 0.50 0.70\n"
"vt 0.30 0.10\n"
"vt 0.70 0.10\n"
"vt 0.30 0.10\n"
"vt 0.70 0.10\n"
"\n"
"f 9/9 10/10 11/11\n"
"f 11/11 10/10 9/9\n"
"f 9/9 10/10 14/14 13/13\n"
"f 10/10 9/9 15/15 16/16\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -0.70 0 -0.70\n"
"v -0.30 0 -0.70\n"
"v -0.30 0 -0.30\n"
"v -0.70 0 -0.30\n"
"v -0.70 -0.2 -0.90\n"
"v -0.30 -0.2 -0.90\n"
"\n"
"vt -0.70 -0.70\n"
"vt -0.30 -0.70\n"
"vt -0.30 -0.30\n"
"vt -0.70 -0.30\n"
"vt -0.70 -0.90\n"
"vt -0.30 -0.90\n"
"\n"
"f 17/17 18/18 19/19 20/20\n"
"f 20/20 19/19 18/18 17/17\n"
"f 21/21 22/22 17/17\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 0.30 0 -0.70\n"
"v 0.70 0 -0.70\n"
"v 0.70 0 -0.30\n"
"v 0.30 0 -0.30\n"
"v 0.30 -0.2 -0.90\n"
"v 0.70 -0.2 -0.90\n"
"\n"
"vt 0.30 -0.70\n"
"vt 0.70 -0.70\n"
"vt 0.70 -0.30\n"
"vt 0.30 -0.30\n"
"vt 0.30 -0.90\n"
"vt 0.70 -0.90\n"
"\n"
"f 23/23 24/24 25/25 26/26\n"
"f 26/26 25/25 24/24 23/23\n"
"f 27/27 28/28 23/23\n"
"f 27/27 28/28 24/24\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,143 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_xord_boundary =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -0.750000 -0.480000 0.750000\n"
"v -0.230385 0.000000 0.750000\n"
"v -0.230385 0.000000 1.050000\n"
"v -0.490192 0.000000 1.200000\n"
"v -0.750000 0.000000 1.350000\n"
"v -1.009808 0.000000 1.200000\n"
"v -1.269615 0.000000 1.050000\n"
"v -1.269615 0.000000 0.750000\n"
"\n"
"vt 0.250000 0.750000\n"
"vt 0.423205 0.750000\n"
"vt 0.423205 0.850000\n"
"vt 0.336603 0.900000\n"
"vt 0.250000 0.950000\n"
"vt 0.163397 0.900000\n"
"vt 0.076795 0.850000\n"
"vt 0.076795 0.750000\n"
"\n"
"f 1/1 2/2 3/3 4/4\n"
"f 6/6 1/1 4/4 5/5\n"
"f 6/6 7/7 8/8 1/1\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 0.750000 -0.480000 0.750000\n"
"v 1.304328 0.000000 0.750000\n"
"v 1.304328 0.000000 0.979610\n"
"v 1.141969 0.000000 1.141969\n"
"v 0.979610 0.000000 1.304328\n"
"v 0.750000 0.000000 1.304328\n"
"v 0.520390 0.000000 1.304328\n"
"v 0.358031 0.000000 1.141969\n"
"v 0.195672 0.000000 0.979610\n"
"v 0.195672 0.000000 0.750000\n"
"\n"
"vt 0.750000 0.750000\n"
"vt 0.934776 0.750000\n"
"vt 0.934776 0.826537\n"
"vt 0.880656 0.880656\n"
"vt 0.826537 0.934776\n"
"vt 0.750000 0.934776\n"
"vt 0.673463 0.934776\n"
"vt 0.619344 0.880656\n"
"vt 0.565224 0.826537\n"
"vt 0.565224 0.750000\n"
"\n"
"f 9/9 10/10 11/11 12/12\n"
"f 14/14 9/9 12/12 13/13\n"
"f 15/15 16/16 9/9 14/14\n"
"f 16/16 17/17 18/18 9/9\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -0.750000 -0.480000 -0.750000\n"
"v -0.179366 0.000000 -0.750000\n"
"v -0.179366 0.000000 -0.564590\n"
"v -0.288347 0.000000 -0.414590\n"
"v -0.397329 0.000000 -0.264590\n"
"v -0.573664 0.000000 -0.207295\n"
"v -0.750000 0.000000 -0.150000\n"
"v -0.926336 0.000000 -0.207295\n"
"v -1.102671 0.000000 -0.264590\n"
"v -1.211653 0.000000 -0.414590\n"
"v -1.320634 0.000000 -0.564590\n"
"v -1.320634 0.000000 -0.750000\n"
"\n"
"vt 0.250000 0.250000\n"
"vt 0.440211 0.250000\n"
"vt 0.440211 0.311803\n"
"vt 0.403884 0.361803\n"
"vt 0.367557 0.411803\n"
"vt 0.308779 0.430902\n"
"vt 0.250000 0.450000\n"
"vt 0.191221 0.430902\n"
"vt 0.132443 0.411803\n"
"vt 0.096116 0.361803\n"
"vt 0.059789 0.311803\n"
"vt 0.059789 0.250000\n"
"\n"
"f 19/19 20/20 21/21 22/22\n"
"f 24/24 19/19 22/22 23/23\n"
"f 25/25 26/26 19/19 24/24\n"
"f 26/26 27/27 28/28 19/19\n"
"f 19/19 28/28 29/29 30/30\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 0.750000 -0.480000 -0.750000\n"
"v 1.329556 0.000000 -0.750000\n"
"v 1.329556 0.000000 -0.594709\n"
"v 1.251910 0.000000 -0.460222\n"
"v 1.174264 0.000000 -0.325736\n"
"v 1.039778 0.000000 -0.248090\n"
"v 0.905291 0.000000 -0.170444\n"
"v 0.750000 0.000000 -0.170444\n"
"v 0.594709 0.000000 -0.170444\n"
"v 0.460222 0.000000 -0.248090\n"
"v 0.325736 0.000000 -0.325736\n"
"v 0.248090 0.000000 -0.460222\n"
"v 0.170444 0.000000 -0.594709\n"
"v 0.170444 0.000000 -0.750000\n"
"\n"
"vt 0.750000 0.250000\n"
"vt 0.943185 0.250000\n"
"vt 0.943185 0.301764\n"
"vt 0.917303 0.346593\n"
"vt 0.891421 0.391421\n"
"vt 0.846593 0.417303\n"
"vt 0.801764 0.443185\n"
"vt 0.750000 0.443185\n"
"vt 0.698236 0.443185\n"
"vt 0.653407 0.417303\n"
"vt 0.608579 0.391421\n"
"vt 0.582697 0.346593\n"
"vt 0.556815 0.301764\n"
"vt 0.556815 0.250000\n"
"\n"
"f 31/31 32/32 33/33 34/34\n"
"f 36/36 31/31 34/34 35/35\n"
"f 37/37 38/38 31/31 36/36\n"
"f 38/38 39/39 40/40 31/31\n"
"f 31/31 40/40 41/41 42/42\n"
"f 31/31 42/42 43/43 44/44\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,440 @@
//
// Copyright 2019 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string catmark_xord_interior =
"#\n"
"# Nine shapes ordered left->right and top->bottom in the XZ plane\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -1.250000 -0.480000 1.250000\n"
"v -0.950000 0.000000 1.250000\n"
"v -0.950000 0.000000 1.769615\n"
"v -1.400000 0.000000 1.509808\n"
"v -1.850000 0.000000 1.250000\n"
"v -1.400000 0.000000 0.990192\n"
"v -0.950000 0.000000 0.730385\n"
"\n"
"vt 0.170000 0.830000\n"
"vt 0.245000 0.830000\n"
"vt 0.245000 0.959904\n"
"vt 0.132500 0.894952\n"
"vt 0.020000 0.830000\n"
"vt 0.132500 0.765048\n"
"vt 0.245000 0.700096\n"
"\n"
"f 1/1 2/2 3/3 4/4\n"
"f 6/6 1/1 4/4 5/5\n"
"f 6/6 7/7 2/2 1/1\n"
"\n"
"#\n"
"# Shape 2: top-middle\n"
"#\n"
"v 0.000000 -0.480000 1.250000\n"
"v 0.485410 0.000000 1.250000\n"
"v 0.485410 0.000000 1.602671\n"
"v 0.150000 0.000000 1.711653\n"
"v -0.185410 0.000000 1.820634\n"
"v -0.392705 0.000000 1.535317\n"
"v -0.600000 0.000000 1.250000\n"
"v -0.392705 0.000000 0.964683\n"
"v -0.185410 0.000000 0.679366\n"
"v 0.150000 0.000000 0.788347\n"
"v 0.485410 0.000000 0.897329\n"
"\n"
"vt 0.500000 0.830000\n"
"vt 0.621353 0.830000\n"
"vt 0.621353 0.918168\n"
"vt 0.537500 0.945413\n"
"vt 0.453647 0.972658\n"
"vt 0.401824 0.901329\n"
"vt 0.350000 0.830000\n"
"vt 0.401824 0.758671\n"
"vt 0.453647 0.687342\n"
"vt 0.537500 0.714587\n"
"vt 0.621353 0.741832\n"
"\n"
"f 8/8 9/9 10/10 11/11\n"
"f 13/13 8/8 11/11 12/12\n"
"f 14/14 15/15 8/8 13/13\n"
"f 15/15 16/16 17/17 8/8\n"
"f 8/8 17/17 18/18 9/9\n"
"\n"
"#\n"
"# Shape 3: top-right\n"
"#\n"
"v 1.250000 -0.480000 1.250000\n"
"v 1.769615 0.000000 1.250000\n"
"v 1.769615 0.000000 1.550000\n"
"v 1.509808 0.000000 1.700000\n"
"v 1.250000 0.000000 1.850000\n"
"v 0.990192 0.000000 1.700000\n"
"v 0.730385 0.000000 1.550000\n"
"v 0.730385 0.000000 1.250000\n"
"v 0.730385 0.000000 0.950000\n"
"v 0.990192 0.000000 0.800000\n"
"v 1.250000 0.000000 0.650000\n"
"v 1.509808 0.000000 0.800000\n"
"v 1.769615 0.000000 0.950000\n"
"\n"
"vt 0.830000 0.830000\n"
"vt 0.959904 0.830000\n"
"vt 0.959904 0.905000\n"
"vt 0.894952 0.942500\n"
"vt 0.830000 0.980000\n"
"vt 0.765048 0.942500\n"
"vt 0.700096 0.905000\n"
"vt 0.700096 0.830000\n"
"vt 0.700096 0.755000\n"
"vt 0.765048 0.717500\n"
"vt 0.830000 0.680000\n"
"vt 0.894952 0.717500\n"
"vt 0.959904 0.755000\n"
"\n"
"f 19/19 20/20 21/21 22/22\n"
"f 24/24 19/19 22/22 23/23\n"
"f 25/25 26/26 19/19 24/24\n"
"f 26/26 27/27 28/28 19/19\n"
"f 19/19 28/28 29/29 30/30\n"
"f 19/19 30/30 31/31 20/20\n"
"\n"
"#\n"
"# Shape 4: center-left\n"
"#\n"
"v -1.250000 -0.480000 0.000000\n"
"v -0.709419 0.000000 0.000000\n"
"v -0.709419 0.000000 0.260330\n"
"v -0.912953 0.000000 0.422644\n"
"v -1.116488 0.000000 0.584957\n"
"v -1.370291 0.000000 0.527028\n"
"v -1.624094 0.000000 0.469099\n"
"v -1.737047 0.000000 0.234549\n"
"v -1.850000 0.000000 -0.000000\n"
"v -1.737047 0.000000 -0.234549\n"
"v -1.624094 0.000000 -0.469099\n"
"v -1.370291 0.000000 -0.527028\n"
"v -1.116487 0.000000 -0.584957\n"
"v -0.912953 0.000000 -0.422643\n"
"v -0.709419 0.000000 -0.260330\n"
"\n"
"vt 0.170000 0.500000\n"
"vt 0.305145 0.500000\n"
"vt 0.305145 0.565083\n"
"vt 0.254262 0.605661\n"
"vt 0.203378 0.646239\n"
"vt 0.139927 0.631757\n"
"vt 0.076477 0.617275\n"
"vt 0.048238 0.558637\n"
"vt 0.020000 0.500000\n"
"vt 0.048238 0.441363\n"
"vt 0.076477 0.382725\n"
"vt 0.139927 0.368243\n"
"vt 0.203378 0.353761\n"
"vt 0.254262 0.394339\n"
"vt 0.305145 0.434918\n"
"\n"
"f 32/32 33/33 34/34 35/35\n"
"f 37/37 32/32 35/35 36/36\n"
"f 38/38 39/39 32/32 37/37\n"
"f 39/39 40/40 41/41 32/32\n"
"f 32/32 41/41 42/42 43/43\n"
"f 32/32 43/43 44/44 45/45\n"
"f 32/32 45/45 46/46 33/33\n"
"\n"
"#\n"
"# Shape 5: center-middle\n"
"#\n"
"v 0.000000 -0.480000 0.000000\n"
"v 0.554328 0.000000 0.000000\n"
"v 0.554328 0.000000 0.229610\n"
"v 0.391969 0.000000 0.391969\n"
"v 0.229610 0.000000 0.554328\n"
"v -0.000000 0.000000 0.554328\n"
"v -0.229610 0.000000 0.554328\n"
"v -0.391969 0.000000 0.391969\n"
"v -0.554328 0.000000 0.229610\n"
"v -0.554328 0.000000 -0.000000\n"
"v -0.554328 0.000000 -0.229610\n"
"v -0.391969 0.000000 -0.391969\n"
"v -0.229610 0.000000 -0.554328\n"
"v 0.000000 0.000000 -0.554328\n"
"v 0.229610 0.000000 -0.554328\n"
"v 0.391969 0.000000 -0.391969\n"
"v 0.554328 0.000000 -0.229610\n"
"\n"
"vt 0.500000 0.500000\n"
"vt 0.638582 0.500000\n"
"vt 0.638582 0.557402\n"
"vt 0.597992 0.597992\n"
"vt 0.557402 0.638582\n"
"vt 0.500000 0.638582\n"
"vt 0.442597 0.638582\n"
"vt 0.402008 0.597992\n"
"vt 0.361418 0.557403\n"
"vt 0.361418 0.500000\n"
"vt 0.361418 0.442597\n"
"vt 0.402008 0.402008\n"
"vt 0.442598 0.361418\n"
"vt 0.500000 0.361418\n"
"vt 0.557403 0.361418\n"
"vt 0.597992 0.402008\n"
"vt 0.638582 0.442598\n"
"\n"
"f 47/47 48/48 49/49 50/50\n"
"f 52/52 47/47 50/50 51/51\n"
"f 53/53 54/54 47/47 52/52\n"
"f 54/54 55/55 56/56 47/47\n"
"f 47/47 56/56 57/57 58/58\n"
"f 47/47 58/58 59/59 60/60\n"
"f 47/47 60/60 61/61 62/62\n"
"f 47/47 62/62 63/63 48/48\n"
"\n"
"#\n"
"# Shape 6: center-right\n"
"#\n"
"v 1.250000 -0.480000 0.000000\n"
"v 1.813816 0.000000 0.000000\n"
"v 1.813816 0.000000 0.205212\n"
"v 1.681908 0.000000 0.362414\n"
"v 1.550000 0.000000 0.519615\n"
"v 1.347906 0.000000 0.555250\n"
"v 1.145811 0.000000 0.590885\n"
"v 0.968092 0.000000 0.488279\n"
"v 0.790373 0.000000 0.385673\n"
"v 0.720187 0.000000 0.192836\n"
"v 0.650000 0.000000 -0.000000\n"
"v 0.720187 0.000000 -0.192836\n"
"v 0.790373 0.000000 -0.385673\n"
"v 0.968092 0.000000 -0.488279\n"
"v 1.145811 0.000000 -0.590885\n"
"v 1.347906 0.000000 -0.555250\n"
"v 1.550000 0.000000 -0.519615\n"
"v 1.681908 0.000000 -0.362414\n"
"v 1.813816 0.000000 -0.205212\n"
"\n"
"vt 0.830000 0.500000\n"
"vt 0.970954 0.500000\n"
"vt 0.970954 0.551303\n"
"vt 0.937977 0.590603\n"
"vt 0.905000 0.629904\n"
"vt 0.854476 0.638812\n"
"vt 0.803953 0.647721\n"
"vt 0.759523 0.622070\n"
"vt 0.715093 0.596418\n"
"vt 0.697547 0.548209\n"
"vt 0.680000 0.500000\n"
"vt 0.697547 0.451791\n"
"vt 0.715093 0.403582\n"
"vt 0.759523 0.377930\n"
"vt 0.803953 0.352279\n"
"vt 0.854476 0.361188\n"
"vt 0.905000 0.370096\n"
"vt 0.937977 0.409397\n"
"vt 0.970954 0.448697\n"
"\n"
"f 64/64 65/65 66/66 67/67\n"
"f 69/69 64/64 67/67 68/68\n"
"f 70/70 71/71 64/64 69/69\n"
"f 71/71 72/72 73/73 64/64\n"
"f 64/64 73/73 74/74 75/75\n"
"f 64/64 75/75 76/76 77/77\n"
"f 64/64 77/77 78/78 79/79\n"
"f 64/64 79/79 80/80 81/81\n"
"f 64/64 81/81 82/82 65/65\n"
"\n"
"#\n"
"# Shape 7: bottom-left\n"
"#\n"
"v -1.250000 -0.480000 -1.250000\n"
"v -0.679366 0.000000 -1.250000\n"
"v -0.679366 0.000000 -1.064590\n"
"v -0.788347 0.000000 -0.914590\n"
"v -0.897329 0.000000 -0.764590\n"
"v -1.073664 0.000000 -0.707295\n"
"v -1.250000 0.000000 -0.650000\n"
"v -1.426336 0.000000 -0.707295\n"
"v -1.602671 0.000000 -0.764590\n"
"v -1.711653 0.000000 -0.914590\n"
"v -1.820634 0.000000 -1.064590\n"
"v -1.820634 0.000000 -1.250000\n"
"v -1.820634 0.000000 -1.435410\n"
"v -1.711653 0.000000 -1.585410\n"
"v -1.602671 0.000000 -1.735410\n"
"v -1.426336 0.000000 -1.792705\n"
"v -1.250000 0.000000 -1.850000\n"
"v -1.073664 0.000000 -1.792705\n"
"v -0.897329 0.000000 -1.735410\n"
"v -0.788347 0.000000 -1.585410\n"
"v -0.679366 0.000000 -1.435410\n"
"\n"
"vt 0.170000 0.170000\n"
"vt 0.312658 0.170000\n"
"vt 0.312658 0.216353\n"
"vt 0.285413 0.253853\n"
"vt 0.258168 0.291353\n"
"vt 0.214084 0.305676\n"
"vt 0.170000 0.320000\n"
"vt 0.125916 0.305676\n"
"vt 0.081832 0.291353\n"
"vt 0.054587 0.253853\n"
"vt 0.027342 0.216353\n"
"vt 0.027342 0.170000\n"
"vt 0.027342 0.123647\n"
"vt 0.054587 0.086147\n"
"vt 0.081832 0.048647\n"
"vt 0.125916 0.034324\n"
"vt 0.170000 0.020000\n"
"vt 0.214084 0.034324\n"
"vt 0.258168 0.048647\n"
"vt 0.285413 0.086147\n"
"vt 0.312659 0.123648\n"
"\n"
"f 83/83 84/84 85/85 86/86\n"
"f 88/88 83/83 86/86 87/87\n"
"f 89/89 90/90 83/83 88/88\n"
"f 90/90 91/91 92/92 83/83\n"
"f 83/83 92/92 93/93 94/94\n"
"f 83/83 94/94 95/95 96/96\n"
"f 83/83 96/96 97/97 98/98\n"
"f 83/83 98/98 99/99 100/100\n"
"f 83/83 100/100 101/101 102/102\n"
"f 83/83 102/102 103/103 84/84\n"
"\n"
"#\n"
"# Shape 8: bottom-middle\n"
"#\n"
"v 0.000000 -0.480000 -1.250000\n"
"v 0.575696 0.000000 -1.250000\n"
"v 0.575696 0.000000 -1.080960\n"
"v 0.484306 0.000000 -0.938755\n"
"v 0.392916 0.000000 -0.796550\n"
"v 0.239153 0.000000 -0.726329\n"
"v 0.085389 0.000000 -0.656107\n"
"v -0.081930 0.000000 -0.680164\n"
"v -0.249249 0.000000 -0.704221\n"
"v -0.377001 0.000000 -0.814918\n"
"v -0.504752 0.000000 -0.925616\n"
"v -0.552376 0.000000 -1.087808\n"
"v -0.600000 0.000000 -1.250000\n"
"v -0.552376 0.000000 -1.412192\n"
"v -0.504752 0.000000 -1.574385\n"
"v -0.377000 0.000000 -1.685082\n"
"v -0.249249 0.000000 -1.795779\n"
"v -0.081930 0.000000 -1.819836\n"
"v 0.085389 0.000000 -1.843893\n"
"v 0.239153 0.000000 -1.773671\n"
"v 0.392916 0.000000 -1.703450\n"
"v 0.484306 0.000000 -1.561244\n"
"v 0.575696 0.000000 -1.419039\n"
"\n"
"vt 0.500000 0.170000\n"
"vt 0.643924 0.170000\n"
"vt 0.643924 0.212260\n"
"vt 0.621077 0.247811\n"
"vt 0.598229 0.283362\n"
"vt 0.559788 0.300918\n"
"vt 0.521347 0.318473\n"
"vt 0.479517 0.312459\n"
"vt 0.437688 0.306445\n"
"vt 0.405750 0.278770\n"
"vt 0.373812 0.251096\n"
"vt 0.361906 0.210548\n"
"vt 0.350000 0.170000\n"
"vt 0.361906 0.129452\n"
"vt 0.373812 0.088904\n"
"vt 0.405750 0.061230\n"
"vt 0.437688 0.033555\n"
"vt 0.479518 0.027541\n"
"vt 0.521347 0.021527\n"
"vt 0.559788 0.039082\n"
"vt 0.598229 0.056638\n"
"vt 0.621077 0.092189\n"
"vt 0.643924 0.127740\n"
"\n"
"f 104/104 105/105 106/106 107/107\n"
"f 109/109 104/104 107/107 108/108\n"
"f 110/110 111/111 104/104 109/109\n"
"f 111/111 112/112 113/113 104/104\n"
"f 104/104 113/113 114/114 115/115\n"
"f 104/104 115/115 116/116 117/117\n"
"f 104/104 117/117 118/118 119/119\n"
"f 104/104 119/119 120/120 121/121\n"
"f 104/104 121/121 122/122 123/123\n"
"f 104/104 123/123 124/124 125/125\n"
"f 104/104 125/125 126/126 105/105\n"
"\n"
"#\n"
"# Shape 9: bottom-right\n"
"#\n"
"v 1.250000 -0.480000 -1.250000\n"
"v 1.829556 0.000000 -1.250000\n"
"v 1.829556 0.000000 -1.094709\n"
"v 1.751910 0.000000 -0.960222\n"
"v 1.674264 0.000000 -0.825736\n"
"v 1.539778 0.000000 -0.748090\n"
"v 1.405291 0.000000 -0.670444\n"
"v 1.250000 0.000000 -0.670444\n"
"v 1.094708 0.000000 -0.670444\n"
"v 0.960222 0.000000 -0.748090\n"
"v 0.825736 0.000000 -0.825736\n"
"v 0.748090 0.000000 -0.960222\n"
"v 0.670444 0.000000 -1.094709\n"
"v 0.670444 0.000000 -1.250000\n"
"v 0.670444 0.000000 -1.405291\n"
"v 0.748090 0.000000 -1.539778\n"
"v 0.825736 0.000000 -1.674264\n"
"v 0.960222 0.000000 -1.751910\n"
"v 1.094709 0.000000 -1.829556\n"
"v 1.250000 0.000000 -1.829556\n"
"v 1.405291 0.000000 -1.829556\n"
"v 1.539778 0.000000 -1.751910\n"
"v 1.674264 0.000000 -1.674264\n"
"v 1.751910 0.000000 -1.539778\n"
"v 1.829556 0.000000 -1.405291\n"
"\n"
"vt 0.830000 0.170000\n"
"vt 0.974889 0.170000\n"
"vt 0.974889 0.208823\n"
"vt 0.955477 0.242444\n"
"vt 0.936066 0.276066\n"
"vt 0.902444 0.295477\n"
"vt 0.868823 0.314889\n"
"vt 0.830000 0.314889\n"
"vt 0.791177 0.314889\n"
"vt 0.757556 0.295477\n"
"vt 0.723934 0.276066\n"
"vt 0.704523 0.242444\n"
"vt 0.685111 0.208823\n"
"vt 0.685111 0.170000\n"
"vt 0.685111 0.131177\n"
"vt 0.704523 0.097556\n"
"vt 0.723934 0.063934\n"
"vt 0.757556 0.044523\n"
"vt 0.791177 0.025111\n"
"vt 0.830000 0.025111\n"
"vt 0.868823 0.025111\n"
"vt 0.902444 0.044523\n"
"vt 0.936066 0.063934\n"
"vt 0.955477 0.097556\n"
"vt 0.974889 0.131177\n"
"\n"
"f 127/127 128/128 129/129 130/130\n"
"f 132/132 127/127 130/130 131/131\n"
"f 133/133 134/134 127/127 132/132\n"
"f 134/134 135/135 136/136 127/127\n"
"f 127/127 136/136 137/137 138/138\n"
"f 127/127 138/138 139/139 140/140\n"
"f 127/127 140/140 141/141 142/142\n"
"f 127/127 142/142 143/143 144/144\n"
"f 127/127 144/144 145/145 146/146\n"
"f 127/127 146/146 147/147 148/148\n"
"f 127/127 148/148 149/149 150/150\n"
"f 127/127 150/150 151/151 128/128\n"
"\n"
"t interpolateboundary 1/0/0 1\n"
"\n"
;

View File

@@ -0,0 +1,158 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string loop_chaikin0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 1.50 -0.50 0.50\n"
"v 1.50 0.50 0.50\n"
"v 0.90 -0.50 0.50\n"
"v 0.90 0.50 0.50\n"
"v 0.30 -0.50 0.50\n"
"v 0.30 0.50 0.50\n"
"v -0.30 -0.50 0.50\n"
"v -0.30 0.50 0.50\n"
"v -0.90 -0.50 0.50\n"
"v -0.90 0.50 0.50\n"
"v -1.50 -0.50 0.50\n"
"v -1.50 0.50 0.50\n"
"v -1.50 -0.50 -0.50\n"
"v -1.50 0.50 -0.50\n"
"v -0.90 -0.50 -0.50\n"
"v -0.90 0.50 -0.50\n"
"v -0.30 -0.50 -0.50\n"
"v -0.30 0.50 -0.50\n"
"v 0.30 -0.50 -0.50\n"
"v 0.30 0.50 -0.50\n"
"v 0.90 -0.50 -0.50\n"
"v 0.90 0.50 -0.50\n"
"v 1.50 -0.50 -0.50\n"
"v 1.50 0.50 -0.50\n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vn -0.577350 -0.577350 0.577350\n"
"vn 0.577350 -0.577350 0.577350\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.577350 0.577350 0.577350\n"
"vn 0.577350 0.577350 0.577350\n"
"vn -0.577350 0.577350 -0.577350\n"
"vn 0.577350 0.577350 -0.577350\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.577350 -0.577350 -0.577350\n"
"vn 0.577350 -0.577350 -0.577350\n"
"s off\n"
"f 1/1/1 2/2/2 3/3/3\n"
"f 3/3/3 2/2/2 4/4/4\n"
"f 3/3/3 4/4/4 5/5/5\n"
"f 5/5/5 4/4/4 6/6/6\n"
"f 5/5/5 6/6/6 7/7/7\n"
"f 7/7/7 6/6/6 8/8/8\n"
"f 7/7/7 8/8/8 9/9/9\n"
"f 9/9/9 8/8/8 10/10/10\n"
"f 9/9/9 10/10/10 11/11/11\n"
"f 11/11/11 10/10/10 12/12/12\n"
"f 11/11/11 12/12/12 13/13/13\n"
"f 13/13/13 12/12/12 14/14/14\n"
"f 13/13/13 14/14/14 15/15/15\n"
"f 15/15/15 14/14/14 16/16/16\n"
"f 15/15/15 16/16/16 17/17/17\n"
"f 17/17/17 16/16/16 18/18/18\n"
"f 17/17/17 18/18/18 19/19/19\n"
"f 19/19/19 18/18/18 20/20/20\n"
"f 19/19/19 20/20/20 21/21/21\n"
"f 21/21/21 20/20/20 22/22/22\n"
"f 21/21/21 22/22/22 23/23/23\n"
"f 23/23/23 22/22/22 24/24/24\n"
"f 23/23/23 24/24/24 1/1/1\n"
"f 1/1/1 24/24/24 2/2/2\n"
"f 2/2/2 24/24/24 4/4/4\n"
"f 4/4/4 24/24/24 22/22/22\n"
"f 4/4/4 22/22/22 6/6/6\n"
"f 6/6/6 22/22/22 20/20/20\n"
"f 6/6/6 20/20/20 8/8/8\n"
"f 8/8/8 20/20/20 18/18/18\n"
"f 8/8/8 18/18/18 10/10/10\n"
"f 10/10/10 18/18/18 16/16/16\n"
"f 10/10/10 16/16/16 12/12/12\n"
"f 12/12/12 16/16/16 14/14/14\n"
"f 23/23/23 1/1/1 21/21/21\n"
"f 21/21/21 1/1/1 3/3/3\n"
"f 21/21/21 3/3/3 19/19/19\n"
"f 19/19/19 3/3/3 5/5/5\n"
"f 19/19/19 5/5/5 17/17/17\n"
"f 17/17/17 5/5/5 7/7/7\n"
"f 17/17/17 7/7/7 15/15/15\n"
"f 15/15/15 7/7/7 9/9/9\n"
"f 15/15/15 9/9/9 13/13/13\n"
"f 13/13/13 9/9/9 11/11/11\n"
"t crease 2/1/0 0 1 5.000000\n"
"t crease 2/1/0 1 3 1.000000\n"
"t crease 2/1/0 2 0 1.000000\n"
"t crease 2/1/0 3 5 2.000000\n"
"t crease 2/1/0 4 2 2.000000\n"
"t crease 2/1/0 5 7 3.000000\n"
"t crease 2/1/0 6 4 3.000000\n"
"t crease 2/1/0 7 9 4.000000\n"
"t crease 2/1/0 8 6 4.000000\n"
"t crease 2/1/0 9 11 5.000000\n"
"t crease 2/1/0 11 10 5.000000\n"
"t crease 2/1/0 10 8 5.000000\n"
"t crease 2/1/0 11 13 5.000000\n"
"t crease 2/1/0 13 12 5.000000\n"
"t crease 2/1/0 12 10 5.000000\n"
"t crease 2/1/0 13 15 5.000000\n"
"t crease 2/1/0 14 12 5.000000\n"
"t crease 2/1/0 15 17 4.000000\n"
"t crease 2/1/0 16 14 4.000000\n"
"t crease 2/1/0 17 19 3.000000\n"
"t crease 2/1/0 18 16 3.000000\n"
"t crease 2/1/0 19 21 2.000000\n"
"t crease 2/1/0 20 18 2.000000\n"
"t crease 2/1/0 21 23 1.000000\n"
"t crease 2/1/0 23 22 5.000000\n"
"t crease 2/1/0 22 20 1.000000\n"
"t crease 2/1/0 23 1 5.000000\n"
"t crease 2/1/0 0 22 5.000000\n"
"t creasemethod 0/0/1 normal\n"
"\n"
;

View File

@@ -0,0 +1,158 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string loop_chaikin1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 1.50 -0.50 0.50\n"
"v 1.50 0.50 0.50\n"
"v 0.90 -0.50 0.50\n"
"v 0.90 0.50 0.50\n"
"v 0.30 -0.50 0.50\n"
"v 0.30 0.50 0.50\n"
"v -0.30 -0.50 0.50\n"
"v -0.30 0.50 0.50\n"
"v -0.90 -0.50 0.50\n"
"v -0.90 0.50 0.50\n"
"v -1.50 -0.50 0.50\n"
"v -1.50 0.50 0.50\n"
"v -1.50 -0.50 -0.50\n"
"v -1.50 0.50 -0.50\n"
"v -0.90 -0.50 -0.50\n"
"v -0.90 0.50 -0.50\n"
"v -0.30 -0.50 -0.50\n"
"v -0.30 0.50 -0.50\n"
"v 0.30 -0.50 -0.50\n"
"v 0.30 0.50 -0.50\n"
"v 0.90 -0.50 -0.50\n"
"v 0.90 0.50 -0.50\n"
"v 1.50 -0.50 -0.50\n"
"v 1.50 0.50 -0.50\n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vt 0 0 \n"
"vn -0.577350 -0.577350 0.577350\n"
"vn 0.577350 -0.577350 0.577350\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.707107 0.000000 0.707107\n"
"vn 0.707107 0.000000 0.707107\n"
"vn -0.577350 0.577350 0.577350\n"
"vn 0.577350 0.577350 0.577350\n"
"vn -0.577350 0.577350 -0.577350\n"
"vn 0.577350 0.577350 -0.577350\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.707107 0.000000 -0.707107\n"
"vn 0.707107 0.000000 -0.707107\n"
"vn -0.577350 -0.577350 -0.577350\n"
"vn 0.577350 -0.577350 -0.577350\n"
"s off\n"
"f 1/1/1 2/2/2 3/3/3\n"
"f 3/3/3 2/2/2 4/4/4\n"
"f 3/3/3 4/4/4 5/5/5\n"
"f 5/5/5 4/4/4 6/6/6\n"
"f 5/5/5 6/6/6 7/7/7\n"
"f 7/7/7 6/6/6 8/8/8\n"
"f 7/7/7 8/8/8 9/9/9\n"
"f 9/9/9 8/8/8 10/10/10\n"
"f 9/9/9 10/10/10 11/11/11\n"
"f 11/11/11 10/10/10 12/12/12\n"
"f 11/11/11 12/12/12 13/13/13\n"
"f 13/13/13 12/12/12 14/14/14\n"
"f 13/13/13 14/14/14 15/15/15\n"
"f 15/15/15 14/14/14 16/16/16\n"
"f 15/15/15 16/16/16 17/17/17\n"
"f 17/17/17 16/16/16 18/18/18\n"
"f 17/17/17 18/18/18 19/19/19\n"
"f 19/19/19 18/18/18 20/20/20\n"
"f 19/19/19 20/20/20 21/21/21\n"
"f 21/21/21 20/20/20 22/22/22\n"
"f 21/21/21 22/22/22 23/23/23\n"
"f 23/23/23 22/22/22 24/24/24\n"
"f 23/23/23 24/24/24 1/1/1\n"
"f 1/1/1 24/24/24 2/2/2\n"
"f 2/2/2 24/24/24 4/4/4\n"
"f 4/4/4 24/24/24 22/22/22\n"
"f 4/4/4 22/22/22 6/6/6\n"
"f 6/6/6 22/22/22 20/20/20\n"
"f 6/6/6 20/20/20 8/8/8\n"
"f 8/8/8 20/20/20 18/18/18\n"
"f 8/8/8 18/18/18 10/10/10\n"
"f 10/10/10 18/18/18 16/16/16\n"
"f 10/10/10 16/16/16 12/12/12\n"
"f 12/12/12 16/16/16 14/14/14\n"
"f 23/23/23 1/1/1 21/21/21\n"
"f 21/21/21 1/1/1 3/3/3\n"
"f 21/21/21 3/3/3 19/19/19\n"
"f 19/19/19 3/3/3 5/5/5\n"
"f 19/19/19 5/5/5 17/17/17\n"
"f 17/17/17 5/5/5 7/7/7\n"
"f 17/17/17 7/7/7 15/15/15\n"
"f 15/15/15 7/7/7 9/9/9\n"
"f 15/15/15 9/9/9 13/13/13\n"
"f 13/13/13 9/9/9 11/11/11\n"
"t crease 2/1/0 0 1 5.000000\n"
"t crease 2/1/0 1 3 1.000000\n"
"t crease 2/1/0 2 0 1.000000\n"
"t crease 2/1/0 3 5 2.000000\n"
"t crease 2/1/0 4 2 2.000000\n"
"t crease 2/1/0 5 7 3.000000\n"
"t crease 2/1/0 6 4 3.000000\n"
"t crease 2/1/0 7 9 4.000000\n"
"t crease 2/1/0 8 6 4.000000\n"
"t crease 2/1/0 9 11 5.000000\n"
"t crease 2/1/0 11 10 5.000000\n"
"t crease 2/1/0 10 8 5.000000\n"
"t crease 2/1/0 11 13 5.000000\n"
"t crease 2/1/0 13 12 5.000000\n"
"t crease 2/1/0 12 10 5.000000\n"
"t crease 2/1/0 13 15 5.000000\n"
"t crease 2/1/0 14 12 5.000000\n"
"t crease 2/1/0 15 17 4.000000\n"
"t crease 2/1/0 16 14 4.000000\n"
"t crease 2/1/0 17 19 3.000000\n"
"t crease 2/1/0 18 16 3.000000\n"
"t crease 2/1/0 19 21 2.000000\n"
"t crease 2/1/0 20 18 2.000000\n"
"t crease 2/1/0 21 23 1.000000\n"
"t crease 2/1/0 23 22 5.000000\n"
"t crease 2/1/0 22 20 1.000000\n"
"t crease 2/1/0 23 1 5.000000\n"
"t crease 2/1/0 0 22 5.000000\n"
"t creasemethod 0/0/1 chaikin\n"
"\n"
;

View File

@@ -0,0 +1,71 @@
//
// Copyright 2018 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string loop_cube =
"\n"
"v 1 -1 1\n"
"v 1 1 1\n"
"v -1 -1 1\n"
"v -1 1 1\n"
"v -1 -1 -1\n"
"v -1 1 -1\n"
"v 1 -1 -1\n"
"v 1 1 -1\n"
"v 0 0 1\n"
"v -1 0 0\n"
"v 0 0 -1\n"
"v 1 0 0\n"
"v 0 1 0\n"
"v 0 -1 0\n"
"\n"
"vt 0.375 0.000\n"
"vt 0.625 0.000\n"
"vt 0.375 0.250\n"
"vt 0.625 0.250\n"
"vt 0.375 0.500\n"
"vt 0.625 0.500\n"
"vt 0.375 0.750\n"
"vt 0.625 0.750\n"
"vt 0.375 1.000\n"
"vt 0.625 1.000\n"
"vt 0.875 0.000\n"
"vt 0.875 0.250\n"
"vt 0.125 0.000\n"
"vt 0.125 0.250\n"
"vt 0.500 0.125\n"
"vt 0.500 0.375\n"
"vt 0.500 0.625\n"
"vt 0.500 0.875\n"
"vt 0.750 0.125\n"
"vt 0.250 0.125\n"
"\n"
"f 9/15 1/1 2/2\n"
"f 9/15 2/2 4/4\n"
"f 9/15 4/4 3/3\n"
"f 9/15 3/3 1/1\n"
"f 10/16 3/3 4/4\n"
"f 10/16 4/4 6/6\n"
"f 10/16 6/6 5/5\n"
"f 10/16 5/5 3/3\n"
"f 11/17 5/5 6/6\n"
"f 11/17 6/6 8/8\n"
"f 11/17 8/8 7/7\n"
"f 11/17 7/7 5/5\n"
"f 12/18 7/7 8/8\n"
"f 12/18 8/8 2/10\n"
"f 12/18 2/10 1/9 \n"
"f 12/18 1/9 7/7\n"
"f 13/19 2/2 8/11\n"
"f 13/19 8/11 6/12\n"
"f 13/19 6/12 4/4\n"
"f 13/19 4/4 2/2\n"
"f 14/20 7/13 1/1\n"
"f 14/20 1/1 3/3\n"
"f 14/20 3/3 5/14\n"
"f 14/20 5/14 7/13\n"
"\n"
;

View File

@@ -0,0 +1,48 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string loop_cube_asymmetric =
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 1.414214 -0.000000 1.000000\n"
"v -0.000000 -1.414214 1.000000\n"
"v 1.414214 -0.000000 -1.000000\n"
"v -0.000000 -1.414214 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"\n"
"vt 0.375 0.00\n"
"vt 0.625 0.00\n"
"vt 0.375 0.25\n"
"vt 0.625 0.25\n"
"vt 0.375 0.50\n"
"vt 0.625 0.50\n"
"vt 0.375 0.75\n"
"vt 0.625 0.75\n"
"vt 0.375 1.00\n"
"vt 0.625 1.00\n"
"vt 0.875 0.00\n"
"vt 0.875 0.25\n"
"vt 0.125 0.00\n"
"vt 0.125 0.25\n"
"\n"
"f 1/1 2/2 3/3\n"
"f 3/3 2/2 4/4\n"
"f 3/3 4/4 5/5\n"
"f 5/5 4/4 6/6\n"
"f 5/5 6/6 7/7\n"
"f 7/7 6/6 8/8\n"
"f 7/7 8/8 1/9\n"
"f 1/9 8/8 2/10\n"
"f 2/2 8/11 4/4\n"
"f 4/4 8/11 6/12\n"
"f 7/13 1/1 5/14\n"
"f 5/14 1/1 3/3\n"
"\n"
"t interpolateboundary 1/0/0 2\n"
"\n"
;

View File

@@ -0,0 +1,85 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string loop_cube_creases0 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 1.414214 -0.000000 1.000000\n"
"v -0.000000 -1.414214 1.000000\n"
"v 1.414214 -0.000000 -1.000000\n"
"v -0.000000 -1.414214 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"f 1/1/1 2/2/2 3/3/3\n"
"f 3/3/4 2/2/5 4/4/6\n"
"f 3/3/7 4/4/8 5/5/9\n"
"f 5/5/10 4/4/11 6/6/12\n"
"f 5/5/13 6/6/14 7/7/15\n"
"f 7/7/16 6/6/17 8/8/18\n"
"f 7/7/19 8/8/20 1/9/21\n"
"f 1/9/22 8/8/23 2/10/24\n"
"f 2/2/25 8/11/26 4/4/27\n"
"f 4/4/28 8/11/29 6/12/30\n"
"f 7/13/31 1/1/32 5/14/33\n"
"f 5/14/34 1/1/35 3/3/36\n"
"t crease 2/1/0 1 3 2.8\n"
"t crease 2/1/0 3 2 2.8\n"
"t interpolateboundary 1/0/0 2\n"
"\n"
;

View File

@@ -0,0 +1,95 @@
//
// Copyright 2013 Pixar
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string loop_cube_creases1 =
"# This file uses centimeters as units for non-parametric coordinates.\n"
"\n"
"v 0.000000 1.414214 1.000000\n"
"v -1.414214 0.000000 1.000000\n"
"v 1.414214 -0.000000 1.000000\n"
"v -0.000000 -1.414214 1.000000\n"
"v 1.414214 -0.000000 -1.000000\n"
"v -0.000000 -1.414214 -1.000000\n"
"v 0.000000 1.414214 -1.000000\n"
"v -1.414214 0.000000 -1.000000\n"
"vt 0.375000 0.000000\n"
"vt 0.625000 0.000000\n"
"vt 0.375000 0.250000\n"
"vt 0.625000 0.250000\n"
"vt 0.375000 0.500000\n"
"vt 0.625000 0.500000\n"
"vt 0.375000 0.750000\n"
"vt 0.625000 0.750000\n"
"vt 0.375000 1.000000\n"
"vt 0.625000 1.000000\n"
"vt 0.875000 0.000000\n"
"vt 0.875000 0.250000\n"
"vt 0.125000 0.000000\n"
"vt 0.125000 0.250000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.000000 0.000000 1.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn 0.707107 -0.707107 0.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.000000 0.000000 -1.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn -0.707107 -0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"vn 0.707107 0.707107 0.000000\n"
"f 1/1/1 2/2/2 3/3/3\n"
"f 3/3/4 2/2/5 4/4/6\n"
"f 3/3/7 4/4/8 5/5/9\n"
"f 5/5/10 4/4/11 6/6/12\n"
"f 5/5/13 6/6/14 7/7/15\n"
"f 7/7/16 6/6/17 8/8/18\n"
"f 7/7/19 8/8/20 1/9/21\n"
"f 1/9/22 8/8/23 2/10/24\n"
"f 2/2/25 8/11/26 4/4/27\n"
"f 4/4/28 8/11/29 6/12/30\n"
"f 7/13/31 1/1/32 5/14/33\n"
"f 5/14/34 1/1/35 3/3/36\n"
"t crease 2/1/0 1 3 5.0\n"
"t crease 2/1/0 3 2 5.0\n"
"t crease 2/1/0 2 0 5.0\n"
"t crease 2/1/0 0 1 5.0\n"
"t crease 2/1/0 7 5 5.0\n"
"t crease 2/1/0 5 4 5.0\n"
"t crease 2/1/0 4 6 5.0\n"
"t crease 2/1/0 6 7 5.0\n"
"t crease 2/1/0 2 4 0.2\n"
"t crease 2/1/0 0 6 5.0\n"
"t crease 2/1/0 1 7 5.0\n"
"t crease 2/1/0 3 5 5.0\n"
"t interpolateboundary 1/0/0 2\n"
"\n"
;

View File

@@ -0,0 +1,289 @@
//
// Copyright 2018 DreamWorks Animation LLC.
//
// Licensed under the terms set forth in the LICENSE.txt file available at
// https://opensubdiv.org/license.
//
static const std::string loop_cubes_infsharp =
"#\n"
"# Four shapes ordered left->right and top->bottom in the XZ and UV planes\n"
"#\n"
"# Shape 1: top-left\n"
"#\n"
"v -0.250 -0.500 1.250\n"
"v -0.250 0.500 1.250\n"
"v -1.250 -0.500 1.250\n"
"v -1.250 0.500 1.250\n"
"v -1.250 -0.500 0.250\n"
"v -1.250 0.500 0.250\n"
"v -0.250 -0.500 0.250\n"
"v -0.250 0.500 0.250\n"
"v -0.750 0.000 1.250\n"
"v -1.250 0.000 0.750\n"
"v -0.750 0.000 0.250\n"
"v -0.250 0.000 0.750\n"
"v -0.750 0.500 0.750\n"
"v -0.750 -0.500 0.750\n"
"\n"
"vt 0.250 0.600\n"
"vt 0.200 0.550\n"
"vt 0.300 0.550\n"
"vt 0.300 0.650\n"
"vt 0.200 0.650\n"
"vt 0.250 0.700\n"
"vt 0.300 0.750\n"
"vt 0.200 0.750\n"
"vt 0.250 0.800\n"
"vt 0.300 0.850\n"
"vt 0.200 0.850\n"
"vt 0.250 0.900\n"
"vt 0.300 0.950\n"
"vt 0.200 0.950\n"
"vt 0.350 0.600\n"
"vt 0.400 0.550\n"
"vt 0.400 0.650\n"
"vt 0.150 0.600\n"
"vt 0.100 0.550\n"
"vt 0.100 0.650\n"
"\n"
"f 9/1 1/2 2/3 \n"
"f 9/1 2/3 4/4 \n"
"f 9/1 4/4 3/5 \n"
"f 9/1 3/5 1/2 \n"
"f 10/6 3/5 4/4 \n"
"f 10/6 4/4 6/7 \n"
"f 10/6 6/7 5/8 \n"
"f 10/6 5/8 3/5 \n"
"f 11/9 5/8 6/7 \n"
"f 11/9 6/7 8/10 \n"
"f 11/9 8/10 7/11 \n"
"f 11/9 7/11 5/8 \n"
"f 12/12 7/11 8/10 \n"
"f 12/12 8/10 2/13 \n"
"f 12/12 2/13 1/14 \n"
"f 12/12 1/14 7/11 \n"
"f 13/15 2/3 8/16 \n"
"f 13/15 8/16 6/17 \n"
"f 13/15 6/17 4/4 \n"
"f 13/15 4/4 2/3 \n"
"f 14/18 7/19 1/2 \n"
"f 14/18 1/2 3/5 \n"
"f 14/18 3/5 5/20 \n"
"f 14/18 5/20 7/19 \n"
"\n"
"t corner 1/1/0 0 10.0\n"
"\n"
"#\n"
"# Shape 2: top-right\n"
"#\n"
"v 1.250 -0.500 1.250\n"
"v 1.250 0.500 1.250\n"
"v 0.250 -0.500 1.250\n"
"v 0.250 0.500 1.250\n"
"v 0.250 -0.500 0.250\n"
"v 0.250 0.500 0.250\n"
"v 1.250 -0.500 0.250\n"
"v 1.250 0.500 0.250\n"
"v 0.750 0.000 1.250\n"
"v 0.250 0.000 0.750\n"
"v 0.750 0.000 0.250\n"
"v 1.250 0.000 0.750\n"
"v 0.750 0.500 0.750\n"
"v 0.750 -0.500 0.750\n"
"\n"
"vt 0.750 0.600\n"
"vt 0.700 0.550\n"
"vt 0.800 0.550\n"
"vt 0.800 0.650\n"
"vt 0.700 0.650\n"
"vt 0.750 0.700\n"
"vt 0.800 0.750\n"
"vt 0.700 0.750\n"
"vt 0.750 0.800\n"
"vt 0.800 0.850\n"
"vt 0.700 0.850\n"
"vt 0.750 0.900\n"
"vt 0.800 0.950\n"
"vt 0.700 0.950\n"
"vt 0.850 0.600\n"
"vt 0.900 0.550\n"
"vt 0.900 0.650\n"
"vt 0.650 0.600\n"
"vt 0.600 0.550\n"
"vt 0.600 0.650\n"
"\n"
"f 23/21 15/22 16/23 \n"
"f 23/21 16/23 18/24 \n"
"f 23/21 18/24 17/25 \n"
"f 23/21 17/25 15/22 \n"
"f 24/26 17/25 18/24 \n"
"f 24/26 18/24 20/27 \n"
"f 24/26 20/27 19/28 \n"
"f 24/26 19/28 17/25 \n"
"f 25/29 19/28 20/27 \n"
"f 25/29 20/27 22/30 \n"
"f 25/29 22/30 21/31 \n"
"f 25/29 21/31 19/28 \n"
"f 26/32 21/31 22/30 \n"
"f 26/32 22/30 16/33 \n"
"f 26/32 16/33 15/34 \n"
"f 26/32 15/34 21/31 \n"
"f 27/35 16/23 22/36 \n"
"f 27/35 22/36 20/37 \n"
"f 27/35 20/37 18/24 \n"
"f 27/35 18/24 16/23 \n"
"f 28/38 21/39 15/22 \n"
"f 28/38 15/22 17/25 \n"
"f 28/38 17/25 19/40 \n"
"f 28/38 19/40 21/39 \n"
"\n"
"t crease 2/1/0 14 15 10.0\n"
"\n"
"#\n"
"# Shape 3: bottom-left\n"
"#\n"
"v -0.250 -0.500 -0.250\n"
"v -0.250 0.500 -0.250\n"
"v -1.250 -0.500 -0.250\n"
"v -1.250 0.500 -0.250\n"
"v -1.250 -0.500 -1.250\n"
"v -1.250 0.500 -1.250\n"
"v -0.250 -0.500 -1.250\n"
"v -0.250 0.500 -1.250\n"
"v -0.750 0.000 -0.250\n"
"v -1.250 0.000 -0.750\n"
"v -0.750 0.000 -1.250\n"
"v -0.250 0.000 -0.750\n"
"v -0.750 0.500 -0.750\n"
"v -0.750 -0.500 -0.750\n"
"\n"
"vt 0.250 0.100\n"
"vt 0.200 0.050\n"
"vt 0.300 0.050\n"
"vt 0.300 0.150\n"
"vt 0.200 0.150\n"
"vt 0.250 0.200\n"
"vt 0.300 0.250\n"
"vt 0.200 0.250\n"
"vt 0.250 0.300\n"
"vt 0.300 0.350\n"
"vt 0.200 0.350\n"
"vt 0.250 0.400\n"
"vt 0.300 0.450\n"
"vt 0.200 0.450\n"
"vt 0.350 0.100\n"
"vt 0.400 0.050\n"
"vt 0.400 0.150\n"
"vt 0.150 0.100\n"
"vt 0.100 0.050\n"
"vt 0.100 0.150\n"
"\n"
"f 37/41 29/42 30/43 \n"
"f 37/41 30/43 32/44 \n"
"f 37/41 32/44 31/45 \n"
"f 37/41 31/45 29/42 \n"
"f 38/46 31/45 32/44 \n"
"f 38/46 32/44 34/47 \n"
"f 38/46 34/47 33/48 \n"
"f 38/46 33/48 31/45 \n"
"f 39/49 33/48 34/47 \n"
"f 39/49 34/47 36/50 \n"
"f 39/49 36/50 35/51 \n"
"f 39/49 35/51 33/48 \n"
"f 40/52 35/51 36/50 \n"
"f 40/52 36/50 30/53 \n"
"f 40/52 30/53 29/54 \n"
"f 40/52 29/54 35/51 \n"
"f 41/55 30/43 36/56 \n"
"f 41/55 36/56 34/57 \n"
"f 41/55 34/57 32/44 \n"
"f 41/55 32/44 30/43 \n"
"f 42/58 35/59 29/42 \n"
"f 42/58 29/42 31/45 \n"
"f 42/58 31/45 33/60 \n"
"f 42/58 33/60 35/59 \n"
"\n"
"t crease 2/1/0 30 28 10.0\n"
"t crease 2/1/0 28 34 10.0\n"
"t crease 2/1/0 34 32 10.0\n"
"t crease 2/1/0 32 30 10.0\n"
"\n"
"#\n"
"# Shape 4: bottom-right\n"
"#\n"
"v 1.250 -0.500 -0.250\n"
"v 1.250 0.500 -0.250\n"
"v 0.250 -0.500 -0.250\n"
"v 0.250 0.500 -0.250\n"
"v 0.250 -0.500 -1.250\n"
"v 0.250 0.500 -1.250\n"
"v 1.250 -0.500 -1.250\n"
"v 1.250 0.500 -1.250\n"
"v 0.750 0.000 -0.250\n"
"v 0.250 0.000 -0.750\n"
"v 0.750 0.000 -1.250\n"
"v 1.250 0.000 -0.750\n"
"v 0.750 0.500 -0.750\n"
"v 0.750 -0.500 -0.750\n"
"\n"
"vt 0.750 0.100\n"
"vt 0.700 0.050\n"
"vt 0.800 0.050\n"
"vt 0.800 0.150\n"
"vt 0.700 0.150\n"
"vt 0.750 0.200\n"
"vt 0.800 0.250\n"
"vt 0.700 0.250\n"
"vt 0.750 0.300\n"
"vt 0.800 0.350\n"
"vt 0.700 0.350\n"
"vt 0.750 0.400\n"
"vt 0.800 0.450\n"
"vt 0.700 0.450\n"
"vt 0.850 0.100\n"
"vt 0.900 0.050\n"
"vt 0.900 0.150\n"
"vt 0.650 0.100\n"
"vt 0.600 0.050\n"
"vt 0.600 0.150\n"
"\n"
"f 51/61 43/62 44/63 \n"
"f 51/61 44/63 46/64 \n"
"f 51/61 46/64 45/65 \n"
"f 51/61 45/65 43/62 \n"
"f 52/66 45/65 46/64 \n"
"f 52/66 46/64 48/67 \n"
"f 52/66 48/67 47/68 \n"
"f 52/66 47/68 45/65 \n"
"f 53/69 47/68 48/67 \n"
"f 53/69 48/67 50/70 \n"
"f 53/69 50/70 49/71 \n"
"f 53/69 49/71 47/68 \n"
"f 54/72 49/71 50/70 \n"
"f 54/72 50/70 44/73 \n"
"f 54/72 44/73 43/74 \n"
"f 54/72 43/74 49/71 \n"
"f 55/75 44/63 50/76 \n"
"f 55/75 50/76 48/77 \n"
"f 55/75 48/77 46/64 \n"
"f 55/75 46/64 44/63 \n"
"f 56/78 49/79 43/62 \n"
"f 56/78 43/62 45/65 \n"
"f 56/78 45/65 47/80 \n"
"f 56/78 47/80 49/79 \n"
"\n"
"t crease 2/1/0 42 43 0.0\n"
"t crease 2/1/0 43 45 10.0\n"
"t crease 2/1/0 45 44 10.0\n"
"t crease 2/1/0 44 42 10.0\n"
"t crease 2/1/0 46 47 10.0\n"
"t crease 2/1/0 47 49 10.0\n"
"t crease 2/1/0 49 48 10.0\n"
"t crease 2/1/0 48 46 10.0\n"
"t crease 2/1/0 42 48 10.0\n"
"t crease 2/1/0 43 49 10.0\n"
"t crease 2/1/0 44 46 10.0\n"
"t crease 2/1/0 45 47 10.0\n"
"\n"
;

Some files were not shown because too many files have changed in this diff Show More