- correctly initialize FVar tag and source entry for unconnected verts
- added regression/shape with unconnected vertices and fvar data
- fixed edge-face vector access when unconnected edges are last
stb - potential use of uninitialized variable (this may have been safe)
farViewer - unused variable
patchTableFactory - _channelIndices potentially used uninitialized
FVarLevel - valueIndexInFace0 potentially used used uninitialized (was safe)
- change public status of members back to protected/private
- mimized friends (primarily Refinements as builders for Levels)
- added any missing accessors to prevent member access (mainly Tags)
- added the Tri/Quad refinement subclasses to private header list
- removed default value for its <SIZE> parameter
- updated all usage to specify a value for <SIZE>
- added explicit element destruction missing from destructor
- corrected comment regarding VLA's being non-standard
- updated original FVar inspection to deal witn non-manifold vertices
- updated FVar refinement to handle > 2 faces per edge
- couple of fixes to use parent topology when child not present
- added Vtr::FVarLevel method to resolve correct index in level 0 case
- updated tag retrieval methods that used face-value array as input
- changed signatures to accept face-verts when needed and updated usage
- added methods to FVarLevel to combine FVar tags with vertex tags
- use composite of combined tag to find FVar features needing isolation
- added more tagging related to the "linear borders" interpolation case
- added FVar channel consideration to TopologyRefiner's feature selection
- added more simple access methods to FVarLevel
- added _xordinary tag to FVarLevel::ValueTag; initialize and refine
- added composite tag method for FVarLevel::ValueTag similar to Level::VTag
- parameterize FVar topology initialization with regular valence
Const' declared instances of Vtr::Array do not protect the pointer held
privately by the class properly. In order to force the compiler to
protect this pointer, we removed all non-const accessors from Vtr::Array
(now renamed Vtr::ConstArray) and moved them to a child class (Vtr::Array),
which requires const_cast<> operators internally to allow access.
The change & renaming is then propagated to all internal dependencies.
- VVarBoundaryInterpolation is now VtxBoundaryInterpolation
- enum prefix change from VVAR to VTX
- generel cleanup / doxyfication
- update of beta / release notes
- added flag to Sdc MASK interface to interpret "face weights"
- updated Catmark and Bilinear schemes to be aware of new MASK flag
- added subdivision and limit masks for the Loop scheme
- subclassed Vtr::Refinement into QuadRefinement and TriRefinement
- updated tagging of components to be sensitive to applied scheme
- fixed some quad assumptions in FVar refinement to support N-sided
- internally generalized ::TopologyRefiner Interpolate() for <SCHEME>
- reorganized Refinement methods and pruned excessive comments
- removed and added assertions related to Catmark scheme
- added code to support alternate refined vertex ordering
- updated FVarRefinement to be more independent of vertex ordering
- updated Far::TopologyRefiner to fix face-varying ordering dependencies
- fixed a few miscellanous compiler warnings
- added array accessors to properties of vertex values in vtr::FVarLevel
- updated construction of base level face-varying topology
- simplified population of face-varying properties in vtr::FVarRefinement
- updated Far::TopologyRefiner::Interpolate/LimitFaceVarying() accordingly
- added ValueTag indicating sharpness dependency on another value
- updated base level tagging to identify dependent semi-sharp values
- updated refinement to consider dependency when reassessing semi-sharpness
- updated interpolation to use dependent fractional weight when necessary
- redefined and documented Sdc::Options::FVarLinearInterpolation
- included "corners only" mode not possible with Hbr
- updated usage within Vtr::FVarLevel
- added semi-sharp tag to FVar ValueTags and applied in base FVarLevel
- re-assess status of tagged semi-sharp values in each FVarRefinement
- detect and apply fractional weighting in InterpolateFaceVarying()
- added more recognition of Hbr behavior
- refactored smooth boundaries to identify continuous spans
- mark spans as sharp corners if interrupted by internal dart edge
- "propagate corners" added as new enumeration to Sdc::Options
- topology tags within FVar channel initialized and propagated
- face-varying Interpolate() method updated to deal with creases
Sync'ing the 'dev' branch with the 'feature_3.0dev' branch at commit 68c6d11fc36761ae1a5e6cdc3457be16f2e9704a
The branch 'feature_3.0dev' is now locked and preserved for historical purposes.