question

Alan Jones avatar image
Alan Jones asked ·

Arnold C++ API of "kick -nodes"

Hi all,

My google-fu is failing me - anyone happen to know what the Arnold C++ API to list all the loaded nodes is?

i.e. the thing that's probably called under the hook when you execute "kick -nodes"

Cheers,

Alan.

arnold
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Stephen Blair avatar image
Stephen Blair answered ·

Here's the Python from the old pykick. The C++ is basically the same calls...

def PrintRangeOfNodes(first, sort):
   nodes = []
   i = 0
   it = AiUniverseGetNodeEntryIterator(AI_NODE_ALL)
   # skip first node entries to start on the specified one
   while not AiNodeEntryIteratorFinished(it) and i < first:
      AiNodeEntryIteratorGetNext(it)
      i += 1
#
#
   while not AiNodeEntryIteratorFinished(it):
      nentry   = AiNodeEntryIteratorGetNext(it)
      nodename = AiNodeEntryGetName(nentry)
      typename = AiNodeEntryGetTypeName(nentry)
      nodes.append([nodename, typename])
   AiNodeEntryIteratorDestroy(it)
#
# ...
#
Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Thiago Ize avatar image
Thiago Ize answered ·

You'll want to use the AiUniverseGetNodeEntryIterator(AI_NODE_ALL) to get an iterator that lets you examine all the node types. The you call AiNodeEntryIteratorGetNext() on the iterator to get an AtNodeEntry which you can then pass to AiNodeEntryGetName(), AiNodeEntryGetTypeName, etc. to get information on these nodes. Take a look at the doxygen/headers included in the Arnold SDK to get info on all these functions. Hopefully this helps?

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Alan Jones avatar image
Alan Jones answered ·

Thanks, @Stephen Blair and @Thiago Ize - most appreciated.

Share
10 |600 characters needed characters left characters exceeded

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 5 attachments (including images) can be used with a maximum of 2.0 MiB each and 9.8 MiB total.

Welcome to the Arnold Answers community.

This is the place for Arnold renderer users everywhere to ask and answer rendering questions, and share knowledge about using Arnold, Arnold plugins, workflows and developing tools with Arnold.

If you are a new user to Arnold Answers, please first check out our FAQ and User Guide for more information.

When posting questions, please be sure to select the appropriate Space for your Arnold plugin and include the plugin version you are using.

Please include images, scene and log files whenever possible as this helps the community answer your questions.

Instructions for generating full verbosity log files are available for MtoA, MaxtoA, C4DtoA, HtoA, KtoA, and Kick.

If you are looking for Arnold Documentation and Support please visit the Arnold Support site.

To try Arnold please visit the Arnold Trial page.

Bottom No panel present for this section.