SlideShare una empresa de Scribd logo
1 de 63
Python in Houdini for Technical Directors Luke Moore, Senior Software Developer, Side Effects Software http://www.sidefx.com/masterclasses/
Content Covered ,[object Object],[object Object],[object Object],[object Object]
Assumptions ,[object Object],[object Object],[object Object]
A New Scripting Interface in Houdini 9 ,[object Object],[object Object],[object Object],[object Object],[object Object]
Overview of Houdini's Python Scripting ,[object Object],[object Object],[object Object],[object Object]
 
Learning Python ,[object Object],[object Object],[object Object],[object Object],[object Object]
Experimenting with Python in Houdini ,[object Object],[object Object],[object Object],[object Object],[object Object]
Experimenting with Python in Houdini ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Accessing Houdini from Python: The hou Module ,[object Object],[object Object],[object Object],[object Object]
A Simple Example: Changing Path Prefixes ,[object Object],[object Object]
A Simple Example: Changing Path Prefixes ,[object Object]
A Simple Example: Changing Path Prefixes ,[object Object]
A Simple Example: Changing Path Prefixes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Simple Example: Changing Path Prefixes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Simple Example: Changing Path Prefixes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
hou.session Module ,[object Object],[object Object],[object Object]
hou.session Module
A Simple Example: Changing Path Prefixes ,[object Object],[object Object],[object Object]
A Simple Example: Changing Path Prefixes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Simple Example: Changing Path Prefixes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
A Simple Example: Changing Path Prefixes ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Interpreting Tracebacks ,[object Object]
 
Exploring the hou Module ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Exploring the hou Module ,[object Object],[object Object],[object Object],[object Object],[object Object]
Exploring  the hou Module ,[object Object],[object Object],[object Object],[object Object]
Exploring the hou Module ,[object Object],[object Object],[object Object],[object Object]
 
Python for the Hscripter ,[object Object],[object Object],[object Object]
Python for the Hscripter ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Python for the Hscripter ,[object Object],[object Object],[object Object],[object Object],[object Object]
Python for the Hscripter ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Invoking Python from Houdini ,[object Object],[object Object],[object Object],[object Object]
Shelf/Tab Menu ,[object Object],[object Object],[object Object],[object Object]
HDA Button Callback ,[object Object],[object Object],[object Object]
 
 
HDA Button Callback ,[object Object]
HDA Event Handler ,[object Object],[object Object],[object Object],[object Object],[object Object]
Parameters ,[object Object],[object Object],[object Object]
Parameters ,[object Object],[object Object],[object Object]
Parameters ,[object Object],[object Object],[object Object],[object Object],[object Object]
Parameters ,[object Object],[object Object]
Parameters ,[object Object],[object Object]
When Houdini Starts Up ,[object Object],[object Object],[object Object],[object Object],[object Object]
When Houdini Starts Up ,[object Object],[object Object],[object Object]
Python-Based SOPs ,[object Object],[object Object]
 
The Help Browser ,[object Object],[object Object],[object Object],[object Object],[object Object]
From Another Process ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Loading Python Scripts from External Files ,[object Object],[object Object],[object Object],[object Object],[object Object]
Accessing Houdini from a Regular Python Shell ,[object Object],[object Object],[object Object],[object Object]
hython ,[object Object],[object Object],[object Object],[object Object]
Example: Loading a hip File and Running a ROP ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Example: A Simple Python SOP ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Example: Node Layout ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Example: Node Layout (continued) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Example: Node Layout (continued) ,[object Object],[object Object],[object Object],[object Object]
Houdini's Default Layout
Graphviz: 'dot' algorithm
Graphviz: 'neato-hier' algorithm
Graphviz: 'neato' algorithm

Más contenido relacionado

La actualidad más candente

Lab Log Summer 2016 - Sheng Li
Lab Log Summer 2016 - Sheng LiLab Log Summer 2016 - Sheng Li
Lab Log Summer 2016 - Sheng Li
Sheng Li
 

La actualidad más candente (18)

Python scripting kick off
Python scripting kick offPython scripting kick off
Python scripting kick off
 
Pypy is-it-ready-for-production-the-sequel
Pypy is-it-ready-for-production-the-sequelPypy is-it-ready-for-production-the-sequel
Pypy is-it-ready-for-production-the-sequel
 
PyPy's approach to construct domain-specific language runtime
PyPy's approach to construct domain-specific language runtimePyPy's approach to construct domain-specific language runtime
PyPy's approach to construct domain-specific language runtime
 
