Skip to content

Commit

Permalink
use intersphinx and doxylink references
Browse files Browse the repository at this point in the history
Signed-off-by: Christian López Barrón <chris.gfz@gmail.com>
  • Loading branch information
chrizzFTD committed Dec 19, 2024
1 parent 0f37b45 commit 2827cf7
Show file tree
Hide file tree
Showing 6 changed files with 29 additions and 55 deletions.
9 changes: 2 additions & 7 deletions docs/source/connections_viewer.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
Connections Viewer
------------------

From a given `prim`_, recursively traverse its connections through `UsdShade.ConnectableAPI`_.
Every node represents a `prim`_, with its name at the top, followed by each of its inputs and outputs.
Outputs are marked as red. Inputs are blue (light for non connected inputs, dark for ones with incoming connections).
From a given :ref:`glossary:prim`, recursively traverse its :ref:`Connections <glossary:connection>` through :usdcpp:`UsdShadeConnectableAPI`.
Every node represents a :ref:`glossary:prim`, with its name at the top, followed by each of its :usdcpp:`inputs <UsdShadeInput>` (colored dark blue if :usdcpp:`connected <UsdShadeInput::GetConnectedSources>`, else light blue) and :usdcpp:`outputs <UsdShadeOutput>` (in red).

.. tab:: USDView

