opfind
eharetea

Find nodes within your Houdini session with opfind.

OPFIND emulates the UNIX find command.

Date Created:Friday December 29th, 2006 03:41 AM
Date Modified:Wednesday July 30th, 2008 02:13 AM

EXAMPLE: FIND SHOPS
foreach z (`run("opfind -p $OBJECTCONTAINER -T SHOP")`)

set findtype = `optype($z)`

if "$findtype" == "shopnet" then
continue
endif

set drep = `strreplace($z,"/"," ")`
set darg = `evals(argc($drep)-1)`
set dech = `arg($drep,$darg)`
set dend = $dend $dech

set refd = `run("opfind $dend")`

end


message $dend which is referenced: \n $refd \n this may not be accurate as opfind cannot search for relative referencing

# finds node names
opfind -n light1

# finds node types
opfind -t light
opfind -t geo
opfind -t cam

# finds nodes by hierarchical type
opfind -T CHOP
opfind -T SHOP
opfind -T SOP
opfind -T POP

# finds light type under /obj
opfind -p /obj -t light

# -s finds all cam type in the current net
opfind -s -t cam

# finds all expression referenced to null1
opfind null1

__________________________________________
COOL EXAMPLE
finds all shops
then finds the node referencing that shop


opfind -p /obj -t shop -T SHOP
>     /obj/geo/shopnet1/v_supermat1
opfind v_supermat1
>     /obj/geo/shop1
__________________________________________

# finds all shader SOPs under /obj
opfind -p /obj -T SOP -t shop

# finds all vex layered surface shops
opfind -p /obj -T SHOP -t v_layered