Interpreter, Compiler, JIT from scratch
Interpreter, Compiler, JIT from scratchInterpreter, Compiler, JIT from scratch
Interpreter, Compiler, JIT from scratch
 
Threads and Callbacks for Embedded Python
Threads and Callbacks for Embedded PythonThreads and Callbacks for Embedded Python
Threads and Callbacks for Embedded Python
 
Go. Why it goes
Go. Why it goesGo. Why it goes
Go. Why it goes
 
MeCC: Memory Comparison-based Code Clone Detector
MeCC: Memory Comparison-based Code Clone DetectorMeCC: Memory Comparison-based Code Clone Detector
MeCC: Memory Comparison-based Code Clone Detector
 
Coding in GO - GDG SL - NSBM
Coding in GO - GDG SL - NSBMCoding in GO - GDG SL - NSBM
Coding in GO - GDG SL - NSBM
 
Golang iran - tutorial go programming language - Preliminary
Golang iran - tutorial  go programming language - PreliminaryGolang iran - tutorial  go programming language - Preliminary
Golang iran - tutorial go programming language - Preliminary
 
Про асинхронность / Максим Щепелин / Web Developer Wargaming
Про асинхронность / Максим Щепелин / Web Developer WargamingПро асинхронность / Максим Щепелин / Web Developer Wargaming
Про асинхронность / Максим Щепелин / Web Developer Wargaming
 
Lab Log Summer 2016 - Sheng Li
Lab Log Summer 2016 - Sheng LiLab Log Summer 2016 - Sheng Li
Lab Log Summer 2016 - Sheng Li
 
Inheritance compiler support
Inheritance compiler supportInheritance compiler support
Inheritance compiler support
 
Pointless Pointers - How to make our interfaces efficient?
Pointless Pointers - How to make our interfaces efficient?Pointless Pointers - How to make our interfaces efficient?
Pointless Pointers - How to make our interfaces efficient?
 
C++ How I learned to stop worrying and love metaprogramming
C++ How I learned to stop worrying and love metaprogrammingC++ How I learned to stop worrying and love metaprogramming
C++ How I learned to stop worrying and love metaprogramming
 
Golang concurrency design
Golang concurrency designGolang concurrency design
Golang concurrency design
 
Python Workshop
Python WorkshopPython Workshop
Python Workshop
 
OpenMP
OpenMPOpenMP
OpenMP
 
Take advantage of C++ from Python
Take advantage of C++ from PythonTake advantage of C++ from Python
Take advantage of C++ from Python
 

Destacado

Nyc 2003 Blackout Photos
Nyc 2003 Blackout PhotosNyc 2003 Blackout Photos
Nyc 2003 Blackout Photos
choni0823
 

Destacado (20)

Milieu
MilieuMilieu
Milieu
 
Opening .NET Micro framework 14 juni (Erik Vermeulen)
Opening .NET Micro framework 14 juni (Erik Vermeulen)Opening .NET Micro framework 14 juni (Erik Vermeulen)
Opening .NET Micro framework 14 juni (Erik Vermeulen)
 
Nyc 2003 Blackout Photos
Nyc 2003 Blackout PhotosNyc 2003 Blackout Photos
Nyc 2003 Blackout Photos
 
Hom Class
Hom ClassHom Class
Hom Class
 
Opening DDD 3 Mei (Hans Odenthal)
Opening DDD 3 Mei (Hans Odenthal)Opening DDD 3 Mei (Hans Odenthal)
Opening DDD 3 Mei (Hans Odenthal)
 
Designing Beautiful Applications
Designing Beautiful ApplicationsDesigning Beautiful Applications
Designing Beautiful Applications
 
Innovation Quotes -Motivational
Innovation Quotes -Motivational  Innovation Quotes -Motivational
Innovation Quotes -Motivational
 
Customer Obsession
Customer ObsessionCustomer Obsession
Customer Obsession
 
Social Networking
Social NetworkingSocial Networking
Social Networking
 
Building Products The Amazon Way
Building Products The Amazon WayBuilding Products The Amazon Way
Building Products The Amazon Way
 
Habit Summit 2015 : Reduce Friction To Increase Engagement
Habit Summit 2015 : Reduce Friction To Increase EngagementHabit Summit 2015 : Reduce Friction To Increase Engagement
Habit Summit 2015 : Reduce Friction To Increase Engagement
 
