23 namespace SOP_Sweep_2_0Enums
36 using namespace UT::Literal;
61 using namespace UT::Literal;
86 using namespace UT::Literal;
109 using namespace UT::Literal;
110 switch (enum_value) {
133 using namespace UT::Literal;
134 switch (enum_value) {
156 using namespace UT::Literal;
157 switch (enum_value) {
179 using namespace UT::Literal;
180 switch (enum_value) {
202 using namespace UT::Literal;
203 switch (enum_value) {
226 using namespace UT::Literal;
227 switch (enum_value) {
251 using namespace UT::Literal;
252 switch (enum_value) {
275 using namespace UT::Literal;
276 switch (enum_value) {
296 myCurveGroup =
""_UTsh;
297 myCrossSectionGroup =
""_UTsh;
304 myReverseCrossSections =
false;
305 myStretchAroundTurns =
true;
306 myMaxStretchAroundTurns = 10;
309 myTriangularPoles =
false;
312 myAddEndCapsGroup =
false;
313 myEndCapsGroup =
"endcaps"_UTsh;
314 myApplyScale =
false;
322 myRollAttrib =
"roll"_UTsh;
327 myYawAttrib =
"yaw"_UTsh;
328 myApplyPitch =
false;
332 myPitchAttrib =
"pitch"_UTsh;
334 myCrossSectionAttrib =
"variant"_UTsh;
336 myUnrollClosedRowCol =
false;
337 mySwapRowCol =
false;
338 myCloseIfNoCurveInput =
false;
340 myContinuousClosed =
true;
341 myExtrapolateEndTangents =
false;
342 myTransformByAttribs =
true;
343 myComputeUVs =
false;
344 myOverrideExistingUVs =
false;
345 myLengthWeightedUVs =
true;
347 myNormalizeV =
false;
350 myUseMeshEdgeLengths =
true;
351 myPropScalePerCurve =
true;
354 myAttribsFromBackbone =
"* ^P ^N ^up ^pscale ^scale ^orient ^rot ^pivot ^trans ^transform"_UTsh;
355 myAttribsFromCrossSection =
"*"_UTsh;
356 myAddPointRow =
false;
357 myPtRowAttrib =
"ptrow"_UTsh;
358 myAddPointCol =
false;
359 myPtColAttrib =
"ptcol"_UTsh;
360 myAddPrimRow =
false;
361 myPrimRowAttrib =
"primrow"_UTsh;
362 myAddPrimCol =
false;
363 myPrimColAttrib =
"primcol"_UTsh;
364 myAddCrossSectionNum =
false;
365 myCrossSectionNumAttrib =
"crossnum"_UTsh;
366 myAddCurveNum =
false;
367 myCurveNumAttrib =
"curvenum"_UTsh;
369 myUpVectorAtStart =
true;
370 myUseEndUpVector =
false;
371 myUpVectorAttrib =
"start_up"_UTsh;
372 myEndUpVectorAttrib =
"end_up"_UTsh;
387 if (myCurveGroup != src.myCurveGroup)
return false;
388 if (myCrossSectionGroup != src.myCrossSectionGroup)
return false;
389 if (mySurfaceShape != src.mySurfaceShape)
return false;
390 if (mySurfaceType != src.mySurfaceType)
return false;
391 if (myScale != src.myScale)
return false;
392 if (myCols != src.myCols)
return false;
393 if (myRadius != src.myRadius)
return false;
394 if (myWidth != src.myWidth)
return false;
395 if (myReverseCrossSections != src.myReverseCrossSections)
return false;
396 if (myStretchAroundTurns != src.myStretchAroundTurns)
return false;
397 if (myMaxStretchAroundTurns != src.myMaxStretchAroundTurns)
return false;
398 if (myEndCapType != src.myEndCapType)
return false;
399 if (myCapDivs != src.myCapDivs)
return false;
400 if (myTriangularPoles != src.myTriangularPoles)
return false;
401 if (myCapScale != src.myCapScale)
return false;
402 if (myCapRoundness != src.myCapRoundness)
return false;
403 if (myAddEndCapsGroup != src.myAddEndCapsGroup)
return false;
404 if (myEndCapsGroup != src.myEndCapsGroup)
return false;
405 if (myApplyScale != src.myApplyScale)
return false;
406 if (myScaleRamp != src.myScaleRamp)
407 {
if (!myScaleRamp || !src.myScaleRamp || !(*myScaleRamp == *src.myScaleRamp))
return false; }
408 if (myROrd != src.myROrd)
return false;
409 if (myApplyRoll != src.myApplyRoll)
return false;
410 if (myRoll != src.myRoll)
return false;
411 if (myFullTwists != src.myFullTwists)
return false;
412 if (myIncRoll != src.myIncRoll)
return false;
413 if (myRollPer != src.myRollPer)
return false;
414 if (myRollAttrib != src.myRollAttrib)
return false;
415 if (myApplyYaw != src.myApplyYaw)
return false;
416 if (myYaw != src.myYaw)
return false;
417 if (myIncYaw != src.myIncYaw)
return false;
418 if (myYawPer != src.myYawPer)
return false;
419 if (myYawAttrib != src.myYawAttrib)
return false;
420 if (myApplyPitch != src.myApplyPitch)
return false;
421 if (myPitch != src.myPitch)
return false;
422 if (myIncPitch != src.myIncPitch)
return false;
423 if (myPitchPer != src.myPitchPer)
return false;
424 if (myPitchAttrib != src.myPitchAttrib)
return false;
425 if (myCopyOrder != src.myCopyOrder)
return false;
426 if (myCrossSectionAttrib != src.myCrossSectionAttrib)
return false;
427 if (myPrimType != src.myPrimType)
return false;
428 if (myUnrollClosedRowCol != src.myUnrollClosedRowCol)
return false;
429 if (mySwapRowCol != src.mySwapRowCol)
return false;
430 if (myCloseIfNoCurveInput != src.myCloseIfNoCurveInput)
return false;
431 if (myTangentType != src.myTangentType)
return false;
432 if (myContinuousClosed != src.myContinuousClosed)
return false;
433 if (myExtrapolateEndTangents != src.myExtrapolateEndTangents)
return false;
434 if (myTransformByAttribs != src.myTransformByAttribs)
return false;
435 if (myComputeUVs != src.myComputeUVs)
return false;
436 if (myOverrideExistingUVs != src.myOverrideExistingUVs)
return false;
437 if (myLengthWeightedUVs != src.myLengthWeightedUVs)
return false;
438 if (myNormalizeU != src.myNormalizeU)
return false;
439 if (myNormalizeV != src.myNormalizeV)
return false;
440 if (myFlipU != src.myFlipU)
return false;
441 if (myUVScale != src.myUVScale)
return false;
442 if (myUseMeshEdgeLengths != src.myUseMeshEdgeLengths)
return false;
443 if (myPropScalePerCurve != src.myPropScalePerCurve)
return false;
444 if (myWrapU != src.myWrapU)
return false;
445 if (myWrapV != src.myWrapV)
return false;
446 if (myAttribsFromBackbone != src.myAttribsFromBackbone)
return false;
447 if (myAttribsFromCrossSection != src.myAttribsFromCrossSection)
return false;
448 if (myAddPointRow != src.myAddPointRow)
return false;
449 if (myPtRowAttrib != src.myPtRowAttrib)
return false;
450 if (myAddPointCol != src.myAddPointCol)
return false;
451 if (myPtColAttrib != src.myPtColAttrib)
return false;
452 if (myAddPrimRow != src.myAddPrimRow)
return false;
453 if (myPrimRowAttrib != src.myPrimRowAttrib)
return false;
454 if (myAddPrimCol != src.myAddPrimCol)
return false;
455 if (myPrimColAttrib != src.myPrimColAttrib)
return false;
456 if (myAddCrossSectionNum != src.myAddCrossSectionNum)
return false;
457 if (myCrossSectionNumAttrib != src.myCrossSectionNumAttrib)
return false;
458 if (myAddCurveNum != src.myAddCurveNum)
return false;
459 if (myCurveNumAttrib != src.myCurveNumAttrib)
return false;
460 if (myUpVectorType != src.myUpVectorType)
return false;
461 if (myUpVectorAtStart != src.myUpVectorAtStart)
return false;
462 if (myUseEndUpVector != src.myUseEndUpVector)
return false;
463 if (myUpVectorAttrib != src.myUpVectorAttrib)
return false;
464 if (myEndUpVectorAttrib != src.myEndUpVectorAttrib)
return false;
465 if (myUpVector != src.myUpVector)
return false;
466 if (myEndUpVector != src.myEndUpVector)
return false;
490 myCurveGroup =
""_UTsh;
492 graph->
evalOpParm(myCurveGroup, nodeidx,
"curvegroup", time, 0);
493 myCrossSectionGroup =
""_UTsh;
495 graph->
evalOpParm(myCrossSectionGroup, nodeidx,
"crosssectiongroup", time, 0);
498 graph->
evalOpParm(mySurfaceShape, nodeidx,
"surfaceshape", time, 0);
501 graph->
evalOpParm(mySurfaceType, nodeidx,
"surfacetype", time, 0);
503 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=0))||((
int64(getSurfaceShape())!=0)))) ) )
504 graph->
evalOpParm(myScale, nodeidx,
"scale", time, 0);
506 if (
true && ( (
true&&!(((
int64(getSurfaceShape())==0))||((
int64(getSurfaceShape())==0)))) ) )
507 graph->
evalOpParm(myCols, nodeidx,
"cols", time, 0);
509 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=1))||((
int64(getSurfaceShape())!=1)))) ) )
510 graph->
evalOpParm(myRadius, nodeidx,
"radius", time, 0);
512 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=3)&&(
int64(getSurfaceShape())!=2))||((
int64(getSurfaceShape())!=3)&&(
int64(getSurfaceShape())!=2)))) ) )
513 graph->
evalOpParm(myWidth, nodeidx,
"width", time, 0);
514 myReverseCrossSections =
false;
516 graph->
evalOpParm(myReverseCrossSections, nodeidx,
"reversecrosssections", time, 0);
517 myStretchAroundTurns =
true;
519 graph->
evalOpParm(myStretchAroundTurns, nodeidx,
"stretcharoundturns", time, 0);
520 myMaxStretchAroundTurns = 10;
521 if (
true && ( (
true&&!(((getStretchAroundTurns()==0)))) ) )
522 graph->
evalOpParm(myMaxStretchAroundTurns, nodeidx,
"maxstretcharoundturns", time, 0);
525 graph->
evalOpParm(myEndCapType, nodeidx,
"endcaptype", time, 0);
527 if (
true && ( (
true&&!(((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3))||((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3)))) ) )
528 graph->
evalOpParm(myCapDivs, nodeidx,
"capdivs", time, 0);
529 myTriangularPoles =
false;
530 if (
true && ( (
true&&!(((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3))||((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3)))) ) )
531 graph->
evalOpParm(myTriangularPoles, nodeidx,
"triangularpoles", time, 0);
533 if (
true && ( (
true&&!(((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3))||((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3)))) ) )
534 graph->
evalOpParm(myCapScale, nodeidx,
"capscale", time, 0);
536 if (
true && ( (
true&&!(((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3))||((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3)))) ) )
537 graph->
evalOpParm(myCapRoundness, nodeidx,
"caproundness", time, 0);
538 myAddEndCapsGroup =
false;
540 graph->
evalOpParm(myAddEndCapsGroup, nodeidx,
"addendcapsgroup", time, 0);
541 myEndCapsGroup =
"endcaps"_UTsh;
542 if (
true && ( (
true&&!(((getAddEndCapsGroup()==0)))) ) )
543 graph->
evalOpParm(myEndCapsGroup, nodeidx,
"endcapsgroup", time, 0);
544 myApplyScale =
false;
546 graph->
evalOpParm(myApplyScale, nodeidx,
"applyscale", time, 0);
548 if (
true && ( (
true&&!(((getApplyScale()==0)))) ) )
549 graph->
evalOpParm(myScaleRamp, nodeidx,
"scaleramp", time, 0);
552 graph->
evalOpParm(myROrd, nodeidx,
"rOrd", time, 0);
555 graph->
evalOpParm(myApplyRoll, nodeidx,
"applyroll", time, 0);
557 if (
true && ( (
true&&!(((getApplyRoll()==0)))) ) )
558 graph->
evalOpParm(myRoll, nodeidx,
"roll", time, 0);
560 if (
true && ( (
true&&!(((getApplyRoll()==0)))) ) )
561 graph->
evalOpParm(myFullTwists, nodeidx,
"fulltwists", time, 0);
563 if (
true && ( (
true&&!(((getApplyRoll()==0)))) ) )
564 graph->
evalOpParm(myIncRoll, nodeidx,
"incroll", time, 0);
566 if (
true && ( (
true&&!(((getApplyRoll()==0)))) ) )
567 graph->
evalOpParm(myRollPer, nodeidx,
"rollper", time, 0);
568 myRollAttrib =
"roll"_UTsh;
569 if (
true && ( (
true&&!(((getApplyRoll()==0))||((getApplyRoll()==1)&&(
int64(getRollPer())!=2))||((getApplyRoll()==0))||((getApplyRoll()==1)&&(
int64(getRollPer())!=2)))) ) )
570 graph->
evalOpParm(myRollAttrib, nodeidx,
"rollattrib", time, 0);
573 graph->
evalOpParm(myApplyYaw, nodeidx,
"applyyaw", time, 0);
575 if (
true && ( (
true&&!(((getApplyYaw()==0)))) ) )
576 graph->
evalOpParm(myYaw, nodeidx,
"yaw", time, 0);
578 if (
true && ( (
true&&!(((getApplyYaw()==0)))) ) )
579 graph->
evalOpParm(myIncYaw, nodeidx,
"incyaw", time, 0);
581 if (
true && ( (
true&&!(((getApplyYaw()==0)))) ) )
582 graph->
evalOpParm(myYawPer, nodeidx,
"yawper", time, 0);
583 myYawAttrib =
"yaw"_UTsh;
584 if (
true && ( (
true&&!(((getApplyYaw()==0))||((getApplyYaw()==1)&&(
int64(getYawPer())!=2))||((getApplyYaw()==0))||((getApplyYaw()==1)&&(
int64(getYawPer())!=2)))) ) )
585 graph->
evalOpParm(myYawAttrib, nodeidx,
"yawattrib", time, 0);
586 myApplyPitch =
false;
588 graph->
evalOpParm(myApplyPitch, nodeidx,
"applypitch", time, 0);
590 if (
true && ( (
true&&!(((getApplyPitch()==0)))) ) )
591 graph->
evalOpParm(myPitch, nodeidx,
"pitch", time, 0);
593 if (
true && ( (
true&&!(((getApplyPitch()==0)))) ) )
594 graph->
evalOpParm(myIncPitch, nodeidx,
"incpitch", time, 0);
596 if (
true && ( (
true&&!(((getApplyPitch()==0)))) ) )
597 graph->
evalOpParm(myPitchPer, nodeidx,
"pitchper", time, 0);
598 myPitchAttrib =
"pitch"_UTsh;
599 if (
true && ( (
true&&!(((getApplyPitch()==0))||((getApplyPitch()==1)&&(
int64(getPitchPer())!=2))||((getApplyPitch()==0))||((getApplyPitch()==1)&&(
int64(getPitchPer())!=2)))) ) )
600 graph->
evalOpParm(myPitchAttrib, nodeidx,
"pitchattrib", time, 0);
602 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=0)))) ) )
603 graph->
evalOpParm(myCopyOrder, nodeidx,
"copyorder", time, 0);
604 myCrossSectionAttrib =
"variant"_UTsh;
605 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=0))||((
int64(getCopyOrder())!=4))||((
int64(getSurfaceShape())!=0))||((
int64(getCopyOrder())!=4)))) ) )
606 graph->
evalOpParm(myCrossSectionAttrib, nodeidx,
"crosssectionattrib", time, 0);
608 if (
true && ( (
true&&!(((
int64(getSurfaceType())==0)))) ) )
609 graph->
evalOpParm(myPrimType, nodeidx,
"primtype", time, 0);
610 myUnrollClosedRowCol =
false;
611 if (
true && ( (
true&&!(((
int64(getSurfaceType())==0)))) ) )
612 graph->
evalOpParm(myUnrollClosedRowCol, nodeidx,
"unrollclosedrowcol", time, 0);
613 mySwapRowCol =
false;
615 graph->
evalOpParm(mySwapRowCol, nodeidx,
"swaprowcol", time, 0);
616 myCloseIfNoCurveInput =
false;
617 if (
true && ( (
true&&!(((
int64(getSurfaceType())==0))||((
int64(getSurfaceType())==1))||(((graph->
getInput(nodeidx,0)>=0)!=0)))) ) )
618 graph->
evalOpParm(myCloseIfNoCurveInput, nodeidx,
"closeifnocurveinput", time, 0);
621 graph->
evalOpParm(myTangentType, nodeidx,
"tangenttype", time, 0);
622 myContinuousClosed =
true;
623 if (
true && ( (
true&&!(((
int64(getTangentType())==4)))) ) )
624 graph->
evalOpParm(myContinuousClosed, nodeidx,
"continuousclosed", time, 0);
625 myExtrapolateEndTangents =
false;
626 if (
true && ( (
true&&!(((
int64(getTangentType())==4)))) ) )
627 graph->
evalOpParm(myExtrapolateEndTangents, nodeidx,
"extrapolateendtangents", time, 0);
628 myTransformByAttribs =
true;
630 graph->
evalOpParm(myTransformByAttribs, nodeidx,
"transformbyattribs", time, 0);
631 myComputeUVs =
false;
633 graph->
evalOpParm(myComputeUVs, nodeidx,
"computeuvs", time, 0);
634 myOverrideExistingUVs =
false;
635 if (
true && ( (
true&&!(((getComputeUVs()==0)))) ) )
636 graph->
evalOpParm(myOverrideExistingUVs, nodeidx,
"overrideexistinguvs", time, 0);
637 myLengthWeightedUVs =
true;
638 if (
true && ( (
true&&!(((getComputeUVs()==0)))) ) )
639 graph->
evalOpParm(myLengthWeightedUVs, nodeidx,
"lengthweighteduvs", time, 0);
641 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0)))) ) )
642 graph->
evalOpParm(myNormalizeU, nodeidx,
"normalizeu", time, 0);
643 myNormalizeV =
false;
644 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0)))) ) )
645 graph->
evalOpParm(myNormalizeV, nodeidx,
"normalizev", time, 0);
647 if (
true && ( (
true&&!(((getComputeUVs()==0)))) ) )
648 graph->
evalOpParm(myFlipU, nodeidx,
"flipu", time, 0);
650 if (
true && ( (
true&&!(((getComputeUVs()==0)))) ) )
651 graph->
evalOpParm(myUVScale, nodeidx,
"uvscale", time, 0);
652 myUseMeshEdgeLengths =
true;
653 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0)))) ) )
654 graph->
evalOpParm(myUseMeshEdgeLengths, nodeidx,
"usemeshedgelengths", time, 0);
655 myPropScalePerCurve =
true;
656 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0))||((getNormalizeU()!=1))||((getNormalizeV()!=0)))) ) )
657 graph->
evalOpParm(myPropScalePerCurve, nodeidx,
"propscalepercurve", time, 0);
659 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0))||((getNormalizeU()==1)))) ) )
660 graph->
evalOpParm(myWrapU, nodeidx,
"wrapu", time, 0);
662 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0))||((getNormalizeV()==1)))) ) )
663 graph->
evalOpParm(myWrapV, nodeidx,
"wrapv", time, 0);
664 myAttribsFromBackbone =
"* ^P ^N ^up ^pscale ^scale ^orient ^rot ^pivot ^trans ^transform"_UTsh;
666 graph->
evalOpParm(myAttribsFromBackbone, nodeidx,
"attribsfrombackbone", time, 0);
667 myAttribsFromCrossSection =
"*"_UTsh;
669 graph->
evalOpParm(myAttribsFromCrossSection, nodeidx,
"attribsfromcrosssection", time, 0);
670 myAddPointRow =
false;
672 graph->
evalOpParm(myAddPointRow, nodeidx,
"addptrow", time, 0);
673 myPtRowAttrib =
"ptrow"_UTsh;
674 if (
true && ( (
true&&!(((getAddPointRow()==0)))) ) )
675 graph->
evalOpParm(myPtRowAttrib, nodeidx,
"ptrowattrib", time, 0);
676 myAddPointCol =
false;
678 graph->
evalOpParm(myAddPointCol, nodeidx,
"addptcol", time, 0);
679 myPtColAttrib =
"ptcol"_UTsh;
680 if (
true && ( (
true&&!(((getAddPointCol()==0)))) ) )
681 graph->
evalOpParm(myPtColAttrib, nodeidx,
"ptcolattrib", time, 0);
682 myAddPrimRow =
false;
684 graph->
evalOpParm(myAddPrimRow, nodeidx,
"addprimrow", time, 0);
685 myPrimRowAttrib =
"primrow"_UTsh;
686 if (
true && ( (
true&&!(((getAddPrimRow()==0)))) ) )
687 graph->
evalOpParm(myPrimRowAttrib, nodeidx,
"primrowattrib", time, 0);
688 myAddPrimCol =
false;
690 graph->
evalOpParm(myAddPrimCol, nodeidx,
"addprimcol", time, 0);
691 myPrimColAttrib =
"primcol"_UTsh;
692 if (
true && ( (
true&&!(((getAddPrimCol()==0)))) ) )
693 graph->
evalOpParm(myPrimColAttrib, nodeidx,
"primcolattrib", time, 0);
694 myAddCrossSectionNum =
false;
696 graph->
evalOpParm(myAddCrossSectionNum, nodeidx,
"addcrosssectionnum", time, 0);
697 myCrossSectionNumAttrib =
"crossnum"_UTsh;
698 if (
true && ( (
true&&!(((getAddCrossSectionNum()==0)))) ) )
699 graph->
evalOpParm(myCrossSectionNumAttrib, nodeidx,
"crosssectionnumattrib", time, 0);
700 myAddCurveNum =
false;
702 graph->
evalOpParm(myAddCurveNum, nodeidx,
"addcurvenum", time, 0);
703 myCurveNumAttrib =
"curvenum"_UTsh;
704 if (
true && ( (
true&&!(((getAddCurveNum()==0)))) ) )
705 graph->
evalOpParm(myCurveNumAttrib, nodeidx,
"curvenumattrib", time, 0);
707 if (
true && ( (
true&&!(((
int64(getTangentType())==4)))) ) )
708 graph->
evalOpParm(myUpVectorType, nodeidx,
"upvectortype", time, 0);
709 myUpVectorAtStart =
true;
710 if (
true && ( (
true&&!(((
int64(getTangentType())==4)))) ) )
711 graph->
evalOpParm(myUpVectorAtStart, nodeidx,
"upvectoratstart", time, 0);
712 myUseEndUpVector =
false;
713 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((getUpVectorAtStart()==0)))) ) )
714 graph->
evalOpParm(myUseEndUpVector, nodeidx,
"useendupvector", time, 0);
715 myUpVectorAttrib =
"start_up"_UTsh;
716 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=4))||((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=4)))) ) )
717 graph->
evalOpParm(myUpVectorAttrib, nodeidx,
"upvectorattrib", time, 0);
718 myEndUpVectorAttrib =
"end_up"_UTsh;
719 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=4))||((getUseEndUpVector()==0))||((getUpVectorAtStart()==0))||((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=4))||((getUseEndUpVector()==0))||((getUpVectorAtStart()==0)))) ) )
720 graph->
evalOpParm(myEndUpVectorAttrib, nodeidx,
"endupvectorattrib", time, 0);
722 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=5))||((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=5)))) ) )
723 graph->
evalOpParm(myUpVector, nodeidx,
"upvector", time, 0);
725 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=5))||((getUseEndUpVector()==0))||((getUpVectorAtStart()==0))||((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=5))||((getUseEndUpVector()==0))||((getUpVectorAtStart()==0)))) ) )
726 graph->
evalOpParm(myEndUpVector, nodeidx,
"endupvector", time, 0);
742 template <
typename T>
749 if (idx.
size() != instance.
size()+1)
754 coerceValue(value, myCurveGroup);
757 coerceValue(value, myCrossSectionGroup);
760 coerceValue(value, mySurfaceShape);
763 coerceValue(value, mySurfaceType);
766 coerceValue(value, myScale);
769 coerceValue(value, myCols);
772 coerceValue(value, myRadius);
775 coerceValue(value, myWidth);
778 coerceValue(value, myReverseCrossSections);
781 coerceValue(value, myStretchAroundTurns);
784 coerceValue(value, myMaxStretchAroundTurns);
787 coerceValue(value, myEndCapType);
790 coerceValue(value, myCapDivs);
793 coerceValue(value, myTriangularPoles);
796 coerceValue(value, myCapScale);
799 coerceValue(value, myCapRoundness);
802 coerceValue(value, myAddEndCapsGroup);
805 coerceValue(value, myEndCapsGroup);
808 coerceValue(value, myApplyScale);
811 coerceValue(value, myScaleRamp);
814 coerceValue(value, myROrd);
817 coerceValue(value, myApplyRoll);
820 coerceValue(value, myRoll);
823 coerceValue(value, myFullTwists);
826 coerceValue(value, myIncRoll);
829 coerceValue(value, myRollPer);
832 coerceValue(value, myRollAttrib);
835 coerceValue(value, myApplyYaw);
838 coerceValue(value, myYaw);
841 coerceValue(value, myIncYaw);
844 coerceValue(value, myYawPer);
847 coerceValue(value, myYawAttrib);
850 coerceValue(value, myApplyPitch);
853 coerceValue(value, myPitch);
856 coerceValue(value, myIncPitch);
859 coerceValue(value, myPitchPer);
862 coerceValue(value, myPitchAttrib);
865 coerceValue(value, myCopyOrder);
868 coerceValue(value, myCrossSectionAttrib);
871 coerceValue(value, myPrimType);
874 coerceValue(value, myUnrollClosedRowCol);
877 coerceValue(value, mySwapRowCol);
880 coerceValue(value, myCloseIfNoCurveInput);
883 coerceValue(value, myTangentType);
886 coerceValue(value, myContinuousClosed);
889 coerceValue(value, myExtrapolateEndTangents);
892 coerceValue(value, myTransformByAttribs);
895 coerceValue(value, myComputeUVs);
898 coerceValue(value, myOverrideExistingUVs);
901 coerceValue(value, myLengthWeightedUVs);
904 coerceValue(value, myNormalizeU);
907 coerceValue(value, myNormalizeV);
910 coerceValue(value, myFlipU);
913 coerceValue(value, myUVScale);
916 coerceValue(value, myUseMeshEdgeLengths);
919 coerceValue(value, myPropScalePerCurve);
922 coerceValue(value, myWrapU);
925 coerceValue(value, myWrapV);
928 coerceValue(value, myAttribsFromBackbone);
931 coerceValue(value, myAttribsFromCrossSection);
934 coerceValue(value, myAddPointRow);
937 coerceValue(value, myPtRowAttrib);
940 coerceValue(value, myAddPointCol);
943 coerceValue(value, myPtColAttrib);
946 coerceValue(value, myAddPrimRow);
949 coerceValue(value, myPrimRowAttrib);
952 coerceValue(value, myAddPrimCol);
955 coerceValue(value, myPrimColAttrib);
958 coerceValue(value, myAddCrossSectionNum);
961 coerceValue(value, myCrossSectionNumAttrib);
964 coerceValue(value, myAddCurveNum);
967 coerceValue(value, myCurveNumAttrib);
970 coerceValue(value, myUpVectorType);
973 coerceValue(value, myUpVectorAtStart);
976 coerceValue(value, myUseEndUpVector);
979 coerceValue(value, myUpVectorAttrib);
982 coerceValue(value, myEndUpVectorAttrib);
985 coerceValue(value, myUpVector);
988 coerceValue(value, myEndUpVector);
1004 { doGetParmValue(idx, instance, value); }
1006 { doGetParmValue(idx, instance, value); }
1008 { doGetParmValue(idx, instance, value); }
1010 { doGetParmValue(idx, instance, value); }
1012 { doGetParmValue(idx, instance, value); }
1014 { doGetParmValue(idx, instance, value); }
1016 { doGetParmValue(idx, instance, value); }
1018 { doGetParmValue(idx, instance, value); }
1020 { doGetParmValue(idx, instance, value); }
1022 { doGetParmValue(idx, instance, value); }
1024 { doGetParmValue(idx, instance, value); }
1026 template <
typename T>
1033 if (idx.
size() != instance.
size()+1)
1038 coerceValue(myCurveGroup, ( ( value ) ));
1041 coerceValue(myCrossSectionGroup, ( ( value ) ));
1044 coerceValue(mySurfaceShape, clampMinValue(0, clampMaxValue(3, value ) ));
1047 coerceValue(mySurfaceType, clampMinValue(0, clampMaxValue(7, value ) ));
1050 coerceValue(myScale, ( ( value ) ));
1053 coerceValue(myCols, clampMinValue(1, ( value ) ));
1056 coerceValue(myRadius, ( ( value ) ));
1059 coerceValue(myWidth, ( ( value ) ));
1062 coerceValue(myReverseCrossSections, ( ( value ) ));
1065 coerceValue(myStretchAroundTurns, ( ( value ) ));
1068 coerceValue(myMaxStretchAroundTurns, clampMinValue(1, ( value ) ));
1071 coerceValue(myEndCapType, clampMinValue(0, clampMaxValue(3, value ) ));
1074 coerceValue(myCapDivs, clampMinValue(1, ( value ) ));
1077 coerceValue(myTriangularPoles, ( ( value ) ));
1080 coerceValue(myCapScale, ( ( value ) ));
1083 coerceValue(myCapRoundness, ( ( value ) ));
1086 coerceValue(myAddEndCapsGroup, ( ( value ) ));
1089 coerceValue(myEndCapsGroup, ( ( value ) ));
1092 coerceValue(myApplyScale, ( ( value ) ));
1095 coerceValue(myScaleRamp, clampMinValue(0, ( value ) ));
1098 coerceValue(myROrd, clampMinValue(0, clampMaxValue(5, value ) ));
1101 coerceValue(myApplyRoll, ( ( value ) ));
1104 coerceValue(myRoll, ( ( value ) ));
1107 coerceValue(myFullTwists, ( ( value ) ));
1110 coerceValue(myIncRoll, ( ( value ) ));
1113 coerceValue(myRollPer, clampMinValue(0, clampMaxValue(4, value ) ));
1116 coerceValue(myRollAttrib, ( ( value ) ));
1119 coerceValue(myApplyYaw, ( ( value ) ));
1122 coerceValue(myYaw, ( ( value ) ));
1125 coerceValue(myIncYaw, ( ( value ) ));
1128 coerceValue(myYawPer, clampMinValue(0, clampMaxValue(4, value ) ));
1131 coerceValue(myYawAttrib, ( ( value ) ));
1134 coerceValue(myApplyPitch, ( ( value ) ));
1137 coerceValue(myPitch, ( ( value ) ));
1140 coerceValue(myIncPitch, ( ( value ) ));
1143 coerceValue(myPitchPer, clampMinValue(0, clampMaxValue(4, value ) ));
1146 coerceValue(myPitchAttrib, ( ( value ) ));
1149 coerceValue(myCopyOrder, clampMinValue(0, clampMaxValue(4, value ) ));
1152 coerceValue(myCrossSectionAttrib, ( ( value ) ));
1155 coerceValue(myPrimType, clampMinValue(0, clampMaxValue(5, value ) ));
1158 coerceValue(myUnrollClosedRowCol, ( ( value ) ));
1161 coerceValue(mySwapRowCol, ( ( value ) ));
1164 coerceValue(myCloseIfNoCurveInput, ( ( value ) ));
1167 coerceValue(myTangentType, clampMinValue(0, clampMaxValue(4, value ) ));
1170 coerceValue(myContinuousClosed, ( ( value ) ));
1173 coerceValue(myExtrapolateEndTangents, ( ( value ) ));
1176 coerceValue(myTransformByAttribs, ( ( value ) ));
1179 coerceValue(myComputeUVs, ( ( value ) ));
1182 coerceValue(myOverrideExistingUVs, ( ( value ) ));
1185 coerceValue(myLengthWeightedUVs, ( ( value ) ));
1188 coerceValue(myNormalizeU, ( ( value ) ));
1191 coerceValue(myNormalizeV, ( ( value ) ));
1194 coerceValue(myFlipU, ( ( value ) ));
1197 coerceValue(myUVScale, ( ( value ) ));
1200 coerceValue(myUseMeshEdgeLengths, ( ( value ) ));
1203 coerceValue(myPropScalePerCurve, ( ( value ) ));
1206 coerceValue(myWrapU, ( ( value ) ));
1209 coerceValue(myWrapV, ( ( value ) ));
1212 coerceValue(myAttribsFromBackbone, ( ( value ) ));
1215 coerceValue(myAttribsFromCrossSection, ( ( value ) ));
1218 coerceValue(myAddPointRow, ( ( value ) ));
1221 coerceValue(myPtRowAttrib, ( ( value ) ));
1224 coerceValue(myAddPointCol, ( ( value ) ));
1227 coerceValue(myPtColAttrib, ( ( value ) ));
1230 coerceValue(myAddPrimRow, ( ( value ) ));
1233 coerceValue(myPrimRowAttrib, ( ( value ) ));
1236 coerceValue(myAddPrimCol, ( ( value ) ));
1239 coerceValue(myPrimColAttrib, ( ( value ) ));
1242 coerceValue(myAddCrossSectionNum, ( ( value ) ));
1245 coerceValue(myCrossSectionNumAttrib, ( ( value ) ));
1248 coerceValue(myAddCurveNum, ( ( value ) ));
1251 coerceValue(myCurveNumAttrib, ( ( value ) ));
1254 coerceValue(myUpVectorType, clampMinValue(0, clampMaxValue(5, value ) ));
1257 coerceValue(myUpVectorAtStart, ( ( value ) ));
1260 coerceValue(myUseEndUpVector, ( ( value ) ));
1263 coerceValue(myUpVectorAttrib, ( ( value ) ));
1266 coerceValue(myEndUpVectorAttrib, ( ( value ) ));
1269 coerceValue(myUpVector, ( ( value ) ));
1272 coerceValue(myEndUpVector, ( ( value ) ));
1279 { doSetParmValue(idx, instance, value); }
1281 { doSetParmValue(idx, instance, value); }
1283 { doSetParmValue(idx, instance, value); }
1285 { doSetParmValue(idx, instance, value); }
1287 { doSetParmValue(idx, instance, value); }
1289 { doSetParmValue(idx, instance, value); }
1291 { doSetParmValue(idx, instance, value); }
1293 { doSetParmValue(idx, instance, value); }
1295 { doSetParmValue(idx, instance, value); }
1297 { doSetParmValue(idx, instance, value); }
1299 { doSetParmValue(idx, instance, value); }
1303 if (idx.
size() == 0)
1315 if (fieldnum.
size() < 1)
1317 switch (fieldnum[0])
1320 return "curvegroup";
1322 return "crosssectiongroup";
1324 return "surfaceshape";
1326 return "surfacetype";
1336 return "reversecrosssections";
1338 return "stretcharoundturns";
1340 return "maxstretcharoundturns";
1342 return "endcaptype";
1346 return "triangularpoles";
1350 return "caproundness";
1352 return "addendcapsgroup";
1354 return "endcapsgroup";
1356 return "applyscale";
1366 return "fulltwists";
1372 return "rollattrib";
1384 return "applypitch";
1392 return "pitchattrib";
1396 return "crosssectionattrib";
1400 return "unrollclosedrowcol";
1402 return "swaprowcol";
1404 return "closeifnocurveinput";
1406 return "tangenttype";
1408 return "continuousclosed";
1410 return "extrapolateendtangents";
1412 return "transformbyattribs";
1414 return "computeuvs";
1416 return "overrideexistinguvs";
1418 return "lengthweighteduvs";
1420 return "normalizeu";
1422 return "normalizev";
1428 return "usemeshedgelengths";
1430 return "propscalepercurve";
1436 return "attribsfrombackbone";
1438 return "attribsfromcrosssection";
1442 return "ptrowattrib";
1446 return "ptcolattrib";
1448 return "addprimrow";
1450 return "primrowattrib";
1452 return "addprimcol";
1454 return "primcolattrib";
1456 return "addcrosssectionnum";
1458 return "crosssectionnumattrib";
1460 return "addcurvenum";
1462 return "curvenumattrib";
1464 return "upvectortype";
1466 return "upvectoratstart";
1468 return "useendupvector";
1470 return "upvectorattrib";
1472 return "endupvectorattrib";
1476 return "endupvector";
1484 if (fieldnum.
size() < 1)
1485 return PARM_UNSUPPORTED;
1486 switch (fieldnum[0])
1493 return PARM_INTEGER;
1495 return PARM_INTEGER;
1499 return PARM_INTEGER;
1505 return PARM_INTEGER;
1507 return PARM_INTEGER;
1511 return PARM_INTEGER;
1513 return PARM_INTEGER;
1515 return PARM_INTEGER;
1521 return PARM_INTEGER;
1525 return PARM_INTEGER;
1529 return PARM_INTEGER;
1531 return PARM_INTEGER;
1535 return PARM_INTEGER;
1539 return PARM_INTEGER;
1543 return PARM_INTEGER;
1549 return PARM_INTEGER;
1553 return PARM_INTEGER;
1559 return PARM_INTEGER;
1563 return PARM_INTEGER;
1567 return PARM_INTEGER;
1569 return PARM_INTEGER;
1571 return PARM_INTEGER;
1573 return PARM_INTEGER;
1575 return PARM_INTEGER;
1577 return PARM_INTEGER;
1579 return PARM_INTEGER;
1581 return PARM_INTEGER;
1583 return PARM_INTEGER;
1585 return PARM_INTEGER;
1587 return PARM_INTEGER;
1589 return PARM_INTEGER;
1591 return PARM_INTEGER;
1593 return PARM_INTEGER;
1595 return PARM_VECTOR2;
1597 return PARM_INTEGER;
1599 return PARM_INTEGER;
1601 return PARM_INTEGER;
1603 return PARM_INTEGER;
1609 return PARM_INTEGER;
1613 return PARM_INTEGER;
1617 return PARM_INTEGER;
1621 return PARM_INTEGER;
1625 return PARM_INTEGER;
1629 return PARM_INTEGER;
1633 return PARM_INTEGER;
1635 return PARM_INTEGER;
1637 return PARM_INTEGER;
1643 return PARM_VECTOR3;
1645 return PARM_VECTOR3;
1648 return PARM_UNSUPPORTED;
1653 { is.
bread(&v, 1); }
1684 loadData(is, rampdata);
1702 int typelen = colon - data.
buffer();
1714 { UTwrite(os, &v); }
1716 {
int64 iv =
v; UTwrite(os, &iv); }
1718 { UTwrite<fpreal64>(os, &
v); }
1720 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
1722 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1723 UTwrite<fpreal64>(os, &v.
z()); }
1725 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1726 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
1738 if (s) s->save(ostr);
1739 result = ostr.
str();
1740 saveData(os, result);
1747 ostr << s->getDataTypeToken();
1749 s->saveBinary(ostr);
1751 result = ostr.
str();
1752 saveData(os, result);
1760 saveData(os, myCurveGroup);
1761 saveData(os, myCrossSectionGroup);
1762 saveData(os, mySurfaceShape);
1763 saveData(os, mySurfaceType);
1764 saveData(os, myScale);
1765 saveData(os, myCols);
1766 saveData(os, myRadius);
1767 saveData(os, myWidth);
1768 saveData(os, myReverseCrossSections);
1769 saveData(os, myStretchAroundTurns);
1770 saveData(os, myMaxStretchAroundTurns);
1771 saveData(os, myEndCapType);
1772 saveData(os, myCapDivs);
1773 saveData(os, myTriangularPoles);
1774 saveData(os, myCapScale);
1775 saveData(os, myCapRoundness);
1776 saveData(os, myAddEndCapsGroup);
1777 saveData(os, myEndCapsGroup);
1778 saveData(os, myApplyScale);
1779 saveData(os, myScaleRamp);
1780 saveData(os, myROrd);
1781 saveData(os, myApplyRoll);
1782 saveData(os, myRoll);
1783 saveData(os, myFullTwists);
1784 saveData(os, myIncRoll);
1785 saveData(os, myRollPer);
1786 saveData(os, myRollAttrib);
1787 saveData(os, myApplyYaw);
1788 saveData(os, myYaw);
1789 saveData(os, myIncYaw);
1790 saveData(os, myYawPer);
1791 saveData(os, myYawAttrib);
1792 saveData(os, myApplyPitch);
1793 saveData(os, myPitch);
1794 saveData(os, myIncPitch);
1795 saveData(os, myPitchPer);
1796 saveData(os, myPitchAttrib);
1797 saveData(os, myCopyOrder);
1798 saveData(os, myCrossSectionAttrib);
1799 saveData(os, myPrimType);
1800 saveData(os, myUnrollClosedRowCol);
1801 saveData(os, mySwapRowCol);
1802 saveData(os, myCloseIfNoCurveInput);
1803 saveData(os, myTangentType);
1804 saveData(os, myContinuousClosed);
1805 saveData(os, myExtrapolateEndTangents);
1806 saveData(os, myTransformByAttribs);
1807 saveData(os, myComputeUVs);
1808 saveData(os, myOverrideExistingUVs);
1809 saveData(os, myLengthWeightedUVs);
1810 saveData(os, myNormalizeU);
1811 saveData(os, myNormalizeV);
1812 saveData(os, myFlipU);
1813 saveData(os, myUVScale);
1814 saveData(os, myUseMeshEdgeLengths);
1815 saveData(os, myPropScalePerCurve);
1816 saveData(os, myWrapU);
1817 saveData(os, myWrapV);
1818 saveData(os, myAttribsFromBackbone);
1819 saveData(os, myAttribsFromCrossSection);
1820 saveData(os, myAddPointRow);
1821 saveData(os, myPtRowAttrib);
1822 saveData(os, myAddPointCol);
1823 saveData(os, myPtColAttrib);
1824 saveData(os, myAddPrimRow);
1825 saveData(os, myPrimRowAttrib);
1826 saveData(os, myAddPrimCol);
1827 saveData(os, myPrimColAttrib);
1828 saveData(os, myAddCrossSectionNum);
1829 saveData(os, myCrossSectionNumAttrib);
1830 saveData(os, myAddCurveNum);
1831 saveData(os, myCurveNumAttrib);
1832 saveData(os, myUpVectorType);
1833 saveData(os, myUpVectorAtStart);
1834 saveData(os, myUseEndUpVector);
1835 saveData(os, myUpVectorAttrib);
1836 saveData(os, myEndUpVectorAttrib);
1837 saveData(os, myUpVector);
1838 saveData(os, myEndUpVector);
1851 loadData(is, myCurveGroup);
1852 loadData(is, myCrossSectionGroup);
1853 loadData(is, mySurfaceShape);
1854 loadData(is, mySurfaceType);
1855 loadData(is, myScale);
1856 loadData(is, myCols);
1857 loadData(is, myRadius);
1858 loadData(is, myWidth);
1859 loadData(is, myReverseCrossSections);
1860 loadData(is, myStretchAroundTurns);
1861 loadData(is, myMaxStretchAroundTurns);
1862 loadData(is, myEndCapType);
1863 loadData(is, myCapDivs);
1864 loadData(is, myTriangularPoles);
1865 loadData(is, myCapScale);
1866 loadData(is, myCapRoundness);
1867 loadData(is, myAddEndCapsGroup);
1868 loadData(is, myEndCapsGroup);
1869 loadData(is, myApplyScale);
1870 loadData(is, myScaleRamp);
1871 loadData(is, myROrd);
1872 loadData(is, myApplyRoll);
1873 loadData(is, myRoll);
1874 loadData(is, myFullTwists);
1875 loadData(is, myIncRoll);
1876 loadData(is, myRollPer);
1877 loadData(is, myRollAttrib);
1878 loadData(is, myApplyYaw);
1879 loadData(is, myYaw);
1880 loadData(is, myIncYaw);
1881 loadData(is, myYawPer);
1882 loadData(is, myYawAttrib);
1883 loadData(is, myApplyPitch);
1884 loadData(is, myPitch);
1885 loadData(is, myIncPitch);
1886 loadData(is, myPitchPer);
1887 loadData(is, myPitchAttrib);
1888 loadData(is, myCopyOrder);
1889 loadData(is, myCrossSectionAttrib);
1890 loadData(is, myPrimType);
1891 loadData(is, myUnrollClosedRowCol);
1892 loadData(is, mySwapRowCol);
1893 loadData(is, myCloseIfNoCurveInput);
1894 loadData(is, myTangentType);
1895 loadData(is, myContinuousClosed);
1896 loadData(is, myExtrapolateEndTangents);
1897 loadData(is, myTransformByAttribs);
1898 loadData(is, myComputeUVs);
1899 loadData(is, myOverrideExistingUVs);
1900 loadData(is, myLengthWeightedUVs);
1901 loadData(is, myNormalizeU);
1902 loadData(is, myNormalizeV);
1903 loadData(is, myFlipU);
1904 loadData(is, myUVScale);
1905 loadData(is, myUseMeshEdgeLengths);
1906 loadData(is, myPropScalePerCurve);
1907 loadData(is, myWrapU);
1908 loadData(is, myWrapV);
1909 loadData(is, myAttribsFromBackbone);
1910 loadData(is, myAttribsFromCrossSection);
1911 loadData(is, myAddPointRow);
1912 loadData(is, myPtRowAttrib);
1913 loadData(is, myAddPointCol);
1914 loadData(is, myPtColAttrib);
1915 loadData(is, myAddPrimRow);
1916 loadData(is, myPrimRowAttrib);
1917 loadData(is, myAddPrimCol);
1918 loadData(is, myPrimColAttrib);
1919 loadData(is, myAddCrossSectionNum);
1920 loadData(is, myCrossSectionNumAttrib);
1921 loadData(is, myAddCurveNum);
1922 loadData(is, myCurveNumAttrib);
1923 loadData(is, myUpVectorType);
1924 loadData(is, myUpVectorAtStart);
1925 loadData(is, myUseEndUpVector);
1926 loadData(is, myUpVectorAttrib);
1927 loadData(is, myEndUpVectorAttrib);
1928 loadData(is, myUpVector);
1929 loadData(is, myEndUpVector);
1939 if (!thissop)
return getCurveGroup();
1941 OP_Utils::evalOpParm(result, thissop,
"curvegroup", cookparms.
getCookTime(), 0);
1949 if (!thissop)
return getCrossSectionGroup();
1951 OP_Utils::evalOpParm(result, thissop,
"crosssectiongroup", cookparms.
getCookTime(), 0);
1959 if (!thissop)
return getSurfaceShape();
1961 OP_Utils::evalOpParm(result, thissop,
"surfaceshape", cookparms.
getCookTime(), 0);
1969 if (!thissop)
return getSurfaceType();
1971 OP_Utils::evalOpParm(result, thissop,
"surfacetype", cookparms.
getCookTime(), 0);
1981 OP_Utils::evalOpParm(result, thissop,
"scale", cookparms.
getCookTime(), 0);
1989 if (!thissop)
return getCols();
1991 OP_Utils::evalOpParm(result, thissop,
"cols", cookparms.
getCookTime(), 0);
1999 if (!thissop)
return getRadius();
2001 OP_Utils::evalOpParm(result, thissop,
"radius", cookparms.
getCookTime(), 0);
2009 if (!thissop)
return getWidth();
2011 OP_Utils::evalOpParm(result, thissop,
"width", cookparms.
getCookTime(), 0);
2019 if (!thissop)
return getReverseCrossSections();
2021 OP_Utils::evalOpParm(result, thissop,
"reversecrosssections", cookparms.
getCookTime(), 0);
2029 if (!thissop)
return getStretchAroundTurns();
2031 OP_Utils::evalOpParm(result, thissop,
"stretcharoundturns", cookparms.
getCookTime(), 0);
2039 if (!thissop)
return getMaxStretchAroundTurns();
2041 OP_Utils::evalOpParm(result, thissop,
"maxstretcharoundturns", cookparms.
getCookTime(), 0);
2049 if (!thissop)
return getEndCapType();
2051 OP_Utils::evalOpParm(result, thissop,
"endcaptype", cookparms.
getCookTime(), 0);
2059 if (!thissop)
return getCapDivs();
2061 OP_Utils::evalOpParm(result, thissop,
"capdivs", cookparms.
getCookTime(), 0);
2069 if (!thissop)
return getTriangularPoles();
2071 OP_Utils::evalOpParm(result, thissop,
"triangularpoles", cookparms.
getCookTime(), 0);
2079 if (!thissop)
return getCapScale();
2081 OP_Utils::evalOpParm(result, thissop,
"capscale", cookparms.
getCookTime(), 0);
2089 if (!thissop)
return getCapRoundness();
2091 OP_Utils::evalOpParm(result, thissop,
"caproundness", cookparms.
getCookTime(), 0);
2099 if (!thissop)
return getAddEndCapsGroup();
2101 OP_Utils::evalOpParm(result, thissop,
"addendcapsgroup", cookparms.
getCookTime(), 0);
2109 if (!thissop)
return getEndCapsGroup();
2111 OP_Utils::evalOpParm(result, thissop,
"endcapsgroup", cookparms.
getCookTime(), 0);
2119 if (!thissop)
return getApplyScale();
2121 OP_Utils::evalOpParm(result, thissop,
"applyscale", cookparms.
getCookTime(), 0);
2129 if (!thissop)
return getScaleRamp();
2131 OP_Utils::evalOpParm(result, thissop,
"scaleramp", cookparms.
getCookTime(), 0);
2139 if (!thissop)
return getROrd();
2141 OP_Utils::evalOpParm(result, thissop,
"rOrd", cookparms.
getCookTime(), 0);
2142 return ROrd(result);
2149 if (!thissop)
return getApplyRoll();
2151 OP_Utils::evalOpParm(result, thissop,
"applyroll", cookparms.
getCookTime(), 0);
2159 if (!thissop)
return getRoll();
2161 OP_Utils::evalOpParm(result, thissop,
"roll", cookparms.
getCookTime(), 0);
2169 if (!thissop)
return getFullTwists();
2171 OP_Utils::evalOpParm(result, thissop,
"fulltwists", cookparms.
getCookTime(), 0);
2179 if (!thissop)
return getIncRoll();
2181 OP_Utils::evalOpParm(result, thissop,
"incroll", cookparms.
getCookTime(), 0);
2189 if (!thissop)
return getRollPer();
2191 OP_Utils::evalOpParm(result, thissop,
"rollper", cookparms.
getCookTime(), 0);
2199 if (!thissop)
return getRollAttrib();
2201 OP_Utils::evalOpParm(result, thissop,
"rollattrib", cookparms.
getCookTime(), 0);
2209 if (!thissop)
return getApplyYaw();
2211 OP_Utils::evalOpParm(result, thissop,
"applyyaw", cookparms.
getCookTime(), 0);
2219 if (!thissop)
return getYaw();
2221 OP_Utils::evalOpParm(result, thissop,
"yaw", cookparms.
getCookTime(), 0);
2229 if (!thissop)
return getIncYaw();
2231 OP_Utils::evalOpParm(result, thissop,
"incyaw", cookparms.
getCookTime(), 0);
2239 if (!thissop)
return getYawPer();
2241 OP_Utils::evalOpParm(result, thissop,
"yawper", cookparms.
getCookTime(), 0);
2249 if (!thissop)
return getYawAttrib();
2251 OP_Utils::evalOpParm(result, thissop,
"yawattrib", cookparms.
getCookTime(), 0);
2259 if (!thissop)
return getApplyPitch();
2261 OP_Utils::evalOpParm(result, thissop,
"applypitch", cookparms.
getCookTime(), 0);
2269 if (!thissop)
return getPitch();
2271 OP_Utils::evalOpParm(result, thissop,
"pitch", cookparms.
getCookTime(), 0);
2279 if (!thissop)
return getIncPitch();
2281 OP_Utils::evalOpParm(result, thissop,
"incpitch", cookparms.
getCookTime(), 0);
2289 if (!thissop)
return getPitchPer();
2291 OP_Utils::evalOpParm(result, thissop,
"pitchper", cookparms.
getCookTime(), 0);
2299 if (!thissop)
return getPitchAttrib();
2301 OP_Utils::evalOpParm(result, thissop,
"pitchattrib", cookparms.
getCookTime(), 0);
2309 if (!thissop)
return getCopyOrder();
2311 OP_Utils::evalOpParm(result, thissop,
"copyorder", cookparms.
getCookTime(), 0);
2319 if (!thissop)
return getCrossSectionAttrib();
2321 OP_Utils::evalOpParm(result, thissop,
"crosssectionattrib", cookparms.
getCookTime(), 0);
2331 OP_Utils::evalOpParm(result, thissop,
"primtype", cookparms.
getCookTime(), 0);
2339 if (!thissop)
return getUnrollClosedRowCol();
2341 OP_Utils::evalOpParm(result, thissop,
"unrollclosedrowcol", cookparms.
getCookTime(), 0);
2349 if (!thissop)
return getSwapRowCol();
2351 OP_Utils::evalOpParm(result, thissop,
"swaprowcol", cookparms.
getCookTime(), 0);
2359 if (!thissop)
return getCloseIfNoCurveInput();
2361 OP_Utils::evalOpParm(result, thissop,
"closeifnocurveinput", cookparms.
getCookTime(), 0);
2369 if (!thissop)
return getTangentType();
2371 OP_Utils::evalOpParm(result, thissop,
"tangenttype", cookparms.
getCookTime(), 0);
2379 if (!thissop)
return getContinuousClosed();
2381 OP_Utils::evalOpParm(result, thissop,
"continuousclosed", cookparms.
getCookTime(), 0);
2389 if (!thissop)
return getExtrapolateEndTangents();
2391 OP_Utils::evalOpParm(result, thissop,
"extrapolateendtangents", cookparms.
getCookTime(), 0);
2399 if (!thissop)
return getTransformByAttribs();
2401 OP_Utils::evalOpParm(result, thissop,
"transformbyattribs", cookparms.
getCookTime(), 0);
2409 if (!thissop)
return getComputeUVs();
2411 OP_Utils::evalOpParm(result, thissop,
"computeuvs", cookparms.
getCookTime(), 0);
2419 if (!thissop)
return getOverrideExistingUVs();
2421 OP_Utils::evalOpParm(result, thissop,
"overrideexistinguvs", cookparms.
getCookTime(), 0);
2429 if (!thissop)
return getLengthWeightedUVs();
2431 OP_Utils::evalOpParm(result, thissop,
"lengthweighteduvs", cookparms.
getCookTime(), 0);
2439 if (!thissop)
return getNormalizeU();
2441 OP_Utils::evalOpParm(result, thissop,
"normalizeu", cookparms.
getCookTime(), 0);
2449 if (!thissop)
return getNormalizeV();
2451 OP_Utils::evalOpParm(result, thissop,
"normalizev", cookparms.
getCookTime(), 0);
2459 if (!thissop)
return getFlipU();
2461 OP_Utils::evalOpParm(result, thissop,
"flipu", cookparms.
getCookTime(), 0);
2469 if (!thissop)
return getUVScale();
2471 OP_Utils::evalOpParm(result, thissop,
"uvscale", cookparms.
getCookTime(), 0);
2479 if (!thissop)
return getUseMeshEdgeLengths();
2481 OP_Utils::evalOpParm(result, thissop,
"usemeshedgelengths", cookparms.
getCookTime(), 0);
2489 if (!thissop)
return getPropScalePerCurve();
2491 OP_Utils::evalOpParm(result, thissop,
"propscalepercurve", cookparms.
getCookTime(), 0);
2499 if (!thissop)
return getWrapU();
2501 OP_Utils::evalOpParm(result, thissop,
"wrapu", cookparms.
getCookTime(), 0);
2509 if (!thissop)
return getWrapV();
2511 OP_Utils::evalOpParm(result, thissop,
"wrapv", cookparms.
getCookTime(), 0);
2519 if (!thissop)
return getAttribsFromBackbone();
2521 OP_Utils::evalOpParm(result, thissop,
"attribsfrombackbone", cookparms.
getCookTime(), 0);
2529 if (!thissop)
return getAttribsFromCrossSection();
2531 OP_Utils::evalOpParm(result, thissop,
"attribsfromcrosssection", cookparms.
getCookTime(), 0);
2539 if (!thissop)
return getAddPointRow();
2541 OP_Utils::evalOpParm(result, thissop,
"addptrow", cookparms.
getCookTime(), 0);
2549 if (!thissop)
return getPtRowAttrib();
2551 OP_Utils::evalOpParm(result, thissop,
"ptrowattrib", cookparms.
getCookTime(), 0);
2559 if (!thissop)
return getAddPointCol();
2561 OP_Utils::evalOpParm(result, thissop,
"addptcol", cookparms.
getCookTime(), 0);
2569 if (!thissop)
return getPtColAttrib();
2571 OP_Utils::evalOpParm(result, thissop,
"ptcolattrib", cookparms.
getCookTime(), 0);
2579 if (!thissop)
return getAddPrimRow();
2581 OP_Utils::evalOpParm(result, thissop,
"addprimrow", cookparms.
getCookTime(), 0);
2589 if (!thissop)
return getPrimRowAttrib();
2591 OP_Utils::evalOpParm(result, thissop,
"primrowattrib", cookparms.
getCookTime(), 0);
2599 if (!thissop)
return getAddPrimCol();
2601 OP_Utils::evalOpParm(result, thissop,
"addprimcol", cookparms.
getCookTime(), 0);
2609 if (!thissop)
return getPrimColAttrib();
2611 OP_Utils::evalOpParm(result, thissop,
"primcolattrib", cookparms.
getCookTime(), 0);
2619 if (!thissop)
return getAddCrossSectionNum();
2621 OP_Utils::evalOpParm(result, thissop,
"addcrosssectionnum", cookparms.
getCookTime(), 0);
2629 if (!thissop)
return getCrossSectionNumAttrib();
2631 OP_Utils::evalOpParm(result, thissop,
"crosssectionnumattrib", cookparms.
getCookTime(), 0);
2639 if (!thissop)
return getAddCurveNum();
2641 OP_Utils::evalOpParm(result, thissop,
"addcurvenum", cookparms.
getCookTime(), 0);
2649 if (!thissop)
return getCurveNumAttrib();
2651 OP_Utils::evalOpParm(result, thissop,
"curvenumattrib", cookparms.
getCookTime(), 0);
2659 if (!thissop)
return getUpVectorType();
2661 OP_Utils::evalOpParm(result, thissop,
"upvectortype", cookparms.
getCookTime(), 0);
2669 if (!thissop)
return getUpVectorAtStart();
2671 OP_Utils::evalOpParm(result, thissop,
"upvectoratstart", cookparms.
getCookTime(), 0);
2679 if (!thissop)
return getUseEndUpVector();
2681 OP_Utils::evalOpParm(result, thissop,
"useendupvector", cookparms.
getCookTime(), 0);
2689 if (!thissop)
return getUpVectorAttrib();
2691 OP_Utils::evalOpParm(result, thissop,
"upvectorattrib", cookparms.
getCookTime(), 0);
2699 if (!thissop)
return getEndUpVectorAttrib();
2701 OP_Utils::evalOpParm(result, thissop,
"endupvectorattrib", cookparms.
getCookTime(), 0);
2709 if (!thissop)
return getUpVector();
2711 OP_Utils::evalOpParm(result, thissop,
"upvector", cookparms.
getCookTime(), 0);
2719 if (!thissop)
return getEndUpVector();
2721 OP_Utils::evalOpParm(result, thissop,
"endupvector", cookparms.
getCookTime(), 0);
2728 int64 mySurfaceShape;
2729 int64 mySurfaceType;
2734 bool myReverseCrossSections;
2735 bool myStretchAroundTurns;
2739 bool myTriangularPoles;
2742 bool myAddEndCapsGroup;
2766 bool myUnrollClosedRowCol;
2768 bool myCloseIfNoCurveInput;
2769 int64 myTangentType;
2770 bool myContinuousClosed;
2771 bool myExtrapolateEndTangents;
2772 bool myTransformByAttribs;
2774 bool myOverrideExistingUVs;
2775 bool myLengthWeightedUVs;
2780 bool myUseMeshEdgeLengths;
2781 bool myPropScalePerCurve;
2794 bool myAddCrossSectionNum;
2798 int64 myUpVectorType;
2799 bool myUpVectorAtStart;
2800 bool myUseEndUpVector;
const UT_StringHolder & getPitchAttrib() const
void setPropScalePerCurve(bool val)
fpreal64 getPitch() const
bool getPropScalePerCurve() const
void setComputeUVs(bool val)
bool getTransformByAttribs() const
bool getStretchAroundTurns() const
fpreal64 getRadius() const
fpreal64 getScale() const
const UT_StringHolder & getEndUpVectorAttrib() const
void setWidth(fpreal64 val)
bool getApplyRoll() const
UpVectorType getUpVectorType() const
static void loadData(UT_IStream &is, UT_Vector4I &v)
bool opAddPointCol(const SOP_NodeVerb::CookParms &cookparms) const
YawPer opYawPer(const SOP_NodeVerb::CookParms &cookparms) const
bool opPropScalePerCurve(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getIncPitch() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
bool getOverrideExistingUVs() const
SOP_Node * getNode() const
bool opNormalizeU(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getPtColAttrib() const
bool getNormalizeU() const
void setPitch(fpreal64 val)
void setAddPrimCol(bool val)
static void saveData(std::ostream &os, UT_Vector4D v)
void setRadius(fpreal64 val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
bool opUnrollClosedRowCol(const SOP_NodeVerb::CookParms &cookparms) const
void setCrossSectionNumAttrib(const UT_StringHolder &val)
void setPtRowAttrib(const UT_StringHolder &val)
bool getUseEndUpVector() const
const UT_StringHolder & getCurveNumAttrib() const
void setTransformByAttribs(bool val)
fpreal64 opWidth(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getEndCapsGroup() const
fpreal64 opRoll(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Matrix4D v)
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
exint bread(int32 *buffer, exint asize=1)
PrimType opPrimType(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opCurveGroup(const SOP_NodeVerb::CookParms &cookparms) const
GT_API const UT_StringHolder time
constexpr SYS_FORCE_INLINE T & y() noexcept
fpreal64 opIncPitch(const SOP_NodeVerb::CookParms &cookparms) const
void setUpVectorAtStart(bool val)
bool getUnrollClosedRowCol() const
void setPrimColAttrib(const UT_StringHolder &val)
UT_Vector2T< fpreal64 > UT_Vector2D
fpreal64 getWidth() const
UT_StringHolder opPrimColAttrib(const SOP_NodeVerb::CookParms &cookparms) const
UpVectorType opUpVectorType(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opRadius(const SOP_NodeVerb::CookParms &cookparms) const
exint getNestNumParms(TempIndex idx) const override
bool opApplyYaw(const SOP_NodeVerb::CookParms &cookparms) const
bool opAddPrimRow(const SOP_NodeVerb::CookParms &cookparms) const
bool opWrapV(const SOP_NodeVerb::CookParms &cookparms) const
void setRoll(fpreal64 val)
bool opComputeUVs(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opAttribsFromBackbone(const SOP_NodeVerb::CookParms &cookparms) const
bool opUseEndUpVector(const SOP_NodeVerb::CookParms &cookparms) const
void setYaw(fpreal64 val)
const OP_Context & context() const
constexpr SYS_FORCE_INLINE T & z() noexcept
void setEndCapsGroup(const UT_StringHolder &val)
SYS_FORCE_INLINE const char * buffer() const
void setEndUpVectorAttrib(const UT_StringHolder &val)
void setTriangularPoles(bool val)
void setPrimRowAttrib(const UT_StringHolder &val)
void setCloseIfNoCurveInput(bool val)
void setAddCurveNum(bool val)
UT_Vector3D getEndUpVector() const
An output stream object that owns its own string buffer storage.
static void saveData(std::ostream &os, fpreal64 v)
static void saveData(std::ostream &os, PRM_DataItemHandle s)
bool getUpVectorAtStart() const
UT_StringHolder opUpVectorAttrib(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Matrix3D &v)
const UT_StringHolder & getCurveGroup() const
void setUpVectorType(UpVectorType val)
bool getAddPointCol() const
**But if you need a result
void setOverrideExistingUVs(bool val)
void setAddPointRow(bool val)
static void loadData(UT_IStream &is, int64 &v)
static void saveData(std::ostream &os, bool v)
static void loadData(UT_IStream &is, UT_Vector2D &v)
void setSurfaceShape(SurfaceShape val)
ROrd opROrd(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opIncYaw(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
bool opCloseIfNoCurveInput(const SOP_NodeVerb::CookParms &cookparms) const
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
bool getContinuousClosed() const
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
const UT_StringHolder & getCrossSectionGroup() const
const UT_StringHolder & getRollAttrib() const
void setCapDivs(int64 val)
static void loadData(UT_IStream &is, fpreal64 &v)
const UT_StringHolder & getYawAttrib() const
void setPtColAttrib(const UT_StringHolder &val)
UT_StringHolder opCrossSectionAttrib(const SOP_NodeVerb::CookParms &cookparms) const
virtual NodeIdx getInput(NodeIdx idx, int input, bool markused=false) const =0
constexpr SYS_FORCE_INLINE T & x() noexcept
fpreal64 opIncRoll(const SOP_NodeVerb::CookParms &cookparms) const
bool opLengthWeightedUVs(const SOP_NodeVerb::CookParms &cookparms) const
ParmType getNestParmType(TempIndex fieldnum) const override
bool getNormalizeV() const
void setMaxStretchAroundTurns(fpreal64 val)
bool getTriangularPoles() const
bool getAddCurveNum() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
void setUpVectorAttrib(const UT_StringHolder &val)
bool opSwapRowCol(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & x() noexcept
PrimType getPrimType() const
void setCrossSectionGroup(const UT_StringHolder &val)
void setAttribsFromCrossSection(const UT_StringHolder &val)
bool getUseMeshEdgeLengths() const
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
void setApplyYaw(bool val)
void setAddCrossSectionNum(bool val)
PitchPer opPitchPer(const SOP_NodeVerb::CookParms &cookparms) const
void loadFromOpSubclass(const LoadParms &loadparms) override
void setAddPointCol(bool val)
bool opAddCurveNum(const SOP_NodeVerb::CookParms &cookparms) const
SYS_FORCE_INLINE UT_StringHolder getToken(SurfaceShape enum_value)
bool getExtrapolateEndTangents() const
static void loadData(UT_IStream &is, UT_Vector3I &v)
UT_SharedPtr< UT_Ramp > opScaleRamp(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 getCapRoundness() const
SurfaceType getSurfaceType() const
void save(std::ostream &os) const
static void loadData(UT_IStream &is, UT_Matrix2D &v)
bool opNormalizeV(const SOP_NodeVerb::CookParms &cookparms) const
void setRollAttrib(const UT_StringHolder &val)
bool getApplyScale() const
SurfaceShape getSurfaceShape() const
fpreal64 getMaxStretchAroundTurns() const
UT_StringHolder opCurveNumAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)
void setFullTwists(int64 val)
const char * getNestParmName(TempIndex fieldnum) const override
SYS_FORCE_INLINE const char * buffer() const
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
const UT_StringHolder & getPtRowAttrib() const
constexpr SYS_FORCE_INLINE T & z() noexcept
bool getSwapRowCol() const
void setStretchAroundTurns(bool val)
void setCapRoundness(fpreal64 val)
static void loadData(UT_IStream &is, UT_StringHolder &v)
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
bool getAddPrimRow() const
void setUpVector(UT_Vector3D val)
void setAddPrimRow(bool val)
void copyFrom(const OP_NodeParms *src) override
fpreal64 opCapScale(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
bool getAddPrimCol() const
const OP_GraphProxy * graph() const
int64 opCols(const SOP_NodeVerb::CookParms &cookparms) const
bool opAddPrimCol(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opScale(const SOP_NodeVerb::CookParms &cookparms) const
void setReverseCrossSections(bool val)
void setApplyRoll(bool val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
bool getComputeUVs() const
bool getAddEndCapsGroup() const
bool load(UT_IStream &is)
void setPitchAttrib(const UT_StringHolder &val)
void setNormalizeV(bool val)
UT_StringHolder opEndCapsGroup(const SOP_NodeVerb::CookParms &cookparms) const
EndCapType getEndCapType() const
void setScaleRamp(UT_SharedPtr< UT_Ramp > val)
void setScale(fpreal64 val)
void setCapScale(fpreal64 val)
void setAddEndCapsGroup(bool val)
void setPrimType(PrimType val)
void setIncPitch(fpreal64 val)
UT_Vector3T< fpreal64 > UT_Vector3D
UT_StringHolder opPitchAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
void setEndCapType(EndCapType val)
void setCrossSectionAttrib(const UT_StringHolder &val)
fpreal64 getIncYaw() const
static void loadData(UT_IStream &is, bool &v)
fpreal64 getCapScale() const
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
void setUseMeshEdgeLengths(bool val)
void setYawAttrib(const UT_StringHolder &val)
void setYawPer(YawPer val)
TangentType opTangentType(const SOP_NodeVerb::CookParms &cookparms) const
bool getReverseCrossSections() const
bool opAddPointRow(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Vector3D &v)
void saveBinary(std::ostream &os) const
Save string to binary stream.
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
bool isParmColorRamp(exint idx) const override
bool getAddPointRow() const
bool getCloseIfNoCurveInput() const
const UT_StringHolder & getPrimColAttrib() const
GT_API const UT_StringHolder version
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
void setLengthWeightedUVs(bool val)
bool opOverrideExistingUVs(const SOP_NodeVerb::CookParms &cookparms) const
void setIncYaw(fpreal64 val)
static void saveData(std::ostream &os, UT_Vector2D v)
const UT_StringHolder & getAttribsFromBackbone() const
void setUnrollClosedRowCol(bool val)
bool opUpVectorAtStart(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Matrix3D v)
void setRollPer(RollPer val)
bool opWrapU(const SOP_NodeVerb::CookParms &cookparms) const
void setPitchPer(PitchPer val)
UT_StringHolder opEndUpVectorAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setUVScale(UT_Vector2D val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
bool opApplyPitch(const SOP_NodeVerb::CookParms &cookparms) const
bool operator==(const SOP_Sweep_2_0Parms &src) const
void setCurveGroup(const UT_StringHolder &val)
bool opAddEndCapsGroup(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opPrimRowAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
fpreal64 opPitch(const SOP_NodeVerb::CookParms &cookparms) const
DEP_MicroNode * depnode() const
UT_Vector3D opEndUpVector(const SOP_NodeVerb::CookParms &cookparms) const
void setTangentType(TangentType val)
bool getLengthWeightedUVs() const
LeafData & operator=(const LeafData &)=delete
void setApplyPitch(bool val)
UT_StringHolder opCrossSectionNumAttrib(const SOP_NodeVerb::CookParms &cookparms) const
Utility class for containing a color ramp.
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
void setAttribsFromBackbone(const UT_StringHolder &val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
static void loadData(UT_IStream &is, UT_Vector2I &v)
void setCopyOrder(CopyOrder val)
const UT_StringHolder & getCrossSectionAttrib() const
bool opApplyRoll(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getAttribsFromCrossSection() const
constexpr SYS_FORCE_INLINE T & w() noexcept
static void loadData(UT_IStream &is, UT_Vector4D &v)
int64 opCapDivs(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
void setExtrapolateEndTangents(bool val)
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.
bool opReverseCrossSections(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opCapRoundness(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opYawAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
UT_StringHolder opPtColAttrib(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opPtRowAttrib(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
fpreal64 opYaw(const SOP_NodeVerb::CookParms &cookparms) const
bool opUseMeshEdgeLengths(const SOP_NodeVerb::CookParms &cookparms) const
fpreal64 opMaxStretchAroundTurns(const SOP_NodeVerb::CookParms &cookparms) const
bool opTriangularPoles(const SOP_NodeVerb::CookParms &cookparms) const
bool opStretchAroundTurns(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Vector3D v)
fpreal getCookTime() const
void setCurveNumAttrib(const UT_StringHolder &val)
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
bool getApplyPitch() const
void setApplyScale(bool val)
UT_StringHolder opCrossSectionGroup(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
void buildFromOp(const OP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
bool opFlipU(const SOP_NodeVerb::CookParms &cookparms) const
const char * findChar(int c) const
static void loadData(UT_IStream &is, UT_Matrix4D &v)
UT_SharedPtr< UT_Ramp > getScaleRamp() const
const UT_StringHolder & getCrossSectionNumAttrib() const
void setSurfaceType(SurfaceType val)
void setNormalizeU(bool val)
int64 getFullTwists() const
PitchPer getPitchPer() const
RollPer getRollPer() const
fpreal64 getIncRoll() const
EndCapType opEndCapType(const SOP_NodeVerb::CookParms &cookparms) const
void setEndUpVector(UT_Vector3D val)
void setSwapRowCol(bool val)
constexpr SYS_FORCE_INLINE T & y() noexcept
void setUseEndUpVector(bool val)
bool opApplyScale(const SOP_NodeVerb::CookParms &cookparms) const
CopyOrder opCopyOrder(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector2D getUVScale() const
void setIncRoll(fpreal64 val)
const UT_StringHolder & getPrimRowAttrib() const
UT_Vector3D getUpVector() const
CopyOrder getCopyOrder() const
static void saveData(std::ostream &os, UT_Matrix2D v)
bool opAddCrossSectionNum(const SOP_NodeVerb::CookParms &cookparms) const
int64 opFullTwists(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector3D opUpVector(const SOP_NodeVerb::CookParms &cookparms) const
GEO_API int getPrimType(const TypeMask &mask)
UT_StringHolder opAttribsFromCrossSection(const SOP_NodeVerb::CookParms &cookparms) const
bool getAddCrossSectionNum() const
UT_StringHolder opRollAttrib(const SOP_NodeVerb::CookParms &cookparms) const
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
SurfaceType opSurfaceType(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getUpVectorAttrib() const
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
constexpr SYS_FORCE_INLINE T & y() noexcept
SYS_FORCE_INLINE bool isstring() const
bool opExtrapolateEndTangents(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector2D opUVScale(const SOP_NodeVerb::CookParms &cookparms) const
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
TangentType getTangentType() const
SurfaceShape opSurfaceShape(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_StringHolder s)
bool opTransformByAttribs(const SOP_NodeVerb::CookParms &cookparms) const
bool operator!=(const SOP_Sweep_2_0Parms &src) const
static void saveData(std::ostream &os, int64 v)
RollPer opRollPer(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & x() noexcept
void setContinuousClosed(bool val)
bool opContinuousClosed(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override