#usda 1.0
(
    customLayerData = {
        dictionary cameraSettings = {
            dictionary Front = {
                double radius = 500
                double3 target = (0, 0, 0)
            }
            dictionary Perspective = {
                double3 position = (48.54250523009243, 91.60622961173839, 859.7976063483281)
                double3 target = (1.9753088054130785e-12, 1.0089706847793423e-12, 3.751665644813329e-12)
            }
            dictionary Right = {
                double radius = 500
                double3 target = (0, 0, 0)
            }
            dictionary Top = {
                double radius = 500
                double3 target = (0, 0, 0)
            }
            string boundCamera = "/OmniverseKit_Persp"
        }
        int refinementOverrideImplVersion = 0
        dictionary renderSettings = {
            float "rtx:post:lensDistortion:cameraFocalLength" = 18.147562
        }
    }
    metersPerUnit = 0.009999999776482582
    timeCodesPerSecond = 24
    upAxis = "Y"
)

def ComputeGraphSettings "computegraphSettings"
{
    custom token evaluator:type = "execution_pull"
}

def ComputeNode "SubtractDouble"
{
    custom double inputs:a
    prepend double inputs:a.connect = </AbsDouble_01.outputs:out>
    custom double inputs:b (
        customData = {
            token AttributeConnectionType = "Execution"
        }
    )
    prepend double inputs:b.connect = </AbsDouble.outputs:out>
    custom token node:type = "omni.graph.examples.python.SubtractDouble"
    custom int node:typeVersion = 1
    custom double outputs:out = 100
}

def ComputeNode "AbsDouble"
{
    custom double inputs:num = 100
	custom uint64 inputs:event (
        customData = {
            token AttributeConnectionType = "Execution"
        }
    )
	prepend uint64 inputs:event.connect = </_builtin_EventUpdateTick.outputs:event>
    custom token node:type = "omni.graph.examples.python.AbsDouble"
    custom int node:typeVersion = 1
    custom double outputs:out
}


def ComputeNode "AbsDouble_01"
{
    custom double inputs:num = 200
    custom token node:type = "omni.graph.examples.python.AbsDouble"
    custom int node:typeVersion = 1
    custom double outputs:out
}

def ComputeNode "ComposeDouble3"
{
    custom double inputs:x (
        customData = {
            token AttributeConnectionType = "Execution"
        }
    )
    prepend double inputs:x.connect = </SubtractDouble.outputs:out>
    custom double inputs:y
    custom double inputs:z
    custom token node:type = "omni.graph.examples.python.ComposeDouble3"
    custom int node:typeVersion = 1
    custom double3 outputs:double3 = (100, 0, 0)
}


def Cone "Cone"
{
    uniform token axis = "Y"
    float3[] extent = [(-50, -50, -50), (50, 50, 50)]
    double height = 100
    double radius = 50
    custom bool refinementEnableOverride = 1
    custom int refinementLevel = 2
    double3 xformOp:rotateZYX = (0, 0, 0)
    double3 xformOp:scale = (1, 1, 1)
    double3 xformOp:translate = (0, 0, 0) (
        customData = {
            token AttributeConnectionType = "Execution"
        }
    )
    prepend double3 xformOp:translate.connect = </ComposeDouble3.outputs:double3>
    uniform token[] xformOpOrder = ["xformOp:translate", "xformOp:rotateZYX", "xformOp:scale"]
}

def ComputeNode "_builtin_EventUpdateTick"
{
    custom token node:type = "omni.graph.nodes.UpdateTickEvent"
    custom int node:typeVersion = 1
    custom uint64 outputs:event
}

