all  /  test_assets  / schemaTests  / usdGeom  / extent  / inverse_extent .usda

Extent

These files showcase a regular mesh extent and the behavior of other extent values.

All meshes are the same cube mesh with vertices positioned at [-0.5 .. 0.5] on all three axis.

Schema specification: https://github.com/PixarAnimationStudios/USD/blob/release/pxr/usd/usdGeom/schema.usda

Regular Extent

regular_extent.usda

Regular extent exactly matching the cube dimensions.

float3[] extent = [(-0.5, -0.5, -0.5), (0.5, 0.5, 0.5)]

screenshot regular_extent.usda, usdrecord 22.08

Inverse Extent

inverse_extent.usda

This mesh has its extent values in the wrong order:

float3[] extent = [(1,1,1), (0,0,0)]

screenshot inverse_extent.usda, usdrecord 22.08

This screenshot is empty as expected.

No Extent

no_extent.usda

This mesh has no extent.

screenshot no_extent.usda, usdrecord 22.08

Scaled Extent

scaled_extent.usda

These two meshes have scaled extents.

Extent too small:

float3[] extent = [(-0.1, -0.1, -0.1), (0.1, 0.1, 0.1)]

Extent too big:

float3[] extent = [(-1, -1, -1), (1, 1, 1)]

screenshot scaled_extent.usda, usdrecord 22.08

Zero Extent

zero_extent.usda

This mesh has its extent set to zero.

float3[] extent = [(0,0,0), (0,0,0)]

screenshot zero_extent.usda, usdrecord 22.08

This screenshot is empty as expected.


Edit this page

inverse_extent.usda

#usda 1.0
(
    customLayerData = {
        string copyright = "Copyright 2022 Apple Inc. All rights reserved."
    }
    defaultPrim = "mesh"
    upAxis = "Y"
    metersPerUnit = 0.01
)

def Mesh "mesh"
{
    float3[] extent = [(1, 1, 1), (0, 0, 0)]
    int[] faceVertexCounts = [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3]
    int[] faceVertexIndices = [0, 4, 6, 0, 6, 2, 0, 1, 5, 0, 5, 4, 4, 5, 7, 4, 7, 6, 3, 7, 5, 3, 5, ... (truncated)]
    point3f[] points = [(-0.5, -0.5, -0.5), (0.5, -0.5, -0.5), (-0.5, 0.5, -0.5), (0.5, 0.5, -0.5), ... (truncated)]
}