Search the Community
Showing results for tags 'Matching'.
Found 1 result
Hey guys, I'm sure that everyone who has ever attempted rendering in Hou has experienced the pleasures of using expression functions and pattern matching. The workflow of formatting your target content (geometry, lights etc.) together with this syntax is truly powerfull. For example: I want to render a character and everything else to mask him. Group and expression operators make that easy and dynamic: Render Objects: @character Mask Objects: !@character However at some point the group of @character has to be expanded and the ! negation-operator has to be resolved before the concrete pathes are used to generate the information consumed by the renderer. I guess this is the job of the Pattern Matching and Expression Library I am referring to in the title. Now on an abstract level, this is just a powerfull language for users to dynamically describe (sub-)sets of data which they wish to use for something. Same principle - different data sources: Now what if your Object Names in the Mantra node whose patterns and expressions will be evaluated would not refer to objects in networks but to entries in databases? @group_name string expansion could result in all database entries whose "Group" field matches "group_name". (and of course !@group_name would result in the opposite...) What if we are not talking Mantra ROPs anymore, but maybe a Pyside Standalone or Web Application that lets you enter these patterns and expressions to describe the datasets to pull from any database? How to ?: Does that sound realistic/reasonable/doable at all? If so, do you know any libraries that define expression languages/operators and expose solvers for them? (Sympy!?) Are there some details on how Houdini handles that? How would you go about implementing a Mantra ROP like application that exposes string fields where people can use pattern matching and expressions to describe data that is then pulled from databases?