имам три точки в 2D и искам да начертая сплайн крива, минаваща през тях. Как да изчисля средната точка (x1 и y1 както в quadTo)? искам да внедря безплатна крива като крива на denon eq
как да изчисля броя точки между три точки за чертане на крива?
Отговори (1)
За първия сегмент от кривата вероятно можете да използвате addQuadCurveToPoint
, като изберете контролна точка със същата y
стойност като втората точка (и аз избрах x
стойност по средата между двете крайни точки):
За втората част от кривата не можете да използвате четворна крива, защото имате нужда от две контролни точки (или ще трябва да я разделите на две четворни криви, което е повече караница, отколкото струва, IMHO). Затова използвайте addCurveToPoint
, използвайки стойности на y
на контролната точка, които са същата стойност като y
стойността на точката, към която се отнася контролната точка (и отново избрах x
стойности по средата между x
стойностите на двете крайни точки):
Има много пермутации на тази идея, но се надявам, че това илюстрира концепцията. Предлагам ви да започнете да си играете с UIBezierPath
и addCurveToPoint
, докато постигнете желания ефект.