23 namespace SOP_Sweep_2_0Enums
127 myCurveGroup =
""_UTsh;
128 myCrossSectionGroup =
""_UTsh;
135 myReverseCrossSections =
false;
136 myStretchAroundTurns =
true;
137 myMaxStretchAroundTurns = 10;
140 myTriangularPoles =
false;
143 myAddEndCapsGroup =
false;
144 myEndCapsGroup =
"endcaps"_UTsh;
145 myApplyScale =
false;
153 myRollAttrib =
"roll"_UTsh;
158 myYawAttrib =
"yaw"_UTsh;
159 myApplyPitch =
false;
163 myPitchAttrib =
"pitch"_UTsh;
165 myCrossSectionAttrib =
"variant"_UTsh;
167 myUnrollClosedRowCol =
false;
168 mySwapRowCol =
false;
169 myCloseIfNoCurveInput =
false;
171 myContinuousClosed =
true;
172 myExtrapolateEndTangents =
false;
173 myTransformByAttribs =
true;
174 myComputeUVs =
false;
175 myOverrideExistingUVs =
false;
176 myLengthWeightedUVs =
true;
178 myNormalizeV =
false;
181 myUseMeshEdgeLengths =
true;
182 myPropScalePerCurve =
true;
185 myAttribsFromBackbone =
"* ^P ^N ^up ^pscale ^scale ^orient ^rot ^pivot ^trans ^transform"_UTsh;
186 myAttribsFromCrossSection =
"*"_UTsh;
187 myAddPointRow =
false;
188 myPtRowAttrib =
"ptrow"_UTsh;
189 myAddPointCol =
false;
190 myPtColAttrib =
"ptcol"_UTsh;
191 myAddPrimRow =
false;
192 myPrimRowAttrib =
"primrow"_UTsh;
193 myAddPrimCol =
false;
194 myPrimColAttrib =
"primcol"_UTsh;
195 myAddCrossSectionNum =
false;
196 myCrossSectionNumAttrib =
"crossnum"_UTsh;
197 myAddCurveNum =
false;
198 myCurveNumAttrib =
"curvenum"_UTsh;
200 myUpVectorAtStart =
true;
201 myUseEndUpVector =
false;
202 myUpVectorAttrib =
"start_up"_UTsh;
203 myEndUpVectorAttrib =
"end_up"_UTsh;
218 if (myCurveGroup != src.myCurveGroup)
return false;
219 if (myCrossSectionGroup != src.myCrossSectionGroup)
return false;
220 if (mySurfaceShape != src.mySurfaceShape)
return false;
221 if (mySurfaceType != src.mySurfaceType)
return false;
222 if (myScale != src.myScale)
return false;
223 if (myCols != src.myCols)
return false;
224 if (myRadius != src.myRadius)
return false;
225 if (myWidth != src.myWidth)
return false;
226 if (myReverseCrossSections != src.myReverseCrossSections)
return false;
227 if (myStretchAroundTurns != src.myStretchAroundTurns)
return false;
228 if (myMaxStretchAroundTurns != src.myMaxStretchAroundTurns)
return false;
229 if (myEndCapType != src.myEndCapType)
return false;
230 if (myCapDivs != src.myCapDivs)
return false;
231 if (myTriangularPoles != src.myTriangularPoles)
return false;
232 if (myCapScale != src.myCapScale)
return false;
233 if (myCapRoundness != src.myCapRoundness)
return false;
234 if (myAddEndCapsGroup != src.myAddEndCapsGroup)
return false;
235 if (myEndCapsGroup != src.myEndCapsGroup)
return false;
236 if (myApplyScale != src.myApplyScale)
return false;
237 if (myScaleRamp != src.myScaleRamp)
238 {
if (!myScaleRamp || !src.myScaleRamp || !(*myScaleRamp == *src.myScaleRamp))
return false; }
239 if (myROrd != src.myROrd)
return false;
240 if (myApplyRoll != src.myApplyRoll)
return false;
241 if (myRoll != src.myRoll)
return false;
242 if (myFullTwists != src.myFullTwists)
return false;
243 if (myIncRoll != src.myIncRoll)
return false;
244 if (myRollPer != src.myRollPer)
return false;
245 if (myRollAttrib != src.myRollAttrib)
return false;
246 if (myApplyYaw != src.myApplyYaw)
return false;
247 if (myYaw != src.myYaw)
return false;
248 if (myIncYaw != src.myIncYaw)
return false;
249 if (myYawPer != src.myYawPer)
return false;
250 if (myYawAttrib != src.myYawAttrib)
return false;
251 if (myApplyPitch != src.myApplyPitch)
return false;
252 if (myPitch != src.myPitch)
return false;
253 if (myIncPitch != src.myIncPitch)
return false;
254 if (myPitchPer != src.myPitchPer)
return false;
255 if (myPitchAttrib != src.myPitchAttrib)
return false;
256 if (myCopyOrder != src.myCopyOrder)
return false;
257 if (myCrossSectionAttrib != src.myCrossSectionAttrib)
return false;
258 if (myPrimType != src.myPrimType)
return false;
259 if (myUnrollClosedRowCol != src.myUnrollClosedRowCol)
return false;
260 if (mySwapRowCol != src.mySwapRowCol)
return false;
261 if (myCloseIfNoCurveInput != src.myCloseIfNoCurveInput)
return false;
262 if (myTangentType != src.myTangentType)
return false;
263 if (myContinuousClosed != src.myContinuousClosed)
return false;
264 if (myExtrapolateEndTangents != src.myExtrapolateEndTangents)
return false;
265 if (myTransformByAttribs != src.myTransformByAttribs)
return false;
266 if (myComputeUVs != src.myComputeUVs)
return false;
267 if (myOverrideExistingUVs != src.myOverrideExistingUVs)
return false;
268 if (myLengthWeightedUVs != src.myLengthWeightedUVs)
return false;
269 if (myNormalizeU != src.myNormalizeU)
return false;
270 if (myNormalizeV != src.myNormalizeV)
return false;
271 if (myFlipU != src.myFlipU)
return false;
272 if (myUVScale != src.myUVScale)
return false;
273 if (myUseMeshEdgeLengths != src.myUseMeshEdgeLengths)
return false;
274 if (myPropScalePerCurve != src.myPropScalePerCurve)
return false;
275 if (myWrapU != src.myWrapU)
return false;
276 if (myWrapV != src.myWrapV)
return false;
277 if (myAttribsFromBackbone != src.myAttribsFromBackbone)
return false;
278 if (myAttribsFromCrossSection != src.myAttribsFromCrossSection)
return false;
279 if (myAddPointRow != src.myAddPointRow)
return false;
280 if (myPtRowAttrib != src.myPtRowAttrib)
return false;
281 if (myAddPointCol != src.myAddPointCol)
return false;
282 if (myPtColAttrib != src.myPtColAttrib)
return false;
283 if (myAddPrimRow != src.myAddPrimRow)
return false;
284 if (myPrimRowAttrib != src.myPrimRowAttrib)
return false;
285 if (myAddPrimCol != src.myAddPrimCol)
return false;
286 if (myPrimColAttrib != src.myPrimColAttrib)
return false;
287 if (myAddCrossSectionNum != src.myAddCrossSectionNum)
return false;
288 if (myCrossSectionNumAttrib != src.myCrossSectionNumAttrib)
return false;
289 if (myAddCurveNum != src.myAddCurveNum)
return false;
290 if (myCurveNumAttrib != src.myCurveNumAttrib)
return false;
291 if (myUpVectorType != src.myUpVectorType)
return false;
292 if (myUpVectorAtStart != src.myUpVectorAtStart)
return false;
293 if (myUseEndUpVector != src.myUseEndUpVector)
return false;
294 if (myUpVectorAttrib != src.myUpVectorAttrib)
return false;
295 if (myEndUpVectorAttrib != src.myEndUpVectorAttrib)
return false;
296 if (myUpVector != src.myUpVector)
return false;
297 if (myEndUpVector != src.myEndUpVector)
return false;
321 myCurveGroup =
""_UTsh;
323 graph->
evalOpParm(myCurveGroup, nodeidx,
"curvegroup", time, 0);
324 myCrossSectionGroup =
""_UTsh;
326 graph->
evalOpParm(myCrossSectionGroup, nodeidx,
"crosssectiongroup", time, 0);
329 graph->
evalOpParm(mySurfaceShape, nodeidx,
"surfaceshape", time, 0);
332 graph->
evalOpParm(mySurfaceType, nodeidx,
"surfacetype", time, 0);
334 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=0))||((
int64(getSurfaceShape())!=0)))) ) )
335 graph->
evalOpParm(myScale, nodeidx,
"scale", time, 0);
337 if (
true && ( (
true&&!(((
int64(getSurfaceShape())==0))||((
int64(getSurfaceShape())==0)))) ) )
338 graph->
evalOpParm(myCols, nodeidx,
"cols", time, 0);
340 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=1))||((
int64(getSurfaceShape())!=1)))) ) )
341 graph->
evalOpParm(myRadius, nodeidx,
"radius", time, 0);
343 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=3)&&(
int64(getSurfaceShape())!=2))||((
int64(getSurfaceShape())!=3)&&(
int64(getSurfaceShape())!=2)))) ) )
344 graph->
evalOpParm(myWidth, nodeidx,
"width", time, 0);
345 myReverseCrossSections =
false;
347 graph->
evalOpParm(myReverseCrossSections, nodeidx,
"reversecrosssections", time, 0);
348 myStretchAroundTurns =
true;
350 graph->
evalOpParm(myStretchAroundTurns, nodeidx,
"stretcharoundturns", time, 0);
351 myMaxStretchAroundTurns = 10;
352 if (
true && ( (
true&&!(((getStretchAroundTurns()==0)))) ) )
353 graph->
evalOpParm(myMaxStretchAroundTurns, nodeidx,
"maxstretcharoundturns", time, 0);
356 graph->
evalOpParm(myEndCapType, nodeidx,
"endcaptype", time, 0);
358 if (
true && ( (
true&&!(((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3))||((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3)))) ) )
359 graph->
evalOpParm(myCapDivs, nodeidx,
"capdivs", time, 0);
360 myTriangularPoles =
false;
361 if (
true && ( (
true&&!(((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3))||((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3)))) ) )
362 graph->
evalOpParm(myTriangularPoles, nodeidx,
"triangularpoles", time, 0);
364 if (
true && ( (
true&&!(((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3))||((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3)))) ) )
365 graph->
evalOpParm(myCapScale, nodeidx,
"capscale", time, 0);
367 if (
true && ( (
true&&!(((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3))||((
int64(getEndCapType())==0))||((
int64(getEndCapType())==1))||((
int64(getEndCapType())==3)))) ) )
368 graph->
evalOpParm(myCapRoundness, nodeidx,
"caproundness", time, 0);
369 myAddEndCapsGroup =
false;
371 graph->
evalOpParm(myAddEndCapsGroup, nodeidx,
"addendcapsgroup", time, 0);
372 myEndCapsGroup =
"endcaps"_UTsh;
373 if (
true && ( (
true&&!(((getAddEndCapsGroup()==0)))) ) )
374 graph->
evalOpParm(myEndCapsGroup, nodeidx,
"endcapsgroup", time, 0);
375 myApplyScale =
false;
377 graph->
evalOpParm(myApplyScale, nodeidx,
"applyscale", time, 0);
379 if (
true && ( (
true&&!(((getApplyScale()==0)))) ) )
380 graph->
evalOpParm(myScaleRamp, nodeidx,
"scaleramp", time, 0);
383 graph->
evalOpParm(myROrd, nodeidx,
"rOrd", time, 0);
386 graph->
evalOpParm(myApplyRoll, nodeidx,
"applyroll", time, 0);
388 if (
true && ( (
true&&!(((getApplyRoll()==0)))) ) )
389 graph->
evalOpParm(myRoll, nodeidx,
"roll", time, 0);
391 if (
true && ( (
true&&!(((getApplyRoll()==0)))) ) )
392 graph->
evalOpParm(myFullTwists, nodeidx,
"fulltwists", time, 0);
394 if (
true && ( (
true&&!(((getApplyRoll()==0)))) ) )
395 graph->
evalOpParm(myIncRoll, nodeidx,
"incroll", time, 0);
397 if (
true && ( (
true&&!(((getApplyRoll()==0)))) ) )
398 graph->
evalOpParm(myRollPer, nodeidx,
"rollper", time, 0);
399 myRollAttrib =
"roll"_UTsh;
400 if (
true && ( (
true&&!(((getApplyRoll()==0))||((getApplyRoll()==1)&&(
int64(getRollPer())!=2))||((getApplyRoll()==0))||((getApplyRoll()==1)&&(
int64(getRollPer())!=2)))) ) )
401 graph->
evalOpParm(myRollAttrib, nodeidx,
"rollattrib", time, 0);
404 graph->
evalOpParm(myApplyYaw, nodeidx,
"applyyaw", time, 0);
406 if (
true && ( (
true&&!(((getApplyYaw()==0)))) ) )
407 graph->
evalOpParm(myYaw, nodeidx,
"yaw", time, 0);
409 if (
true && ( (
true&&!(((getApplyYaw()==0)))) ) )
410 graph->
evalOpParm(myIncYaw, nodeidx,
"incyaw", time, 0);
412 if (
true && ( (
true&&!(((getApplyYaw()==0)))) ) )
413 graph->
evalOpParm(myYawPer, nodeidx,
"yawper", time, 0);
414 myYawAttrib =
"yaw"_UTsh;
415 if (
true && ( (
true&&!(((getApplyYaw()==0))||((getApplyYaw()==1)&&(
int64(getYawPer())!=2))||((getApplyYaw()==0))||((getApplyYaw()==1)&&(
int64(getYawPer())!=2)))) ) )
416 graph->
evalOpParm(myYawAttrib, nodeidx,
"yawattrib", time, 0);
417 myApplyPitch =
false;
419 graph->
evalOpParm(myApplyPitch, nodeidx,
"applypitch", time, 0);
421 if (
true && ( (
true&&!(((getApplyPitch()==0)))) ) )
422 graph->
evalOpParm(myPitch, nodeidx,
"pitch", time, 0);
424 if (
true && ( (
true&&!(((getApplyPitch()==0)))) ) )
425 graph->
evalOpParm(myIncPitch, nodeidx,
"incpitch", time, 0);
427 if (
true && ( (
true&&!(((getApplyPitch()==0)))) ) )
428 graph->
evalOpParm(myPitchPer, nodeidx,
"pitchper", time, 0);
429 myPitchAttrib =
"pitch"_UTsh;
430 if (
true && ( (
true&&!(((getApplyPitch()==0))||((getApplyPitch()==1)&&(
int64(getPitchPer())!=2))||((getApplyPitch()==0))||((getApplyPitch()==1)&&(
int64(getPitchPer())!=2)))) ) )
431 graph->
evalOpParm(myPitchAttrib, nodeidx,
"pitchattrib", time, 0);
433 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=0)))) ) )
434 graph->
evalOpParm(myCopyOrder, nodeidx,
"copyorder", time, 0);
435 myCrossSectionAttrib =
"variant"_UTsh;
436 if (
true && ( (
true&&!(((
int64(getSurfaceShape())!=0))||((
int64(getCopyOrder())!=4))||((
int64(getSurfaceShape())!=0))||((
int64(getCopyOrder())!=4)))) ) )
437 graph->
evalOpParm(myCrossSectionAttrib, nodeidx,
"crosssectionattrib", time, 0);
439 if (
true && ( (
true&&!(((
int64(getSurfaceType())==0)))) ) )
440 graph->
evalOpParm(myPrimType, nodeidx,
"primtype", time, 0);
441 myUnrollClosedRowCol =
false;
442 if (
true && ( (
true&&!(((
int64(getSurfaceType())==0)))) ) )
443 graph->
evalOpParm(myUnrollClosedRowCol, nodeidx,
"unrollclosedrowcol", time, 0);
444 mySwapRowCol =
false;
446 graph->
evalOpParm(mySwapRowCol, nodeidx,
"swaprowcol", time, 0);
447 myCloseIfNoCurveInput =
false;
448 if (
true && ( (
true&&!(((
int64(getSurfaceType())==0))||((
int64(getSurfaceType())==1))||(((graph->
getInput(nodeidx,0)>=0)!=0)))) ) )
449 graph->
evalOpParm(myCloseIfNoCurveInput, nodeidx,
"closeifnocurveinput", time, 0);
452 graph->
evalOpParm(myTangentType, nodeidx,
"tangenttype", time, 0);
453 myContinuousClosed =
true;
454 if (
true && ( (
true&&!(((
int64(getTangentType())==4)))) ) )
455 graph->
evalOpParm(myContinuousClosed, nodeidx,
"continuousclosed", time, 0);
456 myExtrapolateEndTangents =
false;
457 if (
true && ( (
true&&!(((
int64(getTangentType())==4)))) ) )
458 graph->
evalOpParm(myExtrapolateEndTangents, nodeidx,
"extrapolateendtangents", time, 0);
459 myTransformByAttribs =
true;
461 graph->
evalOpParm(myTransformByAttribs, nodeidx,
"transformbyattribs", time, 0);
462 myComputeUVs =
false;
464 graph->
evalOpParm(myComputeUVs, nodeidx,
"computeuvs", time, 0);
465 myOverrideExistingUVs =
false;
466 if (
true && ( (
true&&!(((getComputeUVs()==0)))) ) )
467 graph->
evalOpParm(myOverrideExistingUVs, nodeidx,
"overrideexistinguvs", time, 0);
468 myLengthWeightedUVs =
true;
469 if (
true && ( (
true&&!(((getComputeUVs()==0)))) ) )
470 graph->
evalOpParm(myLengthWeightedUVs, nodeidx,
"lengthweighteduvs", time, 0);
472 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0)))) ) )
473 graph->
evalOpParm(myNormalizeU, nodeidx,
"normalizeu", time, 0);
474 myNormalizeV =
false;
475 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0)))) ) )
476 graph->
evalOpParm(myNormalizeV, nodeidx,
"normalizev", time, 0);
478 if (
true && ( (
true&&!(((getComputeUVs()==0)))) ) )
479 graph->
evalOpParm(myFlipU, nodeidx,
"flipu", time, 0);
481 if (
true && ( (
true&&!(((getComputeUVs()==0)))) ) )
482 graph->
evalOpParm(myUVScale, nodeidx,
"uvscale", time, 0);
483 myUseMeshEdgeLengths =
true;
484 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0)))) ) )
485 graph->
evalOpParm(myUseMeshEdgeLengths, nodeidx,
"usemeshedgelengths", time, 0);
486 myPropScalePerCurve =
true;
487 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0))||((getNormalizeU()!=1))||((getNormalizeV()!=0)))) ) )
488 graph->
evalOpParm(myPropScalePerCurve, nodeidx,
"propscalepercurve", time, 0);
490 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0))||((getNormalizeU()==1)))) ) )
491 graph->
evalOpParm(myWrapU, nodeidx,
"wrapu", time, 0);
493 if (
true && ( (
true&&!(((getComputeUVs()==0))||((getLengthWeightedUVs()==0))||((getNormalizeV()==1)))) ) )
494 graph->
evalOpParm(myWrapV, nodeidx,
"wrapv", time, 0);
495 myAttribsFromBackbone =
"* ^P ^N ^up ^pscale ^scale ^orient ^rot ^pivot ^trans ^transform"_UTsh;
497 graph->
evalOpParm(myAttribsFromBackbone, nodeidx,
"attribsfrombackbone", time, 0);
498 myAttribsFromCrossSection =
"*"_UTsh;
500 graph->
evalOpParm(myAttribsFromCrossSection, nodeidx,
"attribsfromcrosssection", time, 0);
501 myAddPointRow =
false;
503 graph->
evalOpParm(myAddPointRow, nodeidx,
"addptrow", time, 0);
504 myPtRowAttrib =
"ptrow"_UTsh;
505 if (
true && ( (
true&&!(((getAddPointRow()==0)))) ) )
506 graph->
evalOpParm(myPtRowAttrib, nodeidx,
"ptrowattrib", time, 0);
507 myAddPointCol =
false;
509 graph->
evalOpParm(myAddPointCol, nodeidx,
"addptcol", time, 0);
510 myPtColAttrib =
"ptcol"_UTsh;
511 if (
true && ( (
true&&!(((getAddPointCol()==0)))) ) )
512 graph->
evalOpParm(myPtColAttrib, nodeidx,
"ptcolattrib", time, 0);
513 myAddPrimRow =
false;
515 graph->
evalOpParm(myAddPrimRow, nodeidx,
"addprimrow", time, 0);
516 myPrimRowAttrib =
"primrow"_UTsh;
517 if (
true && ( (
true&&!(((getAddPrimRow()==0)))) ) )
518 graph->
evalOpParm(myPrimRowAttrib, nodeidx,
"primrowattrib", time, 0);
519 myAddPrimCol =
false;
521 graph->
evalOpParm(myAddPrimCol, nodeidx,
"addprimcol", time, 0);
522 myPrimColAttrib =
"primcol"_UTsh;
523 if (
true && ( (
true&&!(((getAddPrimCol()==0)))) ) )
524 graph->
evalOpParm(myPrimColAttrib, nodeidx,
"primcolattrib", time, 0);
525 myAddCrossSectionNum =
false;
527 graph->
evalOpParm(myAddCrossSectionNum, nodeidx,
"addcrosssectionnum", time, 0);
528 myCrossSectionNumAttrib =
"crossnum"_UTsh;
529 if (
true && ( (
true&&!(((getAddCrossSectionNum()==0)))) ) )
530 graph->
evalOpParm(myCrossSectionNumAttrib, nodeidx,
"crosssectionnumattrib", time, 0);
531 myAddCurveNum =
false;
533 graph->
evalOpParm(myAddCurveNum, nodeidx,
"addcurvenum", time, 0);
534 myCurveNumAttrib =
"curvenum"_UTsh;
535 if (
true && ( (
true&&!(((getAddCurveNum()==0)))) ) )
536 graph->
evalOpParm(myCurveNumAttrib, nodeidx,
"curvenumattrib", time, 0);
538 if (
true && ( (
true&&!(((
int64(getTangentType())==4)))) ) )
539 graph->
evalOpParm(myUpVectorType, nodeidx,
"upvectortype", time, 0);
540 myUpVectorAtStart =
true;
541 if (
true && ( (
true&&!(((
int64(getTangentType())==4)))) ) )
542 graph->
evalOpParm(myUpVectorAtStart, nodeidx,
"upvectoratstart", time, 0);
543 myUseEndUpVector =
false;
544 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((getUpVectorAtStart()==0)))) ) )
545 graph->
evalOpParm(myUseEndUpVector, nodeidx,
"useendupvector", time, 0);
546 myUpVectorAttrib =
"start_up"_UTsh;
547 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=4))||((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=4)))) ) )
548 graph->
evalOpParm(myUpVectorAttrib, nodeidx,
"upvectorattrib", time, 0);
549 myEndUpVectorAttrib =
"end_up"_UTsh;
550 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=4))||((getUseEndUpVector()==0))||((getUpVectorAtStart()==0))||((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=4))||((getUseEndUpVector()==0))||((getUpVectorAtStart()==0)))) ) )
551 graph->
evalOpParm(myEndUpVectorAttrib, nodeidx,
"endupvectorattrib", time, 0);
553 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=5))||((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=5)))) ) )
554 graph->
evalOpParm(myUpVector, nodeidx,
"upvector", time, 0);
556 if (
true && ( (
true&&!(((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=5))||((getUseEndUpVector()==0))||((getUpVectorAtStart()==0))||((
int64(getTangentType())==4))||((
int64(getUpVectorType())!=5))||((getUseEndUpVector()==0))||((getUpVectorAtStart()==0)))) ) )
557 graph->
evalOpParm(myEndUpVector, nodeidx,
"endupvector", time, 0);
573 template <
typename T>
580 if (idx.
size() != instance.
size()+1)
835 { doGetParmValue(idx, instance, value); }
837 { doGetParmValue(idx, instance, value); }
839 { doGetParmValue(idx, instance, value); }
841 { doGetParmValue(idx, instance, value); }
843 { doGetParmValue(idx, instance, value); }
845 { doGetParmValue(idx, instance, value); }
847 { doGetParmValue(idx, instance, value); }
849 { doGetParmValue(idx, instance, value); }
851 { doGetParmValue(idx, instance, value); }
853 { doGetParmValue(idx, instance, value); }
855 { doGetParmValue(idx, instance, value); }
857 template <
typename T>
864 if (idx.
size() != instance.
size()+1)
893 coerceValue(myReverseCrossSections, ( ( value ) ));
1004 coerceValue(myExtrapolateEndTangents, ( ( value ) ));
1013 coerceValue(myOverrideExistingUVs, ( ( value ) ));
1043 coerceValue(myAttribsFromBackbone, ( ( value ) ));
1046 coerceValue(myAttribsFromCrossSection, ( ( value ) ));
1076 coerceValue(myCrossSectionNumAttrib, ( ( value ) ));
1110 { doSetParmValue(idx, instance, value); }
1112 { doSetParmValue(idx, instance, value); }
1114 { doSetParmValue(idx, instance, value); }
1116 { doSetParmValue(idx, instance, value); }
1118 { doSetParmValue(idx, instance, value); }
1120 { doSetParmValue(idx, instance, value); }
1122 { doSetParmValue(idx, instance, value); }
1124 { doSetParmValue(idx, instance, value); }
1126 { doSetParmValue(idx, instance, value); }
1128 { doSetParmValue(idx, instance, value); }
1130 { doSetParmValue(idx, instance, value); }
1134 if (idx.
size() == 0)
1146 if (fieldnum.
size() < 1)
1148 switch (fieldnum[0])
1151 return "curvegroup";
1153 return "crosssectiongroup";
1155 return "surfaceshape";
1157 return "surfacetype";
1167 return "reversecrosssections";
1169 return "stretcharoundturns";
1171 return "maxstretcharoundturns";
1173 return "endcaptype";
1177 return "triangularpoles";
1181 return "caproundness";
1183 return "addendcapsgroup";
1185 return "endcapsgroup";
1187 return "applyscale";
1197 return "fulltwists";
1203 return "rollattrib";
1215 return "applypitch";
1223 return "pitchattrib";
1227 return "crosssectionattrib";
1231 return "unrollclosedrowcol";
1233 return "swaprowcol";
1235 return "closeifnocurveinput";
1237 return "tangenttype";
1239 return "continuousclosed";
1241 return "extrapolateendtangents";
1243 return "transformbyattribs";
1245 return "computeuvs";
1247 return "overrideexistinguvs";
1249 return "lengthweighteduvs";
1251 return "normalizeu";
1253 return "normalizev";
1259 return "usemeshedgelengths";
1261 return "propscalepercurve";
1267 return "attribsfrombackbone";
1269 return "attribsfromcrosssection";
1273 return "ptrowattrib";
1277 return "ptcolattrib";
1279 return "addprimrow";
1281 return "primrowattrib";
1283 return "addprimcol";
1285 return "primcolattrib";
1287 return "addcrosssectionnum";
1289 return "crosssectionnumattrib";
1291 return "addcurvenum";
1293 return "curvenumattrib";
1295 return "upvectortype";
1297 return "upvectoratstart";
1299 return "useendupvector";
1301 return "upvectorattrib";
1303 return "endupvectorattrib";
1307 return "endupvector";
1315 if (fieldnum.
size() < 1)
1316 return PARM_UNSUPPORTED;
1317 switch (fieldnum[0])
1484 { is.
bread(&v, 1); }
1498 {
for (
int r = 0;
r < 2;
r++)
for (
int c = 0; c < 2; c++) is.
bread<
fpreal64>(&v(
r, c), 1); }
1500 {
for (
int r = 0;
r < 3;
r++)
for (
int c = 0; c < 3; c++) is.
bread<
fpreal64>(&v(
r, c), 1); }
1502 {
for (
int r = 0;
r < 4;
r++)
for (
int c = 0; c < 4; c++) is.
bread<
fpreal64>(&v(
r, c), 1); }
1515 loadData(is, rampdata);
1533 int typelen = colon - data.
buffer();
1545 { UTwrite(os, &v); }
1547 {
int64 iv =
v; UTwrite(os, &iv); }
1549 { UTwrite<fpreal64>(os, &
v); }
1551 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y()); }
1553 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1554 UTwrite<fpreal64>(os, &v.
z()); }
1556 { UTwrite<fpreal64>(os, &v.
x()); UTwrite<fpreal64>(os, &v.
y());
1557 UTwrite<fpreal64>(os, &v.
z()); UTwrite<fpreal64>(os, &v.
w()); }
1569 if (s) s->save(ostr);
1570 result = ostr.
str();
1571 saveData(os, result);
1578 ostr << s->getDataTypeToken();
1580 s->saveBinary(ostr);
1582 result = ostr.
str();
1583 saveData(os, result);
1591 saveData(os, myCurveGroup);
1592 saveData(os, myCrossSectionGroup);
1593 saveData(os, mySurfaceShape);
1594 saveData(os, mySurfaceType);
1595 saveData(os, myScale);
1596 saveData(os, myCols);
1597 saveData(os, myRadius);
1598 saveData(os, myWidth);
1599 saveData(os, myReverseCrossSections);
1600 saveData(os, myStretchAroundTurns);
1601 saveData(os, myMaxStretchAroundTurns);
1602 saveData(os, myEndCapType);
1603 saveData(os, myCapDivs);
1604 saveData(os, myTriangularPoles);
1605 saveData(os, myCapScale);
1606 saveData(os, myCapRoundness);
1607 saveData(os, myAddEndCapsGroup);
1608 saveData(os, myEndCapsGroup);
1609 saveData(os, myApplyScale);
1610 saveData(os, myScaleRamp);
1611 saveData(os, myROrd);
1612 saveData(os, myApplyRoll);
1613 saveData(os, myRoll);
1614 saveData(os, myFullTwists);
1615 saveData(os, myIncRoll);
1616 saveData(os, myRollPer);
1617 saveData(os, myRollAttrib);
1618 saveData(os, myApplyYaw);
1619 saveData(os, myYaw);
1620 saveData(os, myIncYaw);
1621 saveData(os, myYawPer);
1622 saveData(os, myYawAttrib);
1623 saveData(os, myApplyPitch);
1624 saveData(os, myPitch);
1625 saveData(os, myIncPitch);
1626 saveData(os, myPitchPer);
1627 saveData(os, myPitchAttrib);
1628 saveData(os, myCopyOrder);
1629 saveData(os, myCrossSectionAttrib);
1630 saveData(os, myPrimType);
1631 saveData(os, myUnrollClosedRowCol);
1632 saveData(os, mySwapRowCol);
1633 saveData(os, myCloseIfNoCurveInput);
1634 saveData(os, myTangentType);
1635 saveData(os, myContinuousClosed);
1636 saveData(os, myExtrapolateEndTangents);
1637 saveData(os, myTransformByAttribs);
1638 saveData(os, myComputeUVs);
1639 saveData(os, myOverrideExistingUVs);
1640 saveData(os, myLengthWeightedUVs);
1641 saveData(os, myNormalizeU);
1642 saveData(os, myNormalizeV);
1643 saveData(os, myFlipU);
1644 saveData(os, myUVScale);
1645 saveData(os, myUseMeshEdgeLengths);
1646 saveData(os, myPropScalePerCurve);
1647 saveData(os, myWrapU);
1648 saveData(os, myWrapV);
1649 saveData(os, myAttribsFromBackbone);
1650 saveData(os, myAttribsFromCrossSection);
1651 saveData(os, myAddPointRow);
1652 saveData(os, myPtRowAttrib);
1653 saveData(os, myAddPointCol);
1654 saveData(os, myPtColAttrib);
1655 saveData(os, myAddPrimRow);
1656 saveData(os, myPrimRowAttrib);
1657 saveData(os, myAddPrimCol);
1658 saveData(os, myPrimColAttrib);
1659 saveData(os, myAddCrossSectionNum);
1660 saveData(os, myCrossSectionNumAttrib);
1661 saveData(os, myAddCurveNum);
1662 saveData(os, myCurveNumAttrib);
1663 saveData(os, myUpVectorType);
1664 saveData(os, myUpVectorAtStart);
1665 saveData(os, myUseEndUpVector);
1666 saveData(os, myUpVectorAttrib);
1667 saveData(os, myEndUpVectorAttrib);
1668 saveData(os, myUpVector);
1669 saveData(os, myEndUpVector);
1682 loadData(is, myCurveGroup);
1683 loadData(is, myCrossSectionGroup);
1684 loadData(is, mySurfaceShape);
1685 loadData(is, mySurfaceType);
1686 loadData(is, myScale);
1687 loadData(is, myCols);
1688 loadData(is, myRadius);
1689 loadData(is, myWidth);
1690 loadData(is, myReverseCrossSections);
1691 loadData(is, myStretchAroundTurns);
1692 loadData(is, myMaxStretchAroundTurns);
1693 loadData(is, myEndCapType);
1694 loadData(is, myCapDivs);
1695 loadData(is, myTriangularPoles);
1696 loadData(is, myCapScale);
1697 loadData(is, myCapRoundness);
1698 loadData(is, myAddEndCapsGroup);
1699 loadData(is, myEndCapsGroup);
1700 loadData(is, myApplyScale);
1701 loadData(is, myScaleRamp);
1702 loadData(is, myROrd);
1703 loadData(is, myApplyRoll);
1704 loadData(is, myRoll);
1705 loadData(is, myFullTwists);
1706 loadData(is, myIncRoll);
1707 loadData(is, myRollPer);
1708 loadData(is, myRollAttrib);
1709 loadData(is, myApplyYaw);
1710 loadData(is, myYaw);
1711 loadData(is, myIncYaw);
1712 loadData(is, myYawPer);
1713 loadData(is, myYawAttrib);
1714 loadData(is, myApplyPitch);
1715 loadData(is, myPitch);
1716 loadData(is, myIncPitch);
1717 loadData(is, myPitchPer);
1718 loadData(is, myPitchAttrib);
1719 loadData(is, myCopyOrder);
1720 loadData(is, myCrossSectionAttrib);
1721 loadData(is, myPrimType);
1722 loadData(is, myUnrollClosedRowCol);
1723 loadData(is, mySwapRowCol);
1724 loadData(is, myCloseIfNoCurveInput);
1725 loadData(is, myTangentType);
1726 loadData(is, myContinuousClosed);
1727 loadData(is, myExtrapolateEndTangents);
1728 loadData(is, myTransformByAttribs);
1729 loadData(is, myComputeUVs);
1730 loadData(is, myOverrideExistingUVs);
1731 loadData(is, myLengthWeightedUVs);
1732 loadData(is, myNormalizeU);
1733 loadData(is, myNormalizeV);
1734 loadData(is, myFlipU);
1735 loadData(is, myUVScale);
1736 loadData(is, myUseMeshEdgeLengths);
1737 loadData(is, myPropScalePerCurve);
1738 loadData(is, myWrapU);
1739 loadData(is, myWrapV);
1740 loadData(is, myAttribsFromBackbone);
1741 loadData(is, myAttribsFromCrossSection);
1742 loadData(is, myAddPointRow);
1743 loadData(is, myPtRowAttrib);
1744 loadData(is, myAddPointCol);
1745 loadData(is, myPtColAttrib);
1746 loadData(is, myAddPrimRow);
1747 loadData(is, myPrimRowAttrib);
1748 loadData(is, myAddPrimCol);
1749 loadData(is, myPrimColAttrib);
1750 loadData(is, myAddCrossSectionNum);
1751 loadData(is, myCrossSectionNumAttrib);
1752 loadData(is, myAddCurveNum);
1753 loadData(is, myCurveNumAttrib);
1754 loadData(is, myUpVectorType);
1755 loadData(is, myUpVectorAtStart);
1756 loadData(is, myUseEndUpVector);
1757 loadData(is, myUpVectorAttrib);
1758 loadData(is, myEndUpVectorAttrib);
1759 loadData(is, myUpVector);
1760 loadData(is, myEndUpVector);
1770 if (!thissop)
return getCurveGroup();
1772 OP_Utils::evalOpParm(result, thissop,
"curvegroup", cookparms.
getCookTime(), 0);
1780 if (!thissop)
return getCrossSectionGroup();
1782 OP_Utils::evalOpParm(result, thissop,
"crosssectiongroup", cookparms.
getCookTime(), 0);
1790 if (!thissop)
return getSurfaceShape();
1792 OP_Utils::evalOpParm(result, thissop,
"surfaceshape", cookparms.
getCookTime(), 0);
1800 if (!thissop)
return getSurfaceType();
1802 OP_Utils::evalOpParm(result, thissop,
"surfacetype", cookparms.
getCookTime(), 0);
1812 OP_Utils::evalOpParm(result, thissop,
"scale", cookparms.
getCookTime(), 0);
1820 if (!thissop)
return getCols();
1822 OP_Utils::evalOpParm(result, thissop,
"cols", cookparms.
getCookTime(), 0);
1830 if (!thissop)
return getRadius();
1832 OP_Utils::evalOpParm(result, thissop,
"radius", cookparms.
getCookTime(), 0);
1840 if (!thissop)
return getWidth();
1842 OP_Utils::evalOpParm(result, thissop,
"width", cookparms.
getCookTime(), 0);
1850 if (!thissop)
return getReverseCrossSections();
1852 OP_Utils::evalOpParm(result, thissop,
"reversecrosssections", cookparms.
getCookTime(), 0);
1860 if (!thissop)
return getStretchAroundTurns();
1862 OP_Utils::evalOpParm(result, thissop,
"stretcharoundturns", cookparms.
getCookTime(), 0);
1870 if (!thissop)
return getMaxStretchAroundTurns();
1872 OP_Utils::evalOpParm(result, thissop,
"maxstretcharoundturns", cookparms.
getCookTime(), 0);
1880 if (!thissop)
return getEndCapType();
1882 OP_Utils::evalOpParm(result, thissop,
"endcaptype", cookparms.
getCookTime(), 0);
1890 if (!thissop)
return getCapDivs();
1892 OP_Utils::evalOpParm(result, thissop,
"capdivs", cookparms.
getCookTime(), 0);
1900 if (!thissop)
return getTriangularPoles();
1902 OP_Utils::evalOpParm(result, thissop,
"triangularpoles", cookparms.
getCookTime(), 0);
1910 if (!thissop)
return getCapScale();
1912 OP_Utils::evalOpParm(result, thissop,
"capscale", cookparms.
getCookTime(), 0);
1920 if (!thissop)
return getCapRoundness();
1922 OP_Utils::evalOpParm(result, thissop,
"caproundness", cookparms.
getCookTime(), 0);
1930 if (!thissop)
return getAddEndCapsGroup();
1932 OP_Utils::evalOpParm(result, thissop,
"addendcapsgroup", cookparms.
getCookTime(), 0);
1940 if (!thissop)
return getEndCapsGroup();
1942 OP_Utils::evalOpParm(result, thissop,
"endcapsgroup", cookparms.
getCookTime(), 0);
1950 if (!thissop)
return getApplyScale();
1952 OP_Utils::evalOpParm(result, thissop,
"applyscale", cookparms.
getCookTime(), 0);
1960 if (!thissop)
return getScaleRamp();
1962 OP_Utils::evalOpParm(result, thissop,
"scaleramp", cookparms.
getCookTime(), 0);
1970 if (!thissop)
return getROrd();
1972 OP_Utils::evalOpParm(result, thissop,
"rOrd", cookparms.
getCookTime(), 0);
1973 return ROrd(result);
1980 if (!thissop)
return getApplyRoll();
1982 OP_Utils::evalOpParm(result, thissop,
"applyroll", cookparms.
getCookTime(), 0);
1990 if (!thissop)
return getRoll();
1992 OP_Utils::evalOpParm(result, thissop,
"roll", cookparms.
getCookTime(), 0);
2000 if (!thissop)
return getFullTwists();
2002 OP_Utils::evalOpParm(result, thissop,
"fulltwists", cookparms.
getCookTime(), 0);
2010 if (!thissop)
return getIncRoll();
2012 OP_Utils::evalOpParm(result, thissop,
"incroll", cookparms.
getCookTime(), 0);
2020 if (!thissop)
return getRollPer();
2022 OP_Utils::evalOpParm(result, thissop,
"rollper", cookparms.
getCookTime(), 0);
2030 if (!thissop)
return getRollAttrib();
2032 OP_Utils::evalOpParm(result, thissop,
"rollattrib", cookparms.
getCookTime(), 0);
2040 if (!thissop)
return getApplyYaw();
2042 OP_Utils::evalOpParm(result, thissop,
"applyyaw", cookparms.
getCookTime(), 0);
2050 if (!thissop)
return getYaw();
2052 OP_Utils::evalOpParm(result, thissop,
"yaw", cookparms.
getCookTime(), 0);
2060 if (!thissop)
return getIncYaw();
2062 OP_Utils::evalOpParm(result, thissop,
"incyaw", cookparms.
getCookTime(), 0);
2070 if (!thissop)
return getYawPer();
2072 OP_Utils::evalOpParm(result, thissop,
"yawper", cookparms.
getCookTime(), 0);
2080 if (!thissop)
return getYawAttrib();
2082 OP_Utils::evalOpParm(result, thissop,
"yawattrib", cookparms.
getCookTime(), 0);
2090 if (!thissop)
return getApplyPitch();
2092 OP_Utils::evalOpParm(result, thissop,
"applypitch", cookparms.
getCookTime(), 0);
2100 if (!thissop)
return getPitch();
2102 OP_Utils::evalOpParm(result, thissop,
"pitch", cookparms.
getCookTime(), 0);
2110 if (!thissop)
return getIncPitch();
2112 OP_Utils::evalOpParm(result, thissop,
"incpitch", cookparms.
getCookTime(), 0);
2120 if (!thissop)
return getPitchPer();
2122 OP_Utils::evalOpParm(result, thissop,
"pitchper", cookparms.
getCookTime(), 0);
2130 if (!thissop)
return getPitchAttrib();
2132 OP_Utils::evalOpParm(result, thissop,
"pitchattrib", cookparms.
getCookTime(), 0);
2140 if (!thissop)
return getCopyOrder();
2142 OP_Utils::evalOpParm(result, thissop,
"copyorder", cookparms.
getCookTime(), 0);
2150 if (!thissop)
return getCrossSectionAttrib();
2152 OP_Utils::evalOpParm(result, thissop,
"crosssectionattrib", cookparms.
getCookTime(), 0);
2162 OP_Utils::evalOpParm(result, thissop,
"primtype", cookparms.
getCookTime(), 0);
2170 if (!thissop)
return getUnrollClosedRowCol();
2172 OP_Utils::evalOpParm(result, thissop,
"unrollclosedrowcol", cookparms.
getCookTime(), 0);
2180 if (!thissop)
return getSwapRowCol();
2182 OP_Utils::evalOpParm(result, thissop,
"swaprowcol", cookparms.
getCookTime(), 0);
2190 if (!thissop)
return getCloseIfNoCurveInput();
2192 OP_Utils::evalOpParm(result, thissop,
"closeifnocurveinput", cookparms.
getCookTime(), 0);
2200 if (!thissop)
return getTangentType();
2202 OP_Utils::evalOpParm(result, thissop,
"tangenttype", cookparms.
getCookTime(), 0);
2210 if (!thissop)
return getContinuousClosed();
2212 OP_Utils::evalOpParm(result, thissop,
"continuousclosed", cookparms.
getCookTime(), 0);
2220 if (!thissop)
return getExtrapolateEndTangents();
2222 OP_Utils::evalOpParm(result, thissop,
"extrapolateendtangents", cookparms.
getCookTime(), 0);
2230 if (!thissop)
return getTransformByAttribs();
2232 OP_Utils::evalOpParm(result, thissop,
"transformbyattribs", cookparms.
getCookTime(), 0);
2240 if (!thissop)
return getComputeUVs();
2242 OP_Utils::evalOpParm(result, thissop,
"computeuvs", cookparms.
getCookTime(), 0);
2250 if (!thissop)
return getOverrideExistingUVs();
2252 OP_Utils::evalOpParm(result, thissop,
"overrideexistinguvs", cookparms.
getCookTime(), 0);
2260 if (!thissop)
return getLengthWeightedUVs();
2262 OP_Utils::evalOpParm(result, thissop,
"lengthweighteduvs", cookparms.
getCookTime(), 0);
2270 if (!thissop)
return getNormalizeU();
2272 OP_Utils::evalOpParm(result, thissop,
"normalizeu", cookparms.
getCookTime(), 0);
2280 if (!thissop)
return getNormalizeV();
2282 OP_Utils::evalOpParm(result, thissop,
"normalizev", cookparms.
getCookTime(), 0);
2290 if (!thissop)
return getFlipU();
2292 OP_Utils::evalOpParm(result, thissop,
"flipu", cookparms.
getCookTime(), 0);
2300 if (!thissop)
return getUVScale();
2302 OP_Utils::evalOpParm(result, thissop,
"uvscale", cookparms.
getCookTime(), 0);
2310 if (!thissop)
return getUseMeshEdgeLengths();
2312 OP_Utils::evalOpParm(result, thissop,
"usemeshedgelengths", cookparms.
getCookTime(), 0);
2320 if (!thissop)
return getPropScalePerCurve();
2322 OP_Utils::evalOpParm(result, thissop,
"propscalepercurve", cookparms.
getCookTime(), 0);
2330 if (!thissop)
return getWrapU();
2332 OP_Utils::evalOpParm(result, thissop,
"wrapu", cookparms.
getCookTime(), 0);
2340 if (!thissop)
return getWrapV();
2342 OP_Utils::evalOpParm(result, thissop,
"wrapv", cookparms.
getCookTime(), 0);
2350 if (!thissop)
return getAttribsFromBackbone();
2352 OP_Utils::evalOpParm(result, thissop,
"attribsfrombackbone", cookparms.
getCookTime(), 0);
2360 if (!thissop)
return getAttribsFromCrossSection();
2362 OP_Utils::evalOpParm(result, thissop,
"attribsfromcrosssection", cookparms.
getCookTime(), 0);
2370 if (!thissop)
return getAddPointRow();
2372 OP_Utils::evalOpParm(result, thissop,
"addptrow", cookparms.
getCookTime(), 0);
2380 if (!thissop)
return getPtRowAttrib();
2382 OP_Utils::evalOpParm(result, thissop,
"ptrowattrib", cookparms.
getCookTime(), 0);
2390 if (!thissop)
return getAddPointCol();
2392 OP_Utils::evalOpParm(result, thissop,
"addptcol", cookparms.
getCookTime(), 0);
2400 if (!thissop)
return getPtColAttrib();
2402 OP_Utils::evalOpParm(result, thissop,
"ptcolattrib", cookparms.
getCookTime(), 0);
2410 if (!thissop)
return getAddPrimRow();
2412 OP_Utils::evalOpParm(result, thissop,
"addprimrow", cookparms.
getCookTime(), 0);
2420 if (!thissop)
return getPrimRowAttrib();
2422 OP_Utils::evalOpParm(result, thissop,
"primrowattrib", cookparms.
getCookTime(), 0);
2430 if (!thissop)
return getAddPrimCol();
2432 OP_Utils::evalOpParm(result, thissop,
"addprimcol", cookparms.
getCookTime(), 0);
2440 if (!thissop)
return getPrimColAttrib();
2442 OP_Utils::evalOpParm(result, thissop,
"primcolattrib", cookparms.
getCookTime(), 0);
2450 if (!thissop)
return getAddCrossSectionNum();
2452 OP_Utils::evalOpParm(result, thissop,
"addcrosssectionnum", cookparms.
getCookTime(), 0);
2460 if (!thissop)
return getCrossSectionNumAttrib();
2462 OP_Utils::evalOpParm(result, thissop,
"crosssectionnumattrib", cookparms.
getCookTime(), 0);
2470 if (!thissop)
return getAddCurveNum();
2472 OP_Utils::evalOpParm(result, thissop,
"addcurvenum", cookparms.
getCookTime(), 0);
2480 if (!thissop)
return getCurveNumAttrib();
2482 OP_Utils::evalOpParm(result, thissop,
"curvenumattrib", cookparms.
getCookTime(), 0);
2490 if (!thissop)
return getUpVectorType();
2492 OP_Utils::evalOpParm(result, thissop,
"upvectortype", cookparms.
getCookTime(), 0);
2500 if (!thissop)
return getUpVectorAtStart();
2502 OP_Utils::evalOpParm(result, thissop,
"upvectoratstart", cookparms.
getCookTime(), 0);
2510 if (!thissop)
return getUseEndUpVector();
2512 OP_Utils::evalOpParm(result, thissop,
"useendupvector", cookparms.
getCookTime(), 0);
2520 if (!thissop)
return getUpVectorAttrib();
2522 OP_Utils::evalOpParm(result, thissop,
"upvectorattrib", cookparms.
getCookTime(), 0);
2530 if (!thissop)
return getEndUpVectorAttrib();
2532 OP_Utils::evalOpParm(result, thissop,
"endupvectorattrib", cookparms.
getCookTime(), 0);
2540 if (!thissop)
return getUpVector();
2542 OP_Utils::evalOpParm(result, thissop,
"upvector", cookparms.
getCookTime(), 0);
2550 if (!thissop)
return getEndUpVector();
2552 OP_Utils::evalOpParm(result, thissop,
"endupvector", cookparms.
getCookTime(), 0);
2559 int64 mySurfaceShape;
2560 int64 mySurfaceType;
2565 bool myReverseCrossSections;
2566 bool myStretchAroundTurns;
2570 bool myTriangularPoles;
2573 bool myAddEndCapsGroup;
2597 bool myUnrollClosedRowCol;
2599 bool myCloseIfNoCurveInput;
2600 int64 myTangentType;
2601 bool myContinuousClosed;
2602 bool myExtrapolateEndTangents;
2603 bool myTransformByAttribs;
2605 bool myOverrideExistingUVs;
2606 bool myLengthWeightedUVs;
2611 bool myUseMeshEdgeLengths;
2612 bool myPropScalePerCurve;
2625 bool myAddCrossSectionNum;
2629 int64 myUpVectorType;
2630 bool myUpVectorAtStart;
2631 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)
T clampMaxValue(fpreal maxvalue, const T &src) const
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)
T clampMinValue(fpreal minvalue, const T &src) const
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
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
void coerceValue(T &result, const S &src) 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
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
OP_NodeParms & operator=(const OP_NodeParms &)=default
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