Expand All @@ -16,7 +15,3 @@ Outputs are marked as red. Inputs are blue (light for non connected inputs, dark
.. tab:: Maya

.. image:: images/connections_viewer_maya.jpg

.. _UsdShade.ConnectableAPI: https://openusd.org/release/api/class_usd_shade_connectable_a_p_i.html
.. _prim: https://openusd.org/release/glossary.html#usdglossary-prim

2 changes: 1 addition & 1 deletion docs/source/install.rst
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ Extra Dependencies
The following optional dependencies should be installed separately.

- `graphviz`_ for graph widgets. See conda example below for instructions.
- `usdview <https://openusd.org/release/toolset.html#usdview>`_
- :ref:`toolset:usdview`
(hopefully will be available soon via `pypi <https://pypi.org/>`_). In the meantime, it can be built from USD source
(`conda recipe <https://github.com/PixarAnimationStudios/USD/issues/1260#issuecomment-656985888>`_).

Expand Down
5 changes: 1 addition & 4 deletions docs/source/layer_content_browser.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Layer Content Browser
---------------------

Uses `sdffilter`_ and `usdtree`_ to display content from USD layers (regardless of format or if they have been saved on disk).
Uses :ref:`toolset:sdffilter` and :ref:`toolset:usdtree` to display content from USD layers (regardless of format or if they have been saved on disk).

Array attributes and time samples have their contents reduced to a maximum of 6 entries.

Expand All @@ -14,6 +14,3 @@ The browser can be opened from USDView's ``Composition`` tab (as shown above), a
Images from formats supported by Qt through ``QtGui.QImageReader.supportedImageFormats`` will also be displayed:

.. image:: images/layer_content_browser_image_tab_update.gif

.. _sdffilter: https://openusd.org/release/toolset.html#sdffilter
.. _usdtree: https://openusd.org/release/toolset.html#usdtree
24 changes: 9 additions & 15 deletions docs/source/layerstack_composition.rst
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
Layer Stack Composition
-----------------------

Similar to ``Prim Composition``, but available for the whole `stage`_ or multiple `prims`_ at once.
Similar to ``Prim Composition``, but available for the whole :ref:`glossary:stage` or multiple :ref:`Prims <glossary:prim>` at once.
This helps answer questions like:

- What prims are being affected by `layers`_ X and Y?
- What :ref:`Prims <glossary:prim>` are being affected by :ref:`Layers <glossary:layer>` X and Y?

.. tab:: USDView

Expand All @@ -20,13 +20,13 @@ This helps answer questions like:

In the above example, we're inspecting `Animal Logic's USD ALab`_.

1. On the upper left, all used layers in the composition of the inspected `stage`_ or `prims`_ are listed.
2. On the upper right, all `prims`_ that are affected by the current selected `layers`_ are listed.
3. On the bottom, a `composition arcs`_ graph is displayed for the selected `layers`_ plus the neighbors (predecessors and successors) for each of their `layerStacks`_.
1. On the upper left, all used layers in the composition of the inspected :ref:`glossary:stage` or :ref:`Prims <glossary:prim>` are listed.
2. On the upper right, all :ref:`Prims <glossary:prim>` that are affected by the current selected :ref:`Layers <glossary:layer>` are listed.
3. On the bottom, a :ref:`glossary:composition arcs` graph is displayed for the selected :ref:`Layers <glossary:layer>` plus the neighbors (predecessors and successors) for each of their :ref:`LayerStacks <glossary:layerstack>`.

- Nodes in the network represent `layerStacks`_.
- Edges are the `composition arcs`_ between them (it follows the same color scheme as the ones provided by Pcp.PrimIndex.DumpToDotGraph).
- Options to filter `composition arcs`_ are provided above the network view.
- Nodes in the network represent :ref:`LayerStacks <glossary:layerstack>`.
- Edges are the :ref:`glossary:composition arcs` between them (it follows the same color scheme as the ones provided by :usdcpp:`PcpPrimIndex::DumpToDotGraph`).
- Options to filter :ref:`glossary:composition arcs` are provided above the network view.

.. image:: images/layerstack_composition_arc_filter_options.jpg

Expand All @@ -40,14 +40,8 @@ In the above example, we're inspecting `Animal Logic's USD ALab`_.


.. warning::
Time for computing this graph increases with stage complexity. So for larger stages, it is recommended to start the widget with the `prims`_ of interest rather than the complete `stage`_:
Time for computing this graph increases with stage complexity. So for larger stages, it is recommended to start the widget with the :ref:`Prims <glossary:prim>` of interest rather than the complete :ref:`glossary:stage`:

.. image:: https://user-images.githubusercontent.com/8294116/131242428-7b06729d-f96e-4b92-b02f-1608e99859bd.gif

.. _Animal Logic's USD ALab: https://animallogic.com/usd-alab
.. _layerStacks: https://openusd.org/release/glossary.html#usdglossary-layerstack
.. _layers: https://openusd.org/release/glossary.html#usdglossary-layer
.. _stage: https://openusd.org/release/glossary.html#usdglossary-stage
.. _prims: https://openusd.org/release/glossary.html#usdglossary-prim
.. _composition arcs: https://openusd.org/release/glossary.html#usdglossary-compositionarcs

39 changes: 15 additions & 24 deletions docs/source/prim_composition.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Prim Composition
----------------

Uses existing `USD Prim`_ utilities (`Usd.PrimCompositionQuery`_, `PrimIndex.DumpToDotGraph`_, `PrimIndex.DumpToString`_) to help inspect `composition arc details`_ beyond what is possible by default in USD view.
Uses existing :ref:`glossary:prim` utilities (:usdcpp:`UsdPrimCompositionQuery`, :usdcpp:`PcpPrimIndex::DumpToDotGraph`, :usdcpp:`PcpPrimIndex::DumpToString`) to help inspect :ref:`glossary:composition arcs` beyond what is possible by default in :ref:`toolset:usdview`.
To visualize the composition graph, the ``graphviz`` library needs to be available on the environment.

.. tab:: USDView
Expand All @@ -21,51 +21,42 @@ Setting an Edit Target
~~~~~~~~~~~~~~~~~~~~~~

The ``Prim Composition`` tree exposes a context menu with a ``Set as Edit Target`` item.
This redirect edits under the selected arc by setting the current stage's `Edit Target`_.
This redirect edits under the selected :ref:`arc <glossary:composition arcs>` by setting the current :ref:`stage's <glossary:stage>` :ref:`glossary:edittarget`.

In the examples below, prims under ``ChairB_2`` and ``CheerioA_164`` have their `displayColor`_, ``doc`` and ``active`` properties modified in ``USDView``, ``Houdini`` and ``Maya`` respectively, and changes are inspected via the ``Layer Content Browser`` view.
In the examples below, prims under ``ChairB_2`` and ``CheerioA_164`` have their :usdcpp:`displayColor <UsdGeomGprim::GetDisplayColorAttr>`, :usdcpp:`doc <UsdObject::GetDocumentation>` and :usdcpp:`active <UsdPrim::SetActive>` properties modified in ``USDView``, ``Houdini`` and ``Maya`` respectively, and changes are inspected via the ``Layer Content Browser`` view.

.. tab:: USDView

#. The ``reference`` arc targeting the ``Chair.geom.usd`` layer is set as `Edit Target`_.
#. The :ref:`glossary:references` arc targeting the ``Chair.geom.usd`` :ref:`glossary:layer` is set as :ref:`glossary:edittarget`.

When `displayColor`_ is modified, the changes are visible on **both** ``ChairB_1`` **and** ``ChairB_2``, since they share the composition arc and the layer being modified.
When :usdcpp:`displayColor <UsdGeomGprim::GetDisplayColorAttr>` is modified, the changes are visible on **both** ``ChairB_1`` **and** ``ChairB_2``, since they share that arc.

#. The ``root`` arc targeting the ``Kitchen_set.usd`` layer is set as `Edit Target`_.
#. The :ref:`local arc <glossary:livrps strength ordering>` targeting the :ref:`local root <glossary:root layerstack>` ``Kitchen_set.usd`` layer is set as :ref:`glossary:edittarget`.

Once the `displayColor`_ is modified, the changes are visible on ``ChairB_2`` **only**, since nothing else shares that arc.
Once the :usdcpp:`displayColor <UsdGeomGprim::GetDisplayColorAttr>` is modified, the changes are visible on ``ChairB_2`` **only**, since nothing else shares that arc.

.. image:: https://user-images.githubusercontent.com/8294116/156912114-a24b81f4-63b1-4b62-9d84-9e2c07aaef5c.gif

.. tab:: Houdini

#. The ``payload`` arc targeting the ``Cheerio_payload.usd`` layer is set as `Edit Target`_.
#. The :ref:`glossary:payload` arc targeting the ``Cheerio_payload.usd`` layer is set as :ref:`glossary:edittarget`.

When ``doc`` of the ``CheerioA_164`` prim is modified, the changes are visible on **all** ``CheerioA_*`` prims, since they share the composition arc and the layer being modified.
When :usdcpp:`doc <UsdObject::GetDocumentation>` of the ``CheerioA_164`` prim is modified, the changes are visible on **all** ``CheerioA_*`` prims, since they share the composition arc and the layer being modified.

#. The ``root`` arc targeting the anonymous houdini LOP layer is set as `Edit Target`_.
#. The :ref:`local arc <glossary:livrps strength ordering>` arc targeting the anonymous houdini LOP layer from the :ref:`glossary:root layerstack` is set as :ref:`glossary:edittarget`.

Once the ``doc`` is modified, the changes are visible on ``CheerioA_164`` **only**, since nothing else shares that arc.
Once the :usdcpp:`doc <UsdObject::GetDocumentation>` is modified, the changes are visible on ``CheerioA_164`` **only**, since nothing else shares that arc.

.. image:: https://user-images.githubusercontent.com/8294116/158165374-fe42d80e-8d32-48a4-a628-f6255b5a9e55.gif

.. tab:: Maya

#. The ``payload`` arc targeting the ``Chair_payload.usd`` layer is set as `Edit Target`_.
#. The :ref:`glossary:payload` arc targeting the ``Chair_payload.usd`` layer is set as :ref:`glossary:edittarget`.

When ``active`` property is modified, the changes are visible on **both** ``ChairB_1`` **and** ``ChairB_2``, since they share the composition arc and the layer being modified.
When the :usdcpp:`active <UsdPrim::SetActive>` property is modified, the changes are visible on **both** ``ChairB_1`` **and** ``ChairB_2``, since they share the composition arc and the layer being modified.

#. The ``root`` arc targeting the ``Kitchen_set.usd`` layer is set as `Edit Target`_.
#. The :ref:`local arc <glossary:livrps strength ordering>` targeting the ``Kitchen_set.usd`` layer in the :ref:`glossary:root layerstack` is set as :ref:`glossary:edittarget`.

Once the ``active`` property is modified, the changes are visible on ``ChairB_2`` **only**, since nothing else shares that arc.
Once the :usdcpp:`active <UsdPrim::SetActive>` property is modified, the changes are visible on ``ChairB_2`` **only**, since nothing else shares that arc.

.. image:: https://user-images.githubusercontent.com/8294116/158165402-c1dd5119-fe78-4332-8ded-1495703345f9.gif

.. _Usd.PrimCompositionQuery: https://openusd.org/release/api/class_usd_prim_composition_query.html
.. _PrimIndex.DumpToDotGraph: https://openusd.org/release/api/class_pcp_prim_index.html#a354744c0f0132f3be40ba4d0b85c966d
.. _PrimIndex.DumpToString: https://openusd.org/release/api/class_pcp_prim_index.html#a04007d783df319a8101b20e99bbdddd5
.. _USD Prim: https://openusd.org/release/glossary.html#usdglossary-prim
.. _composition arc details: https://openusd.org/release/glossary.html#usdglossary-compositionarcs
.. _Edit Target: https://openusd.org/release/glossary.html#edittarget
.. _displayColor: https://openusd.org/release/api/class_usd_geom_gprim.html#a0f8310a9dbe0bfc4be2bf4aa32e4a3e4
.. _Mesh: https://openusd.org/release/api/class_usd_geom_mesh.html#details
5 changes: 1 addition & 4 deletions docs/source/spreadsheet_editor.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
Spreadsheet Editor
------------------

Tabular representation of a `USD stage`_. Ability to quickly inspect and edit `prims`_ in bulk is the main motivation for this view to exist.
Tabular representation of a :ref:`glossary:stage` to quickly inspect and edit :ref:`Prims <glossary:prim>` in bulk.
Copy pasting functionality like in other spreadsheet applications should be possible (via csv clipboards).

.. tab:: USDView
Expand All @@ -15,6 +15,3 @@ Copy pasting functionality like in other spreadsheet applications should be poss
.. tab:: Maya

.. image:: https://user-images.githubusercontent.com/8294116/115137690-e0987f00-a06a-11eb-9ba3-1e7df3c0163c.gif

.. _USD stage: https://openusd.org/release/glossary.html#usdglossary-stage
.. _prims: https://openusd.org/release/glossary.html#usdglossary-prim

0 comments on commit 2827cf7

Please sign in to comment.