From Lua to Python Guide ======================== .. contents:: General ------- Most Lua functions or methods have a direct equivalent in Python. Mixing Lua and Python --------------------- To convert a lua value/object in python:: fromLua(foo) To convert a python value/object in lua:: toLua(foo) Modifier -------- To start a modification:: with Modifier() as mod: pass # perform operations using mod Later if you want to retrieve the current modification context:: mod = Modifier.get() .. seealso:: :class:`guerilla.Modifier` for details Document -------- Retrieve scene filename:: d = Document(); d.filename Retrieve Preference node:: d = Document(); p = d.Preferences Perform scene manipulation: * :meth:`~guerilla.Document.new` * :meth:`~guerilla.Document.save` * :meth:`~guerilla.Document.load` Node ---- New Object properties: * :meth:`~guerilla.Node.name` * :meth:`~guerilla.Node.path` * :meth:`~guerilla.Node.parent` New Object iterators: * :meth:`~guerilla.Node.plugs` * :meth:`~guerilla.Node.children` New Object methods: * :meth:`~guerilla.Node.hasAttr` * :meth:`~guerilla.Node.hasPlug` * :meth:`~guerilla.Node.hasChild` Object methods (use the current Modification context): * :meth:`~guerilla.Node.create` * :meth:`~guerilla.Node.createplug` * :meth:`~guerilla.Node.rename` Plug ---- New Object properties: * :meth:`~guerilla.Plug.name` * :meth:`~guerilla.Plug.parent` New Object methods: * :meth:`~guerilla.Plug.connections` * :meth:`~guerilla.Plug.dependencies` * :meth:`~guerilla.Plug.hastype` * :meth:`~guerilla.Plug.isreadonly` Object methods (use the current Modification context): * :meth:`~guerilla.Plug.connect` * :meth:`~guerilla.Plug.adddependency` * :meth:`~guerilla.Plug.disconnect` * :meth:`~guerilla.Plug.touch` command ------- A command in Guerilla can be created by subclassing the command class and implementing: * :meth:`~guerilla.command.isenabled` * :meth:`~guerilla.command.action` .. seealso:: :class:`guerilla.command` for an example.