|
|
|
@ -464,14 +464,16 @@ export class CurveTapeShape
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const SplitLength = 2;
|
|
|
|
|
const SplitLength = 4;
|
|
|
|
|
const MinSplitCount = 12;
|
|
|
|
|
const MaxSplitCount = 360;
|
|
|
|
|
function SplitCurveParams(cu: ExtureContourCurve): number[]
|
|
|
|
|
{
|
|
|
|
|
let xparams: number[] = [];
|
|
|
|
|
if (cu instanceof Circle)
|
|
|
|
|
{
|
|
|
|
|
let splitCount = cu.Radius / SplitLength;
|
|
|
|
|
splitCount = clamp(Math.floor(splitCount), 8, 40);
|
|
|
|
|
splitCount = clamp(Math.floor(splitCount), MinSplitCount, MaxSplitCount);
|
|
|
|
|
for (let i = 0; i < splitCount; i++)
|
|
|
|
|
xparams.push(i / splitCount);
|
|
|
|
|
}
|
|
|
|
@ -484,7 +486,7 @@ function SplitCurveParams(cu: ExtureContourCurve): number[]
|
|
|
|
|
{
|
|
|
|
|
let arc = cu.GetCurveAtIndex(i) as Arc;
|
|
|
|
|
let splitCount = arc.Radius / SplitLength;
|
|
|
|
|
splitCount = clamp(Math.floor(splitCount), 8, 40);
|
|
|
|
|
splitCount = clamp(Math.floor(splitCount), MinSplitCount, MaxSplitCount);
|
|
|
|
|
if (splitCount === 0) continue;
|
|
|
|
|
|
|
|
|
|
let a = Math.PI * 2 / splitCount;
|
|
|
|
|