HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SOP_SweepHDK.C File Reference
#include "SOP_SweepHDK.proto.h"
#include "GU_Grid.h"
#include "GU_GridImpl.h"
#include "../SOP_OrientAlongCurve/GU_CurveFrame.h"
#include "../SOP_CopyToPoints/GEO_BuildPrimitives.h"
#include "../SOP_CopyToPoints/GU_Copy2.h"
#include <SOP/SOP_Node.h>
#include <SOP/SOP_NodeVerb.h>
#include <GU/GU_Detail.h>
#include <GOP/GOP_Manager.h>
#include <GEO/GEO_Curve.h>
#include <GEO/GEO_Hull.h>
#include <GEO/GEO_ParallelWiringUtil.h>
#include <GEO/GEO_PrimPoly.h>
#include <GEO/GEO_PrimPolySoup.h>
#include <GEO/GEO_TPSurf.h>
#include <GA/GA_AttributeFilter.h>
#include <GA/GA_AttributeInstanceMatrix.h>
#include <GA/GA_BezBasis.h>
#include <GA/GA_DataBitArray.h>
#include <GA/GA_Handle.h>
#include <GA/GA_Iterator.h>
#include <GA/GA_Names.h>
#include <GA/GA_NUBBasis.h>
#include <GA/GA_OffsetList.h>
#include <GA/GA_PolyCounts.h>
#include <GA/GA_SplittableRange.h>
#include <GA/GA_Types.h>
#include <OP/OP_AutoLockInputs.h>
#include <OP/OP_Operator.h>
#include <OP/OP_OperatorTable.h>
#include <PRM/PRM_TemplateBuilder.h>
#include <UT/UT_BitArray.h>
#include <UT/UT_BoundingCircle.h>
#include <UT/UT_DSOVersion.h>
#include <UT/UT_Interrupt.h>
#include <UT/UT_PageArray.h>
#include <UT/UT_PageArrayImpl.h>
#include <UT/UT_ParallelUtil.h>
#include <UT/UT_StringHolder.h>
#include <UT/UT_UniquePtr.h>
#include <UT/UT_Vector3.h>
#include <SYS/SYS_Math.h>
#include <algorithm>
+ Include dependency graph for SOP_SweepHDK.C:

Go to the source code of this file.

Classes

class  HDK_Sample::SOP_SweepHDKCache
 
struct  HDK_Sample::sop_SweepGridTransformWrapper
 
class  HDK_Sample::SOP_SweepHDKVerb
 
class  HDK_Sample::SOP_SweepHDK
 This is the SOP class definition. More...
 

Namespaces

 HDK_Sample
 This namespace is used to hold all HDK example source code.
 

Enumerations

enum  HDK_Sample::UVStyle { HDK_Sample::UVStyle::NORMALIZED, HDK_Sample::UVStyle::ROUNDED, HDK_Sample::UVStyle::FULL }
 

Functions

void newSopOperator (OP_OperatorTable *table)
 

Function Documentation

void newSopOperator ( OP_OperatorTable table)

newSopOperator is the hook that Houdini grabs from this dll and invokes to register the SOP. In this case, we add ourselves to the specified operator table.

Definition at line 540 of file SOP_SweepHDK.C.

Variable Documentation

bool myAllEqualNEdges

Definition at line 293 of file SOP_SweepHDK.C.

unsigned char myBasisOrderCrossSection

Definition at line 300 of file SOP_SweepHDK.C.

unsigned char myBasisOrderCurve

Definition at line 299 of file SOP_SweepHDK.C.

bool myCrossSectionClosed

Definition at line 290 of file SOP_SweepHDK.C.

exint myCrossSectionNEdges

Definition at line 280 of file SOP_SweepHDK.C.

exint myCrossSectionPrimOff

NOTE: This is exint instead of GA_Offset just because unions need all POD types, and GA_Offset isn't POD in strict types builds.

Definition at line 285 of file SOP_SweepHDK.C.

GA_OffsetList* myCrossSectionPrimOffs

Definition at line 286 of file SOP_SweepHDK.C.

bool myCrossSectionUnrolled

Definition at line 291 of file SOP_SweepHDK.C.

GA_AttributeOwner myCurveAttribOwner = GA_ATTRIB_INVALID

This is just a cache of the owner of myCurveIntAttrib or myCurveStrAttrib, whichever is valid, or GA_ATTRIB_INVALID if neither is valid.

Definition at line 130 of file SOP_SweepHDK.C.

bool myCurveClosed

Definition at line 288 of file SOP_SweepHDK.C.

GA_ROHandleID myCurveIntAttrib

Handle for reading int64 attribute on curve input. If valid, it could be a point, vertex, primitive, or detail attribute. If invalid, myCurveStrAttrib might be valid.

Definition at line 105 of file SOP_SweepHDK.C.

exint myCurveNEdges

Definition at line 279 of file SOP_SweepHDK.C.

GA_Offset myCurvePrimOff

Definition at line 281 of file SOP_SweepHDK.C.

GA_ROHandleS myCurveStrAttrib

Handle for reading string attribute on curve input. If valid, it could be a point, vertex, primitive, or detail attribute. This can only be valid if myCurveIntAttrib is invalid.

Definition at line 110 of file SOP_SweepHDK.C.

bool myCurveUnrolled

Definition at line 289 of file SOP_SweepHDK.C.

bool myHasPolygonCaps

Definition at line 296 of file SOP_SweepHDK.C.

UT::ArrayMap<exint, GA_Offset> myIntToPrimOff

Map from integer to primitive offset in the cross section input. This won't be used at the same time as myStrToPrimOff. NOTE: UT::ArrayMap<exint,...> doesn't support 0x8000000000000000LL as a key, which is probably safe to exclude. If you need a map without any excluded values, UT_Map works.

Definition at line 117 of file SOP_SweepHDK.C.

bool myIsUsingMap = false

If myCurveIntAttrib is valid and the cross section geometry doesn't have a matching attribute, it will use the primitive index, instead of a map.

Definition at line 135 of file SOP_SweepHDK.C.

PrimitiveType myPrimitiveType

Definition at line 298 of file SOP_SweepHDK.C.

bool mySingleCrossSection

Definition at line 292 of file SOP_SweepHDK.C.

GA_Offset myStartPrimOff

Definition at line 277 of file SOP_SweepHDK.C.

GA_Offset myStartPtOff

Definition at line 276 of file SOP_SweepHDK.C.

GA_Offset myStartVtxOff

Definition at line 278 of file SOP_SweepHDK.C.

UT_ArrayStringMap<GA_Offset> myStrToPrimOff

Map from string to primitive offset in the cross section input. This won't be used at the same time as myIntToPrimOff. NOTE: UT_ArrayStringMap doesn't support "" as a key, so any primitives with name "" won't be matched, which is probably what'd be expected anyway. If you need a map without any excluded values, UT_Map works.

Definition at line 125 of file SOP_SweepHDK.C.

bool myUEndPoles

Definition at line 294 of file SOP_SweepHDK.C.

bool myVEndPoles

Definition at line 295 of file SOP_SweepHDK.C.