/* * Copyright (C) 2015 RECRUIT LIFESTYLE CO., LTD. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package jp.co.recruit_lifestyle.android.widget.character; import android.graphics.Path; /** * @author amyu */ public class CucumberPath { public static Path getCucumberPath(float width, float[] centerPoint){ Path path = new Path(); path.moveTo(centerPoint[0] - width / 2 + 0.772f * width, centerPoint[1] - width / 2 + 0.303f * width); path.cubicTo( centerPoint[0] - width / 2 + 0.721f * width, centerPoint[1] - width / 2 + 0.2f * width, centerPoint[0] - width / 2 + 0.636f * width, centerPoint[1] - width / 2 + 0.2f * width, centerPoint[0] - width / 2 + 0.604f * width, centerPoint[1] - width / 2 + 0.2f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.596f * width, centerPoint[1] - width / 2 + 0.197f * width, centerPoint[0] - width / 2 + 0.587f * width, centerPoint[1] - width / 2 + 0.199f * width, centerPoint[0] - width / 2 + 0.581f * width, centerPoint[1] - width / 2 + 0.203f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.576f * width, centerPoint[1] - width / 2 + 0.201f * width, centerPoint[0] - width / 2 + 0.57f * width, centerPoint[1] - width / 2 + 0.199f * width, centerPoint[0] - width / 2 + 0.566f * width, centerPoint[1] - width / 2 + 0.197f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.544f * width, centerPoint[1] - width / 2 + 0.188f * width, centerPoint[0] - width / 2 + 0.5f * width, centerPoint[1] - width / 2 + 0.158f * width, centerPoint[0] - width / 2 + 0.499f * width, centerPoint[1] - width / 2 + 0.158f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.498f * width, centerPoint[1] - width / 2 + 0.157f * width, centerPoint[0] - width / 2 + 0.494f * width, centerPoint[1] - width / 2 + 0.154f * width, centerPoint[0] - width / 2 + 0.493f * width, centerPoint[1] - width / 2 + 0.151f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.493f * width, centerPoint[1] - width / 2 + 0.148f * width, centerPoint[0] - width / 2 + 0.488f * width, centerPoint[1] - width / 2 + 0.145f * width, centerPoint[0] - width / 2 + 0.486f * width, centerPoint[1] - width / 2 + 0.143f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.485f * width, centerPoint[1] - width / 2 + 0.141f * width, centerPoint[0] - width / 2 + 0.49f * width, centerPoint[1] - width / 2 + 0.118f * width, centerPoint[0] - width / 2 + 0.491f * width, centerPoint[1] - width / 2 + 0.117f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.492f * width, centerPoint[1] - width / 2 + 0.115f * width, centerPoint[0] - width / 2 + 0.5f * width, centerPoint[1] - width / 2 + 0.105f * width, centerPoint[0] - width / 2 + 0.5f * width, centerPoint[1] - width / 2 + 0.105f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.5f * width, centerPoint[1] - width / 2 + 0.105f * width, centerPoint[0] - width / 2 + 0.501f * width, centerPoint[1] - width / 2 + 0.104f * width, centerPoint[0] - width / 2 + 0.501f * width, centerPoint[1] - width / 2 + 0.104f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.501f * width, centerPoint[1] - width / 2 + 0.104f * width, centerPoint[0] - width / 2 + 0.508f * width, centerPoint[1] - width / 2 + 0.118f * width, centerPoint[0] - width / 2 + 0.508f * width, centerPoint[1] - width / 2 + 0.118f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.508f * width, centerPoint[1] - width / 2 + 0.118f * width, centerPoint[0] - width / 2 + 0.507f * width, centerPoint[1] - width / 2 + 0.11f * width, centerPoint[0] - width / 2 + 0.507f * width, centerPoint[1] - width / 2 + 0.11f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.514f * width, centerPoint[1] - width / 2 + 0.119f * width, centerPoint[0] - width / 2 + 0.521f * width, centerPoint[1] - width / 2 + 0.132f * width, centerPoint[0] - width / 2 + 0.522f * width, centerPoint[1] - width / 2 + 0.14f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.525f * width, centerPoint[1] - width / 2 + 0.137f * width, centerPoint[0] - width / 2 + 0.52f * width, centerPoint[1] - width / 2 + 0.12f * width, centerPoint[0] - width / 2 + 0.515f * width, centerPoint[1] - width / 2 + 0.105f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.522f * width, centerPoint[1] - width / 2 + 0.117f * width, centerPoint[0] - width / 2 + 0.526f * width, centerPoint[1] - width / 2 + 0.127f * width, centerPoint[0] - width / 2 + 0.525f * width, centerPoint[1] - width / 2 + 0.114f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.524f * width, centerPoint[1] - width / 2 + 0.111f * width, centerPoint[0] - width / 2 + 0.524f * width, centerPoint[1] - width / 2 + 0.109f * width, centerPoint[0] - width / 2 + 0.523f * width, centerPoint[1] - width / 2 + 0.106f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.523f * width, centerPoint[1] - width / 2 + 0.106f * width, centerPoint[0] - width / 2 + 0.537f * width, centerPoint[1] - width / 2 + 0.112f * width, centerPoint[0] - width / 2 + 0.537f * width, centerPoint[1] - width / 2 + 0.112f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.537f * width, centerPoint[1] - width / 2 + 0.112f * width, centerPoint[0] - width / 2 + 0.521f * width, centerPoint[1] - width / 2 + 0.1f * width, centerPoint[0] - width / 2 + 0.521f * width, centerPoint[1] - width / 2 + 0.1f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.52f * width, centerPoint[1] - width / 2 + 0.097f * width, centerPoint[0] - width / 2 + 0.52f * width, centerPoint[1] - width / 2 + 0.095f * width, centerPoint[0] - width / 2 + 0.519f * width, centerPoint[1] - width / 2 + 0.093f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.529f * width, centerPoint[1] - width / 2 + 0.101f * width, centerPoint[0] - width / 2 + 0.54f * width, centerPoint[1] - width / 2 + 0.11f * width, centerPoint[0] - width / 2 + 0.544f * width, centerPoint[1] - width / 2 + 0.113f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.543f * width, centerPoint[1] - width / 2 + 0.104f * width, centerPoint[0] - width / 2 + 0.529f * width, centerPoint[1] - width / 2 + 0.088f * width, centerPoint[0] - width / 2 + 0.518f * width, centerPoint[1] - width / 2 + 0.075f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.522f * width, centerPoint[1] - width / 2 + 0.077f * width, centerPoint[0] - width / 2 + 0.527f * width, centerPoint[1] - width / 2 + 0.079f * width, centerPoint[0] - width / 2 + 0.529f * width, centerPoint[1] - width / 2 + 0.079f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.528f * width, centerPoint[1] - width / 2 + 0.078f * width, centerPoint[0] - width / 2 + 0.527f * width, centerPoint[1] - width / 2 + 0.076f * width, centerPoint[0] - width / 2 + 0.525f * width, centerPoint[1] - width / 2 + 0.074f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.53f * width, centerPoint[1] - width / 2 + 0.077f * width, centerPoint[0] - width / 2 + 0.535f * width, centerPoint[1] - width / 2 + 0.08f * width, centerPoint[0] - width / 2 + 0.537f * width, centerPoint[1] - width / 2 + 0.082f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.535f * width, centerPoint[1] - width / 2 + 0.075f * width, centerPoint[0] - width / 2 + 0.528f * width, centerPoint[1] - width / 2 + 0.069f * width, centerPoint[0] - width / 2 + 0.52f * width, centerPoint[1] - width / 2 + 0.063f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.522f * width, centerPoint[1] - width / 2 + 0.063f * width, centerPoint[0] - width / 2 + 0.523f * width, centerPoint[1] - width / 2 + 0.063f * width, centerPoint[0] - width / 2 + 0.523f * width, centerPoint[1] - width / 2 + 0.063f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.523f * width, centerPoint[1] - width / 2 + 0.063f * width, centerPoint[0] - width / 2 + 0.521f * width, centerPoint[1] - width / 2 + 0.062f * width, centerPoint[0] - width / 2 + 0.519f * width, centerPoint[1] - width / 2 + 0.062f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.516f * width, centerPoint[1] - width / 2 + 0.06f * width, centerPoint[0] - width / 2 + 0.514f * width, centerPoint[1] - width / 2 + 0.058f * width, centerPoint[0] - width / 2 + 0.511f * width, centerPoint[1] - width / 2 + 0.057f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.511f * width, centerPoint[1] - width / 2 + 0.057f * width, centerPoint[0] - width / 2 + 0.528f * width, centerPoint[1] - width / 2 + 0.056f * width, centerPoint[0] - width / 2 + 0.528f * width, centerPoint[1] - width / 2 + 0.056f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.528f * width, centerPoint[1] - width / 2 + 0.056f * width, centerPoint[0] - width / 2 + 0.503f * width, centerPoint[1] - width / 2 + 0.052f * width, centerPoint[0] - width / 2 + 0.503f * width, centerPoint[1] - width / 2 + 0.052f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.503f * width, centerPoint[1] - width / 2 + 0.052f * width, centerPoint[0] - width / 2 + 0.503f * width, centerPoint[1] - width / 2 + 0.052f * width, centerPoint[0] - width / 2 + 0.503f * width, centerPoint[1] - width / 2 + 0.052f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.503f * width, centerPoint[1] - width / 2 + 0.052f * width, centerPoint[0] - width / 2 + 0.531f * width, centerPoint[1] - width / 2 + 0.049f * width, centerPoint[0] - width / 2 + 0.531f * width, centerPoint[1] - width / 2 + 0.049f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.531f * width, centerPoint[1] - width / 2 + 0.049f * width, centerPoint[0] - width / 2 + 0.498f * width, centerPoint[1] - width / 2 + 0.041f * width, centerPoint[0] - width / 2 + 0.498f * width, centerPoint[1] - width / 2 + 0.041f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.498f * width, centerPoint[1] - width / 2 + 0.041f * width, centerPoint[0] - width / 2 + 0.509f * width, centerPoint[1] - width / 2 + 0.034f * width, centerPoint[0] - width / 2 + 0.509f * width, centerPoint[1] - width / 2 + 0.034f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.509f * width, centerPoint[1] - width / 2 + 0.034f * width, centerPoint[0] - width / 2 + 0.473f * width, centerPoint[1] - width / 2 + 0.027f * width, centerPoint[0] - width / 2 + 0.473f * width, centerPoint[1] - width / 2 + 0.027f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.473f * width, centerPoint[1] - width / 2 + 0.027f * width, centerPoint[0] - width / 2 + 0.448f * width, centerPoint[1] - width / 2 + 0.002f * width, centerPoint[0] - width / 2 + 0.406f * width, centerPoint[1] - width / 2 + 0.007f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.364f * width, centerPoint[1] - width / 2 + 0.011f * width, centerPoint[0] - width / 2 + 0.35f * width, centerPoint[1] - width / 2 + 0.038f * width, centerPoint[0] - width / 2 + 0.35f * width, centerPoint[1] - width / 2 + 0.038f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.35f * width, centerPoint[1] - width / 2 + 0.038f * width, centerPoint[0] - width / 2 + 0.33f * width, centerPoint[1] - width / 2 + 0.044f * width, centerPoint[0] - width / 2 + 0.33f * width, centerPoint[1] - width / 2 + 0.044f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.33f * width, centerPoint[1] - width / 2 + 0.044f * width, centerPoint[0] - width / 2 + 0.345f * width, centerPoint[1] - width / 2 + 0.044f * width, centerPoint[0] - width / 2 + 0.341f * width, centerPoint[1] - width / 2 + 0.046f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.337f * width, centerPoint[1] - width / 2 + 0.048f * width, centerPoint[0] - width / 2 + 0.317f * width, centerPoint[1] - width / 2 + 0.06f * width, centerPoint[0] - width / 2 + 0.317f * width, centerPoint[1] - width / 2 + 0.06f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.317f * width, centerPoint[1] - width / 2 + 0.06f * width, centerPoint[0] - width / 2 + 0.33f * width, centerPoint[1] - width / 2 + 0.06f * width, centerPoint[0] - width / 2 + 0.33f * width, centerPoint[1] - width / 2 + 0.06f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.33f * width, centerPoint[1] - width / 2 + 0.06f * width, centerPoint[0] - width / 2 + 0.305f * width, centerPoint[1] - width / 2 + 0.079f * width, centerPoint[0] - width / 2 + 0.308f * width, centerPoint[1] - width / 2 + 0.08f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.311f * width, centerPoint[1] - width / 2 + 0.081f * width, centerPoint[0] - width / 2 + 0.329f * width, centerPoint[1] - width / 2 + 0.073f * width, centerPoint[0] - width / 2 + 0.329f * width, centerPoint[1] - width / 2 + 0.073f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.329f * width, centerPoint[1] - width / 2 + 0.073f * width, centerPoint[0] - width / 2 + 0.31f * width, centerPoint[1] - width / 2 + 0.094f * width, centerPoint[0] - width / 2 + 0.31f * width, centerPoint[1] - width / 2 + 0.094f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.31f * width, centerPoint[1] - width / 2 + 0.094f * width, centerPoint[0] - width / 2 + 0.332f * width, centerPoint[1] - width / 2 + 0.085f * width, centerPoint[0] - width / 2 + 0.332f * width, centerPoint[1] - width / 2 + 0.085f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.332f * width, centerPoint[1] - width / 2 + 0.085f * width, centerPoint[0] - width / 2 + 0.333f * width, centerPoint[1] - width / 2 + 0.092f * width, centerPoint[0] - width / 2 + 0.331f * width, centerPoint[1] - width / 2 + 0.096f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.329f * width, centerPoint[1] - width / 2 + 0.099f * width, centerPoint[0] - width / 2 + 0.351f * width, centerPoint[1] - width / 2 + 0.079f * width, centerPoint[0] - width / 2 + 0.351f * width, centerPoint[1] - width / 2 + 0.079f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.351f * width, centerPoint[1] - width / 2 + 0.079f * width, centerPoint[0] - width / 2 + 0.349f * width, centerPoint[1] - width / 2 + 0.09f * width, centerPoint[0] - width / 2 + 0.349f * width, centerPoint[1] - width / 2 + 0.09f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.349f * width, centerPoint[1] - width / 2 + 0.09f * width, centerPoint[0] - width / 2 + 0.344f * width, centerPoint[1] - width / 2 + 0.102f * width, centerPoint[0] - width / 2 + 0.344f * width, centerPoint[1] - width / 2 + 0.102f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.344f * width, centerPoint[1] - width / 2 + 0.102f * width, centerPoint[0] - width / 2 + 0.342f * width, centerPoint[1] - width / 2 + 0.116f * width, centerPoint[0] - width / 2 + 0.348f * width, centerPoint[1] - width / 2 + 0.122f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.354f * width, centerPoint[1] - width / 2 + 0.128f * width, centerPoint[0] - width / 2 + 0.325f * width, centerPoint[1] - width / 2 + 0.145f * width, centerPoint[0] - width / 2 + 0.319f * width, centerPoint[1] - width / 2 + 0.154f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.312f * width, centerPoint[1] - width / 2 + 0.162f * width, centerPoint[0] - width / 2 + 0.31f * width, centerPoint[1] - width / 2 + 0.177f * width, centerPoint[0] - width / 2 + 0.309f * width, centerPoint[1] - width / 2 + 0.185f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.308f * width, centerPoint[1] - width / 2 + 0.194f * width, centerPoint[0] - width / 2 + 0.308f * width, centerPoint[1] - width / 2 + 0.209f * width, centerPoint[0] - width / 2 + 0.313f * width, centerPoint[1] - width / 2 + 0.207f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.318f * width, centerPoint[1] - width / 2 + 0.205f * width, centerPoint[0] - width / 2 + 0.336f * width, centerPoint[1] - width / 2 + 0.188f * width, centerPoint[0] - width / 2 + 0.342f * width, centerPoint[1] - width / 2 + 0.186f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.378f * width, centerPoint[1] - width / 2 + 0.176f * width, centerPoint[0] - width / 2 + 0.372f * width, centerPoint[1] - width / 2 + 0.181f * width, centerPoint[0] - width / 2 + 0.367f * width, centerPoint[1] - width / 2 + 0.182f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.348f * width, centerPoint[1] - width / 2 + 0.184f * width, centerPoint[0] - width / 2 + 0.363f * width, centerPoint[1] - width / 2 + 0.176f * width, centerPoint[0] - width / 2 + 0.371f * width, centerPoint[1] - width / 2 + 0.176f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.362f * width, centerPoint[1] - width / 2 + 0.182f * width, centerPoint[0] - width / 2 + 0.359f * width, centerPoint[1] - width / 2 + 0.186f * width, centerPoint[0] - width / 2 + 0.359f * width, centerPoint[1] - width / 2 + 0.186f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.359f * width, centerPoint[1] - width / 2 + 0.186f * width, centerPoint[0] - width / 2 + 0.364f * width, centerPoint[1] - width / 2 + 0.191f * width, centerPoint[0] - width / 2 + 0.371f * width, centerPoint[1] - width / 2 + 0.192f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.378f * width, centerPoint[1] - width / 2 + 0.193f * width, centerPoint[0] - width / 2 + 0.4f * width, centerPoint[1] - width / 2 + 0.192f * width, centerPoint[0] - width / 2 + 0.406f * width, centerPoint[1] - width / 2 + 0.195f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.411f * width, centerPoint[1] - width / 2 + 0.198f * width, centerPoint[0] - width / 2 + 0.409f * width, centerPoint[1] - width / 2 + 0.204f * width, centerPoint[0] - width / 2 + 0.416f * width, centerPoint[1] - width / 2 + 0.205f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.423f * width, centerPoint[1] - width / 2 + 0.206f * width, centerPoint[0] - width / 2 + 0.437f * width, centerPoint[1] - width / 2 + 0.214f * width, centerPoint[0] - width / 2 + 0.434f * width, centerPoint[1] - width / 2 + 0.227f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.43f * width, centerPoint[1] - width / 2 + 0.24f * width, centerPoint[0] - width / 2 + 0.422f * width, centerPoint[1] - width / 2 + 0.248f * width, centerPoint[0] - width / 2 + 0.41f * width, centerPoint[1] - width / 2 + 0.26f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.399f * width, centerPoint[1] - width / 2 + 0.271f * width, centerPoint[0] - width / 2 + 0.394f * width, centerPoint[1] - width / 2 + 0.294f * width, centerPoint[0] - width / 2 + 0.396f * width, centerPoint[1] - width / 2 + 0.312f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.398f * width, centerPoint[1] - width / 2 + 0.329f * width, centerPoint[0] - width / 2 + 0.399f * width, centerPoint[1] - width / 2 + 0.357f * width, centerPoint[0] - width / 2 + 0.396f * width, centerPoint[1] - width / 2 + 0.367f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.393f * width, centerPoint[1] - width / 2 + 0.377f * width, centerPoint[0] - width / 2 + 0.399f * width, centerPoint[1] - width / 2 + 0.413f * width, centerPoint[0] - width / 2 + 0.398f * width, centerPoint[1] - width / 2 + 0.419f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.397f * width, centerPoint[1] - width / 2 + 0.426f * width, centerPoint[0] - width / 2 + 0.397f * width, centerPoint[1] - width / 2 + 0.44f * width, centerPoint[0] - width / 2 + 0.394f * width, centerPoint[1] - width / 2 + 0.446f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.391f * width, centerPoint[1] - width / 2 + 0.452f * width, centerPoint[0] - width / 2 + 0.385f * width, centerPoint[1] - width / 2 + 0.465f * width, centerPoint[0] - width / 2 + 0.358f * width, centerPoint[1] - width / 2 + 0.483f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.338f * width, centerPoint[1] - width / 2 + 0.497f * width, centerPoint[0] - width / 2 + 0.314f * width, centerPoint[1] - width / 2 + 0.514f * width, centerPoint[0] - width / 2 + 0.304f * width, centerPoint[1] - width / 2 + 0.517f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.294f * width, centerPoint[1] - width / 2 + 0.52f * width, centerPoint[0] - width / 2 + 0.276f * width, centerPoint[1] - width / 2 + 0.504f * width, centerPoint[0] - width / 2 + 0.266f * width, centerPoint[1] - width / 2 + 0.504f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.257f * width, centerPoint[1] - width / 2 + 0.504f * width, centerPoint[0] - width / 2 + 0.235f * width, centerPoint[1] - width / 2 + 0.514f * width, centerPoint[0] - width / 2 + 0.226f * width, centerPoint[1] - width / 2 + 0.515f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.216f * width, centerPoint[1] - width / 2 + 0.516f * width, centerPoint[0] - width / 2 + 0.218f * width, centerPoint[1] - width / 2 + 0.523f * width, centerPoint[0] - width / 2 + 0.224f * width, centerPoint[1] - width / 2 + 0.525f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.23f * width, centerPoint[1] - width / 2 + 0.527f * width, centerPoint[0] - width / 2 + 0.241f * width, centerPoint[1] - width / 2 + 0.53f * width, centerPoint[0] - width / 2 + 0.241f * width, centerPoint[1] - width / 2 + 0.53f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.241f * width, centerPoint[1] - width / 2 + 0.53f * width, centerPoint[0] - width / 2 + 0.244f * width, centerPoint[1] - width / 2 + 0.539f * width, centerPoint[0] - width / 2 + 0.237f * width, centerPoint[1] - width / 2 + 0.543f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.231f * width, centerPoint[1] - width / 2 + 0.547f * width, centerPoint[0] - width / 2 + 0.213f * width, centerPoint[1] - width / 2 + 0.558f * width, centerPoint[0] - width / 2 + 0.205f * width, centerPoint[1] - width / 2 + 0.567f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.198f * width, centerPoint[1] - width / 2 + 0.576f * width, centerPoint[0] - width / 2 + 0.193f * width, centerPoint[1] - width / 2 + 0.59f * width, centerPoint[0] - width / 2 + 0.198f * width, centerPoint[1] - width / 2 + 0.588f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.202f * width, centerPoint[1] - width / 2 + 0.586f * width, centerPoint[0] - width / 2 + 0.215f * width, centerPoint[1] - width / 2 + 0.578f * width, centerPoint[0] - width / 2 + 0.222f * width, centerPoint[1] - width / 2 + 0.577f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.229f * width, centerPoint[1] - width / 2 + 0.576f * width, centerPoint[0] - width / 2 + 0.242f * width, centerPoint[1] - width / 2 + 0.579f * width, centerPoint[0] - width / 2 + 0.238f * width, centerPoint[1] - width / 2 + 0.588f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.234f * width, centerPoint[1] - width / 2 + 0.598f * width, centerPoint[0] - width / 2 + 0.229f * width, centerPoint[1] - width / 2 + 0.611f * width, centerPoint[0] - width / 2 + 0.228f * width, centerPoint[1] - width / 2 + 0.616f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.227f * width, centerPoint[1] - width / 2 + 0.622f * width, centerPoint[0] - width / 2 + 0.23f * width, centerPoint[1] - width / 2 + 0.632f * width, centerPoint[0] - width / 2 + 0.232f * width, centerPoint[1] - width / 2 + 0.629f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.235f * width, centerPoint[1] - width / 2 + 0.626f * width, centerPoint[0] - width / 2 + 0.242f * width, centerPoint[1] - width / 2 + 0.614f * width, centerPoint[0] - width / 2 + 0.246f * width, centerPoint[1] - width / 2 + 0.612f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.25f * width, centerPoint[1] - width / 2 + 0.61f * width, centerPoint[0] - width / 2 + 0.262f * width, centerPoint[1] - width / 2 + 0.6f * width, centerPoint[0] - width / 2 + 0.266f * width, centerPoint[1] - width / 2 + 0.604f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.27f * width, centerPoint[1] - width / 2 + 0.608f * width, centerPoint[0] - width / 2 + 0.273f * width, centerPoint[1] - width / 2 + 0.615f * width, centerPoint[0] - width / 2 + 0.273f * width, centerPoint[1] - width / 2 + 0.619f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.273f * width, centerPoint[1] - width / 2 + 0.624f * width, centerPoint[0] - width / 2 + 0.278f * width, centerPoint[1] - width / 2 + 0.64f * width, centerPoint[0] - width / 2 + 0.28f * width, centerPoint[1] - width / 2 + 0.631f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.282f * width, centerPoint[1] - width / 2 + 0.622f * width, centerPoint[0] - width / 2 + 0.288f * width, centerPoint[1] - width / 2 + 0.593f * width, centerPoint[0] - width / 2 + 0.293f * width, centerPoint[1] - width / 2 + 0.587f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.299f * width, centerPoint[1] - width / 2 + 0.582f * width, centerPoint[0] - width / 2 + 0.312f * width, centerPoint[1] - width / 2 + 0.56f * width, centerPoint[0] - width / 2 + 0.317f * width, centerPoint[1] - width / 2 + 0.552f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.321f * width, centerPoint[1] - width / 2 + 0.543f * width, centerPoint[0] - width / 2 + 0.382f * width, centerPoint[1] - width / 2 + 0.529f * width, centerPoint[0] - width / 2 + 0.407f * width, centerPoint[1] - width / 2 + 0.51f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.432f * width, centerPoint[1] - width / 2 + 0.491f * width, centerPoint[0] - width / 2 + 0.439f * width, centerPoint[1] - width / 2 + 0.474f * width, centerPoint[0] - width / 2 + 0.439f * width, centerPoint[1] - width / 2 + 0.474f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.439f * width, centerPoint[1] - width / 2 + 0.474f * width, centerPoint[0] - width / 2 + 0.45f * width, centerPoint[1] - width / 2 + 0.458f * width, centerPoint[0] - width / 2 + 0.449f * width, centerPoint[1] - width / 2 + 0.446f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.453f * width, centerPoint[1] - width / 2 + 0.427f * width, centerPoint[0] - width / 2 + 0.457f * width, centerPoint[1] - width / 2 + 0.37f * width, centerPoint[0] - width / 2 + 0.457f * width, centerPoint[1] - width / 2 + 0.37f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.457f * width, centerPoint[1] - width / 2 + 0.37f * width, centerPoint[0] - width / 2 + 0.476f * width, centerPoint[1] - width / 2 + 0.386f * width, centerPoint[0] - width / 2 + 0.489f * width, centerPoint[1] - width / 2 + 0.391f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.503f * width, centerPoint[1] - width / 2 + 0.396f * width, centerPoint[0] - width / 2 + 0.522f * width, centerPoint[1] - width / 2 + 0.417f * width, centerPoint[0] - width / 2 + 0.522f * width, centerPoint[1] - width / 2 + 0.424f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.523f * width, centerPoint[1] - width / 2 + 0.43f * width, centerPoint[0] - width / 2 + 0.534f * width, centerPoint[1] - width / 2 + 0.445f * width, centerPoint[0] - width / 2 + 0.539f * width, centerPoint[1] - width / 2 + 0.454f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.529f * width, centerPoint[1] - width / 2 + 0.456f * width, centerPoint[0] - width / 2 + 0.511f * width, centerPoint[1] - width / 2 + 0.464f * width, centerPoint[0] - width / 2 + 0.502f * width, centerPoint[1] - width / 2 + 0.464f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.492f * width, centerPoint[1] - width / 2 + 0.465f * width, centerPoint[0] - width / 2 + 0.494f * width, centerPoint[1] - width / 2 + 0.472f * width, centerPoint[0] - width / 2 + 0.5f * width, centerPoint[1] - width / 2 + 0.474f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.506f * width, centerPoint[1] - width / 2 + 0.476f * width, centerPoint[0] - width / 2 + 0.517f * width, centerPoint[1] - width / 2 + 0.48f * width, centerPoint[0] - width / 2 + 0.517f * width, centerPoint[1] - width / 2 + 0.48f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.517f * width, centerPoint[1] - width / 2 + 0.48f * width, centerPoint[0] - width / 2 + 0.52f * width, centerPoint[1] - width / 2 + 0.489f * width, centerPoint[0] - width / 2 + 0.513f * width, centerPoint[1] - width / 2 + 0.492f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.507f * width, centerPoint[1] - width / 2 + 0.496f * width, centerPoint[0] - width / 2 + 0.489f * width, centerPoint[1] - width / 2 + 0.508f * width, centerPoint[0] - width / 2 + 0.481f * width, centerPoint[1] - width / 2 + 0.517f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.474f * width, centerPoint[1] - width / 2 + 0.525f * width, centerPoint[0] - width / 2 + 0.469f * width, centerPoint[1] - width / 2 + 0.54f * width, centerPoint[0] - width / 2 + 0.474f * width, centerPoint[1] - width / 2 + 0.538f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.479f * width, centerPoint[1] - width / 2 + 0.536f * width, centerPoint[0] - width / 2 + 0.491f * width, centerPoint[1] - width / 2 + 0.527f * width, centerPoint[0] - width / 2 + 0.498f * width, centerPoint[1] - width / 2 + 0.526f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.5f * width, centerPoint[1] - width / 2 + 0.526f * width, centerPoint[0] - width / 2 + 0.504f * width, centerPoint[1] - width / 2 + 0.526f * width, centerPoint[0] - width / 2 + 0.507f * width, centerPoint[1] - width / 2 + 0.527f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.504f * width, centerPoint[1] - width / 2 + 0.53f * width, centerPoint[0] - width / 2 + 0.501f * width, centerPoint[1] - width / 2 + 0.533f * width, centerPoint[0] - width / 2 + 0.498f * width, centerPoint[1] - width / 2 + 0.534f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.485f * width, centerPoint[1] - width / 2 + 0.544f * width, centerPoint[0] - width / 2 + 0.452f * width, centerPoint[1] - width / 2 + 0.611f * width, centerPoint[0] - width / 2 + 0.44f * width, centerPoint[1] - width / 2 + 0.617f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.429f * width, centerPoint[1] - width / 2 + 0.624f * width, centerPoint[0] - width / 2 + 0.423f * width, centerPoint[1] - width / 2 + 0.641f * width, centerPoint[0] - width / 2 + 0.424f * width, centerPoint[1] - width / 2 + 0.654f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.425f * width, centerPoint[1] - width / 2 + 0.668f * width, centerPoint[0] - width / 2 + 0.43f * width, centerPoint[1] - width / 2 + 0.671f * width, centerPoint[0] - width / 2 + 0.429f * width, centerPoint[1] - width / 2 + 0.678f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.428f * width, centerPoint[1] - width / 2 + 0.685f * width, centerPoint[0] - width / 2 + 0.423f * width, centerPoint[1] - width / 2 + 0.712f * width, centerPoint[0] - width / 2 + 0.425f * width, centerPoint[1] - width / 2 + 0.722f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.427f * width, centerPoint[1] - width / 2 + 0.731f * width, centerPoint[0] - width / 2 + 0.456f * width, centerPoint[1] - width / 2 + 0.84f * width, centerPoint[0] - width / 2 + 0.455f * width, centerPoint[1] - width / 2 + 0.848f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.454f * width, centerPoint[1] - width / 2 + 0.856f * width, centerPoint[0] - width / 2 + 0.422f * width, centerPoint[1] - width / 2 + 0.882f * width, centerPoint[0] - width / 2 + 0.408f * width, centerPoint[1] - width / 2 + 0.889f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.393f * width, centerPoint[1] - width / 2 + 0.896f * width, centerPoint[0] - width / 2 + 0.391f * width, centerPoint[1] - width / 2 + 0.902f * width, centerPoint[0] - width / 2 + 0.388f * width, centerPoint[1] - width / 2 + 0.904f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.385f * width, centerPoint[1] - width / 2 + 0.906f * width, centerPoint[0] - width / 2 + 0.388f * width, centerPoint[1] - width / 2 + 0.911f * width, centerPoint[0] - width / 2 + 0.394f * width, centerPoint[1] - width / 2 + 0.908f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.4f * width, centerPoint[1] - width / 2 + 0.905f * width, centerPoint[0] - width / 2 + 0.387f * width, centerPoint[1] - width / 2 + 0.918f * width, centerPoint[0] - width / 2 + 0.385f * width, centerPoint[1] - width / 2 + 0.922f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.383f * width, centerPoint[1] - width / 2 + 0.925f * width, centerPoint[0] - width / 2 + 0.377f * width, centerPoint[1] - width / 2 + 0.936f * width, centerPoint[0] - width / 2 + 0.384f * width, centerPoint[1] - width / 2 + 0.936f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.392f * width, centerPoint[1] - width / 2 + 0.936f * width, centerPoint[0] - width / 2 + 0.394f * width, centerPoint[1] - width / 2 + 0.927f * width, centerPoint[0] - width / 2 + 0.399f * width, centerPoint[1] - width / 2 + 0.93f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.404f * width, centerPoint[1] - width / 2 + 0.933f * width, centerPoint[0] - width / 2 + 0.399f * width, centerPoint[1] - width / 2 + 0.938f * width, centerPoint[0] - width / 2 + 0.394f * width, centerPoint[1] - width / 2 + 0.943f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.389f * width, centerPoint[1] - width / 2 + 0.948f * width, centerPoint[0] - width / 2 + 0.399f * width, centerPoint[1] - width / 2 + 0.954f * width, centerPoint[0] - width / 2 + 0.407f * width, centerPoint[1] - width / 2 + 0.948f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.42f * width, centerPoint[1] - width / 2 + 0.937f * width, centerPoint[0] - width / 2 + 0.413f * width, centerPoint[1] - width / 2 + 0.953f * width, centerPoint[0] - width / 2 + 0.413f * width, centerPoint[1] - width / 2 + 0.953f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.413f * width, centerPoint[1] - width / 2 + 0.953f * width, centerPoint[0] - width / 2 + 0.411f * width, centerPoint[1] - width / 2 + 0.971f * width, centerPoint[0] - width / 2 + 0.434f * width, centerPoint[1] - width / 2 + 0.943f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.443f * width, centerPoint[1] - width / 2 + 0.932f * width, centerPoint[0] - width / 2 + 0.467f * width, centerPoint[1] - width / 2 + 0.916f * width, centerPoint[0] - width / 2 + 0.471f * width, centerPoint[1] - width / 2 + 0.91f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.476f * width, centerPoint[1] - width / 2 + 0.904f * width, centerPoint[0] - width / 2 + 0.474f * width, centerPoint[1] - width / 2 + 0.895f * width, centerPoint[0] - width / 2 + 0.493f * width, centerPoint[1] - width / 2 + 0.882f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.51f * width, centerPoint[1] - width / 2 + 0.871f * width, centerPoint[0] - width / 2 + 0.492f * width, centerPoint[1] - width / 2 + 0.837f * width, centerPoint[0] - width / 2 + 0.492f * width, centerPoint[1] - width / 2 + 0.837f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.492f * width, centerPoint[1] - width / 2 + 0.837f * width, centerPoint[0] - width / 2 + 0.497f * width, centerPoint[1] - width / 2 + 0.831f * width, centerPoint[0] - width / 2 + 0.492f * width, centerPoint[1] - width / 2 + 0.829f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.494f * width, centerPoint[1] - width / 2 + 0.817f * width, centerPoint[0] - width / 2 + 0.483f * width, centerPoint[1] - width / 2 + 0.755f * width, centerPoint[0] - width / 2 + 0.483f * width, centerPoint[1] - width / 2 + 0.751f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.483f * width, centerPoint[1] - width / 2 + 0.747f * width, centerPoint[0] - width / 2 + 0.493f * width, centerPoint[1] - width / 2 + 0.738f * width, centerPoint[0] - width / 2 + 0.493f * width, centerPoint[1] - width / 2 + 0.727f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.493f * width, centerPoint[1] - width / 2 + 0.715f * width, centerPoint[0] - width / 2 + 0.493f * width, centerPoint[1] - width / 2 + 0.686f * width, centerPoint[0] - width / 2 + 0.491f * width, centerPoint[1] - width / 2 + 0.682f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.489f * width, centerPoint[1] - width / 2 + 0.678f * width, centerPoint[0] - width / 2 + 0.487f * width, centerPoint[1] - width / 2 + 0.669f * width, centerPoint[0] - width / 2 + 0.507f * width, centerPoint[1] - width / 2 + 0.653f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.527f * width, centerPoint[1] - width / 2 + 0.638f * width, centerPoint[0] - width / 2 + 0.593f * width, centerPoint[1] - width / 2 + 0.585f * width, centerPoint[0] - width / 2 + 0.593f * width, centerPoint[1] - width / 2 + 0.585f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.593f * width, centerPoint[1] - width / 2 + 0.585f * width, centerPoint[0] - width / 2 + 0.603f * width, centerPoint[1] - width / 2 + 0.558f * width, centerPoint[0] - width / 2 + 0.606f * width, centerPoint[1] - width / 2 + 0.561f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.608f * width, centerPoint[1] - width / 2 + 0.564f * width, centerPoint[0] - width / 2 + 0.597f * width, centerPoint[1] - width / 2 + 0.589f * width, centerPoint[0] - width / 2 + 0.597f * width, centerPoint[1] - width / 2 + 0.589f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.597f * width, centerPoint[1] - width / 2 + 0.589f * width, centerPoint[0] - width / 2 + 0.581f * width, centerPoint[1] - width / 2 + 0.669f * width, centerPoint[0] - width / 2 + 0.585f * width, centerPoint[1] - width / 2 + 0.674f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.589f * width, centerPoint[1] - width / 2 + 0.68f * width, centerPoint[0] - width / 2 + 0.592f * width, centerPoint[1] - width / 2 + 0.693f * width, centerPoint[0] - width / 2 + 0.6f * width, centerPoint[1] - width / 2 + 0.701f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.603f * width, centerPoint[1] - width / 2 + 0.704f * width, centerPoint[0] - width / 2 + 0.605f * width, centerPoint[1] - width / 2 + 0.715f * width, centerPoint[0] - width / 2 + 0.605f * width, centerPoint[1] - width / 2 + 0.715f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.605f * width, centerPoint[1] - width / 2 + 0.715f * width, centerPoint[0] - width / 2 + 0.634f * width, centerPoint[1] - width / 2 + 0.761f * width, centerPoint[0] - width / 2 + 0.643f * width, centerPoint[1] - width / 2 + 0.776f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.653f * width, centerPoint[1] - width / 2 + 0.79f * width, centerPoint[0] - width / 2 + 0.687f * width, centerPoint[1] - width / 2 + 0.9f * width, centerPoint[0] - width / 2 + 0.687f * width, centerPoint[1] - width / 2 + 0.9f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.687f * width, centerPoint[1] - width / 2 + 0.9f * width, centerPoint[0] - width / 2 + 0.681f * width, centerPoint[1] - width / 2 + 0.911f * width, centerPoint[0] - width / 2 + 0.688f * width, centerPoint[1] - width / 2 + 0.915f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.685f * width, centerPoint[1] - width / 2 + 0.92f * width, centerPoint[0] - width / 2 + 0.663f * width, centerPoint[1] - width / 2 + 0.94f * width, centerPoint[0] - width / 2 + 0.658f * width, centerPoint[1] - width / 2 + 0.945f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.653f * width, centerPoint[1] - width / 2 + 0.949f * width, centerPoint[0] - width / 2 + 0.639f * width, centerPoint[1] - width / 2 + 0.963f * width, centerPoint[0] - width / 2 + 0.636f * width, centerPoint[1] - width / 2 + 0.966f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.635f * width, centerPoint[1] - width / 2 + 0.971f * width, centerPoint[0] - width / 2 + 0.623f * width, centerPoint[1] - width / 2 + 0.985f * width, centerPoint[0] - width / 2 + 0.64f * width, centerPoint[1] - width / 2 + 0.982f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.647f * width, centerPoint[1] - width / 2 + 0.98f * width, centerPoint[0] - width / 2 + 0.655f * width, centerPoint[1] - width / 2 + 0.976f * width, centerPoint[0] - width / 2 + 0.65f * width, centerPoint[1] - width / 2 + 0.983f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.648f * width, centerPoint[1] - width / 2 + 0.987f * width, centerPoint[0] - width / 2 + 0.656f * width, centerPoint[1] - width / 2 + 0.987f * width, centerPoint[0] - width / 2 + 0.662f * width, centerPoint[1] - width / 2 + 0.986f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.668f * width, centerPoint[1] - width / 2 + 0.985f * width, centerPoint[0] - width / 2 + 0.671f * width, centerPoint[1] - width / 2 + 0.982f * width, centerPoint[0] - width / 2 + 0.671f * width, centerPoint[1] - width / 2 + 0.982f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.671f * width, centerPoint[1] - width / 2 + 0.982f * width, centerPoint[0] - width / 2 + 0.667f * width, centerPoint[1] - width / 2 + 0.998f * width, centerPoint[0] - width / 2 + 0.675f * width, centerPoint[1] - width / 2 + 0.993f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.684f * width, centerPoint[1] - width / 2 + 0.988f * width, centerPoint[0] - width / 2 + 0.688f * width, centerPoint[1] - width / 2 + 0.988f * width, centerPoint[0] - width / 2 + 0.688f * width, centerPoint[1] - width / 2 + 0.988f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.688f * width, centerPoint[1] - width / 2 + 0.988f * width, centerPoint[0] - width / 2 + 0.692f * width, centerPoint[1] - width / 2 + 0.99f * width, centerPoint[0] - width / 2 + 0.702f * width, centerPoint[1] - width / 2 + 0.985f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.712f * width, centerPoint[1] - width / 2 + 0.98f * width, centerPoint[0] - width / 2 + 0.715f * width, centerPoint[1] - width / 2 + 0.965f * width, centerPoint[0] - width / 2 + 0.726f * width, centerPoint[1] - width / 2 + 0.95f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.736f * width, centerPoint[1] - width / 2 + 0.934f * width, centerPoint[0] - width / 2 + 0.735f * width, centerPoint[1] - width / 2 + 0.913f * width, centerPoint[0] - width / 2 + 0.733f * width, centerPoint[1] - width / 2 + 0.904f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.74f * width, centerPoint[1] - width / 2 + 0.9f * width, centerPoint[0] - width / 2 + 0.739f * width, centerPoint[1] - width / 2 + 0.886f * width, centerPoint[0] - width / 2 + 0.734f * width, centerPoint[1] - width / 2 + 0.875f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.729f * width, centerPoint[1] - width / 2 + 0.864f * width, centerPoint[0] - width / 2 + 0.721f * width, centerPoint[1] - width / 2 + 0.861f * width, centerPoint[0] - width / 2 + 0.722f * width, centerPoint[1] - width / 2 + 0.855f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.723f * width, centerPoint[1] - width / 2 + 0.844f * width, centerPoint[0] - width / 2 + 0.687f * width, centerPoint[1] - width / 2 + 0.746f * width, centerPoint[0] - width / 2 + 0.687f * width, centerPoint[1] - width / 2 + 0.746f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.687f * width, centerPoint[1] - width / 2 + 0.746f * width, centerPoint[0] - width / 2 + 0.687f * width, centerPoint[1] - width / 2 + 0.711f * width, centerPoint[0] - width / 2 + 0.681f * width, centerPoint[1] - width / 2 + 0.698f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.675f * width, centerPoint[1] - width / 2 + 0.684f * width, centerPoint[0] - width / 2 + 0.662f * width, centerPoint[1] - width / 2 + 0.65f * width, centerPoint[0] - width / 2 + 0.662f * width, centerPoint[1] - width / 2 + 0.65f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.662f * width, centerPoint[1] - width / 2 + 0.65f * width, centerPoint[0] - width / 2 + 0.662f * width, centerPoint[1] - width / 2 + 0.64f * width, centerPoint[0] - width / 2 + 0.665f * width, centerPoint[1] - width / 2 + 0.633f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.667f * width, centerPoint[1] - width / 2 + 0.626f * width, centerPoint[0] - width / 2 + 0.71f * width, centerPoint[1] - width / 2 + 0.551f * width, centerPoint[0] - width / 2 + 0.713f * width, centerPoint[1] - width / 2 + 0.549f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.714f * width, centerPoint[1] - width / 2 + 0.548f * width, centerPoint[0] - width / 2 + 0.715f * width, centerPoint[1] - width / 2 + 0.54f * width, centerPoint[0] - width / 2 + 0.716f * width, centerPoint[1] - width / 2 + 0.527f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.739f * width, centerPoint[1] - width / 2 + 0.551f * width, centerPoint[0] - width / 2 + 0.768f * width, centerPoint[1] - width / 2 + 0.573f * width, centerPoint[0] - width / 2 + 0.783f * width, centerPoint[1] - width / 2 + 0.563f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.799f * width, centerPoint[1] - width / 2 + 0.553f * width, centerPoint[0] - width / 2 + 0.803f * width, centerPoint[1] - width / 2 + 0.529f * width, centerPoint[0] - width / 2 + 0.798f * width, centerPoint[1] - width / 2 + 0.502f * width ); path.cubicTo( centerPoint[0] - width / 2 + 0.807f * width, centerPoint[1] - width / 2 + 0.464f * width, centerPoint[0] - width / 2 + 0.811f * width, centerPoint[1] - width / 2 + 0.382f * width, centerPoint[0] - width / 2 + 0.772f * width, centerPoint[1] - width / 2 + 0.303f * width ); return path; } }