23 namespace SOP_UVLayout_3_0Enums
35 using namespace UT::Literal;
54 using namespace UT::Literal;
72 using namespace UT::Literal;
95 using namespace UT::Literal;
122 using namespace UT::Literal;
123 switch (enum_value) {
144 using namespace UT::Literal;
145 switch (enum_value) {
163 using namespace UT::Literal;
164 switch (enum_value) {
196 if (rect_use != src.
rect_use)
return false;
198 if (rect_size != src.
rect_size)
return false;
214 for (
int i = 0; i < list.
entries(); i++)
220 buf.
appendSprintf(
"%s", (list(i).rect_use) ?
"true" :
"false");
222 buf.
appendSprintf(
"(%f, %f)", list(i).rect_center.x(), list(i).rect_center.y());
224 buf.
appendSprintf(
"(%f, %f)", list(i).rect_size.x(), list(i).rect_size.y());
236 myUVAttr =
"uv"_UTsh;
239 mySeparatorEdges =
""_UTsh;
240 myUseIslandAttr =
false;
241 myIslandAttr =
"island"_UTsh;
242 myUseTargetAttr =
false;
243 myTargetAttr =
"udim"_UTsh;
244 myTargetOverrides =
""_UTsh;
245 myUseIslandScaleAttr =
false;
246 myIslandScaleAttr =
"iscale"_UTsh;
247 myScaleOverrides =
""_UTsh;
248 myUseIslandOffsetAttr =
false;
249 myIslandOffsetAttr =
"ioffset"_UTsh;
250 myOffsetOverrides =
""_UTsh;
251 myCorrectAreas =
false;
257 myPackBetween =
false;
258 myPackInCavities =
true;
260 myPadBoundaries =
false;
261 myExpandPadding =
false;
264 myCustomResolution = 1024;
265 myConnectivityTolerance = 1e-05;
266 myScaleTolerance = 0.005;
269 myUseDefaultTarget =
false;
271 myUseDefaultUdimTarget =
false;
272 myDefaultUdimTarget = 1001;
276 myStartingUdim = 1001;
277 myTargetUVAttr =
"uv"_UTsh;
278 myTargetProjPlane = 0;
279 myTargetGroup =
""_UTsh;
280 myTargetSeparatorEdges =
""_UTsh;
281 myUseTargetIslandAttr =
false;
282 myTargetIslandAttr =
"targetisland"_UTsh;
283 myStackIslands =
false;
284 myStackMirrored =
false;
285 myStackOnNonGroup =
false;
286 myStackingLengthTolerance = 0.02;
287 myGenerateNonpackedPolys =
false;
288 myNonpackedPolys =
"nonpacked"_UTsh;
289 myGenerateIslandAttr =
false;
290 myOutputIslandAttr =
"island"_UTsh;
291 myGenerateTargetAttr =
false;
292 myOutputTargetAttr =
"target"_UTsh;
305 if (myUVAttr != src.myUVAttr)
return false;
306 if (myUVProjPlane != src.myUVProjPlane)
return false;
307 if (myGroup != src.myGroup)
return false;
308 if (mySeparatorEdges != src.mySeparatorEdges)
return false;
309 if (myUseIslandAttr != src.myUseIslandAttr)
return false;
310 if (myIslandAttr != src.myIslandAttr)
return false;
311 if (myUseTargetAttr != src.myUseTargetAttr)
return false;
312 if (myTargetAttr != src.myTargetAttr)
return false;
313 if (myTargetOverrides != src.myTargetOverrides)
return false;
314 if (myUseIslandScaleAttr != src.myUseIslandScaleAttr)
return false;
315 if (myIslandScaleAttr != src.myIslandScaleAttr)
return false;
316 if (myScaleOverrides != src.myScaleOverrides)
return false;
317 if (myUseIslandOffsetAttr != src.myUseIslandOffsetAttr)
return false;
318 if (myIslandOffsetAttr != src.myIslandOffsetAttr)
return false;
319 if (myOffsetOverrides != src.myOffsetOverrides)
return false;
320 if (myCorrectAreas != src.myCorrectAreas)
return false;
321 if (myAxisAlignment != src.myAxisAlignment)
return false;
322 if (myScaling != src.myScaling)
return false;
323 if (myScale != src.myScale)
return false;
324 if (myRotationStep != src.myRotationStep)
return false;
325 if (myCircleDivs != src.myCircleDivs)
return false;
326 if (myPackBetween != src.myPackBetween)
return false;
327 if (myPackInCavities != src.myPackInCavities)
return false;
328 if (myPadding != src.myPadding)
return false;
329 if (myPadBoundaries != src.myPadBoundaries)
return false;
330 if (myExpandPadding != src.myExpandPadding)
return false;
331 if (myIterations != src.myIterations)
return false;
332 if (myResolution != src.myResolution)
return false;
333 if (myCustomResolution != src.myCustomResolution)
return false;
334 if (myConnectivityTolerance != src.myConnectivityTolerance)
return false;
335 if (myScaleTolerance != src.myScaleTolerance)
return false;
336 if (myRandSeed != src.myRandSeed)
return false;
337 if (myTargetType != src.myTargetType)
return false;
338 if (myUseDefaultTarget != src.myUseDefaultTarget)
return false;
339 if (myDefaultTarget != src.myDefaultTarget)
return false;
340 if (myUseDefaultUdimTarget != src.myUseDefaultUdimTarget)
return false;
341 if (myDefaultUdimTarget != src.myDefaultUdimTarget)
return false;
342 if (myRects != src.myRects)
return false;
343 if (myTileSize != src.myTileSize)
return false;
344 if (myNumColumns != src.myNumColumns)
return false;
345 if (myStartingUdim != src.myStartingUdim)
return false;
346 if (myTargetUVAttr != src.myTargetUVAttr)
return false;
347 if (myTargetProjPlane != src.myTargetProjPlane)
return false;
348 if (myTargetGroup != src.myTargetGroup)
return false;
349 if (myTargetSeparatorEdges != src.myTargetSeparatorEdges)
return false;
350 if (myUseTargetIslandAttr != src.myUseTargetIslandAttr)
return false;
351 if (myTargetIslandAttr != src.myTargetIslandAttr)
return false;
352 if (myStackIslands != src.myStackIslands)
return false;
353 if (myStackMirrored != src.myStackMirrored)
return false;
354 if (myStackOnNonGroup != src.myStackOnNonGroup)
return false;
355 if (myStackingLengthTolerance != src.myStackingLengthTolerance)
return false;
356 if (myGenerateNonpackedPolys != src.myGenerateNonpackedPolys)
return false;
357 if (myNonpackedPolys != src.myNonpackedPolys)
return false;
358 if (myGenerateIslandAttr != src.myGenerateIslandAttr)
return false;
359 if (myOutputIslandAttr != src.myOutputIslandAttr)
return false;
360 if (myGenerateTargetAttr != src.myGenerateTargetAttr)
return false;
361 if (myOutputTargetAttr != src.myOutputTargetAttr)
return false;
381 myUVAttr =
"uv"_UTsh;
383 graph->
evalOpParm(myUVAttr, nodeidx,
"uvattrib", time, 0);
386 graph->
evalOpParm(myUVProjPlane, nodeidx,
"projplane", time, 0);
389 graph->
evalOpParm(myGroup, nodeidx,
"group", time, 0);
390 mySeparatorEdges =
""_UTsh;
392 graph->
evalOpParm(mySeparatorEdges, nodeidx,
"separatoredges", time, 0);
393 myUseIslandAttr =
false;
395 graph->
evalOpParm(myUseIslandAttr, nodeidx,
"useislandattr", time, 0);
396 myIslandAttr =
"island"_UTsh;
397 if (
true && ( (
true&&!(((getUseIslandAttr()==0)))) ) )
398 graph->
evalOpParm(myIslandAttr, nodeidx,
"islandattr", time, 0);
399 myUseTargetAttr =
false;
401 graph->
evalOpParm(myUseTargetAttr, nodeidx,
"usetargetattr", time, 0);
402 myTargetAttr =
"udim"_UTsh;
403 if (
true && ( (
true&&!(((getUseTargetAttr()==0)))) ) )
404 graph->
evalOpParm(myTargetAttr, nodeidx,
"targetattr", time, 0);
405 myTargetOverrides =
""_UTsh;
407 graph->
evalOpParm(myTargetOverrides, nodeidx,
"targetoverrides", time, 0);
408 myUseIslandScaleAttr =
false;
410 graph->
evalOpParm(myUseIslandScaleAttr, nodeidx,
"useislandscaleattr", time, 0);
411 myIslandScaleAttr =
"iscale"_UTsh;
412 if (
true && ( (
true&&!(((getUseIslandScaleAttr()==0)))) ) )
413 graph->
evalOpParm(myIslandScaleAttr, nodeidx,
"islandscaleattr", time, 0);
414 myScaleOverrides =
""_UTsh;
416 graph->
evalOpParm(myScaleOverrides, nodeidx,
"scaleoverrides", time, 0);
417 myUseIslandOffsetAttr =
false;
419 graph->
evalOpParm(myUseIslandOffsetAttr, nodeidx,
"useislandsetattr", time, 0);
420 myIslandOffsetAttr =
"ioffset"_UTsh;
421 if (
true && ( (
true&&!(((getUseIslandOffsetAttr()==0)))) ) )
422 graph->
evalOpParm(myIslandOffsetAttr, nodeidx,
"islandoffsetattr", time, 0);
423 myOffsetOverrides =
""_UTsh;
425 graph->
evalOpParm(myOffsetOverrides, nodeidx,
"offsetoverrides", time, 0);
426 myCorrectAreas =
false;
428 graph->
evalOpParm(myCorrectAreas, nodeidx,
"correctareas", time, 0);
431 graph->
evalOpParm(myAxisAlignment, nodeidx,
"axisalignislands", time, 0);
434 graph->
evalOpParm(myScaling, nodeidx,
"scaling", time, 0);
436 if (
true && ( (
true&&!(((
int64(getScaling())!=1)))) ) )
437 graph->
evalOpParm(myScale, nodeidx,
"scale", time, 0);
440 graph->
evalOpParm(myRotationStep, nodeidx,
"rotstep", time, 0);
442 if (
true && ( (
true&&!(((
int64(getRotationStep())!=7)))) ) )
443 graph->
evalOpParm(myCircleDivs, nodeidx,
"circledivs", time, 0);
444 myPackBetween =
false;
446 graph->
evalOpParm(myPackBetween, nodeidx,
"packbetween", time, 0);
447 myPackInCavities =
true;
449 graph->
evalOpParm(myPackInCavities, nodeidx,
"packincavities", time, 0);
452 graph->
evalOpParm(myPadding, nodeidx,
"padding", time, 0);
453 myPadBoundaries =
false;
455 graph->
evalOpParm(myPadBoundaries, nodeidx,
"paddingboundary", time, 0);
456 myExpandPadding =
false;
458 graph->
evalOpParm(myExpandPadding, nodeidx,
"expandpadding", time, 0);
461 graph->
evalOpParm(myIterations, nodeidx,
"iterations", time, 0);
464 graph->
evalOpParm(myResolution, nodeidx,
"resolution", time, 0);
465 myCustomResolution = 1024;
466 if (
true && ( (
true&&!(((
int64(getResolution())!=5)))) ) )
467 graph->
evalOpParm(myCustomResolution, nodeidx,
"customresolution", time, 0);
468 myConnectivityTolerance = 1e-05;
470 graph->
evalOpParm(myConnectivityTolerance, nodeidx,
"uvtolerance", time, 0);
471 myScaleTolerance = 0.005;
472 if (
true && ( (
true&&!(((
int64(getScaling())==1)))) ) )
473 graph->
evalOpParm(myScaleTolerance, nodeidx,
"scaletolerance", time, 0);
475 if (
true && ( (
true&&!(((
int64(getIterations())==1)))) ) )
476 graph->
evalOpParm(myRandSeed, nodeidx,
"randseed", time, 0);
479 graph->
evalOpParm(myTargetType, nodeidx,
"targettype", time, 0);
480 myUseDefaultTarget =
false;
481 if (
true && ( (
true&&!(((
int64(getTargetType())==1)))) ) )
482 graph->
evalOpParm(myUseDefaultTarget, nodeidx,
"usedefaulttarget", time, 0);
484 if (
true && ( (
true&&!(((getUseDefaultTarget()==0))||((
int64(getTargetType())==1)))) ) )
485 graph->
evalOpParm(myDefaultTarget, nodeidx,
"defaulttarget", time, 0);
486 myUseDefaultUdimTarget =
false;
487 if (
true && ( (
true&&!(((
int64(getTargetType())!=1)))) ) )
488 graph->
evalOpParm(myUseDefaultUdimTarget, nodeidx,
"usedefaultudimtarget", time, 0);
489 myDefaultUdimTarget = 1001;
490 if (
true && ( (
true&&!(((getUseDefaultUdimTarget()==0))||((
int64(getTargetType())!=1)))) ) )
491 graph->
evalOpParm(myDefaultUdimTarget, nodeidx,
"defaultudimtarget", time, 0);
492 if (
true && ( (!(((
int64(getTargetType())!=0))||((
int64(getTargetType())!=0)))) ) )
495 graph->
evalOpParm(length, nodeidx,
"rects", time, 0);
496 if (length < 0) length = 0;
497 myRects.setSize(length);
504 auto && _curentry = myRects(i);
506 _curentry.rect_use =
true;
507 if (
true && ( (!(((
int64(getTargetType())!=0))||((
int64(getTargetType())!=0)))) ) && ( (
true&&!(((
int64(getTargetType())!=0)))) ) )
508 graph->
evalOpParmInst(_curentry.rect_use, nodeidx,
"rect_use#", parmidx, offsets, time, 0, 2-1);
510 if (
true && ( (!(((
int64(getTargetType())!=0))||((
int64(getTargetType())!=0)))) ) && ( (
true&&!(((
int64(getTargetType())!=0))||((_curentry.rect_use==0)))) ) )
511 graph->
evalOpParmInst(_curentry.rect_center, nodeidx,
"rect_center#", parmidx, offsets, time, 0, 2-1);
513 if (
true && ( (!(((
int64(getTargetType())!=0))||((
int64(getTargetType())!=0)))) ) && ( (
true&&!(((
int64(getTargetType())!=0))||((_curentry.rect_use==0)))) ) )
514 graph->
evalOpParmInst(_curentry.rect_size, nodeidx,
"rect_size#", parmidx, offsets, time, 0, 2-1);
521 if (
true && ( (
true&&!(((
int64(getTargetType())!=1)))) ) )
522 graph->
evalOpParm(myTileSize, nodeidx,
"tilesize", time, 0);
524 if (
true && ( (
true&&!(((
int64(getTargetType())!=1)))) ) )
525 graph->
evalOpParm(myNumColumns, nodeidx,
"numcolumns", time, 0);
526 myStartingUdim = 1001;
527 if (
true && ( (
true&&!(((
int64(getTargetType())!=1)))) ) )
528 graph->
evalOpParm(myStartingUdim, nodeidx,
"startingudim", time, 0);
529 myTargetUVAttr =
"uv"_UTsh;
530 if (
true && ( (
true&&!(((
int64(getTargetType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0)))) ) )
531 graph->
evalOpParm(myTargetUVAttr, nodeidx,
"targetuvattrib", time, 0);
532 myTargetProjPlane = 0;
533 if (
true && ( (
true&&!(((
int64(getTargetType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0)))) ) )
534 graph->
evalOpParm(myTargetProjPlane, nodeidx,
"targetprojplane", time, 0);
535 myTargetGroup =
""_UTsh;
536 if (
true && ( (
true&&!((((graph->
getInput(nodeidx,1)>=0)==0))||((
int64(getTargetType())!=2)))) ) )
537 graph->
evalOpParm(myTargetGroup, nodeidx,
"targetgroup", time, 0);
538 myTargetSeparatorEdges =
""_UTsh;
539 if (
true && ( (
true&&!(((
int64(getTargetType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0))||((
int64(getTargetType())!=2)))) ) )
540 graph->
evalOpParm(myTargetSeparatorEdges, nodeidx,
"targetseparatoredges", time, 0);
541 myUseTargetIslandAttr =
false;
542 if (
true && ( (
true&&!(((
int64(getTargetType())!=2))||(((graph->
getInput(nodeidx,1)>=0)==0))||((
int64(getTargetType())!=2)))) ) )
543 graph->
evalOpParm(myUseTargetIslandAttr, nodeidx,
"usetargetislandattr", time, 0);
544 myTargetIslandAttr =
"targetisland"_UTsh;
545 if (
true && ( (
true&&!(((
int64(getTargetType())!=2))||((getUseTargetIslandAttr()==0))||((
int64(getTargetType())!=2)))) ) )
546 graph->
evalOpParm(myTargetIslandAttr, nodeidx,
"targetislandattr", time, 0);
547 myStackIslands =
false;
549 graph->
evalOpParm(myStackIslands, nodeidx,
"stackislands", time, 0);
550 myStackMirrored =
false;
551 if (
true && ( (
true&&!(((getStackIslands()==0)))) ) )
552 graph->
evalOpParm(myStackMirrored, nodeidx,
"invertedoverlays", time, 0);
553 myStackOnNonGroup =
false;
554 if (
true && ( (
true&&!(((getStackIslands()==0)))) ) )
555 graph->
evalOpParm(myStackOnNonGroup, nodeidx,
"stackonnongroup", time, 0);
556 myStackingLengthTolerance = 0.02;
557 if (
true && ( (
true&&!(((getStackIslands()==0)))) ) )
558 graph->
evalOpParm(myStackingLengthTolerance, nodeidx,
"overlaytolerance", time, 0);
559 myGenerateNonpackedPolys =
false;
561 graph->
evalOpParm(myGenerateNonpackedPolys, nodeidx,
"generatenonpackedpoly", time, 0);
562 myNonpackedPolys =
"nonpacked"_UTsh;
563 if (
true && ( (
true&&!(((getGenerateNonpackedPolys()==0)))) ) )
564 graph->
evalOpParm(myNonpackedPolys, nodeidx,
"nonpackedpolys", time, 0);
565 myGenerateIslandAttr =
false;
567 graph->
evalOpParm(myGenerateIslandAttr, nodeidx,
"generateislandattr", time, 0);
568 myOutputIslandAttr =
"island"_UTsh;
569 if (
true && ( (
true&&!(((getGenerateIslandAttr()==0)))) ) )
570 graph->
evalOpParm(myOutputIslandAttr, nodeidx,
"outputislandattr", time, 0);
571 myGenerateTargetAttr =
false;
573 graph->
evalOpParm(myGenerateTargetAttr, nodeidx,
"generatetargetattr", time, 0);
574 myOutputTargetAttr =
"target"_UTsh;
575 if (
true && ( (
true&&!(((getGenerateTargetAttr()==0)))) ) )
576 graph->
evalOpParm(myOutputTargetAttr, nodeidx,
"outputtargetattr", time, 0);
592 template <
typename T>
599 if (idx.
size() != instance.
size()+1)
604 coerceValue(value, myUVAttr);
607 coerceValue(value, myUVProjPlane);
610 coerceValue(value, myGroup);
613 coerceValue(value, mySeparatorEdges);
616 coerceValue(value, myUseIslandAttr);
619 coerceValue(value, myIslandAttr);
622 coerceValue(value, myUseTargetAttr);
625 coerceValue(value, myTargetAttr);
628 coerceValue(value, myTargetOverrides);
631 coerceValue(value, myUseIslandScaleAttr);
634 coerceValue(value, myIslandScaleAttr);
637 coerceValue(value, myScaleOverrides);
640 coerceValue(value, myUseIslandOffsetAttr);
643 coerceValue(value, myIslandOffsetAttr);
646 coerceValue(value, myOffsetOverrides);
649 coerceValue(value, myCorrectAreas);
652 coerceValue(value, myAxisAlignment);
655 coerceValue(value, myScaling);
658 coerceValue(value, myScale);
661 coerceValue(value, myRotationStep);
664 coerceValue(value, myCircleDivs);
667 coerceValue(value, myPackBetween);
670 coerceValue(value, myPackInCavities);
673 coerceValue(value, myPadding);
676 coerceValue(value, myPadBoundaries);
679 coerceValue(value, myExpandPadding);
682 coerceValue(value, myIterations);
685 coerceValue(value, myResolution);
688 coerceValue(value, myCustomResolution);
691 coerceValue(value, myConnectivityTolerance);
694 coerceValue(value, myScaleTolerance);
697 coerceValue(value, myRandSeed);
700 coerceValue(value, myTargetType);
703 coerceValue(value, myUseDefaultTarget);
706 coerceValue(value, myDefaultTarget);
709 coerceValue(value, myUseDefaultUdimTarget);
712 coerceValue(value, myDefaultUdimTarget);
716 coerceValue(value, myRects.entries());
717 else if (instance[0] < myRects.entries())
719 auto && _data = myRects(instance[0]);
723 coerceValue(value, _data.rect_use);
726 coerceValue(value, _data.rect_center);
729 coerceValue(value, _data.rect_size);
736 coerceValue(value, myTileSize);
739 coerceValue(value, myNumColumns);
742 coerceValue(value, myStartingUdim);
745 coerceValue(value, myTargetUVAttr);
748 coerceValue(value, myTargetProjPlane);
751 coerceValue(value, myTargetGroup);
754 coerceValue(value, myTargetSeparatorEdges);
757 coerceValue(value, myUseTargetIslandAttr);
760 coerceValue(value, myTargetIslandAttr);
763 coerceValue(value, myStackIslands);
766 coerceValue(value, myStackMirrored);
769 coerceValue(value, myStackOnNonGroup);
772 coerceValue(value, myStackingLengthTolerance);
775 coerceValue(value, myGenerateNonpackedPolys);
778 coerceValue(value, myNonpackedPolys);
781 coerceValue(value, myGenerateIslandAttr);
784 coerceValue(value, myOutputIslandAttr);
787 coerceValue(value, myGenerateTargetAttr);
790 coerceValue(value, myOutputTargetAttr);
806 { doGetParmValue(idx, instance, value); }
808 { doGetParmValue(idx, instance, value); }
810 { doGetParmValue(idx, instance, value); }
812 { doGetParmValue(idx, instance, value); }
814 { doGetParmValue(idx, instance, value); }
816 { doGetParmValue(idx, instance, value); }
818 { doGetParmValue(idx, instance, value); }
820 { doGetParmValue(idx, instance, value); }
822 { doGetParmValue(idx, instance, value); }
824 { doGetParmValue(idx, instance, value); }
826 { doGetParmValue(idx, instance, value); }
828 template <
typename T>
835 if (idx.
size() != instance.
size()+1)
840 coerceValue(myUVAttr, ( ( value ) ));
843 coerceValue(myUVProjPlane, clampMinValue(0, clampMaxValue(2, value ) ));
846 coerceValue(myGroup, ( ( value ) ));
849 coerceValue(mySeparatorEdges, ( ( value ) ));
852 coerceValue(myUseIslandAttr, ( ( value ) ));
855 coerceValue(myIslandAttr, ( ( value ) ));
858 coerceValue(myUseTargetAttr, ( ( value ) ));
861 coerceValue(myTargetAttr, ( ( value ) ));
864 coerceValue(myTargetOverrides, ( ( value ) ));
867 coerceValue(myUseIslandScaleAttr, ( ( value ) ));
870 coerceValue(myIslandScaleAttr, ( ( value ) ));
873 coerceValue(myScaleOverrides, ( ( value ) ));
876 coerceValue(myUseIslandOffsetAttr, ( ( value ) ));
879 coerceValue(myIslandOffsetAttr, ( ( value ) ));
882 coerceValue(myOffsetOverrides, ( ( value ) ));
885 coerceValue(myCorrectAreas, ( ( value ) ));
888 coerceValue(myAxisAlignment, clampMinValue(0, clampMaxValue(2, value ) ));
891 coerceValue(myScaling, clampMinValue(0, clampMaxValue(1, value ) ));
894 coerceValue(myScale, clampMinValue(0, ( value ) ));
897 coerceValue(myRotationStep, clampMinValue(0, clampMaxValue(7, value ) ));
900 coerceValue(myCircleDivs, clampMinValue(1, ( value ) ));
903 coerceValue(myPackBetween, ( ( value ) ));
906 coerceValue(myPackInCavities, ( ( value ) ));
909 coerceValue(myPadding, clampMinValue(0, ( value ) ));
912 coerceValue(myPadBoundaries, ( ( value ) ));
915 coerceValue(myExpandPadding, ( ( value ) ));
918 coerceValue(myIterations, clampMinValue(1, ( value ) ));
921 coerceValue(myResolution, clampMinValue(0, clampMaxValue(5, value ) ));
924 coerceValue(myCustomResolution, clampMinValue(128, clampMaxValue(32768, value ) ));
927 coerceValue(myConnectivityTolerance, clampMinValue(0, ( value ) ));
930 coerceValue(myScaleTolerance, ( clampMaxValue(-15, value ) ));
933 coerceValue(myRandSeed, clampMinValue(0, ( value ) ));
936 coerceValue(myTargetType, clampMinValue(0, clampMaxValue(2, value ) ));
939 coerceValue(myUseDefaultTarget, ( ( value ) ));
942 coerceValue(myDefaultTarget, clampMinValue(0, ( value ) ));
945 coerceValue(myUseDefaultUdimTarget, ( ( value ) ));
948 coerceValue(myDefaultUdimTarget, clampMinValue(1001, ( value ) ));
954 coerceValue(newsize, value);
955 if (newsize < 0) newsize = 0;
956 myRects.setSize(newsize);
962 myRects.setSizeIfNeeded(instance[0]+1);
963 auto && _data = myRects(instance[0]);
967 coerceValue(_data.rect_use, value);
970 coerceValue(_data.rect_center, value);
973 coerceValue(_data.rect_size, value);
980 coerceValue(myTileSize, ( clampMaxValue(-5, value ) ));
983 coerceValue(myNumColumns, clampMinValue(1, ( value ) ));
986 coerceValue(myStartingUdim, ( ( value ) ));
989 coerceValue(myTargetUVAttr, ( ( value ) ));
992 coerceValue(myTargetProjPlane, clampMinValue(0, clampMaxValue(2, value ) ));
995 coerceValue(myTargetGroup, ( ( value ) ));
998 coerceValue(myTargetSeparatorEdges, ( ( value ) ));
1001 coerceValue(myUseTargetIslandAttr, ( ( value ) ));
1004 coerceValue(myTargetIslandAttr, ( ( value ) ));
1007 coerceValue(myStackIslands, ( ( value ) ));
1010 coerceValue(myStackMirrored, ( ( value ) ));
1013 coerceValue(myStackOnNonGroup, ( ( value ) ));
1016 coerceValue(myStackingLengthTolerance, clampMinValue(0, ( value ) ));
1019 coerceValue(myGenerateNonpackedPolys, ( ( value ) ));
1022 coerceValue(myNonpackedPolys, ( ( value ) ));
1025 coerceValue(myGenerateIslandAttr, ( ( value ) ));
1028 coerceValue(myOutputIslandAttr, ( ( value ) ));
1031 coerceValue(myGenerateTargetAttr, ( ( value ) ));
1034 coerceValue(myOutputTargetAttr, ( ( value ) ));
1041 { doSetParmValue(idx, instance, value); }
1043 { doSetParmValue(idx, instance, value); }
1045 { doSetParmValue(idx, instance, value); }
1047 { doSetParmValue(idx, instance, value); }
1049 { doSetParmValue(idx, instance, value); }
1051 { doSetParmValue(idx, instance, value); }
1053 { doSetParmValue(idx, instance, value); }
1055 { doSetParmValue(idx, instance, value); }
1057 { doSetParmValue(idx, instance, value); }
1059 { doSetParmValue(idx, instance, value); }
1061 { doSetParmValue(idx, instance, value); }
1065 if (idx.
size() == 0)
1079 if (fieldnum.
size() < 1)
1081 switch (fieldnum[0])
1090 return "separatoredges";
1092 return "useislandattr";
1094 return "islandattr";
1096 return "usetargetattr";
1098 return "targetattr";
1100 return "targetoverrides";
1102 return "useislandscaleattr";
1104 return "islandscaleattr";
1106 return "scaleoverrides";
1108 return "useislandsetattr";
1110 return "islandoffsetattr";
1112 return "offsetoverrides";
1114 return "correctareas";
1116 return "axisalignislands";
1124 return "circledivs";
1126 return "packbetween";
1128 return "packincavities";
1132 return "paddingboundary";
1134 return "expandpadding";
1136 return "iterations";
1138 return "resolution";
1140 return "customresolution";
1142 return "uvtolerance";
1144 return "scaletolerance";
1148 return "targettype";
1150 return "usedefaulttarget";
1152 return "defaulttarget";
1154 return "usedefaultudimtarget";
1156 return "defaultudimtarget";
1158 if (fieldnum.
size() == 1)
1160 switch (fieldnum[1])
1165 return "rect_center#";
1167 return "rect_size#";
1174 return "numcolumns";
1176 return "startingudim";
1178 return "targetuvattrib";
1180 return "targetprojplane";
1182 return "targetgroup";
1184 return "targetseparatoredges";
1186 return "usetargetislandattr";
1188 return "targetislandattr";
1190 return "stackislands";
1192 return "invertedoverlays";
1194 return "stackonnongroup";
1196 return "overlaytolerance";
1198 return "generatenonpackedpoly";
1200 return "nonpackedpolys";
1202 return "generateislandattr";
1204 return "outputislandattr";
1206 return "generatetargetattr";
1208 return "outputtargetattr";
1216 if (fieldnum.
size() < 1)
1217 return PARM_UNSUPPORTED;
1218 switch (fieldnum[0])
1223 return PARM_INTEGER;
1229 return PARM_INTEGER;
1233 return PARM_INTEGER;
1239 return PARM_INTEGER;
1245 return PARM_INTEGER;
1251 return PARM_INTEGER;
1253 return PARM_INTEGER;
1255 return PARM_INTEGER;
1259 return PARM_INTEGER;
1261 return PARM_INTEGER;
1263 return PARM_INTEGER;
1265 return PARM_INTEGER;
1267 return PARM_INTEGER;
1269 return PARM_INTEGER;
1271 return PARM_INTEGER;
1273 return PARM_INTEGER;
1275 return PARM_INTEGER;
1277 return PARM_INTEGER;
1283 return PARM_INTEGER;
1285 return PARM_INTEGER;
1287 return PARM_INTEGER;
1289 return PARM_INTEGER;
1291 return PARM_INTEGER;
1293 return PARM_INTEGER;
1295 if (fieldnum.
size() == 1)
1296 return PARM_MULTIPARM;
1297 switch (fieldnum[1])
1300 return PARM_INTEGER;
1302 return PARM_VECTOR2;
1304 return PARM_VECTOR2;
1307 return PARM_UNSUPPORTED;
1309 return PARM_VECTOR2;
1311 return PARM_INTEGER;
1313 return PARM_INTEGER;
1317 return PARM_INTEGER;
1323 return PARM_INTEGER;
1327 return PARM_INTEGER;
1329 return PARM_INTEGER;
1331 return PARM_INTEGER;
1335 return PARM_INTEGER;
1339 return PARM_INTEGER;
1343 return PARM_INTEGER;
1348 return PARM_UNSUPPORTED;
1353 { is.
bread(&v, 1); }
1384 loadData(is, rampdata);
1402 int typelen = colon - data.
buffer();
1414 { UTwrite(os, &v); }
1416 {
int64 iv =
v; UTwrite(os, &iv); }
1418 { UTwrite<fpreal64>(os, &
v); }
1420 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
1422 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1423 UTwrite<fpreal64>(os, &v.
z()); }
1425 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1426 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
1438 if (s) s->save(ostr);
1439 result = ostr.
str();
1440 saveData(os, result);
1447 ostr << s->getDataTypeToken();
1449 s->saveBinary(ostr);
1451 result = ostr.
str();
1452 saveData(os, result);
1460 saveData(os, myUVAttr);
1461 saveData(os, myUVProjPlane);
1462 saveData(os, myGroup);
1463 saveData(os, mySeparatorEdges);
1464 saveData(os, myUseIslandAttr);
1465 saveData(os, myIslandAttr);
1466 saveData(os, myUseTargetAttr);
1467 saveData(os, myTargetAttr);
1468 saveData(os, myTargetOverrides);
1469 saveData(os, myUseIslandScaleAttr);
1470 saveData(os, myIslandScaleAttr);
1471 saveData(os, myScaleOverrides);
1472 saveData(os, myUseIslandOffsetAttr);
1473 saveData(os, myIslandOffsetAttr);
1474 saveData(os, myOffsetOverrides);
1475 saveData(os, myCorrectAreas);
1476 saveData(os, myAxisAlignment);
1477 saveData(os, myScaling);
1478 saveData(os, myScale);
1479 saveData(os, myRotationStep);
1480 saveData(os, myCircleDivs);
1481 saveData(os, myPackBetween);
1482 saveData(os, myPackInCavities);
1483 saveData(os, myPadding);
1484 saveData(os, myPadBoundaries);
1485 saveData(os, myExpandPadding);
1486 saveData(os, myIterations);
1487 saveData(os, myResolution);
1488 saveData(os, myCustomResolution);
1489 saveData(os, myConnectivityTolerance);
1490 saveData(os, myScaleTolerance);
1491 saveData(os, myRandSeed);
1492 saveData(os, myTargetType);
1493 saveData(os, myUseDefaultTarget);
1494 saveData(os, myDefaultTarget);
1495 saveData(os, myUseDefaultUdimTarget);
1496 saveData(os, myDefaultUdimTarget);
1499 UTwrite(os, &length);
1502 auto && _curentry = myRects(i);
1504 saveData(os, _curentry.rect_use);
1505 saveData(os, _curentry.rect_center);
1506 saveData(os, _curentry.rect_size);
1510 saveData(os, myTileSize);
1511 saveData(os, myNumColumns);
1512 saveData(os, myStartingUdim);
1513 saveData(os, myTargetUVAttr);
1514 saveData(os, myTargetProjPlane);
1515 saveData(os, myTargetGroup);
1516 saveData(os, myTargetSeparatorEdges);
1517 saveData(os, myUseTargetIslandAttr);
1518 saveData(os, myTargetIslandAttr);
1519 saveData(os, myStackIslands);
1520 saveData(os, myStackMirrored);
1521 saveData(os, myStackOnNonGroup);
1522 saveData(os, myStackingLengthTolerance);
1523 saveData(os, myGenerateNonpackedPolys);
1524 saveData(os, myNonpackedPolys);
1525 saveData(os, myGenerateIslandAttr);
1526 saveData(os, myOutputIslandAttr);
1527 saveData(os, myGenerateTargetAttr);
1528 saveData(os, myOutputTargetAttr);
1541 loadData(is, myUVAttr);
1542 loadData(is, myUVProjPlane);
1543 loadData(is, myGroup);
1544 loadData(is, mySeparatorEdges);
1545 loadData(is, myUseIslandAttr);
1546 loadData(is, myIslandAttr);
1547 loadData(is, myUseTargetAttr);
1548 loadData(is, myTargetAttr);
1549 loadData(is, myTargetOverrides);
1550 loadData(is, myUseIslandScaleAttr);
1551 loadData(is, myIslandScaleAttr);
1552 loadData(is, myScaleOverrides);
1553 loadData(is, myUseIslandOffsetAttr);
1554 loadData(is, myIslandOffsetAttr);
1555 loadData(is, myOffsetOverrides);
1556 loadData(is, myCorrectAreas);
1557 loadData(is, myAxisAlignment);
1558 loadData(is, myScaling);
1559 loadData(is, myScale);
1560 loadData(is, myRotationStep);
1561 loadData(is, myCircleDivs);
1562 loadData(is, myPackBetween);
1563 loadData(is, myPackInCavities);
1564 loadData(is, myPadding);
1565 loadData(is, myPadBoundaries);
1566 loadData(is, myExpandPadding);
1567 loadData(is, myIterations);
1568 loadData(is, myResolution);
1569 loadData(is, myCustomResolution);
1570 loadData(is, myConnectivityTolerance);
1571 loadData(is, myScaleTolerance);
1572 loadData(is, myRandSeed);
1573 loadData(is, myTargetType);
1574 loadData(is, myUseDefaultTarget);
1575 loadData(is, myDefaultTarget);
1576 loadData(is, myUseDefaultUdimTarget);
1577 loadData(is, myDefaultUdimTarget);
1580 is.
read(&length, 1);
1581 myRects.setSize(length);
1584 auto && _curentry = myRects(i);
1586 loadData(is, _curentry.rect_use);
1587 loadData(is, _curentry.rect_center);
1588 loadData(is, _curentry.rect_size);
1592 loadData(is, myTileSize);
1593 loadData(is, myNumColumns);
1594 loadData(is, myStartingUdim);
1595 loadData(is, myTargetUVAttr);
1596 loadData(is, myTargetProjPlane);
1597 loadData(is, myTargetGroup);
1598 loadData(is, myTargetSeparatorEdges);
1599 loadData(is, myUseTargetIslandAttr);
1600 loadData(is, myTargetIslandAttr);
1601 loadData(is, myStackIslands);
1602 loadData(is, myStackMirrored);
1603 loadData(is, myStackOnNonGroup);
1604 loadData(is, myStackingLengthTolerance);
1605 loadData(is, myGenerateNonpackedPolys);
1606 loadData(is, myNonpackedPolys);
1607 loadData(is, myGenerateIslandAttr);
1608 loadData(is, myOutputIslandAttr);
1609 loadData(is, myGenerateTargetAttr);
1610 loadData(is, myOutputTargetAttr);
1620 if (!thissop)
return getUVAttr();
1622 OP_Utils::evalOpParm(result, thissop,
"uvattrib", cookparms.
getCookTime(), 0);
1630 if (!thissop)
return getUVProjPlane();
1632 OP_Utils::evalOpParm(result, thissop,
"projplane", cookparms.
getCookTime(), 0);
1640 if (!thissop)
return getGroup();
1642 OP_Utils::evalOpParm(result, thissop,
"group", cookparms.
getCookTime(), 0);
1650 if (!thissop)
return getSeparatorEdges();
1652 OP_Utils::evalOpParm(result, thissop,
"separatoredges", cookparms.
getCookTime(), 0);
1660 if (!thissop)
return getUseIslandAttr();
1662 OP_Utils::evalOpParm(result, thissop,
"useislandattr", cookparms.
getCookTime(), 0);
1670 if (!thissop)
return getIslandAttr();
1672 OP_Utils::evalOpParm(result, thissop,
"islandattr", cookparms.
getCookTime(), 0);
1680 if (!thissop)
return getUseTargetAttr();
1682 OP_Utils::evalOpParm(result, thissop,
"usetargetattr", cookparms.
getCookTime(), 0);
1690 if (!thissop)
return getTargetAttr();
1692 OP_Utils::evalOpParm(result, thissop,
"targetattr", cookparms.
getCookTime(), 0);
1700 if (!thissop)
return getTargetOverrides();
1702 OP_Utils::evalOpParm(result, thissop,
"targetoverrides", cookparms.
getCookTime(), 0);
1710 if (!thissop)
return getUseIslandScaleAttr();
1712 OP_Utils::evalOpParm(result, thissop,
"useislandscaleattr", cookparms.
getCookTime(), 0);
1720 if (!thissop)
return getIslandScaleAttr();
1722 OP_Utils::evalOpParm(result, thissop,
"islandscaleattr", cookparms.
getCookTime(), 0);
1730 if (!thissop)
return getScaleOverrides();
1732 OP_Utils::evalOpParm(result, thissop,
"scaleoverrides", cookparms.
getCookTime(), 0);
1740 if (!thissop)
return getUseIslandOffsetAttr();
1742 OP_Utils::evalOpParm(result, thissop,
"useislandsetattr", cookparms.
getCookTime(), 0);
1750 if (!thissop)
return getIslandOffsetAttr();
1752 OP_Utils::evalOpParm(result, thissop,
"islandoffsetattr", cookparms.
getCookTime(), 0);
1760 if (!thissop)
return getOffsetOverrides();
1762 OP_Utils::evalOpParm(result, thissop,
"offsetoverrides", cookparms.
getCookTime(), 0);
1770 if (!thissop)
return getCorrectAreas();
1772 OP_Utils::evalOpParm(result, thissop,
"correctareas", cookparms.
getCookTime(), 0);
1780 if (!thissop)
return getAxisAlignment();
1782 OP_Utils::evalOpParm(result, thissop,
"axisalignislands", cookparms.
getCookTime(), 0);
1790 if (!thissop)
return getScaling();
1792 OP_Utils::evalOpParm(result, thissop,
"scaling", cookparms.
getCookTime(), 0);
1802 OP_Utils::evalOpParm(result, thissop,
"scale", cookparms.
getCookTime(), 0);
1810 if (!thissop)
return getRotationStep();
1812 OP_Utils::evalOpParm(result, thissop,
"rotstep", cookparms.
getCookTime(), 0);
1820 if (!thissop)
return getCircleDivs();
1822 OP_Utils::evalOpParm(result, thissop,
"circledivs", cookparms.
getCookTime(), 0);
1830 if (!thissop)
return getPackBetween();
1832 OP_Utils::evalOpParm(result, thissop,
"packbetween", cookparms.
getCookTime(), 0);
1840 if (!thissop)
return getPackInCavities();
1842 OP_Utils::evalOpParm(result, thissop,
"packincavities", cookparms.
getCookTime(), 0);
1850 if (!thissop)
return getPadding();
1852 OP_Utils::evalOpParm(result, thissop,
"padding", cookparms.
getCookTime(), 0);
1860 if (!thissop)
return getPadBoundaries();
1862 OP_Utils::evalOpParm(result, thissop,
"paddingboundary", cookparms.
getCookTime(), 0);
1870 if (!thissop)
return getExpandPadding();
1872 OP_Utils::evalOpParm(result, thissop,
"expandpadding", cookparms.
getCookTime(), 0);
1880 if (!thissop)
return getIterations();
1882 OP_Utils::evalOpParm(result, thissop,
"iterations", cookparms.
getCookTime(), 0);
1890 if (!thissop)
return getResolution();
1892 OP_Utils::evalOpParm(result, thissop,
"resolution", cookparms.
getCookTime(), 0);
1900 if (!thissop)
return getCustomResolution();
1902 OP_Utils::evalOpParm(result, thissop,
"customresolution", cookparms.
getCookTime(), 0);
1910 if (!thissop)
return getConnectivityTolerance();
1912 OP_Utils::evalOpParm(result, thissop,
"uvtolerance", cookparms.
getCookTime(), 0);
1920 if (!thissop)
return getScaleTolerance();
1922 OP_Utils::evalOpParm(result, thissop,
"scaletolerance", cookparms.
getCookTime(), 0);
1930 if (!thissop)
return getRandSeed();
1932 OP_Utils::evalOpParm(result, thissop,
"randseed", cookparms.
getCookTime(), 0);
1940 if (!thissop)
return getTargetType();
1942 OP_Utils::evalOpParm(result, thissop,
"targettype", cookparms.
getCookTime(), 0);
1950 if (!thissop)
return getUseDefaultTarget();
1952 OP_Utils::evalOpParm(result, thissop,
"usedefaulttarget", cookparms.
getCookTime(), 0);
1960 if (!thissop)
return getDefaultTarget();
1962 OP_Utils::evalOpParm(result, thissop,
"defaulttarget", cookparms.
getCookTime(), 0);
1970 if (!thissop)
return getUseDefaultUdimTarget();
1972 OP_Utils::evalOpParm(result, thissop,
"usedefaultudimtarget", cookparms.
getCookTime(), 0);
1980 if (!thissop)
return getDefaultUdimTarget();
1982 OP_Utils::evalOpParm(result, thissop,
"defaultudimtarget", cookparms.
getCookTime(), 0);
1990 if (!thissop)
return getRects().entries();
1992 OP_Utils::evalOpParm(result, thissop,
"rects", cookparms.
getCookTime(), 0);
1996 {
return opinstRects_rect_use(cookparms, &_idx); }
2000 if (!thissop)
return (myRects(_idx[0]).rect_use);
2002 _parmidx[1-1] = _idx[1-1] + 0;
2005 OP_Utils::evalOpParmInst(result, thissop,
"rect_use#", _parmidx, cookparms.
getCookTime(), 0, 2-1);
2009 {
return opinstRects_rect_center(cookparms, &_idx); }
2013 if (!thissop)
return (myRects(_idx[0]).rect_center);
2015 _parmidx[1-1] = _idx[1-1] + 0;
2018 OP_Utils::evalOpParmInst(result, thissop,
"rect_center#", _parmidx, cookparms.
getCookTime(), 0, 2-1);
2022 {
return opinstRects_rect_size(cookparms, &_idx); }
2026 if (!thissop)
return (myRects(_idx[0]).rect_size);
2028 _parmidx[1-1] = _idx[1-1] + 0;
2031 OP_Utils::evalOpParmInst(result, thissop,
"rect_size#", _parmidx, cookparms.
getCookTime(), 0, 2-1);
2040 if (!thissop)
return getTileSize();
2042 OP_Utils::evalOpParm(result, thissop,
"tilesize", cookparms.
getCookTime(), 0);
2050 if (!thissop)
return getNumColumns();
2052 OP_Utils::evalOpParm(result, thissop,
"numcolumns", cookparms.
getCookTime(), 0);
2060 if (!thissop)
return getStartingUdim();
2062 OP_Utils::evalOpParm(result, thissop,
"startingudim", cookparms.
getCookTime(), 0);
2070 if (!thissop)
return getTargetUVAttr();
2072 OP_Utils::evalOpParm(result, thissop,
"targetuvattrib", cookparms.
getCookTime(), 0);
2080 if (!thissop)
return getTargetProjPlane();
2082 OP_Utils::evalOpParm(result, thissop,
"targetprojplane", cookparms.
getCookTime(), 0);
2090 if (!thissop)
return getTargetGroup();
2092 OP_Utils::evalOpParm(result, thissop,
"targetgroup", cookparms.
getCookTime(), 0);
2100 if (!thissop)
return getTargetSeparatorEdges();
2102 OP_Utils::evalOpParm(result, thissop,
"targetseparatoredges", cookparms.
getCookTime(), 0);
2110 if (!thissop)
return getUseTargetIslandAttr();
2112 OP_Utils::evalOpParm(result, thissop,
"usetargetislandattr", cookparms.
getCookTime(), 0);
2120 if (!thissop)
return getTargetIslandAttr();
2122 OP_Utils::evalOpParm(result, thissop,
"targetislandattr", cookparms.
getCookTime(), 0);
2130 if (!thissop)
return getStackIslands();
2132 OP_Utils::evalOpParm(result, thissop,
"stackislands", cookparms.
getCookTime(), 0);
2140 if (!thissop)
return getStackMirrored();
2142 OP_Utils::evalOpParm(result, thissop,
"invertedoverlays", cookparms.
getCookTime(), 0);
2150 if (!thissop)
return getStackOnNonGroup();
2152 OP_Utils::evalOpParm(result, thissop,
"stackonnongroup", cookparms.
getCookTime(), 0);
2160 if (!thissop)
return getStackingLengthTolerance();
2162 OP_Utils::evalOpParm(result, thissop,
"overlaytolerance", cookparms.
getCookTime(), 0);
2170 if (!thissop)
return getGenerateNonpackedPolys();
2172 OP_Utils::evalOpParm(result, thissop,
"generatenonpackedpoly", cookparms.
getCookTime(), 0);
2180 if (!thissop)
return getNonpackedPolys();
2182 OP_Utils::evalOpParm(result, thissop,
"nonpackedpolys", cookparms.
getCookTime(), 0);
2190 if (!thissop)
return getGenerateIslandAttr();
2192 OP_Utils::evalOpParm(result, thissop,
"generateislandattr", cookparms.
getCookTime(), 0);
2200 if (!thissop)
return getOutputIslandAttr();
2202 OP_Utils::evalOpParm(result, thissop,
"outputislandattr", cookparms.
getCookTime(), 0);
2210 if (!thissop)
return getGenerateTargetAttr();
2212 OP_Utils::evalOpParm(result, thissop,
"generatetargetattr", cookparms.
getCookTime(), 0);
2220 if (!thissop)
return getOutputTargetAttr();
2222 OP_Utils::evalOpParm(result, thissop,
"outputtargetattr", cookparms.
getCookTime(), 0);
2228 int64 myUVProjPlane;
2231 bool myUseIslandAttr;
2233 bool myUseTargetAttr;
2236 bool myUseIslandScaleAttr;
2239 bool myUseIslandOffsetAttr;
2242 bool myCorrectAreas;
2243 int64 myAxisAlignment;
2246 int64 myRotationStep;
2249 bool myPackInCavities;
2251 bool myPadBoundaries;
2252 bool myExpandPadding;
2255 int64 myCustomResolution;
2260 bool myUseDefaultTarget;
2261 int64 myDefaultTarget;
2262 bool myUseDefaultUdimTarget;
2263 int64 myDefaultUdimTarget;
2267 int64 myStartingUdim;
2269 int64 myTargetProjPlane;
2272 bool myUseTargetIslandAttr;
2274 bool myStackIslands;
2275 bool myStackMirrored;
2276 bool myStackOnNonGroup;
2277 fpreal64 myStackingLengthTolerance;
2278 bool myGenerateNonpackedPolys;
2280 bool myGenerateIslandAttr;
2282 bool myGenerateTargetAttr;
void setIslandScaleAttr(const UT_StringHolder &val)
bool opRects_rect_use(const SOP_NodeVerb::CookParms &cookparms, int _idx) const
void setStackOnNonGroup(bool val)
TargetType getTargetType() const
bool getCorrectAreas() const
void loadFromOpSubclass(const LoadParms &loadparms) override
UT_Vector2D opRects_rect_size(const SOP_NodeVerb::CookParms &cookparms, int _idx) const
void setUVProjPlane(UVProjPlane val)
void setPackBetween(bool val)
fpreal64 getScale() const
GLenum GLuint GLenum GLsizei const GLchar * buf
void setStackingLengthTolerance(fpreal64 val)
bool opGenerateTargetAttr(const SOP_NodeVerb::CookParms &cookparms) const
void setTargetAttr(const UT_StringHolder &val)
const UT_StringHolder & getTargetUVAttr() const
void setGenerateTargetAttr(bool val)
SOP_Node * getNode() const
const UT_StringHolder & getTargetIslandAttr() const
void setTargetType(TargetType val)
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix3D &value) const override
void getNestParmValue(TempIndex idx, TempIndex instance, exint &value) const override
UT_StringHolder opScaleOverrides(const SOP_NodeVerb::CookParms &cookparms) const
void setStartingUdim(int64 val)
UT_Vector2D opinstRects_rect_size(const SOP_NodeVerb::CookParms &cookparms, const int *_idx) const
exint bread(int32 *buffer, exint asize=1)
GT_API const UT_StringHolder time
constexpr SYS_FORCE_INLINE T & y() noexcept
bool getPackInCavities() const
const UT_StringHolder & getUVAttr() const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix4D &value) const override
UT_Vector2T< fpreal64 > UT_Vector2D
static void saveData(std::ostream &os, fpreal64 v)
const UT_StringHolder & getIslandScaleAttr() const
bool operator!=(const Rects &src) const
void setTargetOverrides(const UT_StringHolder &val)
bool opStackOnNonGroup(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opTargetSeparatorEdges(const SOP_NodeVerb::CookParms &cookparms) const
bool operator!=(const SOP_UVLayout_3_0Parms &src) const
void setScale(fpreal64 val)
void setOutputIslandAttr(const UT_StringHolder &val)
bool opUseIslandOffsetAttr(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector3D &value) const override
const OP_Context & context() const
void setScaling(Scaling val)
bool opPadBoundaries(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & z() noexcept
void setRotationStep(RotationStep val)
static void loadData(UT_IStream &is, UT_Matrix2D &v)
fpreal64 opConnectivityTolerance(const SOP_NodeVerb::CookParms &cookparms) const
const UT_Array< Rects > & getRects() const
bool opCorrectAreas(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_StringHolder s)
void setDefaultTarget(int64 val)
SYS_FORCE_INLINE const char * buffer() const
fpreal64 getStackingLengthTolerance() const
GLuint GLsizei GLsizei * length
bool getUseTargetIslandAttr() const
void setIterations(int64 val)
void setPackInCavities(bool val)
RotationStep getRotationStep() const
static void saveData(std::ostream &os, PRM_DataItemHandle s)
An output stream object that owns its own string buffer storage.
static void loadData(UT_IStream &is, int64 &v)
UT_Vector2D opinstRects_rect_center(const SOP_NodeVerb::CookParms &cookparms, const int *_idx) const
void setNumColumns(int64 val)
UT_Vector2D getTileSize() const
const char * getNestParmName(TempIndex fieldnum) const override
**But if you need a result
int64 getIterations() const
static void loadData(UT_IStream &is, UT_Vector2I &v)
UVProjPlane opUVProjPlane(const SOP_NodeVerb::CookParms &cookparms) const
int64 opDefaultUdimTarget(const SOP_NodeVerb::CookParms &cookparms) const
void setCustomResolution(int64 val)
UT_StringHolder opTargetIslandAttr(const SOP_NodeVerb::CookParms &cookparms) const
bool opStackMirrored(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, UT_Matrix3D &v)
static PRM_DataItemHandle parseBinary(const char *type, UT_IStream &is)
const UT_StringHolder & getTargetSeparatorEdges() const
bool getUseIslandScaleAttr() const
const UT_WorkBuffer & str()
Returns a read-only reference to the underlying UT_WorkBuffer.
bool opUseDefaultUdimTarget(const SOP_NodeVerb::CookParms &cookparms) const
int64 opIterations(const SOP_NodeVerb::CookParms &cookparms) const
void doGetParmValue(TempIndex idx, TempIndex instance, T &value) const
const UT_StringHolder & getSeparatorEdges() const
bool opinstRects_rect_use(const SOP_NodeVerb::CookParms &cookparms, const int *_idx) const
bool getUseDefaultTarget() const
void setGenerateNonpackedPolys(bool val)
void setPadding(int64 val)
virtual NodeIdx getInput(NodeIdx idx, int input, bool markused=false) const =0
bool opStackIslands(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & x() noexcept
void setDefaultUdimTarget(int64 val)
static void loadData(UT_IStream &is, UT_Vector3I &v)
RotationStep opRotationStep(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_StringHolder &value) const override
GLuint GLsizei const GLuint const GLintptr * offsets
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector2D &value) const override
SYS_FORCE_INLINE UT_StringHolder getToken(UVProjPlane enum_value)
bool getGenerateNonpackedPolys() const
constexpr SYS_FORCE_INLINE T & x() noexcept
bool getStackIslands() const
bool getUseTargetAttr() const
bool opUseTargetAttr(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opGroup(const SOP_NodeVerb::CookParms &cookparms) const
bool operator==(const BaseDimensions< T > &a, const BaseDimensions< Y > &b)
void setGenerateIslandAttr(bool val)
static void loadData(UT_IStream &is, fpreal64 &v)
int64 opNumColumns(const SOP_NodeVerb::CookParms &cookparms) const
const UT_StringHolder & getTargetGroup() const
void setCircleDivs(int64 val)
int64 opPadding(const SOP_NodeVerb::CookParms &cookparms) const
void setConnectivityTolerance(fpreal64 val)
UT_StringHolder opSeparatorEdges(const SOP_NodeVerb::CookParms &cookparms) const
void setNestParmValue(TempIndex idx, TempIndex instance, const fpreal &value) override
void setResolution(Resolution val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix3D &value) override
void setExpandPadding(bool val)
static void loadData(UT_IStream &is, UT_Vector4D &v)
void setScaleTolerance(fpreal64 val)
bool opExpandPadding(const SOP_NodeVerb::CookParms &cookparms) const
AxisAlignment opAxisAlignment(const SOP_NodeVerb::CookParms &cookparms) const
void setRandSeed(int64 val)
SYS_FORCE_INLINE const char * buffer() const
UT_StringHolder opTargetUVAttr(const SOP_NodeVerb::CookParms &cookparms) const
std::shared_ptr< T > UT_SharedPtr
Wrapper around std::shared_ptr.
bool opPackInCavities(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & z() noexcept
static void loadData(UT_IStream &is, bool &v)
static void saveData(std::ostream &os, bool v)
fpreal64 opScale(const SOP_NodeVerb::CookParms &cookparms) const
UT_Vector2D opTileSize(const SOP_NodeVerb::CookParms &cookparms) const
bool load(UT_IStream &is)
static void saveData(std::ostream &os, UT_Vector2D v)
UT_Vector2D opRects_rect_center(const SOP_NodeVerb::CookParms &cookparms, int _idx) const
void setUseIslandScaleAttr(bool val)
exint read(bool *array, exint sz=1)
const OP_GraphProxy * graph() const
UT_StringHolder opIslandScaleAttr(const SOP_NodeVerb::CookParms &cookparms) const
exint getNestNumParms(TempIndex idx) const override
void setStackIslands(bool val)
UT_StringHolder opNonpackedPolys(const SOP_NodeVerb::CookParms &cookparms) const
void setUseIslandOffsetAttr(bool val)
bool opGenerateNonpackedPolys(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Vector4D &value) const override
void setIslandAttr(const UT_StringHolder &val)
virtual void evalOpParmInst(int64 &v, NodeIdx node, const char *parmname, const int *inst, const int *offsets, fpreal time, DEP_MicroNode *depnode, int nestlevel=1) const =0
int64 getNumColumns() const
UT_StringHolder opIslandOffsetAttr(const SOP_NodeVerb::CookParms &cookparms) const
void buildFromOp(const OP_GraphProxy *graph, exint nodeidx, fpreal time, DEP_MicroNode *depnode)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector3D &value) override
const UT_StringHolder & getOutputTargetAttr() const
int64 getCustomResolution() const
int64 getDefaultUdimTarget() const
void setGroup(const UT_StringHolder &val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_StringHolder &value) override
void setNestParmValue(TempIndex idx, TempIndex instance, const exint &value) override
bool getUseIslandOffsetAttr() const
TargetType opTargetType(const SOP_NodeVerb::CookParms &cookparms) const
static void loadData(UT_IStream &is, PRM_DataItemHandle &v)
UT_StringHolder opIslandAttr(const SOP_NodeVerb::CookParms &cookparms) const
UVProjPlane getUVProjPlane() const
Resolution getResolution() const
bool opUseTargetIslandAttr(const SOP_NodeVerb::CookParms &cookparms) const
virtual void evalOpParm(int64 &v, NodeIdx node, const char *parmname, fpreal time, DEP_MicroNode *depnode) const =0
const UT_StringHolder & getOffsetOverrides() const
UT_StringHolder opOutputIslandAttr(const SOP_NodeVerb::CookParms &cookparms) const
TargetProjPlane getTargetProjPlane() const
bool getGenerateIslandAttr() const
static void saveData(std::ostream &os, UT_Vector3D v)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix2D &value) override
static void saveData(std::ostream &os, UT_Vector4D v)
SYS_FORCE_INLINE void strcat(const char *src)
void saveBinary(std::ostream &os) const
Save string to binary stream.
bool getUseDefaultUdimTarget() const
const UT_StringHolder & getGroup() const
static void loadData(UT_IStream &is, UT_SharedPtr< UT_Ramp > &v)
void setTargetUVAttr(const UT_StringHolder &val)
bool operator==(const Rects &src) const
int64 getStartingUdim() const
void save(std::ostream &os) const
GT_API const UT_StringHolder version
void setTileSize(UT_Vector2D val)
bool opPackBetween(const SOP_NodeVerb::CookParms &cookparms) const
bool opUseDefaultTarget(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opTargetGroup(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_Matrix3D v)
int64 opRandSeed(const SOP_NodeVerb::CookParms &cookparms) const
void getNestParmValue(TempIndex idx, TempIndex instance, PRM_DataItemHandle &value) const override
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector2D &value) override
exint entries() const
Alias of size(). size() is preferred.
static void loadData(UT_IStream &is, UT_Matrix4D &v)
bool opUseIslandScaleAttr(const SOP_NodeVerb::CookParms &cookparms) const
bool getUseIslandAttr() const
Scaling getScaling() const
void setUseDefaultTarget(bool val)
int64 getDefaultTarget() const
fpreal64 opScaleTolerance(const SOP_NodeVerb::CookParms &cookparms) const
static void saveData(std::ostream &os, UT_SharedPtr< UT_Ramp > s)
static void loadData(UT_IStream &is, UT_Vector2D &v)
void setOutputTargetAttr(const UT_StringHolder &val)
int int appendSprintf(const char *fmt,...) SYS_PRINTF_CHECK_ATTRIBUTE(2
bool getPackBetween() const
exint opRects(const SOP_NodeVerb::CookParms &cookparms) const
UT_StringHolder opTargetOverrides(const SOP_NodeVerb::CookParms &cookparms) const
void setStackMirrored(bool val)
const UT_StringHolder & getIslandOffsetAttr() const
const UT_StringHolder & getOutputIslandAttr() const
const UT_StringHolder & getNonpackedPolys() const
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_SharedPtr< UT_Ramp > &value) override
UT_StringHolder opOffsetOverrides(const SOP_NodeVerb::CookParms &cookparms) const
void copyFrom(const OP_NodeParms *src) override
void setUseTargetAttr(bool val)
static void saveData(std::ostream &os, UT_Matrix2D v)
UT_StringHolder opOutputTargetAttr(const SOP_NodeVerb::CookParms &cookparms) const
int64 getCircleDivs() const
DEP_MicroNode * depnode() const
void setRects(const UT_Array< Rects > &val)
LeafData & operator=(const LeafData &)=delete
Utility class for containing a color ramp.
void getNestParmValue(TempIndex idx, TempIndex instance, fpreal &value) const override
void setNonpackedPolys(const UT_StringHolder &val)
int64 opStartingUdim(const SOP_NodeVerb::CookParms &cookparms) const
bool getGenerateTargetAttr() const
bool isParmColorRamp(exint idx) const override
static void loadData(UT_IStream &is, UT_Vector3D &v)
constexpr SYS_FORCE_INLINE T & w() noexcept
SYS_FORCE_INLINE void append(char character)
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 setScaleOverrides(const UT_StringHolder &val)
fpreal64 getConnectivityTolerance() const
static void loadData(UT_IStream &is, UT_StringHolder &v)
const UT_StringHolder & getTargetOverrides() const
void setTargetSeparatorEdges(const UT_StringHolder &val)
fpreal getCookTime() const
fpreal64 opStackingLengthTolerance(const SOP_NodeVerb::CookParms &cookparms) const
ParmType getNestParmType(TempIndex fieldnum) const override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_Matrix2D &value) const override
void getNestParmValue(TempIndex idx, TempIndex instance, UT_SharedPtr< UT_Ramp > &value) const override
void setSeparatorEdges(const UT_StringHolder &val)
const UT_StringHolder & getIslandAttr() const
void setCorrectAreas(bool val)
AxisAlignment getAxisAlignment() const
void setPadBoundaries(bool val)
static void saveData(std::ostream &os, UT_Matrix4D v)
UT_StringHolder opUVAttr(const SOP_NodeVerb::CookParms &cookparms) const
const char * findChar(int c) const
void setTargetProjPlane(TargetProjPlane val)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Matrix4D &value) override
bool getStackOnNonGroup() const
void setNestParmValue(TempIndex idx, TempIndex instance, const PRM_DataItemHandle &value) override
Resolution opResolution(const SOP_NodeVerb::CookParms &cookparms) const
void setIslandOffsetAttr(const UT_StringHolder &val)
bool opUseIslandAttr(const SOP_NodeVerb::CookParms &cookparms) const
bool opGenerateIslandAttr(const SOP_NodeVerb::CookParms &cookparms) const
void setOffsetOverrides(const UT_StringHolder &val)
void setUVAttr(const UT_StringHolder &val)
static void saveData(std::ostream &os, int64 v)
bool getPadBoundaries() const
Scaling opScaling(const SOP_NodeVerb::CookParms &cookparms) const
int64 opDefaultTarget(const SOP_NodeVerb::CookParms &cookparms) const
constexpr SYS_FORCE_INLINE T & y() noexcept
static void loadData(UT_IStream &is, UT_Vector4I &v)
void setNestParmValue(TempIndex idx, TempIndex instance, const UT_Vector4D &value) override
UT_StringHolder opTargetAttr(const SOP_NodeVerb::CookParms &cookparms) const
TargetProjPlane opTargetProjPlane(const SOP_NodeVerb::CookParms &cookparms) const
bool getExpandPadding() const
void setTargetIslandAttr(const UT_StringHolder &val)
const UT_StringHolder & getTargetAttr() const
void doSetParmValue(TempIndex idx, TempIndex instance, const T &value)
UT_SharedPtr< const PRM_DataItem > PRM_DataItemHandle
constexpr SYS_FORCE_INLINE T & y() noexcept
int64 getRandSeed() const
void setAxisAlignment(AxisAlignment val)
int64 opCustomResolution(const SOP_NodeVerb::CookParms &cookparms) const
void setUseTargetIslandAttr(bool val)
fpreal64 getScaleTolerance() const
SYS_FORCE_INLINE bool isstring() const
int64 opCircleDivs(const SOP_NodeVerb::CookParms &cookparms) const
void setUseIslandAttr(bool val)
bool getStackMirrored() const
const UT_StringHolder & getScaleOverrides() const
SYS_FORCE_INLINE void strncpy(const char *src, exint maxlen)
UT_StringHolder createString(const UT_Array< Rects > &list) const
bool operator==(const SOP_UVLayout_3_0Parms &src) const
void setUseDefaultUdimTarget(bool val)
constexpr SYS_FORCE_INLINE T & x() noexcept
void setTargetGroup(const UT_StringHolder &val)