Taishan_615
Taishan_615Taishan_615
Taishan_615
 
Taishan_607
Taishan_607Taishan_607
Taishan_607
 
Taishan_613
Taishan_613Taishan_613
Taishan_613
 
Taishan_603
Taishan_603Taishan_603
Taishan_603
 
Taishan_619
Taishan_619Taishan_619
Taishan_619
 
Fiverr Gig - South Florida News
Fiverr Gig - South Florida NewsFiverr Gig - South Florida News
Fiverr Gig - South Florida News
 
Opening Ruby on Rails 23 Mei (Paul Zenden)
Opening Ruby on Rails 23 Mei (Paul Zenden)Opening Ruby on Rails 23 Mei (Paul Zenden)
Opening Ruby on Rails 23 Mei (Paul Zenden)
 
Opening AJAX, Silverlight en JavaFX 19 December (Hans Odenthal)
Opening AJAX, Silverlight en JavaFX 19 December (Hans Odenthal)Opening AJAX, Silverlight en JavaFX 19 December (Hans Odenthal)
Opening AJAX, Silverlight en JavaFX 19 December (Hans Odenthal)
 
The Plan for an Epic Year
The Plan for an Epic YearThe Plan for an Epic Year
The Plan for an Epic Year
 

Similar a Hom Class

Introducing PHP Latest Updates
Introducing PHP Latest UpdatesIntroducing PHP Latest Updates
Introducing PHP Latest Updates
Iftekhar Eather
 
course slides -- powerpoint
course slides -- powerpointcourse slides -- powerpoint
course slides -- powerpoint
webhostingguy
 
Python分享
Python分享Python分享
Python分享
fangdeng
 
Unit 6
Unit 6Unit 6
Unit 6
siddr
 

Similar a Hom Class (20)

Python 3000
Python 3000Python 3000
Python 3000
 
Introducing PHP Latest Updates
Introducing PHP Latest UpdatesIntroducing PHP Latest Updates
Introducing PHP Latest Updates
 
Python Presentation
Python PresentationPython Presentation
Python Presentation
 
course slides -- powerpoint
course slides -- powerpointcourse slides -- powerpoint
course slides -- powerpoint
 
Python分享
Python分享Python分享
Python分享
 
Golang basics for Java developers - Part 1
Golang basics for Java developers - Part 1Golang basics for Java developers - Part 1
Golang basics for Java developers - Part 1
 
Python - Getting to the Essence - Points.com - Dave Park
Python - Getting to the Essence - Points.com - Dave ParkPython - Getting to the Essence - Points.com - Dave Park
Python - Getting to the Essence - Points.com - Dave Park
 
Living With Legacy Code
Living With Legacy CodeLiving With Legacy Code
Living With Legacy Code
 
What's new in Perl 5.10?
What's new in Perl 5.10?What's new in Perl 5.10?
What's new in Perl 5.10?
 
Introduction to Go language
Introduction to Go languageIntroduction to Go language
Introduction to Go language
 
Groovy Introduction - JAX Germany - 2008
Groovy Introduction - JAX Germany - 2008Groovy Introduction - JAX Germany - 2008
Groovy Introduction - JAX Germany - 2008
 
Php extensions
Php extensionsPhp extensions
Php extensions
 
Using Flow-based programming to write tools and workflows for Scientific Comp...
Using Flow-based programming to write tools and workflows for Scientific Comp...Using Flow-based programming to write tools and workflows for Scientific Comp...
Using Flow-based programming to write tools and workflows for Scientific Comp...
 
The GO Language : From Beginners to Gophers
The GO Language : From Beginners to GophersThe GO Language : From Beginners to Gophers
The GO Language : From Beginners to Gophers
 
Sbaw091006
Sbaw091006Sbaw091006
Sbaw091006
 
Perl Moderno
Perl ModernoPerl Moderno
Perl Moderno
 
Unit 6
Unit 6Unit 6
Unit 6
 
Go 1.10 Release Party - PDX Go
Go 1.10 Release Party - PDX GoGo 1.10 Release Party - PDX Go
Go 1.10 Release Party - PDX Go
 
Perl Dancer, FPW 2010
Perl Dancer, FPW 2010Perl Dancer, FPW 2010
Perl Dancer, FPW 2010
 
How Xslate Works
How Xslate WorksHow Xslate Works
How Xslate Works
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 

Hom Class