23 namespace SOP_PolyExtrude_2_0Enums
34 using namespace UT::Literal;
51 using namespace UT::Literal;
69 using namespace UT::Literal;
88 using namespace UT::Literal;
106 using namespace UT::Literal;
107 switch (enum_value) {
127 using namespace UT::Literal;
128 switch (enum_value) {
152 using namespace UT::Literal;
153 switch (enum_value) {
177 using namespace UT::Literal;
178 switch (enum_value) {
202 using namespace UT::Literal;
203 switch (enum_value) {
224 using namespace UT::Literal;
225 switch (enum_value) {
243 using namespace UT::Literal;
244 switch (enum_value) {
261 using namespace UT::Literal;
262 switch (enum_value) {
278 using namespace UT::Literal;
279 switch (enum_value) {
298 myUseSplitGroup =
false;
299 mySplitGroup =
""_UTsh;
302 myPtNormalAttrib =
"N"_UTsh;
308 myXformFront =
false;
319 myPreXformRotateOrder = 0;
324 myOutputFront =
true;
325 myOutputFrontGrp =
false;
326 myFrontGrp =
"extrudeFront"_UTsh;
327 myOutputBack =
false;
328 myOutputBackGrp =
false;
329 myBackGrp =
"extrudeBack"_UTsh;
331 myOutputSideGrp =
false;
332 mySideGrp =
"extrudeSide"_UTsh;
333 myOutputFrontSeamGrp =
false;
334 myFrontSeamGrp =
"extrudeFrontSeam"_UTsh;
335 myOutputBackSeamGrp =
false;
336 myBackSeamGrp =
"extrudeBackSeam"_UTsh;
337 myPreserveGroups =
true;
339 myCommonLimit =
true;
340 myAddVertexNormals =
false;
347 myFrontMagnitude = 1;
349 myFrontStiffness = 0;
353 myReverseSpineDirection =
false;
357 myThicknessScale = 1;
358 myUseThicknessAttrib =
true;
359 myThicknessAttrib =
"thickness"_UTsh;
360 myUseThicknessRamp =
true;
362 myUseTwistAttrib =
true;
363 myTwistAttrib =
"twist"_UTsh;
364 myUseTwistRamp =
true;
367 myUseLocalZScaleAttrib =
false;
368 myLocalZScaleAttrib =
"zscale"_UTsh;
369 myUseLocalInsetScaleAttrib =
false;
370 myLocalInsetScaleAttrib =
"insetscale"_UTsh;
371 myUseLocalTwistScaleAttrib =
false;
372 myLocalTwistScaleAttrib =
"twistscale"_UTsh;
373 myUseLocalDivScaleAttrib =
false;
374 myLocalDivScaleAttrib =
"divsscale"_UTsh;
375 myUseLocalXAttrib =
false;
376 myLocalXAttrib =
"localx"_UTsh;
377 myUseLocalZAttrib =
false;
378 myLocalZAttrib =
"localz"_UTsh;
379 myUseLocalCtrAttrib =
false;
380 myLocalCtrAttrib =
"localctr"_UTsh;
393 if (myGroup != src.myGroup)
return false;
394 if (mySplitType != src.mySplitType)
return false;
395 if (myUseSplitGroup != src.myUseSplitGroup)
return false;
396 if (mySplitGroup != src.mySplitGroup)
return false;
397 if (myExtrusionMode != src.myExtrusionMode)
return false;
398 if (myPtNormalSrc != src.myPtNormalSrc)
return false;
399 if (myPtNormalAttrib != src.myPtNormalAttrib)
return false;
400 if (myDist != src.myDist)
return false;
401 if (myInset != src.myInset)
return false;
402 if (myTwist != src.myTwist)
return false;
403 if (myDivs != src.myDivs)
return false;
404 if (mySpineType != src.mySpineType)
return false;
405 if (myXformFront != src.myXformFront)
return false;
406 if (myXformSpace != src.myXformSpace)
return false;
407 if (myXformOrder != src.myXformOrder)
return false;
408 if (myRotateOrder != src.myRotateOrder)
return false;
409 if (myTranslate != src.myTranslate)
return false;
410 if (myRotate != src.myRotate)
return false;
411 if (myScale != src.myScale)
return false;
412 if (myShear != src.myShear)
return false;
413 if (myPivot != src.myPivot)
return false;
414 if (myPivotRotate != src.myPivotRotate)
return false;
415 if (myPreXformOrder != src.myPreXformOrder)
return false;
416 if (myPreXformRotateOrder != src.myPreXformRotateOrder)
return false;
417 if (myPreXformTranslate != src.myPreXformTranslate)
return false;
418 if (myPreXformRotate != src.myPreXformRotate)
return false;
419 if (myPreXformScale != src.myPreXformScale)
return false;
420 if (myPreXformShear != src.myPreXformShear)
return false;
421 if (myOutputFront != src.myOutputFront)
return false;
422 if (myOutputFrontGrp != src.myOutputFrontGrp)
return false;
423 if (myFrontGrp != src.myFrontGrp)
return false;
424 if (myOutputBack != src.myOutputBack)
return false;
425 if (myOutputBackGrp != src.myOutputBackGrp)
return false;
426 if (myBackGrp != src.myBackGrp)
return false;
427 if (myOutputSide != src.myOutputSide)
return false;
428 if (myOutputSideGrp != src.myOutputSideGrp)
return false;
429 if (mySideGrp != src.mySideGrp)
return false;
430 if (myOutputFrontSeamGrp != src.myOutputFrontSeamGrp)
return false;
431 if (myFrontSeamGrp != src.myFrontSeamGrp)
return false;
432 if (myOutputBackSeamGrp != src.myOutputBackSeamGrp)
return false;
433 if (myBackSeamGrp != src.myBackSeamGrp)
return false;
434 if (myPreserveGroups != src.myPreserveGroups)
return false;
435 if (myLimitInset != src.myLimitInset)
return false;
436 if (myCommonLimit != src.myCommonLimit)
return false;
437 if (myAddVertexNormals != src.myAddVertexNormals)
return false;
438 if (myCuspAngle != src.myCuspAngle)
return false;
439 if (myCuspFront != src.myCuspFront)
return false;
440 if (myCuspBack != src.myCuspBack)
return false;
441 if (myGenUVs != src.myGenUVs)
return false;
442 if (myUVStyle != src.myUVStyle)
return false;
443 if (myUVScaling != src.myUVScaling)
return false;
444 if (myFrontMagnitude != src.myFrontMagnitude)
return false;
445 if (myBackMagnitude != src.myBackMagnitude)
return false;
446 if (myFrontStiffness != src.myFrontStiffness)
return false;
447 if (myBackStiffness != src.myBackStiffness)
return false;
448 if (myInterpolation != src.myInterpolation)
return false;
449 if (mySpacing != src.mySpacing)
return false;
450 if (myReverseSpineDirection != src.myReverseSpineDirection)
return false;
451 if (myAxialRotation != src.myAxialRotation)
return false;
452 if (myFrontBlend != src.myFrontBlend)
return false;
453 if (myBackBlend != src.myBackBlend)
return false;
454 if (myThicknessScale != src.myThicknessScale)
return false;
455 if (myUseThicknessAttrib != src.myUseThicknessAttrib)
return false;
456 if (myThicknessAttrib != src.myThicknessAttrib)
return false;
457 if (myUseThicknessRamp != src.myUseThicknessRamp)
return false;
458 if (myThicknessRamp != src.myThicknessRamp)
459 {
if (!myThicknessRamp || !src.myThicknessRamp || !(*myThicknessRamp == *src.myThicknessRamp))
return false; }
460 if (myUseTwistAttrib != src.myUseTwistAttrib)
return false;
461 if (myTwistAttrib != src.myTwistAttrib)
return false;
462 if (myUseTwistRamp != src.myUseTwistRamp)
return false;
463 if (myTwistRamp != src.myTwistRamp)
464 {
if (!myTwistRamp || !src.myTwistRamp || !(*myTwistRamp == *src.myTwistRamp))
return false; }
465 if (myTwistScale != src.myTwistScale)
return false;
466 if (myUseLocalZScaleAttrib != src.myUseLocalZScaleAttrib)
return false;
467 if (myLocalZScaleAttrib != src.myLocalZScaleAttrib)
return false;
468 if (myUseLocalInsetScaleAttrib != src.myUseLocalInsetScaleAttrib)
return false;
469 if (myLocalInsetScaleAttrib != src.myLocalInsetScaleAttrib)
return false;
470 if (myUseLocalTwistScaleAttrib != src.myUseLocalTwistScaleAttrib)
return false;
471 if (myLocalTwistScaleAttrib != src.myLocalTwistScaleAttrib)
return false;
472 if (myUseLocalDivScaleAttrib != src.myUseLocalDivScaleAttrib)
return false;
473 if (myLocalDivScaleAttrib != src.myLocalDivScaleAttrib)
return false;
474 if (myUseLocalXAttrib != src.myUseLocalXAttrib)
return false;
475 if (myLocalXAttrib != src.myLocalXAttrib)
return false;
476 if (myUseLocalZAttrib != src.myUseLocalZAttrib)
return false;
477 if (myLocalZAttrib != src.myLocalZAttrib)
return false;
478 if (myUseLocalCtrAttrib != src.myUseLocalCtrAttrib)
return false;
479 if (myLocalCtrAttrib != src.myLocalCtrAttrib)
return false;
507 graph->
evalOpParm(myGroup, nodeidx,
"group", time, 0);
510 graph->
evalOpParm(mySplitType, nodeidx,
"splittype", time, 0);
511 myUseSplitGroup =
false;
512 if (
true && ( (
true&&!(((
int64(getSplitType())!=1)))) ) )
513 graph->
evalOpParm(myUseSplitGroup, nodeidx,
"usesplitgroup", time, 0);
514 mySplitGroup =
""_UTsh;
515 if (
true && ( (
true&&!(((
int64(getSplitType())!=1))||((getUseSplitGroup()!=1)))) ) )
516 graph->
evalOpParm(mySplitGroup, nodeidx,
"splitgroup", time, 0);
519 graph->
evalOpParm(myExtrusionMode, nodeidx,
"extrusionmode", time, 0);
521 if (
true && ( (
true&&!(((
int64(getExtrusionMode())!=1)))) ) )
522 graph->
evalOpParm(myPtNormalSrc, nodeidx,
"ptnormalsrc", time, 0);
523 myPtNormalAttrib =
"N"_UTsh;
524 if (
true && ( (
true&&!(((
int64(getExtrusionMode())!=1))||((
int64(getPtNormalSrc())!=2)))) ) )
525 graph->
evalOpParm(myPtNormalAttrib, nodeidx,
"ptnormalattrib", time, 0);
528 graph->
evalOpParm(myDist, nodeidx,
"dist", time, 0);
531 graph->
evalOpParm(myInset, nodeidx,
"inset", time, 0);
534 graph->
evalOpParm(myTwist, nodeidx,
"twist", time, 0);
537 graph->
evalOpParm(myDivs, nodeidx,
"divs", time, 0);
540 graph->
evalOpParm(mySpineType, nodeidx,
"spinetype", time, 0);
541 myXformFront =
false;
543 graph->
evalOpParm(myXformFront, nodeidx,
"xformfront", time, 0);
545 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
546 graph->
evalOpParm(myXformSpace, nodeidx,
"xformspace", time, 0);
548 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
549 graph->
evalOpParm(myXformOrder, nodeidx,
"rst", time, 0);
551 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
552 graph->
evalOpParm(myRotateOrder, nodeidx,
"xyz", time, 0);
554 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
555 graph->
evalOpParm(myTranslate, nodeidx,
"translate", time, 0);
557 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
558 graph->
evalOpParm(myRotate, nodeidx,
"rotate", time, 0);
560 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
561 graph->
evalOpParm(myScale, nodeidx,
"scale", time, 0);
563 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
564 graph->
evalOpParm(myShear, nodeidx,
"shear", time, 0);
566 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
567 graph->
evalOpParm(myPivot, nodeidx,
"pivot", time, 0);
569 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
570 graph->
evalOpParm(myPivotRotate, nodeidx,
"pivotrotate", time, 0);
572 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
573 graph->
evalOpParm(myPreXformOrder, nodeidx,
"prexform_rst", time, 0);
574 myPreXformRotateOrder = 0;
575 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
576 graph->
evalOpParm(myPreXformRotateOrder, nodeidx,
"prexform_xyz", time, 0);
578 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
579 graph->
evalOpParm(myPreXformTranslate, nodeidx,
"prexform_translate", time, 0);
581 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
582 graph->
evalOpParm(myPreXformRotate, nodeidx,
"prexform_rotate", time, 0);
584 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
585 graph->
evalOpParm(myPreXformScale, nodeidx,
"prexform_scale", time, 0);
587 if (
true && ( (
true&&!(((getXformFront()==0)))) ) )
588 graph->
evalOpParm(myPreXformShear, nodeidx,
"prexform_shear", time, 0);
589 myOutputFront =
true;
591 graph->
evalOpParm(myOutputFront, nodeidx,
"outputfront", time, 0);
592 myOutputFrontGrp =
false;
594 graph->
evalOpParm(myOutputFrontGrp, nodeidx,
"outputfrontgrp", time, 0);
595 myFrontGrp =
"extrudeFront"_UTsh;
596 if (
true && ( (
true&&!(((getOutputFrontGrp()==0)))) ) )
597 graph->
evalOpParm(myFrontGrp, nodeidx,
"frontgrp", time, 0);
598 myOutputBack =
false;
600 graph->
evalOpParm(myOutputBack, nodeidx,
"outputback", time, 0);
601 myOutputBackGrp =
false;
603 graph->
evalOpParm(myOutputBackGrp, nodeidx,
"outputbackgrp", time, 0);
604 myBackGrp =
"extrudeBack"_UTsh;
605 if (
true && ( (
true&&!(((getOutputBackGrp()==0)))) ) )
606 graph->
evalOpParm(myBackGrp, nodeidx,
"backgrp", time, 0);
609 graph->
evalOpParm(myOutputSide, nodeidx,
"outputside", time, 0);
610 myOutputSideGrp =
false;
612 graph->
evalOpParm(myOutputSideGrp, nodeidx,
"outputsidegrp", time, 0);
613 mySideGrp =
"extrudeSide"_UTsh;
614 if (
true && ( (
true&&!(((getOutputSideGrp()==0)))) ) )
615 graph->
evalOpParm(mySideGrp, nodeidx,
"sidegrp", time, 0);
616 myOutputFrontSeamGrp =
false;
618 graph->
evalOpParm(myOutputFrontSeamGrp, nodeidx,
"outputfrontseamgrp", time, 0);
619 myFrontSeamGrp =
"extrudeFrontSeam"_UTsh;
620 if (
true && ( (
true&&!(((getOutputFrontSeamGrp()==0)))) ) )
621 graph->
evalOpParm(myFrontSeamGrp, nodeidx,
"frontseamgrp", time, 0);
622 myOutputBackSeamGrp =
false;
624 graph->
evalOpParm(myOutputBackSeamGrp, nodeidx,
"outputbackseamgrp", time, 0);
625 myBackSeamGrp =
"extrudeBackSeam"_UTsh;
626 if (
true && ( (
true&&!(((getOutputBackSeamGrp()==0)))) ) )
627 graph->
evalOpParm(myBackSeamGrp, nodeidx,
"backseamgrp", time, 0);
628 myPreserveGroups =
true;
630 graph->
evalOpParm(myPreserveGroups, nodeidx,
"preservegroups", time, 0);
633 graph->
evalOpParm(myLimitInset, nodeidx,
"limitinset", time, 0);
634 myCommonLimit =
true;
635 if (
true && ( (
true&&!(((getLimitInset()==0)))) ) )
636 graph->
evalOpParm(myCommonLimit, nodeidx,
"commonlimit", time, 0);
637 myAddVertexNormals =
false;
639 graph->
evalOpParm(myAddVertexNormals, nodeidx,
"addvertexnomrals", time, 0);
641 if (
true && ( (
true&&!(((getAddVertexNormals()==0)))) ) )
642 graph->
evalOpParm(myCuspAngle, nodeidx,
"cuspangle", time, 0);
644 if (
true && ( (
true&&!(((getAddVertexNormals()==0)))) ) )
645 graph->
evalOpParm(myCuspFront, nodeidx,
"cuspfront", time, 0);
647 if (
true && ( (
true&&!(((getAddVertexNormals()==0)))) ) )
648 graph->
evalOpParm(myCuspBack, nodeidx,
"cuspback", time, 0);
651 graph->
evalOpParm(myGenUVs, nodeidx,
"genuvs", time, 0);
653 if (
true && ( (
true&&!(((getGenUVs()==0)))) ) )
654 graph->
evalOpParm(myUVStyle, nodeidx,
"uvstyle", time, 0);
656 if (
true && ( (
true&&!(((getGenUVs()==0)))) ) )
657 graph->
evalOpParm(myUVScaling, nodeidx,
"uvscaling", time, 0);
658 myFrontMagnitude = 1;
659 if (
true && ( (
true&&!(((
int64(getSpineType())==0)))) ) )
660 graph->
evalOpParm(myFrontMagnitude, nodeidx,
"frontmagnitude", time, 0);
662 if (
true && ( (
true&&!(((
int64(getSpineType())==0)))) ) )
663 graph->
evalOpParm(myBackMagnitude, nodeidx,
"backmagnitude", time, 0);
664 myFrontStiffness = 0;
665 if (
true && ( (
true&&!(((
int64(getSpineType())==0)))) ) )
666 graph->
evalOpParm(myFrontStiffness, nodeidx,
"frontstiffness", time, 0);
668 if (
true && ( (
true&&!(((
int64(getSpineType())==0)))) ) )
669 graph->
evalOpParm(myBackStiffness, nodeidx,
"backstiffness", time, 0);
672 graph->
evalOpParm(myInterpolation, nodeidx,
"interpolation", time, 0);
675 graph->
evalOpParm(mySpacing, nodeidx,
"spacing", time, 0);
676 myReverseSpineDirection =
false;
677 if (
true && ( (
true&&!(((
int64(getSpineType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0)))) ) )
678 graph->
evalOpParm(myReverseSpineDirection, nodeidx,
"reversespinedirection", time, 0);
680 if (
true && ( (
true&&!(((
int64(getSpineType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0)))) ) )
681 graph->
evalOpParm(myAxialRotation, nodeidx,
"axialrotation", time, 0);
683 if (
true && ( (
true&&!(((
int64(getSpineType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0)))) ) )
684 graph->
evalOpParm(myFrontBlend, nodeidx,
"frontblend", time, 0);
686 if (
true && ( (
true&&!(((
int64(getSpineType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0)))) ) )
687 graph->
evalOpParm(myBackBlend, nodeidx,
"backblend", time, 0);
688 myThicknessScale = 1;
690 graph->
evalOpParm(myThicknessScale, nodeidx,
"thicknessscale", time, 0);
691 myUseThicknessAttrib =
true;
692 if (
true && ( (
true&&!(((
int64(getSpineType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0)))) ) )
693 graph->
evalOpParm(myUseThicknessAttrib, nodeidx,
"usethicknessattrib", time, 0);
694 myThicknessAttrib =
"thickness"_UTsh;
695 if (
true && ( (
true&&!(((
int64(getSpineType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0))||((getUseThicknessAttrib()==0)))) ) )
696 graph->
evalOpParm(myThicknessAttrib, nodeidx,
"thicknessattrib", time, 0);
697 myUseThicknessRamp =
true;
699 graph->
evalOpParm(myUseThicknessRamp, nodeidx,
"usethicknessramp", time, 0);
701 if (
true && ( (
true&&!(((getUseThicknessRamp()==0)))) ) )
702 graph->
evalOpParm(myThicknessRamp, nodeidx,
"thicknessramp", time, 0);
703 myUseTwistAttrib =
true;
704 if (
true && ( (
true&&!(((
int64(getSpineType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0)))) ) )
705 graph->
evalOpParm(myUseTwistAttrib, nodeidx,
"usetwistattrib", time, 0);
706 myTwistAttrib =
"twist"_UTsh;
707 if (
true && ( (
true&&!(((
int64(getSpineType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0))||((getUseTwistAttrib()==0)))) ) )
708 graph->
evalOpParm(myTwistAttrib, nodeidx,
"twistattrib", time, 0);
709 myUseTwistRamp =
true;
711 graph->
evalOpParm(myUseTwistRamp, nodeidx,
"usetwistramp", time, 0);
713 if (
true && ( (
true&&!(((getUseTwistRamp()==0)))) ) )
714 graph->
evalOpParm(myTwistRamp, nodeidx,
"twistramp", time, 0);
717 graph->
evalOpParm(myTwistScale, nodeidx,
"twistscale", time, 0);
718 myUseLocalZScaleAttrib =
false;
720 graph->
evalOpParm(myUseLocalZScaleAttrib, nodeidx,
"uselocalzscaleattrib", time, 0);
721 myLocalZScaleAttrib =
"zscale"_UTsh;
722 if (
true && ( (
true&&!(((getUseLocalZScaleAttrib()==0)))) ) )
723 graph->
evalOpParm(myLocalZScaleAttrib, nodeidx,
"localzscaleattrib", time, 0);
724 myUseLocalInsetScaleAttrib =
false;
726 graph->
evalOpParm(myUseLocalInsetScaleAttrib, nodeidx,
"uselocalinsetscaleattrib", time, 0);
727 myLocalInsetScaleAttrib =
"insetscale"_UTsh;
728 if (
true && ( (
true&&!(((getUseLocalInsetScaleAttrib()==0)))) ) )
729 graph->
evalOpParm(myLocalInsetScaleAttrib, nodeidx,
"localinsetscaleattrib", time, 0);
730 myUseLocalTwistScaleAttrib =
false;
732 graph->
evalOpParm(myUseLocalTwistScaleAttrib, nodeidx,
"uselocaltwistattrib", time, 0);
733 myLocalTwistScaleAttrib =
"twistscale"_UTsh;
734 if (
true && ( (
true&&!(((getUseLocalTwistScaleAttrib()==0)))) ) )
735 graph->
evalOpParm(myLocalTwistScaleAttrib, nodeidx,
"localtwistscaleattrib", time, 0);
736 myUseLocalDivScaleAttrib =
false;
738 graph->
evalOpParm(myUseLocalDivScaleAttrib, nodeidx,
"uselocaldivsattrib", time, 0);
739 myLocalDivScaleAttrib =
"divsscale"_UTsh;
740 if (
true && ( (
true&&!(((getUseLocalDivScaleAttrib()==0)))) ) )
741 graph->
evalOpParm(myLocalDivScaleAttrib, nodeidx,
"locadivscaleattrib", time, 0);
742 myUseLocalXAttrib =
false;
744 graph->
evalOpParm(myUseLocalXAttrib, nodeidx,
"uselocalxattrib", time, 0);
745 myLocalXAttrib =
"localx"_UTsh;
746 if (
true && ( (
true&&!(((getUseLocalXAttrib()==0)))) ) )
747 graph->
evalOpParm(myLocalXAttrib, nodeidx,
"localxattrib", time, 0);
748 myUseLocalZAttrib =
false;
750 graph->
evalOpParm(myUseLocalZAttrib, nodeidx,
"uselocalzattirb", time, 0);
751 myLocalZAttrib =
"localz"_UTsh;
752 if (
true && ( (
true&&!(((getUseLocalZAttrib()==0)))) ) )
753 graph->
evalOpParm(myLocalZAttrib, nodeidx,
"localzattirb", time, 0);
754 myUseLocalCtrAttrib =
false;
756 graph->
evalOpParm(myUseLocalCtrAttrib, nodeidx,
"uselocalctrattrib", time, 0);
757 myLocalCtrAttrib =
"localctr"_UTsh;
758 if (
true && ( (
true&&!(((getUseLocalCtrAttrib()==0)))) ) )
759 graph->
evalOpParm(myLocalCtrAttrib, nodeidx,
"localctrattrib", time, 0);
775 template <
typename T>
782 if (idx.
size() != instance.
size()+1)
787 coerceValue(value, myGroup);
790 coerceValue(value, mySplitType);
793 coerceValue(value, myUseSplitGroup);
796 coerceValue(value, mySplitGroup);
799 coerceValue(value, myExtrusionMode);
802 coerceValue(value, myPtNormalSrc);
805 coerceValue(value, myPtNormalAttrib);
808 coerceValue(value, myDist);
811 coerceValue(value, myInset);
814 coerceValue(value, myTwist);
817 coerceValue(value, myDivs);
820 coerceValue(value, mySpineType);
823 coerceValue(value, myXformFront);
826 coerceValue(value, myXformSpace);
829 coerceValue(value, myXformOrder);
832 coerceValue(value, myRotateOrder);
835 coerceValue(value, myTranslate);
838 coerceValue(value, myRotate);
841 coerceValue(value, myScale);
844 coerceValue(value, myShear);
847 coerceValue(value, myPivot);
850 coerceValue(value, myPivotRotate);
853 coerceValue(value, myPreXformOrder);
856 coerceValue(value, myPreXformRotateOrder);
859 coerceValue(value, myPreXformTranslate);
862 coerceValue(value, myPreXformRotate);
865 coerceValue(value, myPreXformScale);
868 coerceValue(value, myPreXformShear);
871 coerceValue(value, myOutputFront);
874 coerceValue(value, myOutputFrontGrp);
877 coerceValue(value, myFrontGrp);
880 coerceValue(value, myOutputBack);
883 coerceValue(value, myOutputBackGrp);
886 coerceValue(value, myBackGrp);
889 coerceValue(value, myOutputSide);
892 coerceValue(value, myOutputSideGrp);
895 coerceValue(value, mySideGrp);
898 coerceValue(value, myOutputFrontSeamGrp);
901 coerceValue(value, myFrontSeamGrp);
904 coerceValue(value, myOutputBackSeamGrp);
907 coerceValue(value, myBackSeamGrp);
910 coerceValue(value, myPreserveGroups);
913 coerceValue(value, myLimitInset);
916 coerceValue(value, myCommonLimit);
919 coerceValue(value, myAddVertexNormals);
922 coerceValue(value, myCuspAngle);
925 coerceValue(value, myCuspFront);
928 coerceValue(value, myCuspBack);
931 coerceValue(value, myGenUVs);
934 coerceValue(value, myUVStyle);
937 coerceValue(value, myUVScaling);
940 coerceValue(value, myFrontMagnitude);
943 coerceValue(value, myBackMagnitude);
946 coerceValue(value, myFrontStiffness);
949 coerceValue(value, myBackStiffness);
952 coerceValue(value, myInterpolation);
955 coerceValue(value, mySpacing);
958 coerceValue(value, myReverseSpineDirection);
961 coerceValue(value, myAxialRotation);
964 coerceValue(value, myFrontBlend);
967 coerceValue(value, myBackBlend);
970 coerceValue(value, myThicknessScale);
973 coerceValue(value, myUseThicknessAttrib);
976 coerceValue(value, myThicknessAttrib);
979 coerceValue(value, myUseThicknessRamp);
982 coerceValue(value, myThicknessRamp);
985 coerceValue(value, myUseTwistAttrib);
988 coerceValue(value, myTwistAttrib);
991 coerceValue(value, myUseTwistRamp);
994 coerceValue(value, myTwistRamp);
997 coerceValue(value, myTwistScale);
1000 coerceValue(value, myUseLocalZScaleAttrib);
1003 coerceValue(value, myLocalZScaleAttrib);
1006 coerceValue(value, myUseLocalInsetScaleAttrib);
1009 coerceValue(value, myLocalInsetScaleAttrib);
1012 coerceValue(value, myUseLocalTwistScaleAttrib);
1015 coerceValue(value, myLocalTwistScaleAttrib);
1018 coerceValue(value, myUseLocalDivScaleAttrib);
1021 coerceValue(value, myLocalDivScaleAttrib);
1024 coerceValue(value, myUseLocalXAttrib);
1027 coerceValue(value, myLocalXAttrib);
1030 coerceValue(value, myUseLocalZAttrib);
1033 coerceValue(value, myLocalZAttrib);
1036 coerceValue(value, myUseLocalCtrAttrib);
1039 coerceValue(value, myLocalCtrAttrib);
1055 { doGetParmValue(idx, instance, value); }
1057 { doGetParmValue(idx, instance, value); }
1059 { doGetParmValue(idx, instance, value); }
1061 { doGetParmValue(idx, instance, value); }
1063 { doGetParmValue(idx, instance, value); }
1065 { doGetParmValue(idx, instance, value); }
1067 { doGetParmValue(idx, instance, value); }
1069 { doGetParmValue(idx, instance, value); }
1071 { doGetParmValue(idx, instance, value); }
1073 { doGetParmValue(idx, instance, value); }
1075 { doGetParmValue(idx, instance, value); }
1077 template <
typename T>
1084 if (idx.
size() != instance.
size()+1)
1089 coerceValue(myGroup, ( ( value ) ));
1092 coerceValue(mySplitType, clampMinValue(0, clampMaxValue(1, value ) ));
1095 coerceValue(myUseSplitGroup, ( ( value ) ));
1098 coerceValue(mySplitGroup, ( ( value ) ));
1101 coerceValue(myExtrusionMode, clampMinValue(0, clampMaxValue(1, value ) ));
1104 coerceValue(myPtNormalSrc, clampMinValue(0, clampMaxValue(2, value ) ));
1107 coerceValue(myPtNormalAttrib, ( ( value ) ));
1110 coerceValue(myDist, ( ( value ) ));
1113 coerceValue(myInset, ( ( value ) ));
1116 coerceValue(myTwist, ( ( value ) ));
1119 coerceValue(myDivs, clampMinValue(1, ( value ) ));
1122 coerceValue(mySpineType, clampMinValue(0, clampMaxValue(2, value ) ));
1125 coerceValue(myXformFront, ( ( value ) ));
1128 coerceValue(myXformSpace, clampMinValue(0, clampMaxValue(1, value ) ));
1131 coerceValue(myXformOrder, clampMinValue(0, clampMaxValue(5, value ) ));
1134 coerceValue(myRotateOrder, clampMinValue(0, clampMaxValue(5, value ) ));
1137 coerceValue(myTranslate, ( ( value ) ));
1140 coerceValue(myRotate, ( ( value ) ));
1143 coerceValue(myScale, ( ( value ) ));
1146 coerceValue(myShear, ( ( value ) ));
1149 coerceValue(myPivot, ( ( value ) ));
1152 coerceValue(myPivotRotate, ( ( value ) ));
1155 coerceValue(myPreXformOrder, clampMinValue(0, clampMaxValue(5, value ) ));
1158 coerceValue(myPreXformRotateOrder, clampMinValue(0, clampMaxValue(5, value ) ));
1161 coerceValue(myPreXformTranslate, ( ( value ) ));
1164 coerceValue(myPreXformRotate, ( ( value ) ));
1167 coerceValue(myPreXformScale, ( ( value ) ));
1170 coerceValue(myPreXformShear, ( ( value ) ));
1173 coerceValue(myOutputFront, ( ( value ) ));
1176 coerceValue(myOutputFrontGrp, ( ( value ) ));
1179 coerceValue(myFrontGrp, ( ( value ) ));
1182 coerceValue(myOutputBack, ( ( value ) ));
1185 coerceValue(myOutputBackGrp, ( ( value ) ));
1188 coerceValue(myBackGrp, ( ( value ) ));
1191 coerceValue(myOutputSide, ( ( value ) ));
1194 coerceValue(myOutputSideGrp, ( ( value ) ));
1197 coerceValue(mySideGrp, ( ( value ) ));
1200 coerceValue(myOutputFrontSeamGrp, ( ( value ) ));
1203 coerceValue(myFrontSeamGrp, ( ( value ) ));
1206 coerceValue(myOutputBackSeamGrp, ( ( value ) ));
1209 coerceValue(myBackSeamGrp, ( ( value ) ));
1212 coerceValue(myPreserveGroups, ( ( value ) ));
1215 coerceValue(myLimitInset, ( ( value ) ));
1218 coerceValue(myCommonLimit, ( ( value ) ));
1221 coerceValue(myAddVertexNormals, ( ( value ) ));
1224 coerceValue(myCuspAngle, clampMinValue(0, clampMaxValue(180, value ) ));
1227 coerceValue(myCuspFront, ( ( value ) ));
1230 coerceValue(myCuspBack, ( ( value ) ));
1233 coerceValue(myGenUVs, ( ( value ) ));
1236 coerceValue(myUVStyle, clampMinValue(0, clampMaxValue(2, value ) ));
1239 coerceValue(myUVScaling, clampMinValue(0, clampMaxValue(2, value ) ));
1242 coerceValue(myFrontMagnitude, clampMinValue(0.0001, ( value ) ));
1245 coerceValue(myBackMagnitude, clampMinValue(0.0001, ( value ) ));
1248 coerceValue(myFrontStiffness, clampMinValue(0, clampMaxValue(1, value ) ));
1251 coerceValue(myBackStiffness, clampMinValue(0, clampMaxValue(1, value ) ));
1254 coerceValue(myInterpolation, clampMinValue(0, clampMaxValue(1, value ) ));
1257 coerceValue(mySpacing, clampMinValue(0, clampMaxValue(1, value ) ));
1260 coerceValue(myReverseSpineDirection, ( ( value ) ));
1263 coerceValue(myAxialRotation, clampMinValue(0, clampMaxValue(360, value ) ));
1266 coerceValue(myFrontBlend, clampMinValue(0, clampMaxValue(1, value ) ));
1269 coerceValue(myBackBlend, clampMinValue(0, clampMaxValue(1, value ) ));
1272 coerceValue(myThicknessScale, ( ( value ) ));
1275 coerceValue(myUseThicknessAttrib, ( ( value ) ));
1278 coerceValue(myThicknessAttrib, ( ( value ) ));
1281 coerceValue(myUseThicknessRamp, ( ( value ) ));
1284 coerceValue(myThicknessRamp, clampMinValue(1, ( value ) ));
1287 coerceValue(myUseTwistAttrib, ( ( value ) ));
1290 coerceValue(myTwistAttrib, ( ( value ) ));
1293 coerceValue(myUseTwistRamp, ( ( value ) ));
1296 coerceValue(myTwistRamp, clampMinValue(1, ( value ) ));
1299 coerceValue(myTwistScale, ( ( value ) ));
1302 coerceValue(myUseLocalZScaleAttrib, ( ( value ) ));
1305 coerceValue(myLocalZScaleAttrib, ( ( value ) ));
1308 coerceValue(myUseLocalInsetScaleAttrib, ( ( value ) ));
1311 coerceValue(myLocalInsetScaleAttrib, ( ( value ) ));
1314 coerceValue(myUseLocalTwistScaleAttrib, ( ( value ) ));
1317 coerceValue(myLocalTwistScaleAttrib, ( ( value ) ));
1320 coerceValue(myUseLocalDivScaleAttrib, ( ( value ) ));
1323 coerceValue(myLocalDivScaleAttrib, ( ( value ) ));
1326 coerceValue(myUseLocalXAttrib, ( ( value ) ));
1329 coerceValue(myLocalXAttrib, ( ( value ) ));
1332 coerceValue(myUseLocalZAttrib, ( ( value ) ));
1335 coerceValue(myLocalZAttrib, ( ( value ) ));
1338 coerceValue(myUseLocalCtrAttrib, ( ( value ) ));
1341 coerceValue(myLocalCtrAttrib, ( ( value ) ));
1348 { doSetParmValue(idx, instance, value); }
1350 { doSetParmValue(idx, instance, value); }
1352 { doSetParmValue(idx, instance, value); }
1354 { doSetParmValue(idx, instance, value); }
1356 { doSetParmValue(idx, instance, value); }
1358 { doSetParmValue(idx, instance, value); }
1360 { doSetParmValue(idx, instance, value); }
1362 { doSetParmValue(idx, instance, value); }
1364 { doSetParmValue(idx, instance, value); }
1366 { doSetParmValue(idx, instance, value); }
1368 { doSetParmValue(idx, instance, value); }
1372 if (idx.
size() == 0)
1384 if (fieldnum.
size() < 1)
1386 switch (fieldnum[0])
1393 return "usesplitgroup";
1395 return "splitgroup";
1397 return "extrusionmode";
1399 return "ptnormalsrc";
1401 return "ptnormalattrib";
1413 return "xformfront";
1415 return "xformspace";
1431 return "pivotrotate";
1433 return "prexform_rst";
1435 return "prexform_xyz";
1437 return "prexform_translate";
1439 return "prexform_rotate";
1441 return "prexform_scale";
1443 return "prexform_shear";
1445 return "outputfront";
1447 return "outputfrontgrp";
1451 return "outputback";
1453 return "outputbackgrp";
1457 return "outputside";
1459 return "outputsidegrp";
1463 return "outputfrontseamgrp";
1465 return "frontseamgrp";
1467 return "outputbackseamgrp";
1469 return "backseamgrp";
1471 return "preservegroups";
1473 return "limitinset";
1475 return "commonlimit";
1477 return "addvertexnomrals";
1491 return "frontmagnitude";
1493 return "backmagnitude";
1495 return "frontstiffness";
1497 return "backstiffness";
1499 return "interpolation";
1503 return "reversespinedirection";
1505 return "axialrotation";
1507 return "frontblend";
1511 return "thicknessscale";
1513 return "usethicknessattrib";
1515 return "thicknessattrib";
1517 return "usethicknessramp";
1519 return "thicknessramp";
1521 return "usetwistattrib";
1523 return "twistattrib";
1525 return "usetwistramp";
1529 return "twistscale";
1531 return "uselocalzscaleattrib";
1533 return "localzscaleattrib";
1535 return "uselocalinsetscaleattrib";
1537 return "localinsetscaleattrib";
1539 return "uselocaltwistattrib";
1541 return "localtwistscaleattrib";
1543 return "uselocaldivsattrib";
1545 return "locadivscaleattrib";
1547 return "uselocalxattrib";
1549 return "localxattrib";
1551 return "uselocalzattirb";
1553 return "localzattirb";
1555 return "uselocalctrattrib";
1557 return "localctrattrib";
1565 if (fieldnum.
size() < 1)
1566 return PARM_UNSUPPORTED;
1567 switch (fieldnum[0])
1572 return PARM_INTEGER;
1574 return PARM_INTEGER;
1578 return PARM_INTEGER;
1580 return PARM_INTEGER;
1590 return PARM_INTEGER;
1592 return PARM_INTEGER;
1594 return PARM_INTEGER;
1596 return PARM_INTEGER;
1598 return PARM_INTEGER;
1600 return PARM_INTEGER;
1602 return PARM_VECTOR3;
1604 return PARM_VECTOR3;
1606 return PARM_VECTOR3;
1608 return PARM_VECTOR3;
1610 return PARM_VECTOR3;
1612 return PARM_VECTOR3;
1614 return PARM_INTEGER;
1616 return PARM_INTEGER;
1618 return PARM_VECTOR3;
1620 return PARM_VECTOR3;
1622 return PARM_VECTOR3;
1624 return PARM_VECTOR3;
1626 return PARM_INTEGER;
1628 return PARM_INTEGER;
1632 return PARM_INTEGER;
1634 return PARM_INTEGER;
1638 return PARM_INTEGER;
1640 return PARM_INTEGER;
1644 return PARM_INTEGER;
1648 return PARM_INTEGER;
1652 return PARM_INTEGER;
1654 return PARM_INTEGER;
1656 return PARM_INTEGER;
1658 return PARM_INTEGER;
1662 return PARM_INTEGER;
1664 return PARM_INTEGER;
1666 return PARM_INTEGER;
1668 return PARM_INTEGER;
1670 return PARM_INTEGER;
1680 return PARM_INTEGER;
1682 return PARM_INTEGER;
1684 return PARM_INTEGER;
1694 return PARM_INTEGER;
1698 return PARM_INTEGER;
1702 return PARM_INTEGER;
1706 return PARM_INTEGER;
1712 return PARM_INTEGER;
1716 return PARM_INTEGER;
1720 return PARM_INTEGER;
1724 return PARM_INTEGER;
1728 return PARM_INTEGER;
1732 return PARM_INTEGER;
1736 return PARM_INTEGER;
1741 return PARM_UNSUPPORTED;
1746 { is.
bread(&v, 1); }
1777 loadData(is, rampdata);
1795 int typelen = colon - data.
buffer();
1807 { UTwrite(os, &v); }
1809 {
int64 iv =
v; UTwrite(os, &iv); }
1811 { UTwrite<fpreal64>(os, &
v); }
1813 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
1815 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1816 UTwrite<fpreal64>(os, &v.
z()); }
1818 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1819 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
1831 if (s) s->save(ostr);
1832 result = ostr.
str();
1833 saveData(os, result);
1840 ostr << s->getDataTypeToken();
1842 s->saveBinary(ostr);
1844 result = ostr.
str();
1845 saveData(os, result);
1853 saveData(os, myGroup);
1854 saveData(os, mySplitType);
1855 saveData(os, myUseSplitGroup);
1856 saveData(os, mySplitGroup);
1857 saveData(os, myExtrusionMode);
1858 saveData(os, myPtNormalSrc);
1859 saveData(os, myPtNormalAttrib);
1860 saveData(os, myDist);
1861 saveData(os, myInset);
1862 saveData(os, myTwist);
1863 saveData(os, myDivs);
1864 saveData(os, mySpineType);
1865 saveData(os, myXformFront);
1866 saveData(os, myXformSpace);
1867 saveData(os, myXformOrder);
1868 saveData(os, myRotateOrder);
1869 saveData(os, myTranslate);
1870 saveData(os, myRotate);
1871 saveData(os, myScale);
1872 saveData(os, myShear);
1873 saveData(os, myPivot);
1874 saveData(os, myPivotRotate);
1875 saveData(os, myPreXformOrder);
1876 saveData(os, myPreXformRotateOrder);
1877 saveData(os, myPreXformTranslate);
1878 saveData(os, myPreXformRotate);
1879 saveData(os, myPreXformScale);
1880 saveData(os, myPreXformShear);
1881 saveData(os, myOutputFront);
1882 saveData(os, myOutputFrontGrp);
1883 saveData(os, myFrontGrp);
1884 saveData(os, myOutputBack);
1885 saveData(os, myOutputBackGrp);
1886 saveData(os, myBackGrp);
1887 saveData(os, myOutputSide);
1888 saveData(os, myOutputSideGrp);
1889 saveData(os, mySideGrp);
1890 saveData(os, myOutputFrontSeamGrp);
1891 saveData(os, myFrontSeamGrp);
1892 saveData(os, myOutputBackSeamGrp);
1893 saveData(os, myBackSeamGrp);
1894 saveData(os, myPreserveGroups);
1895 saveData(os, myLimitInset);
1896 saveData(os, myCommonLimit);
1897 saveData(os, myAddVertexNormals);
1898 saveData(os, myCuspAngle);
1899 saveData(os, myCuspFront);
1900 saveData(os, myCuspBack);
1901 saveData(os, myGenUVs);
1902 saveData(os, myUVStyle);
1903 saveData(os, myUVScaling);
1904 saveData(os, myFrontMagnitude);
1905 saveData(os, myBackMagnitude);
1906 saveData(os, myFrontStiffness);
1907 saveData(os, myBackStiffness);
1908 saveData(os, myInterpolation);
1909 saveData(os, mySpacing);
1910 saveData(os, myReverseSpineDirection);
1911 saveData(os, myAxialRotation);
1912 saveData(os, myFrontBlend);
1913 saveData(os, myBackBlend);
1914 saveData(os, myThicknessScale);
1915 saveData(os, myUseThicknessAttrib);
1916 saveData(os, myThicknessAttrib);
1917 saveData(os, myUseThicknessRamp);
1918 saveData(os, myThicknessRamp);
1919 saveData(os, myUseTwistAttrib);
1920 saveData(os, myTwistAttrib);
1921 saveData(os, myUseTwistRamp);
1922 saveData(os, myTwistRamp);
1923 saveData(os, myTwistScale);
1924 saveData(os, myUseLocalZScaleAttrib);
1925 saveData(os, myLocalZScaleAttrib);
1926 saveData(os, myUseLocalInsetScaleAttrib);
1927 saveData(os, myLocalInsetScaleAttrib);
1928 saveData(os, myUseLocalTwistScaleAttrib);
1929 saveData(os, myLocalTwistScaleAttrib);
1930 saveData(os, myUseLocalDivScaleAttrib);
1931 saveData(os, myLocalDivScaleAttrib);
1932 saveData(os, myUseLocalXAttrib);
1933 saveData(os, myLocalXAttrib);
1934 saveData(os, myUseLocalZAttrib);
1935 saveData(os, myLocalZAttrib);
1936 saveData(os, myUseLocalCtrAttrib);
1937 saveData(os, myLocalCtrAttrib);
1950 loadData(is, myGroup);
1951 loadData(is, mySplitType);
1952 loadData(is, myUseSplitGroup);
1953 loadData(is, mySplitGroup);
1954 loadData(is, myExtrusionMode);
1955 loadData(is, myPtNormalSrc);
1956 loadData(is, myPtNormalAttrib);
1957 loadData(is, myDist);
1958 loadData(is, myInset);
1959 loadData(is, myTwist);
1960 loadData(is, myDivs);
1961 loadData(is, mySpineType);
1962 loadData(is, myXformFront);
1963 loadData(is, myXformSpace);
1964 loadData(is, myXformOrder);
1965 loadData(is, myRotateOrder);
1966 loadData(is, myTranslate);
1967 loadData(is, myRotate);
1968 loadData(is, myScale);
1969 loadData(is, myShear);
1970 loadData(is, myPivot);
1971 loadData(is, myPivotRotate);
1972 loadData(is, myPreXformOrder);
1973 loadData(is, myPreXformRotateOrder);
1974 loadData(is, myPreXformTranslate);
1975 loadData(is, myPreXformRotate);
1976 loadData(is, myPreXformScale);
1977 loadData(is, myPreXformShear);
1978 loadData(is, myOutputFront);
1979 loadData(is, myOutputFrontGrp);
1980 loadData(is, myFrontGrp);
1981 loadData(is, myOutputBack);
1982 loadData(is, myOutputBackGrp);
1983 loadData(is, myBackGrp);
1984 loadData(is, myOutputSide);
1985 loadData(is, myOutputSideGrp);
1986 loadData(is, mySideGrp);
1987 loadData(is, myOutputFrontSeamGrp);
1988 loadData(is, myFrontSeamGrp);
1989 loadData(is, myOutputBackSeamGrp);
1990 loadData(is, myBackSeamGrp);
1991 loadData(is, myPreserveGroups);
1992 loadData(is, myLimitInset);
1993 loadData(is, myCommonLimit);
1994 loadData(is, myAddVertexNormals);
1995 loadData(is, myCuspAngle);
1996 loadData(is, myCuspFront);
1997 loadData(is, myCuspBack);
1998 loadData(is, myGenUVs);
1999 loadData(is, myUVStyle);
2000 loadData(is, myUVScaling);
2001 loadData(is, myFrontMagnitude);
2002 loadData(is, myBackMagnitude);
2003 loadData(is, myFrontStiffness);
2004 loadData(is, myBackStiffness);
2005 loadData(is, myInterpolation);
2006 loadData(is, mySpacing);
2007 loadData(is, myReverseSpineDirection);
2008 loadData(is, myAxialRotation);
2009 loadData(is, myFrontBlend);
2010 loadData(is, myBackBlend);
2011 loadData(is, myThicknessScale);
2012 loadData(is, myUseThicknessAttrib);
2013 loadData(is, myThicknessAttrib);
2014 loadData(is, myUseThicknessRamp);
2015 loadData(is, myThicknessRamp);
2016 loadData(is, myUseTwistAttrib);
2017 loadData(is, myTwistAttrib);
2018 loadData(is, myUseTwistRamp);
2019 loadData(is, myTwistRamp);
2020 loadData(is, myTwistScale);
2021 loadData(is, myUseLocalZScaleAttrib);
2022 loadData(is, myLocalZScaleAttrib);
2023 loadData(is, myUseLocalInsetScaleAttrib);
2024 loadData(is, myLocalInsetScaleAttrib);
2025 loadData(is, myUseLocalTwistScaleAttrib);
2026 loadData(is, myLocalTwistScaleAttrib);
2027 loadData(is, myUseLocalDivScaleAttrib);
2028 loadData(is, myLocalDivScaleAttrib);
2029 loadData(is, myUseLocalXAttrib);
2030 loadData(is, myLocalXAttrib);
2031 loadData(is, myUseLocalZAttrib);
2032 loadData(is, myLocalZAttrib);
2033 loadData(is, myUseLocalCtrAttrib);
2034 loadData(is, myLocalCtrAttrib);
2044 if (!thissop)
return getGroup();
2046 OP_Utils::evalOpParm(result, thissop,
"group", cookparms.
getCookTime(), 0);
2054 if (!thissop)
return getSplitType();
2056 OP_Utils::evalOpParm(result, thissop,
"splittype", cookparms.
getCookTime(), 0);
2064 if (!thissop)
return getUseSplitGroup();
2066 OP_Utils::evalOpParm(result, thissop,
"usesplitgroup", cookparms.
getCookTime(), 0);
2074 if (!thissop)
return getSplitGroup();
2076 OP_Utils::evalOpParm(result, thissop,
"splitgroup", cookparms.
getCookTime(), 0);
2084 if (!thissop)
return getExtrusionMode();
2086 OP_Utils::evalOpParm(result, thissop,
"extrusionmode", cookparms.
getCookTime(), 0);
2094 if (!thissop)
return getPtNormalSrc();
2096 OP_Utils::evalOpParm(result, thissop,
"ptnormalsrc", cookparms.
getCookTime(), 0);
2104 if (!thissop)
return getPtNormalAttrib();
2106 OP_Utils::evalOpParm(result, thissop,
"ptnormalattrib", cookparms.
getCookTime(), 0);
2114 if (!thissop)
return getDist();
2116 OP_Utils::evalOpParm(result, thissop,
"dist", cookparms.
getCookTime(), 0);
2124 if (!thissop)
return getInset();
2126 OP_Utils::evalOpParm(result, thissop,
"inset", cookparms.
getCookTime(), 0);
2134 if (!thissop)
return getTwist();
2136 OP_Utils::evalOpParm(result, thissop,
"twist", cookparms.
getCookTime(), 0);
2144 if (!thissop)
return getDivs();
2146 OP_Utils::evalOpParm(result, thissop,
"divs", cookparms.
getCookTime(), 0);
2154 if (!thissop)
return getSpineType();
2156 OP_Utils::evalOpParm(result, thissop,
"spinetype", cookparms.
getCookTime(), 0);
2164 if (!thissop)
return getXformFront();
2166 OP_Utils::evalOpParm(result, thissop,
"xformfront", cookparms.
getCookTime(), 0);
2174 if (!thissop)
return getXformSpace();
2176 OP_Utils::evalOpParm(result, thissop,
"xformspace", cookparms.
getCookTime(), 0);
2184 if (!thissop)
return getXformOrder();
2186 OP_Utils::evalOpParm(result, thissop,
"rst", cookparms.
getCookTime(), 0);
2194 if (!thissop)
return getRotateOrder();
2196 OP_Utils::evalOpParm(result, thissop,
"xyz", cookparms.
getCookTime(), 0);
2204 if (!thissop)
return getTranslate();
2206 OP_Utils::evalOpParm(result, thissop,
"translate", cookparms.
getCookTime(), 0);
2214 if (!thissop)
return getRotate();
2216 OP_Utils::evalOpParm(result, thissop,
"rotate", cookparms.
getCookTime(), 0);
2226 OP_Utils::evalOpParm(result, thissop,
"scale", cookparms.
getCookTime(), 0);
2234 if (!thissop)
return getShear();
2236 OP_Utils::evalOpParm(result, thissop,
"shear", cookparms.
getCookTime(), 0);
2244 if (!thissop)
return getPivot();
2246 OP_Utils::evalOpParm(result, thissop,
"pivot", cookparms.
getCookTime(), 0);
2254 if (!thissop)
return getPivotRotate();
2256 OP_Utils::evalOpParm(result, thissop,
"pivotrotate", cookparms.
getCookTime(), 0);
2264 if (!thissop)
return getPreXformOrder();
2266 OP_Utils::evalOpParm(result, thissop,
"prexform_rst", cookparms.
getCookTime(), 0);
2274 if (!thissop)
return getPreXformRotateOrder();
2276 OP_Utils::evalOpParm(result, thissop,
"prexform_xyz", cookparms.
getCookTime(), 0);
2284 if (!thissop)
return getPreXformTranslate();
2286 OP_Utils::evalOpParm(result, thissop,
"prexform_translate", cookparms.
getCookTime(), 0);
2294 if (!thissop)
return getPreXformRotate();
2296 OP_Utils::evalOpParm(result, thissop,
"prexform_rotate", cookparms.
getCookTime(), 0);
2304 if (!thissop)
return getPreXformScale();
2306 OP_Utils::evalOpParm(result, thissop,
"prexform_scale", cookparms.
getCookTime(), 0);
2314 if (!thissop)
return getPreXformShear();
2316 OP_Utils::evalOpParm(result, thissop,
"prexform_shear", cookparms.
getCookTime(), 0);
2324 if (!thissop)
return getOutputFront();
2326 OP_Utils::evalOpParm(result, thissop,
"outputfront", cookparms.
getCookTime(), 0);
2334 if (!thissop)
return getOutputFrontGrp();
2336 OP_Utils::evalOpParm(result, thissop,
"outputfrontgrp", cookparms.
getCookTime(), 0);
2344 if (!thissop)
return getFrontGrp();
2346 OP_Utils::evalOpParm(result, thissop,
"frontgrp", cookparms.
getCookTime(), 0);
2354 if (!thissop)
return getOutputBack();
2356 OP_Utils::evalOpParm(result, thissop,
"outputback", cookparms.
getCookTime(), 0);
2364 if (!thissop)
return getOutputBackGrp();
2366 OP_Utils::evalOpParm(result, thissop,
"outputbackgrp", cookparms.
getCookTime(), 0);
2374 if (!thissop)
return getBackGrp();
2376 OP_Utils::evalOpParm(result, thissop,
"backgrp", cookparms.
getCookTime(), 0);
2384 if (!thissop)
return getOutputSide();
2386 OP_Utils::evalOpParm(result, thissop,
"outputside", cookparms.
getCookTime(), 0);
2394 if (!thissop)
return getOutputSideGrp();
2396 OP_Utils::evalOpParm(result, thissop,
"outputsidegrp", cookparms.
getCookTime(), 0);
2404 if (!thissop)
return getSideGrp();
2406 OP_Utils::evalOpParm(result, thissop,
"sidegrp", cookparms.
getCookTime(), 0);
2414 if (!thissop)
return getOutputFrontSeamGrp();
2416 OP_Utils::evalOpParm(result, thissop,
"outputfrontseamgrp", cookparms.
getCookTime(), 0);
2424 if (!thissop)
return getFrontSeamGrp();
2426 OP_Utils::evalOpParm(result, thissop,
"frontseamgrp", cookparms.
getCookTime(), 0);
2434 if (!thissop)
return getOutputBackSeamGrp();
2436 OP_Utils::evalOpParm(result, thissop,
"outputbackseamgrp", cookparms.
getCookTime(), 0);
2444 if (!thissop)
return getBackSeamGrp();
2446 OP_Utils::evalOpParm(result, thissop,
"backseamgrp", cookparms.
getCookTime(), 0);
2454 if (!thissop)
return getPreserveGroups();
2456 OP_Utils::evalOpParm(result, thissop,
"preservegroups", cookparms.
getCookTime(), 0);
2464 if (!thissop)
return getLimitInset();
2466 OP_Utils::evalOpParm(result, thissop,
"limitinset", cookparms.
getCookTime(), 0);
2474 if (!thissop)
return getCommonLimit();
2476 OP_Utils::evalOpParm(result, thissop,
"commonlimit", cookparms.
getCookTime(), 0);
2484 if (!thissop)
return getAddVertexNormals();
2486 OP_Utils::evalOpParm(result, thissop,
"addvertexnomrals", cookparms.
getCookTime(), 0);
2494 if (!thissop)
return getCuspAngle();
2496 OP_Utils::evalOpParm(result, thissop,
"cuspangle", cookparms.
getCookTime(), 0);
2504 if (!thissop)
return getCuspFront();
2506 OP_Utils::evalOpParm(result, thissop,
"cuspfront", cookparms.
getCookTime(), 0);
2514 if (!thissop)
return getCuspBack();
2516 OP_Utils::evalOpParm(result, thissop,
"cuspback", cookparms.
getCookTime(), 0);
2524 if (!thissop)
return getGenUVs();
2526 OP_Utils::evalOpParm(result, thissop,
"genuvs", cookparms.
getCookTime(), 0);
2534 if (!thissop)
return getUVStyle();
2536 OP_Utils::evalOpParm(result, thissop,
"uvstyle", cookparms.
getCookTime(), 0);
2544 if (!thissop)
return getUVScaling();
2546 OP_Utils::evalOpParm(result, thissop,
"uvscaling", cookparms.
getCookTime(), 0);
2554 if (!thissop)
return getFrontMagnitude();
2556 OP_Utils::evalOpParm(result, thissop,
"frontmagnitude", cookparms.
getCookTime(), 0);
2564 if (!thissop)
return getBackMagnitude();
2566 OP_Utils::evalOpParm(result, thissop,
"backmagnitude", cookparms.
getCookTime(), 0);
2574 if (!thissop)
return getFrontStiffness();
2576 OP_Utils::evalOpParm(result, thissop,
"frontstiffness", cookparms.
getCookTime(), 0);
2584 if (!thissop)
return getBackStiffness();
2586 OP_Utils::evalOpParm(result, thissop,
"backstiffness", cookparms.
getCookTime(), 0);
2594 if (!thissop)
return getInterpolation();
2596 OP_Utils::evalOpParm(result, thissop,
"interpolation", cookparms.
getCookTime(), 0);
2604 if (!thissop)
return getSpacing();
2606 OP_Utils::evalOpParm(result, thissop,
"spacing", cookparms.
getCookTime(), 0);
2614 if (!thissop)
return getReverseSpineDirection();
2616 OP_Utils::evalOpParm(result, thissop,
"reversespinedirection", cookparms.
getCookTime(), 0);
2624 if (!thissop)
return getAxialRotation();
2626 OP_Utils::evalOpParm(result, thissop,
"axialrotation", cookparms.
getCookTime(), 0);
2634 if (!thissop)
return getFrontBlend();
2636 OP_Utils::evalOpParm(result, thissop,
"frontblend", cookparms.
getCookTime(), 0);
2644 if (!thissop)
return getBackBlend();
2646 OP_Utils::evalOpParm(result, thissop,
"backblend", cookparms.
getCookTime(), 0);
2654 if (!thissop)
return getThicknessScale();
2656 OP_Utils::evalOpParm(result, thissop,
"thicknessscale", cookparms.
getCookTime(), 0);
2664 if (!thissop)
return getUseThicknessAttrib();
2666 OP_Utils::evalOpParm(result, thissop,
"usethicknessattrib", cookparms.
getCookTime(), 0);
2674 if (!thissop)
return getThicknessAttrib();
2676 OP_Utils::evalOpParm(result, thissop,
"thicknessattrib", cookparms.
getCookTime(), 0);
2684 if (!thissop)
return getUseThicknessRamp();
2686 OP_Utils::evalOpParm(result, thissop,
"usethicknessramp", cookparms.
getCookTime(), 0);
2694 if (!thissop)
return getThicknessRamp();
2696 OP_Utils::evalOpParm(result, thissop,
"thicknessramp", cookparms.
getCookTime(), 0);
2704 if (!thissop)
return getUseTwistAttrib();
2706 OP_Utils::evalOpParm(result, thissop,
"usetwistattrib", cookparms.
getCookTime(), 0);
2714 if (!thissop)
return getTwistAttrib();
2716 OP_Utils::evalOpParm(result, thissop,
"twistattrib", cookparms.
getCookTime(), 0);
2724 if (!thissop)
return getUseTwistRamp();
2726 OP_Utils::evalOpParm(result, thissop,
"usetwistramp", cookparms.
getCookTime(), 0);
2734 if (!thissop)
return getTwistRamp();
2736 OP_Utils::evalOpParm(result, thissop,
"twistramp", cookparms.
getCookTime(), 0);
2744 if (!thissop)
return getTwistScale();
2746 OP_Utils::evalOpParm(result, thissop,
"twistscale", cookparms.
getCookTime(), 0);
2754 if (!thissop)
return getUseLocalZScaleAttrib();
2756 OP_Utils::evalOpParm(result, thissop,
"uselocalzscaleattrib", cookparms.
getCookTime(), 0);
2764 if (!thissop)
return getLocalZScaleAttrib();
2766 OP_Utils::evalOpParm(result, thissop,
"localzscaleattrib", cookparms.
getCookTime(), 0);
2774 if (!thissop)
return getUseLocalInsetScaleAttrib();
2776 OP_Utils::evalOpParm(result, thissop,
"uselocalinsetscaleattrib", cookparms.
getCookTime(), 0);
2784 if (!thissop)
return getLocalInsetScaleAttrib();
2786 OP_Utils::evalOpParm(result, thissop,
"localinsetscaleattrib", cookparms.
getCookTime(), 0);
2794 if (!thissop)
return getUseLocalTwistScaleAttrib();
2796 OP_Utils::evalOpParm(result, thissop,
"uselocaltwistattrib", cookparms.
getCookTime(), 0);
2804 if (!thissop)
return getLocalTwistScaleAttrib();
2806 OP_Utils::evalOpParm(result, thissop,
"localtwistscaleattrib", cookparms.
getCookTime(), 0);
2814 if (!thissop)
return getUseLocalDivScaleAttrib();
2816 OP_Utils::evalOpParm(result, thissop,
"uselocaldivsattrib", cookparms.
getCookTime(), 0);
2824 if (!thissop)
return getLocalDivScaleAttrib();
2826 OP_Utils::evalOpParm(result, thissop,
"locadivscaleattrib", cookparms.
getCookTime(), 0);
2834 if (!thissop)
return getUseLocalXAttrib();
2836 OP_Utils::evalOpParm(result, thissop,
"uselocalxattrib", cookparms.
getCookTime(), 0);
2844 if (!thissop)
return getLocalXAttrib();
2846 OP_Utils::evalOpParm(result, thissop,
"localxattrib", cookparms.
getCookTime(), 0);
2854 if (!thissop)
return getUseLocalZAttrib();
2856 OP_Utils::evalOpParm(result, thissop,
"uselocalzattirb", cookparms.
getCookTime(), 0);
2864 if (!thissop)
return getLocalZAttrib();
2866 OP_Utils::evalOpParm(result, thissop,
"localzattirb", cookparms.
getCookTime(), 0);
2874 if (!thissop)
return getUseLocalCtrAttrib();
2876 OP_Utils::evalOpParm(result, thissop,
"uselocalctrattrib", cookparms.
getCookTime(), 0);
2884 if (!thissop)
return getLocalCtrAttrib();
2886 OP_Utils::evalOpParm(result, thissop,
"localctrattrib", cookparms.
getCookTime(), 0);
2893 bool myUseSplitGroup;
2895 int64 myExtrusionMode;
2896 int64 myPtNormalSrc;
2906 int64 myRotateOrder;
2913 int64 myPreXformOrder;
2914 int64 myPreXformRotateOrder;
2920 bool myOutputFrontGrp;
2923 bool myOutputBackGrp;
2926 bool myOutputSideGrp;
2928 bool myOutputFrontSeamGrp;
2930 bool myOutputBackSeamGrp;
2932 bool myPreserveGroups;
2935 bool myAddVertexNormals;
2946 int64 myInterpolation;
2948 bool myReverseSpineDirection;
2953 bool myUseThicknessAttrib;
2955 bool myUseThicknessRamp;
2957 bool myUseTwistAttrib;
2959 bool myUseTwistRamp;
2962 bool myUseLocalZScaleAttrib;
2964 bool myUseLocalInsetScaleAttrib;
2966 bool myUseLocalTwistScaleAttrib;
2968 bool myUseLocalDivScaleAttrib;
2970 bool myUseLocalXAttrib;
2972 bool myUseLocalZAttrib;
2974 bool myUseLocalCtrAttrib;
bool opUseLocalTwistScaleAttrib(const SOP_NodeVerb::CookParms &cookparms) const
bool getUseLocalZAttrib() const
UT_StringHolder opSplitGroup(const SOP_NodeVerb::CookParms &cookparms) const
void setAxialRotation(fpreal64 val)
fpreal64 getAxialRotation() const
fpreal64 getCuspAngle() const
void setUseLocalCtrAttrib(bool val)
bool getCommonLimit() const
fpreal64 getThicknessScale() const
void setCuspAngle(fpreal64 val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override
void setPreXformRotate(UT_Vector3D val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
bool getReverseSpineDirection() const
bool opOutputBackSeamGrp(const SOP_NodeVerb::CookParms &cookparms) const
void setPivotRotate(UT_Vector3D val)
static void saveData(std::ostream &os, UT_Matrix4D v)
void setThicknessRamp(UT_SharedPtr< UT_Ramp > val)
void setPivot(UT_Vector3D val)
void setSpacing(Spacing val)
int64 opDivs(const SOP_NodeVerb::CookParms &cookparms) const
bool opCommonLimit(const SOP_NodeVerb::CookParms &cookparms) const
SOP_Node * getNode() const
void setOutputBackSeamGrp(bool val)
void setBackGrp(const UT_StringHolder &val)
bool getOutputBackGrp() const
PtNormalSrc getPtNormalSrc() const
UT_StringHolder opLocalZAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setGroup(const UT_StringHolder &val)
UT_StringHolder opLocalZScaleAttrib(const SOP_NodeVerb::CookParms &cookparms) const
bool getUseLocalXAttrib() const
void setOutputFrontGrp(bool val)
const UT_StringHolder & getSideGrp() const
UT_Vector3D opPreXformShear(const SOP_NodeVerb::CookParms &cookparms) const
UT_SharedPtr< UT_Ramp > getThicknessRamp() const
const UT_StringHolder & getSplitGroup() const
static void saveData(std::ostream &os, PRM_DataItemHandle s)
fpreal64 getFrontStiffness() const
void setUseLocalZScaleAttrib(bool val)
UT_Vector3D getPreXformTranslate() const
UT_Vector3D getPivot() const
void setFrontStiffness(fpreal64 val)
void setLocalInsetScaleAttrib(const UT_StringHolder &val)
fpreal64 getTwistScale() const
exint bread(int32 *buffer, exint asize=1)
bool opOutputBack(const SOP_NodeVerb::CookParms &cookparms) const
GT_API const UT_StringHolder time
UT_Vector3D opScale(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & y() noexcept
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
void setScale(UT_Vector3D val)
UT_StringHolder opTwistAttrib(const SOP_NodeVerb::CookParms &cookparms) const
ExtrusionMode opExtrusionMode(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Matrix2D v)
static void loadData(UT_IStream &is, int64 &v)
static void loadData(UT_IStream &is, UT_Matrix4D &v)
UT_StringHolder opPtNormalAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setReverseSpineDirection(bool val)
bool getUseThicknessAttrib() const
bool getUseThicknessRamp() const
bool getUseLocalTwistScaleAttrib() const
const OP_Context & context() const
fpreal64 opBackMagnitude(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getTwist() const
void setUVStyle(UVStyle val)
fpreal64 getBackMagnitude() const
constexpr SYS_FORCE_INLINE T & z() noexcept
void setShear(UT_Vector3D val)
SYS_FORCE_INLINE const char * buffer() const
const UT_StringHolder & getPtNormalAttrib() const
SYS_FORCE_INLINE UT_StringHolder getToken(SplitType enum_value)
const UT_StringHolder & getBackSeamGrp() const
void setRotate(UT_Vector3D val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
bool opAddVertexNormals(const SOP_NodeVerb::CookParms &cookparms) const
void setLocalZAttrib(const UT_StringHolder &val)
void setLocalZScaleAttrib(const UT_StringHolder &val)
UT_SharedPtr< UT_Ramp > opThicknessRamp(const SOP_NodeVerb::CookParms &cookparms) const
An output stream object that owns its own string buffer storage.
fpreal64 opInset(const SOP_NodeVerb::CookParms &cookparms) const
bool opOutputFrontGrp(const SOP_NodeVerb::CookParms &cookparms) const
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
bool opUseLocalInsetScaleAttrib(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getInset() const
UT_Vector3D getTranslate() const
void setCuspFront(bool val)
bool opUseThicknessRamp(const SOP_NodeVerb::CookParms &cookparms) const
**But if you need a result
bool opUseLocalDivScaleAttrib(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opDist(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
bool opOutputFrontSeamGrp(const SOP_NodeVerb::CookParms &cookparms) const
XformSpace getXformSpace() const
static void saveData(std::ostream &os, bool v)
fpreal64 opFrontStiffness(const SOP_NodeVerb::CookParms &cookparms) const
void setUseTwistRamp(bool val)
static void loadData(UT_IStream &is, fpreal64 &v)
bool opUseLocalZScaleAttrib(const SOP_NodeVerb::CookParms &cookparms) const
bool getOutputBackSeamGrp() const
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
void setCuspBack(bool val)
void copyFrom(const OP_NodeParms *src) override
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
UVScaling opUVScaling(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opFrontSeamGrp(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opFrontBlend(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getLocalZAttrib() const
void setSplitGroup(const UT_StringHolder &val)
virtual NodeIdx getInput(NodeIdx idx, int input, bool markused=false) const =0
constexpr SYS_FORCE_INLINE T & x() noexcept
bool getUseSplitGroup() const
void setInterpolation(Interpolation val)
SpineType getSpineType() const
static void loadData(UT_IStream &is, UT_Vector2I &v)
UT_StringHolder opThicknessAttrib(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opFrontGrp(const SOP_NodeVerb::CookParms &cookparms) const
void setBackStiffness(fpreal64 val)
const UT_StringHolder & getBackGrp() const
static void loadData(UT_IStream &is, UT_Vector2D &v)
void setInset(fpreal64 val)
const UT_StringHolder & getGroup() const
const UT_StringHolder & getTwistAttrib() const
void setOutputBackGrp(bool val)
constexpr SYS_FORCE_INLINE T & x() noexcept
bool getOutputFrontSeamGrp() const
void setOutputBack(bool val)
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
void buildFromOp(const OP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
const UT_StringHolder & getThicknessAttrib() const
UT_Vector3D opPreXformRotate(const SOP_NodeVerb::CookParms &cookparms) const
void setUseLocalInsetScaleAttrib(bool val)
void setRotateOrder(RotateOrder val)
const UT_StringHolder & getLocalCtrAttrib() const
static void loadData(UT_IStream &is, UT_Vector3D &v)
bool getOutputFrontGrp() const
void setUseLocalXAttrib(bool val)
bool getUseTwistRamp() const
UT_StringHolder opLocalTwistScaleAttrib(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_StringHolder &v)
void setUseTwistAttrib(bool val)
UT_Vector3D opPreXformScale(const SOP_NodeVerb::CookParms &cookparms) const
PreXformRotateOrder opPreXformRotateOrder(const SOP_NodeVerb::CookParms &cookparms) const
void setUseLocalZAttrib(bool val)
const UT_StringHolder & getLocalDivScaleAttrib() const
fpreal64 getBackStiffness() const
void setDist(fpreal64 val)
PtNormalSrc opPtNormalSrc(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
bool opUseLocalZAttrib(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
bool opOutputBackGrp(const SOP_NodeVerb::CookParms &cookparms) const
SYS_FORCE_INLINE const char * buffer() const
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
bool opGenUVs(const SOP_NodeVerb::CookParms &cookparms) const
void setTwistAttrib(const UT_StringHolder &val)
SpineType opSpineType(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & z() noexcept
void setBackSeamGrp(const UT_StringHolder &val)
bool opOutputSideGrp(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
bool opReverseSpineDirection(const SOP_NodeVerb::CookParms &cookparms) const
PreXformOrder opPreXformOrder(const SOP_NodeVerb::CookParms &cookparms) const
void loadFromOpSubclass(const LoadParms &loadparms) override
UT_Vector3D getPreXformRotate() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
UT_StringHolder opBackSeamGrp(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getBackBlend() const
bool getPreserveGroups() const
UT_StringHolder opLocalInsetScaleAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
const OP_GraphProxy * graph() const
bool getUseLocalInsetScaleAttrib() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
fpreal64 opCuspAngle(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector3D opShear(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opBackBlend(const SOP_NodeVerb::CookParms &cookparms) const
XformOrder getXformOrder() const
bool opPreserveGroups(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getLocalZScaleAttrib() const
UVStyle getUVStyle() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
void setPreXformTranslate(UT_Vector3D val)
static void saveData(std::ostream &os, UT_Matrix3D v)
bool opCuspBack(const SOP_NodeVerb::CookParms &cookparms) const
bool operator!=(const SOP_PolyExtrude_2_0Parms &src) const
bool opUseSplitGroup(const SOP_NodeVerb::CookParms &cookparms) const
void setPreXformScale(UT_Vector3D val)
fpreal64 opFrontMagnitude(const SOP_NodeVerb::CookParms &cookparms) const
bool opUseTwistAttrib(const SOP_NodeVerb::CookParms &cookparms) const
Spacing getSpacing() const
bool getUseLocalZScaleAttrib() const
fpreal64 opAxialRotation(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector3I &v)
bool getUseLocalDivScaleAttrib() const
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
void setSideGrp(const UT_StringHolder &val)
bool getOutputSide() const
void setBackMagnitude(fpreal64 val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
bool getCuspFront() const
bool opUseLocalXAttrib(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector3T< fpreal64 > UT_Vector3D
static void saveData(std::ostream &os, UT_Vector3D v)
PreXformRotateOrder getPreXformRotateOrder() const
RotateOrder opRotateOrder(const SOP_NodeVerb::CookParms &cookparms) const
void setThicknessScale(fpreal64 val)
void setXformSpace(XformSpace val)
const UT_StringHolder & getLocalXAttrib() const
bool opLimitInset(const SOP_NodeVerb::CookParms &cookparms) const
void setUseThicknessRamp(bool val)
void setFrontSeamGrp(const UT_StringHolder &val)
void setUseSplitGroup(bool val)
UT_StringHolder opLocalXAttrib(const SOP_NodeVerb::CookParms &cookparms) const
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
void setAddVertexNormals(bool val)
UVScaling getUVScaling() const
void setThicknessAttrib(const UT_StringHolder &val)
void setLimitInset(bool val)
UVStyle opUVStyle(const SOP_NodeVerb::CookParms &cookparms) const
bool getUseLocalCtrAttrib() const
void saveBinary(std::ostream &os) const
Save string to binary stream.
fpreal64 getFrontMagnitude() const
bool getUseTwistAttrib() const
UT_Vector3D opPivot(const SOP_NodeVerb::CookParms &cookparms) const
bool opOutputSide(const SOP_NodeVerb::CookParms &cookparms) const
XformOrder opXformOrder(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector3D getPivotRotate() const
GT_API const UT_StringHolder version
UT_StringHolder opSideGrp(const SOP_NodeVerb::CookParms &cookparms) const
void setTwistRamp(UT_SharedPtr< UT_Ramp > val)
void setTwist(fpreal64 val)
XformSpace opXformSpace(const SOP_NodeVerb::CookParms &cookparms) const
bool opXformFront(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector4I &v)
static void loadData(UT_IStream &is, UT_Matrix3D &v)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
void setExtrusionMode(ExtrusionMode val)
UT_StringHolder opBackGrp(const SOP_NodeVerb::CookParms &cookparms) const
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)
fpreal64 getFrontBlend() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
void setOutputSideGrp(bool val)
const char * getNestParmName(TempIndex fieldnum) const override
UT_Vector3D opPivotRotate(const SOP_NodeVerb::CookParms &cookparms) const
void setUseLocalDivScaleAttrib(bool val)
exint getNestNumParms(TempIndex idx) const override
bool opOutputFront(const SOP_NodeVerb::CookParms &cookparms) const
void setPtNormalSrc(PtNormalSrc val)
void setCommonLimit(bool val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
RotateOrder getRotateOrder() const
const UT_StringHolder & getFrontSeamGrp() const
SOP_PolyExtrude_2_0Parms()
static void loadData(UT_IStream &is, UT_Vector4D &v)
void setLocalCtrAttrib(const UT_StringHolder &val)
fpreal64 opThicknessScale(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opLocalDivScaleAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setBackBlend(fpreal64 val)
DEP_MicroNode * depnode() const
void setPreserveGroups(bool val)
UT_Vector3D opRotate(const SOP_NodeVerb::CookParms &cookparms) const
bool opUseTwistRamp(const SOP_NodeVerb::CookParms &cookparms) const
LeafData & operator=(const LeafData &)=delete
UT_SharedPtr< UT_Ramp > getTwistRamp() const
Utility class for containing a color ramp.
UT_Vector3D opTranslate(const SOP_NodeVerb::CookParms &cookparms) const
bool getLimitInset() const
UT_Vector3D opPreXformTranslate(const SOP_NodeVerb::CookParms &cookparms) const
bool isParmColorRamp(exint idx) const override
constexpr SYS_FORCE_INLINE T & w() noexcept
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
void setUseThicknessAttrib(bool val)
void setLocalXAttrib(const UT_StringHolder &val)
static void saveData(std::ostream &os, int64 v)
UT_Vector3D getRotate() const
UT_SharedPtr< UT_Ramp > opTwistRamp(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
Vec3< typename MatType::value_type > getScale(const MatType &mat)
Return a Vec3 representing the lengths of the passed matrix's upper 3×3's rows.
void setLocalTwistScaleAttrib(const UT_StringHolder &val)
UT_StringHolder opGroup(const SOP_NodeVerb::CookParms &cookparms) const
void setPreXformShear(UT_Vector3D val)
fpreal64 opBackStiffness(const SOP_NodeVerb::CookParms &cookparms) const
void setPreXformOrder(PreXformOrder val)
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
bool getOutputSideGrp() const
fpreal64 opTwistScale(const SOP_NodeVerb::CookParms &cookparms) const
bool load(UT_IStream &is)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
Interpolation getInterpolation() const
static void loadData(UT_IStream &is, bool &v)
SplitType opSplitType(const SOP_NodeVerb::CookParms &cookparms) const
fpreal getCookTime() const
void setLocalDivScaleAttrib(const UT_StringHolder &val)
void save(std::ostream &os) const
UT_Vector3D getShear() const
static void loadData(UT_IStream &is, UT_Matrix2D &v)
void setFrontBlend(fpreal64 val)
void setOutputFrontSeamGrp(bool val)
UT_StringHolder opLocalCtrAttrib(const SOP_NodeVerb::CookParms &cookparms) const
const char * findChar(int c) const
fpreal64 opTwist(const SOP_NodeVerb::CookParms &cookparms) const
SplitType getSplitType() const
bool operator==(const SOP_PolyExtrude_2_0Parms &src) const
Spacing opSpacing(const SOP_NodeVerb::CookParms &cookparms) const
void setSpineType(SpineType val)
bool opUseLocalCtrAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
bool opUseThicknessAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setFrontGrp(const UT_StringHolder &val)
PreXformOrder getPreXformOrder() const
ParmType getNestParmType(TempIndex fieldnum) const override
bool opCuspFront(const SOP_NodeVerb::CookParms &cookparms) const
void setPtNormalAttrib(const UT_StringHolder &val)
const UT_StringHolder & getLocalTwistScaleAttrib() const
void setOutputFront(bool val)
void setUVScaling(UVScaling val)
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
constexpr SYS_FORCE_INLINE T & y() noexcept
Interpolation opInterpolation(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Vector4D v)
void setXformOrder(XformOrder val)
void setFrontMagnitude(fpreal64 val)
bool getOutputBack() const
ExtrusionMode getExtrusionMode() const
UT_Vector3D getScale() const
bool getOutputFront() const
UT_Vector3D getPreXformShear() const
static void saveData(std::ostream &os, fpreal64 v)
void setTwistScale(fpreal64 val)
void setSplitType(SplitType val)
void setUseLocalTwistScaleAttrib(bool val)
static void saveData(std::ostream &os, UT_StringHolder s)
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
UT_Vector3D getPreXformScale() const
constexpr SYS_FORCE_INLINE T & y() noexcept
void setOutputSide(bool val)
SYS_FORCE_INLINE bool isstring() const
void setTranslate(UT_Vector3D val)
bool getAddVertexNormals() const
void setXformFront(bool val)
void setPreXformRotateOrder(PreXformRotateOrder val)
static void saveData(std::ostream &os, UT_Vector2D v)
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
bool getXformFront() const
const UT_StringHolder & getLocalInsetScaleAttrib() const
const UT_StringHolder & getFrontGrp() const
constexpr SYS_FORCE_INLINE T & x() noexcept