1#usda 1.0
2
3def Xform "ValidPrims"
4{
5    def Points "extentAuthored"
6    {
7        float3[] extent = [(-3, 0, -2), (1, 2, 1)]
8        float3[] points = [(1, 0, 1), (-3, 2, -2)]
9        color3f[] primvars:displayColor = [(1, 0, 0)]
10        custom matrix4d xformOp:transform = ( (1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0), (0, 0, -2, 1) )
11        uniform token[] xformOpOrder = ["xformOp:transform"]
12    }
13
14    def Points "empty"
15    {
16    }
17
18    def Points "noGeometricDataAuthored"
19    {
20        color3f[] primvars:displayColor = [(1, 1, 1)]
21    }
22
23    def BasisCurves "bezierWExtent"
24    {
25        uniform token basis = "bezier"
26        int[] curveVertexCounts = [4]
27        float3[] extent = [(-1, -1, -1), (1, 1, 1)]
28        uniform token orientation = "rightHanded"
29        point3f[] points = [(0, 0, -1), (-1, 0, -0.5), (-1, 0, 0.5), (0, 0, 1)]
30        color3f[] primvars:displayColor = [(1, 1, 1)]
31        uniform token type = "cubic"
32        float[] widths = [0.2]
33        custom matrix4d xformOp:transform = ( (1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0), (-5, 0, 0, 1) )
34        uniform token[] xformOpOrder = ["xformOp:transform"]
35    }
36}
37
38def Xform "WarningPrims"
39{
40    def Points "fourPointsWWidth"
41    {
42        float3[] points = [(-5, 2, -3), (3, 4, 7), (0, -3, -5), (4, -1, 0)]
43        color3f[] primvars:displayColor = [(0, 0, 1)]
44        float[] widths = [1, 2, 3, 4]
45    }
46
47    def Points "threePointsDecimalWidth"
48    {
49        float3[] points = [(0, 3, -1), (2, 2, 2), (-2, 1.5, 1)]
50        color3f[] primvars:displayColor = [(0, 1, 0)]
51        float[] widths = [1.5, 0.5, 1]
52    }
53
54    def Points "pointsNoWidth"
55    {
56        float3[] points = [(2, -5, 3), (-3, 1, -3)]
57        color3f[] primvars:displayColor = [(0.5, 0.5, 0.5)]
58    }
59
60    def Points "zeroVolumeExtent"
61    {
62        float3[] points = [(-6, 0, 3)]
63        color3f[] primvars:displayColor = [(0.25, 0, 0.75)]
64    }
65
66    def Points "emptyPointsData"
67    {
68        float3[] points = []
69    }
70
71    def BasisCurves "bezierWwidth"
72    {
73        uniform token basis = "bezier"
74        int[] curveVertexCounts = [4]
75        uniform token orientation = "rightHanded"
76        point3f[] points = [(0, 0, -1), (-1, 0, -0.5), (-1, 0, 0.5), (0, 0, 1)]
77        color3f[] primvars:displayColor = [(1, 1, 1)]
78        uniform token type = "cubic"
79        float[] widths = [0.2]
80        custom matrix4d xformOp:transform = ( (-1, 0, 0, 0), (0, -1, 0, 0), (0, 0, 1, 0), (5, 0, 0, 1) )
81        uniform token[] xformOpOrder = ["xformOp:transform"]
82    }
83
84    def BasisCurves "bezierWoWidth"
85    {
86        uniform token basis = "bezier"
87        int[] curveVertexCounts = [4]
88        uniform token orientation = "rightHanded"
89        point3f[] points = [(0, 0, -1), (-1, 0, -0.5), (-1, 0, 0.5), (0, 0, 1)]
90        color3f[] primvars:displayColor = [(1, 1, 1)]
91        uniform token type = "cubic"
92        custom matrix4d xformOp:transform = ( (-1, 0, 0, 0), (0, -1, 0, 0), (0, 0, 1, 0), (5, 0, 0, 1) )
93        uniform token[] xformOpOrder = ["xformOp:transform"]
94    }
95}
96
97def Xform "ErrorPrims"
98{
99    def Points "illAuthoredExtent"
100    {
101        float3[] extent = [(-3, 0, -2)]
102        float3[] points = [(-2, -1, 0)]
103        color3f[] primvars:displayColor = [(0.5, 0, 0.5)]
104    }
105
106    def Points "invalidNumWidthsAndPoints"
107    {
108        float3[] points = [(5, -4, -2), (0, 3, -3), (-2, 1.5, 1)]
109        color3f[] primvars:displayColor = [(1, 1, 0)]
110        float[] widths = [2, 1]
111    }
112
113    def Sphere "illAuthoredSphere"
114    {
115        float3[] extent = [(0, 0, 0)]
116    }
117}
118
119