Skip to content

Commit

Permalink
Merge pull request #81 from mischakolbe/implement_more_operators
Browse files Browse the repository at this point in the history
Implement more operators
  • Loading branch information
mischakolbe authored Dec 30, 2018
2 parents 8bb85a5 + ef8b9c6 commit 122d966
Show file tree
Hide file tree
Showing 11 changed files with 1,770 additions and 407 deletions.
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ default-run: &default-run
command: make install-deps
- save-cache: &d2-save-cache
paths:
- ~/venv/
- ~/venv/
key: a1-dependencies-{{ checksum "requirements.txt" }}
- run: &run-tests
name: run tests
Expand Down
69 changes: 54 additions & 15 deletions docs/changes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,50 +2,89 @@ Changes
==============================================================================


Release 2.1.2
********************

Features added
--------------------
* Added the following operators: > node_calculator/issues/80

* sum
* quatAdd
* quatConjugate
* quatInvert
* quatNegate
* quatNormalize
* quatProd
* quatSub
* quatToEuler
* eulerToQuat
* holdMatrix
* reverse
* passMatrix
* remapColor
* remapHsv
* rgbToHsv
* wtAddMatrix
* closestPointOnMesh
* closestPointOnSurface
* pointOnSurfaceInfo
* pointOnCurveInfo
* nearestPointOnCurve
* fourByFourMatrix

* Operator unittests are more generic now: A dictionary contains which inputs/outputs to use for each Operators test.
* Added more unittests for some issues that came up: non-unique node names, aliased attributes, accessing shape-attributes through the transform (see Features added in Release 2.1.1). > node_calculator/issues/76

Bugs fixed
--------------------
* sum(), average() and mult_matrix() operators now work correctly when given lists/tuples/NcLists as args.


Release 2.1.1
*************
********************

Bugs fixed
----------
--------------------
* Now supports non-unique names > node_calculator/issues/74
* Catch error when user sets a non-existent attribute on an NcList item (now only throws a warning) > node_calculator/issues/73


Release 2.1.0
*************
********************

Incompatible changes
--------------------
* Careful: The actual NodeCalculator now lives in the node_calculator INSIDE the main repo! It's not at the top level anymore.
* The decompose_matrix and pair_blend Operators now have a "return_all_outputs"-flag. By default they return an NcNode now, not all outputs in an NcList! > node_calculator/issues/67

Features added
--------------
--------------------
* Tests are now standalone (not dependent on CMT anymore) and can be run from a console! Major kudos to Andres Weber!
* CircleCi integration to auto-run checks whenever repo is updated. Again: Major kudos to Andres Weber!
* The default Operators are now factored out into their own files: base_functions.py & base_operators.py > node_calculator/issues/59
* It's now possible to set attributes on the shape from the transform (mimicking Maya behaviour). Sudo example: pCube1.outMesh (instead of requiring pCube1Shape.outMesh) > node_calculator/issues/69
* The noca.cleanup(keep_selected=False) function allows to delete all nodes created by the NodeCalculator to unclutter heavy prototyping scenes. > node_calculator/issues/63

Bugs fixed
----------
--------------------
* The dot-Operator now correctly returns a 1D result (returned a 3D result before) > node_calculator/issues/68


Release 2.0.1
*************
********************

Bugs fixed
----------
--------------------
* Aliased attributes can now be accessed (om_util.get_mplug_of_mobj couldn't find them before)
* Operation values of zero are now set correctly (they were ignored)


Release 2.0.0
*************
********************

Dependencies
------------
--------------------

Incompatible changes
--------------------
Expand All @@ -54,11 +93,11 @@ Incompatible changes
* multi_input & multi_output doesn't have to be declared anymore! The tag "{array}" will cause an input/output to be interpreted as multi.

Deprecated
----------
--------------------
* Container support. It wasn't properly implemented and Maya containers are not useful (imo).

Features added
--------------
--------------------
* Easy to add custom/proprietary nodes via extension
* Convenience functions for transforms, locators & create_node.
* auto_consolidate & auto_unravel can be turned off (globally & individually)
Expand All @@ -74,21 +113,21 @@ Features added
* Tests added, using `Chad Vernon's test suite <https://github.com/chadmv/cmt/tree/master/scripts/cmt/test/>`_

Bugs fixed
----------
--------------------
* Uses MObjects and MPlugs to reference to Maya nodes and attributes; Renaming of objects, attributes with index, etc. are no longer an issue.
* Cleaner code; Clear separation of classes and their functionality (NcList, NcNode, NcAttrs, NcValue)
* Any child attribute will be consolidated (array, normal, ..)
* Tracer now stores values as variables (from get() or so)
* Conforms pretty well to PEP8 (apart from tests)

Testing
--------
--------------------

Features removed
----------------
--------------------


Release 1.0.0
*************
********************

* First working version: Create, connect and set Maya nodes with Python commands.
3 changes: 2 additions & 1 deletion node_calculator/base_functions.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,10 @@ def soft_approach(in_value, fade_in_range=0.5, target_value=1):
fade_in_range (NcNode or NcAttrs or str or int or float): Value or
attr. This defines a range over which the target_value will be
approached. Before the in_value is within this range the output
of this and the in_value will be equal.
of this and the in_value will be equal. Defaults to 0.5.
target_value (NcNode or NcAttrs or str or int or float): Value or
attr. This is the value that will be approached slowly.
Defaults to 1.
Returns:
NcNode: Instance with node and output-attr.
Expand Down
Loading

0 comments on commit 122d966

Please sign in to comment.