HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
GU_Flatten2.h File Reference
#include "GU_API.h"
#include "GU_Detail.h"
#include <GEO/GEO_HedgeInterface.h>
#include <GA/GA_Edge.h>
#include <GA/GA_EdgeGroup.h>
#include <UT/UT_Map.h>
#include <UT/UT_ParallelUtil.h>
#include <UT/UT_UniquePtr.h>
+ Include dependency graph for GU_Flatten2.h:

Go to the source code of this file.

Classes

struct  GU_Flatten2::PtrRange< T >
 
class  GU_Flatten2::Triangulation
 
class  GU_Flatten2::Island
 
class  GU_Flatten2::Island::PointMap
 
class  GU_Flatten2::Island::BoundaryMap
 
class  GU_Flatten2::Island::QuadLayout
 
struct  GU_Flatten2::Island::QuadLayout::QuadDegree
 
class  GU_Flatten2::IslandBundle
 
class  GU_Flatten2::ElementConstraintList< T >
 
struct  GU_Flatten2::GroupConstraintList< T >
 
struct  GU_Flatten2::GroupConstraintList< T >::GroupHandle
 
class  GU_Flatten2::ConstraintSet
 
struct  GU_Flatten2::ConstraintSet::EmptyInfo
 
struct  GU_Flatten2::ConstraintSet::PinInfo
 
struct  GU_Flatten2::ConstraintSet::AngleInfo
 
struct  GU_Flatten2::ConstraintSet::AlignInfo
 
class  GU_Flatten2::ConstraintBundle
 

Namespaces

 GU_Flatten2
 

Typedefs

using GU_Flatten2::ROHandleV2R = GA_ROHandleT< UT_Vector2R >
 
using GU_Flatten2::RWHandleV2R = GA_RWHandleT< UT_Vector2R >
 
using GU_Flatten2::ROHandleV3R = GA_ROHandleT< UT_Vector3R >
 
using GU_Flatten2::RWHandleV3R = GA_RWHandleT< UT_Vector3R >
 
using GU_Flatten2::AngleConstraint = ConstraintSet::AngleInfo
 
using GU_Flatten2::AngleConstraintArray = UT_Array< AngleConstraint >
 

Enumerations

enum  GU_Flatten2::Status {
  GU_Flatten2::SUCCESS = 0, GU_Flatten2::INTERRUPTED, GU_Flatten2::BAD_PARMS, GU_Flatten2::NO_BOUNDARY,
  GU_Flatten2::NUMERICAL_ERROR
}
 
enum  GU_Flatten2::Method { GU_Flatten2::SCP, GU_Flatten2::LSCM, GU_Flatten2::LINEAR_ABF, GU_Flatten2::PROJECT }
 

Functions

GU_API Status GU_Flatten2::flattenIsland (Method method, const Island &island, const ConstraintSet &constraints, RWHandleV3R uvh)
 
GU_API void GU_Flatten2::calcAnglesAndAreas (const Island &island, UT_FprealArray &opposite_angle_cotan, UT_FprealArray &tri_area)
 
GU_API Status GU_Flatten2::flattenSpectral (const Island &island, const ConstraintSet &constraints, RWHandleV3R uvh)
 
GU_API Status GU_Flatten2::flattenSpectral (const Island &island, const ConstraintSet &constraints, const UT_FprealArray &opposite_angle_cotan, const UT_FprealArray &tri_area, RWHandleV3R uvh)
 
GU_API Status GU_Flatten2::flattenLeastSquares (const Island &island, const ConstraintSet &constraints, RWHandleV3R uvh)
 
GU_API Status GU_Flatten2::flattenLeastSquares (const Island &island, const ConstraintSet &constraints, const UT_FprealArray &opposite_angle_cotan, const UT_FprealArray &tri_area, RWHandleV3R uvh)
 
GU_API Status GU_Flatten2::flattenProjection (const Island &island, const ConstraintSet &constraints, RWHandleV3R uvh)
 
GU_API Status GU_Flatten2::flattenAngleBased (const Island &island, const ConstraintSet &constraints, RWHandleV3R uvh)
 
GU_API void GU_Flatten2::findIslandOuterBoundary (const Island &island, UT_IntArray &outer_bd_tri_hedgefs)
 
GU_API void GU_Flatten2::repositionIsland (const Island &island, const ConstraintSet &constraints, ROHandleV3R &orig_uvh, RWHandleV3R &uvh, bool use_custom_pins=false)
 
GU_API void GU_Flatten2::balanceIsland (const Island &island, RWHandleV3R uvh)
 
GU_API void GU_Flatten2::generateStraighLoopConstraints (const Island &island, const ConstraintSet &constraints, AngleConstraintArray &angle_constraints)
 
GU_API void GU_Flatten2::generateQuadLayoutConstraints (const Island &island, bool straighten_arcs, bool straighten_grids, bool rectify_patches, ConstraintSet &constraints)