def path_UWLne(cls, ta=None, **kwargs): #M 351.69,362.63996 C 349.182,362.63996 346.74976,363.92445 346.2721,366.23486 345.38854,370.50857 353.04278,370.91471 352.96948,368.01242 z0 = P(0, -0) c0 = P(-0.884767, -0) c1 = P(-1.74281, -0.45314) z1 = P(-1.91131, -1.2682) c2 = P(-2.22302, -2.77587) c3 = P(0.477231, -2.91915) z2 = P(0.451372, -1.89528) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), endknot(*z2)])
def path_HER(self, ta=None, **kwwargs): #M 81.185274,260.85791 C 77.451224,261.16118 75.149816,259.82776 77.997579,257.16063 89.296435,246.57846 105.1772,252.15007 108.45317,258.86755 z0 = P(0, -0) c0 = P(-1.31729, -0.106987) c1 = P(-2.12918, 0.363414) z1 = P(-1.12455, 1.30432) c2 = P(2.86144, 5.03747) c3 = P(8.46382, 3.07193) z2 = P(9.61951, 0.702155) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), endknot(*z2) ])
def path_HEL(self, ta=None, **kwwargs): #M 94.748513,202.12374 C 92.584676,200.67192 88.441614,201.68923 89.381963,203.8718 92.219104,210.45688 106.16263,212.80428 114.62908,205.37623 z0 = P(0, -0) c0 = P(-0.763354, 0.51217) c1 = P(-2.22493, 0.153285) z1 = P(-1.8932, -0.616677) c2 = P(-0.892319, -2.93975) c3 = P(4.02665, -3.76786) z2 = P(7.01342, -1.14741) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), endknot(*z2) ])
def path_UNER(cls, ta=None, **kwargs): #M 338.41114,393.61557 C 339.37031,392.38321 343.80672,385.93798 346.48166,387.87331 348.51403,389.34374 345.30412,394.28454 344.25578,395.06218 z0 = P(0, -0) c0 = P(0.338374, 0.434749) c1 = P(1.90344, 2.70848) z1 = P(2.8471, 2.02574) c2 = P(3.56408, 1.50701) c3 = P(2.43169, -0.235998) z2 = P(2.06186, -0.510332) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), endknot(*z2) ])
def path_SCLsr(cls, ta=None, **kwargs): #M 178.218,111.292 C 178.372,112.385 178.517,119.715 178.022,122.52 177.854,123.581 179.52206,123.79715 179.81606,122.13015 180.08806,120.73015 178.376,118.552 178.376,118.552 z0 = P(0, -0) c0 = z0 + PP(0.389395, -81) z1 = z0 + PP(3.96159, -91) c1 = z1 + PP(1.00483, 79) c2 = z1 + PP(0.37896, -98) z2 = z1 + PP(0.647675, 12) c3 = z2 + PP(0.597157, -100) c4 = z2 + PP(0.503124, 79) z3 = z2 + PP(1.36069, 111) c5 = z3 + PP(0, 0) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), endknot(*z3)])
def path_selNEL(cls, ta=None, **kwargs): #M 370.827,135.103 C 381.09465,135.103 402.897,113.255 402.897,103.032 #z0 = P(0, -0) #c0 = P(3.6222, -0) #c1 = P(11.3136, 7.70749) #z1 = P(11.3136, 11.3139) #z0 = P(0, -0) #c0 = z0 + P(3.6222, 0) #z1 = z0 + P(11.3136, 11.3139) #c1 = z1 + P(0, -3.60645) z0 = P(0, -0) c0 = z0 + PP(3.6222, 0) z1 = z0 + PP(16.0001, 45) c1 = z1 + PP(3.60645, -90) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), #curve(), endknot(*z1)])
def path_SRner(cls, ta=None, **kwargs): #M 97.4345,267.449 C 102.22,270.44 102.1519,286.13094 97.4812,291.924 #z0 = P(0, -0) #c0 = P(1.68822, -1.05516) #c1 = P(1.66419, -6.59057) #z1 = P(0.0164747, -8.63424) #z0 = P(0, -0) #c0 = z0 + P(1.68822, -1.05516) #z1 = z0 + P(0.0164747, -8.63424) #c1 = z1 + P(1.64772, 2.04366) z0 = P(0, -0) c0 = z0 + PP(1.99084, -32) z1 = z0 + PP(8.63425, -89) #c1 = z1 + PP(2.62517, 51) c1 = z1 + PP(2.62517, ta) return pyx.metapost.path.path( [beginknot(*z0), controlcurve(c0, c1), endknot(*z1)])
def path_nerSERNE(cls, ta=None, **kwargs): #M 58.68,317.131 C 69.7884,317.131 81.3572,343.607 81.3572,356.409 82.119975,355.61526 82.933333,354.82152 84.025366,354.02778 #z0 = P(0, -0) #c0 = P(3.9188, -0) #c1 = P(8.00001, -9.34014) #z1 = P(8.00001, -13.8564) #c2 = P(8.2691, -13.5764) #c3 = P(8.55604, -13.2964) #z2 = P(8.94128, -13.0164) #z0 = P(0, -0) #c0 = z0 + P(3.9188, 0) #z1 = z0 + P(8.00001, -13.8564) #c1 = z1 + P(0, 4.51626) #c2 = z1 + P(0.26909, 0.280014) #z2 = z1 + P(0.94127, 0.840041) #c3 = z2 + P(-0.385245, -0.280014) z0 = P(0, -0) c0 = z0 + PP(3.9188, 0) z1 = z0 + PP(16, -59) #z1 = z2 - PP(1.26161, ta + 364) c1 = z1 + PP(4.51626, 90) c2 = z1 + PP(0.388352, 46) z2 = z1 + PP(1.26161, 41) c3 = z2 + PP(0.476258, -143) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), #curve(), endknot(*z2) ])
def path_nerSERNE(cls): #M 58.68,258.214 C 64.2342,258.214 70.0186,271.452 70.0186,277.853 70.823361,276.73468 71.61724,276.04912 72.947601,275.41269 #z0 = P(0, -0) #c0 = P(1.9594, -0) #c1 = P(4.00001, -4.67007) #z1 = P(4.00001, -6.9282) #c2 = P(4.28391, -6.53368) #c3 = P(4.56397, -6.29183) #z2 = P(5.03329, -6.06732) #z0 = P(0, -0) #c0 = z0 + P(1.9594, 0) #z1 = z0 + P(4.00001, -6.9282) #c1 = z1 + P(0, 2.25813) #c2 = z1 + P(0.283902, 0.394518) #z2 = z1 + P(1.03329, 0.860887) #c3 = z2 + P(-0.469322, -0.224518) z0 = P(0, -0) c0 = z0 + PP(1.9594, 0) z1 = z0 + PP(8, -59) #z1 = z2 - PP(1.34492, ta + 373) c1 = z1 + PP(2.25813, 90) c2 = z1 + PP(0.48605, 54) z2 = z1 + PP(1.34492, 39) c3 = z2 + PP(0.520261, -154) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), #curve(), endknot(*z2) ])
def path_SERNE(cls): #M 251.447,135.009 C 257.865,139.503 266.253,148.642 262.786,154.648 263.80391,153.76737 264.77859,152.92997 265.95378,151.89208 #z0 = P(0, -0) #c0 = P(2.26413, -1.58538) #c1 = P(5.22323, -4.80942) #z1 = P(4.00015, -6.9282) #c2 = P(4.35924, -6.61754) #c3 = P(4.70309, -6.32212) #z2 = P(5.11767, -5.95598) #z0 = P(0, -0) #c0 = z0 + P(2.26413, -1.58538) #z1 = z0 + P(4.00015, -6.9282) #c1 = z1 + P(1.22308, 2.11878) #c2 = z1 + P(0.359096, 0.310667) #z2 = z1 + P(1.11752, 0.972227) #c3 = z2 + P(-0.414581, -0.366145) z0 = P(0, -0) c0 = z0 + PP(2.764, -35) z1 = z0 + PP(8.00007, -59) #z1 = z2 - PP(1.48124, ta + 359) c1 = z1 + PP(2.44646, 60) c2 = z1 + PP(0.47483, 40) z2 = z1 + PP(1.48124, 41) c3 = z2 + PP(0.553118, -138) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), #curve(), endknot(*z2) ])
def path_UWL(cls, ta=None, **kwargs): #M 47.3414,58.6772 C 44.5656,59.468982 42.1255,61.8061 42.1255,64.6774 42.1255,67.5206 45.5236,69.1216 48.5106,67.7917 #z0 = P(0, -0) #c0 = P(-0.975582, -0.27828) #c1 = P(-1.83318, -1.09968) #z1 = P(-1.83318, -2.10883) #c2 = P(-1.83318, -3.1081) #c3 = P(-0.638884, -3.67079) #z2 = P(0.410927, -3.20338) #z0 = P(0, -0) #c0 = z0 + P(-0.975582, -0.27828) #z1 = z0 + P(-1.83318, -2.10883) #c1 = z1 + P(0, 1.00915) #c2 = z1 + P(0, -0.999271) #z2 = z1 + P(2.24411, -1.09455) #c3 = z2 + P(-1.04981, -0.467406) z0 = P(0, -0) c0 = z0 + PP(1.0145, -164) z1 = z0 + PP(2.79423, -131) #z1 = z2 - PP(2.49681, ta + 309) c1 = z1 + PP(1.00915, 90) c2 = z1 + PP(0.999271, -90) z2 = z1 + PP(2.49681, -26) c3 = z2 + PP(1.14916, -155) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), #curve(), endknot(*z2) ])
def path_SWNE(cls, ta=None, **kwargs): #M 70.0186,221.374 C 64.101355,235.54762 57.710318,249.24745 50.851,262.479 51.764401,261.75619 52.657481,261.04354 53.893874,260.15923 #z0 = P(0, -0) #c0 = P(-2.08747, -5.00014) #c1 = P(-4.34209, -9.83313) #z1 = P(-6.7619, -14.5009) #c2 = P(-6.43968, -14.2459) #c3 = P(-6.12462, -13.9945) #z2 = P(-5.68845, -13.6826) #z0 = P(0, -0) #c0 = z0 + P(-2.08747, -5.00014) #z1 = z0 + P(-6.7619, -14.5009) #c1 = z1 + P(2.41981, 4.6678) #c2 = z1 + P(0.322228, 0.254991) #z2 = z1 + P(1.07346, 0.818363) #c3 = z2 + P(-0.436172, -0.311965) z0 = P(0, -0) c0 = z0 + PP(5.41839, -112) z1 = z0 + PP(16, -115) #z1 = z2 - PP(1.34983, ta + 361) c1 = z1 + PP(5.25774, 62) c2 = z1 + PP(0.410915, 38) z2 = z1 + PP(1.34983, 37) c3 = z2 + PP(0.536254, -144) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), #curve(), endknot(*z2) ])
def path_ERNE(cls, ta=None, **kwargs): #M 387.51,115.37 C 401.73,110.194 434.929,103.664 432.865,115.37 433.62919,114.73181 434.42045,113.98204 435.48488,113.28297 #z0 = P(0, -0) #c0 = P(5.0165, 1.82598) #c1 = P(16.7284, 4.12962) #z1 = P(16.0002, -0) #c2 = P(16.2698, 0.225139) #c3 = P(16.549, 0.489641) #z2 = P(16.9245, 0.736258) #z0 = P(0, -0) #c0 = z0 + P(5.0165, 1.82598) #z1 = z0 + P(16.0002, 0) #c1 = z1 + P(0.728133, 4.12962) #c2 = z1 + P(0.269589, 0.225139) #z2 = z1 + P(0.924235, 0.736258) #c3 = z2 + P(-0.375507, -0.246616) z0 = P(0, -0) c0 = z0 + PP(5.33849, 20) z1 = z0 + PP(16.0002, 0) #z1 = z2 - PP(1.18165, ta + 364) c1 = z1 + PP(4.19332, 80) c2 = z1 + PP(0.351235, 39) z2 = z1 + PP(1.18165, 38) c3 = z2 + PP(0.44925, -146) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), #curve(), endknot(*z2) ])
def path_EL(cls, ta=None, **kwargs): #M -804.71298,-208.5292 C -803.35568,-206.56471 -798.58558,-206.21673 -796.19767,-208.55703 #z0 = P(0, -0) #c0 = P(0.478825, -0.693028) #c1 = P(2.16161, -0.815788) #z1 = P(3.00401, 0.00981781) #z0 = P(0, -0) #c0 = z0 + P(0.478825, -0.693028) #z1 = z0 + P(3.00401, 0.00981781) #c1 = z1 + P(-0.842402, -0.825606) z0 = P(0, -0) c0 = z0 + PP(0.842355, -55 - 20) z1 = z0 + PP(3.00403, 0) c1 = z1 + PP(1.17952, -135 + 20) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), #curve(), endknot(*z1) ])
def path_ERNE(cls, ta=None): #M 47.3414,172.063 C 52.5553,169.053 59.9456,168.586 58.68,172.063 59.449333,171.5946 60.218667,171.12621 60.988,170.65781 #z0 = P(0, -0) #c0 = P(1.83248, 1.05789) #c1 = P(4.42987, 1.22203) #z1 = P(3.98506, -0) #c2 = P(4.25545, 0.164624) #c3 = P(4.52584, 0.329244) #z2 = P(4.79623, 0.493868) #z0 = P(0, -0) #c0 = z0 + P(1.83248, 1.05789) #z1 = z0 + P(3.98506, 0) #c1 = z1 + P(0.444808, 1.22203) #c2 = z1 + P(0.27039, 0.164624) #z2 = z1 + P(0.811169, 0.493868) #c3 = z2 + P(-0.27039, -0.164624) z0 = P(0, -0) c0 = z0 + PP(2.11592, 29) z1 = z0 + PP(3.98506, 0) #z1 = z2 - PP(0.949685, ta + 359) c1 = z1 + PP(1.30046, 69) c2 = z1 + PP(0.316562, 31) z2 = z1 + PP(0.949685, 31) c3 = z2 + PP(0.316562, -148) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), #curve(), endknot(*z2) ])
def set_next_head(self, flick_len=2.0, dz=P(1, 0)): if self.after.head_type == 'S': dz = P(0.5, -0.5) super().set_next_head(flick_len, dz)
def get_pos_xtsu(self): if self.paths: return P(*self.paths[0].at(2.0)) else: return P(0, 0)
def get_pos_x_kitsuon(self): if self.paths: return P(*self.paths[0].at(5)) else: return P(0, 0)
def get_pos_you(self): return super().get_pos_you() + P(0, 1)
def get_pos_huu(self): return super().get_pos_huu() + P(1, 0)
def path_SELCLswr(cls, ta=None, **kwargs): #M 103.93,563.794 C 103.93,575.55 104.936,586.1945 108.2525,593.45087 111.569,600.70725 119.93789,604.81924 126.438,602.779 127.03157,602.59269 127.52527,601.71615 127.314,601.131 126.98538,600.22082 125.41271,599.46286 124.62812,600.02928 123.78205,600.64007 124.92487,602.02139 124.84411,603.15232 #z0 = P(0, -0) #c0 = P(0, -4.13176) #c1 = P(0.353569, -7.87288) #z1 = P(1.51919, -10.4232) #c2 = P(2.6848, -12.9735) #c3 = P(5.62613, -14.4187) #z2 = P(7.91066, -13.7017) #c4 = P(8.11927, -13.6362) #c5 = P(8.29279, -13.3281) #z3 = P(8.21854, -13.1225) #c6 = P(8.10304, -12.8026) #c7 = P(7.55031, -12.5362) #z4 = P(7.27456, -12.7352) #c8 = P(6.9772, -12.9499) #c9 = P(7.37885, -13.4354) z5 = P(7.35047, -13.8329) #z0 = P(0, -0) #c0 = z0 + P(0, -4.13176) #z1 = z0 + P(1.51919, -10.4232) #c1 = z1 + P(-1.16562, 2.55032) #c2 = z1 + P(1.16562, -2.55033) #z2 = z1 + P(6.39147, -3.27846) #c3 = z2 + P(-2.28453, -0.717062) #c4 = z2 + P(0.208616, 0.0654805) #z3 = z2 + P(0.307879, 0.579206) #c5 = z3 + P(0.0742529, -0.205657) #c6 = z3 + P(-0.115497, 0.319892) #z4 = z3 + P(-0.943979, 0.38721) #c7 = z4 + P(0.275752, 0.199074) #c8 = z4 + P(-0.29736, -0.214668) #z5 = z4 + P(0.0759118, -1.09762) #c9 = z5 + P(0.0283839, 0.397477) z0 = P(0, -0) c0 = z0 + PP(4.13176, -90) z1 = z0 + PP(10.5333, -81) c1 = z1 + PP(2.80407, 114) c2 = z1 + PP(2.80407, -65) z2 = z1 + PP(7.18326, -27) c3 = z2 + PP(2.39442, -162) c4 = z2 + PP(0.218651, 17) z3 = z2 + PP(0.655949, 62) c5 = z3 + PP(0.218651, -70) c6 = z3 + PP(0.340103, 109) #z4 = z3 + PP(1.02031, 157) z4 = z5 - PP(1.10025, ta + 9) c7 = z4 + PP(0.340102, 35) #c8 = z4 + PP(0.366749, -144) #z5 = z4 + PP(1.10025, -86) #c9 = z5 + PP(0.398489, 85) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), knot(*z3), controlcurve(c6, c7), knot(*z4), #controlcurve(c8, c9), curve(), endknot(*z5, angle=ta) ])
def path_SELCLsw(cls, ta=None, **kwargs): #M 47.3414,563.794 C 47.3414,575.55 48.347008,586.19132 51.663312,593.4461 54.979616,600.70089 63.348228,604.81887 69.8494,602.779 70.442984,602.59275 70.760978,601.7521 70.7254,601.131 70.683903,600.40656 70.216109,599.3609 69.490846,599.33806 67.811961,599.28518 67.165865,601.79039 66.3775,603.3004 #z0 = P(0, -0) #c0 = P(0, -4.13176) #c1 = P(0.353431, -7.87176) #z1 = P(1.51898, -10.4215) #c2 = P(2.68453, -12.9713) #c3 = P(5.62576, -14.4186) #z2 = P(7.91066, -13.7017) #c4 = P(8.11928, -13.6362) #c5 = P(8.23104, -13.3407) #z3 = P(8.21854, -13.1225) #c6 = P(8.20395, -12.8678) #c7 = P(8.03954, -12.5003) #z4 = P(7.78464, -12.4923) #c8 = P(7.19458, -12.4737) #c9 = P(6.9675, -13.3542) z5 = P(6.69043, -13.8849) #z0 = P(0, -0) #c0 = z0 + P(0, -4.13176) #z1 = z0 + P(1.51898, -10.4215) #c1 = z1 + P(-1.16555, 2.54976) #c2 = z1 + P(1.16555, -2.54977) #z2 = z1 + P(6.39168, -3.28014) #c3 = z2 + P(-2.2849, -0.716932) #c4 = z2 + P(0.208621, 0.0654594) #z3 = z2 + P(0.307879, 0.579206) #c5 = z3 + P(0.0125042, -0.218292) #c6 = z3 + P(-0.0145845, 0.254612) #z4 = z3 + P(-0.433896, 0.630146) #c7 = z4 + P(0.254901, -0.00802734) #c8 = z4 + P(-0.590061, 0.0185852) #z5 = z4 + P(-1.09422, -1.3926) #c9 = z5 + P(0.277079, 0.530708) z0 = P(0, -0) c0 = z0 + PP(4.13176, -90) z1 = z0 + PP(10.5316, -81) c1 = z1 + PP(2.80353, 114) c2 = z1 + PP(2.80354, -65) z2 = z1 + PP(7.18421, -27) c3 = z2 + PP(2.39474, -162) c4 = z2 + PP(0.21865, 17) z3 = z2 + PP(0.655949, 62) c5 = z3 + PP(0.21865, -86) c6 = z3 + PP(0.255029, 93) #z4 = z3 + PP(0.765082, 124) z4 = z5 - PP(1.77106, ta + -10) c7 = z4 + PP(0.255027, -1) #c8 = z4 + PP(0.590353, 178) #z5 = z4 + PP(1.77106, -128) #c9 = z5 + PP(0.598685, 62) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), knot(*z3), controlcurve(c6, c7), knot(*z4), #controlcurve(c8, c9), curve(), endknot(*z5, angle=ta) ])
def path_SELCLser(cls, ta=None, **kwargs): #M 99.3037,450.83 C 99.3037,462.586 100.31002,473.2305 103.62672,480.48687 106.94343,487.74325 115.20778,491.48757 121.812,489.815 122.43031,489.65841 123.11243,488.77333 122.89364,488.23655 122.28353,486.73976 118.55559,486.83566 118.08287,488.36862 117.80914,489.25626 119.07658,488.86763 120.34163,490.00063 #z0 = P(0, -0) #c0 = P(0, -4.13176) #c1 = P(0.353681, -7.87288) #z1 = P(1.51937, -10.4232) #c2 = P(2.68506, -12.9735) #c3 = P(5.58965, -14.2895) #z2 = P(7.91076, -13.7017) #c4 = P(8.12808, -13.6466) #c5 = P(8.36781, -13.3356) #z3 = P(8.29092, -13.1469) #c6 = P(8.07649, -12.6208) #c7 = P(6.76627, -12.6545) #z4 = P(6.60012, -13.1933) #c8 = P(6.50392, -13.5053) #c9 = P(6.94937, -13.3687) z5 = P(7.39399, -13.7669) #z0 = P(0, -0) #c0 = z0 + P(0, -4.13176) #z1 = z0 + P(1.51937, -10.4232) #c1 = z1 + P(-1.16569, 2.55032) #c2 = z1 + P(1.16569, -2.55033) #z2 = z1 + P(6.3914, -3.27846) #c3 = z2 + P(-2.32112, -0.587841) #c4 = z2 + P(0.217311, 0.0550351) #z3 = z2 + P(0.380153, 0.554762) #c5 = z3 + P(0.0768959, -0.188657) #c6 = z3 + P(-0.214429, 0.526062) #z4 = z3 + P(-1.69079, -0.0464173) #c7 = z4 + P(0.166142, 0.538774) #c8 = z4 + P(-0.0962051, -0.31197) #z5 = z4 + P(0.793864, -0.573586) #c9 = z5 + P(-0.444614, 0.398204) z0 = P(0, -0) c0 = z0 + PP(4.13176, -90) z1 = z0 + PP(10.5334, -81) c1 = z1 + PP(2.8041, 114) c2 = z1 + PP(2.8041, -65) z2 = z1 + PP(7.18319, -27) c3 = z2 + PP(2.3944, -165) c4 = z2 + PP(0.224172, 14) z3 = z2 + PP(0.672515, 55) c5 = z3 + PP(0.203726, -67) c6 = z3 + PP(0.568085, 112) #z4 = z3 + PP(1.69143, -178) z4 = z5 - PP(0.979398, ta + 7) c7 = z4 + PP(0.563809, 72) #c8 = z4 + PP(0.326467, -107) #z5 = z4 + PP(0.979398, -35) #c9 = z5 + PP(0.596865, 138) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), knot(*z3), controlcurve(c6, c7), knot(*z4), #controlcurve(c8, c9), curve(), endknot(*z5, angle=ta) ])
def path_SELCLse(cls, ta=None, **kwargs): #M 47.3414,450.83 C 47.3414,462.586 48.347625,473.2305 51.664238,480.48687 54.98085,487.74325 63.349118,491.85436 69.8494,489.815 70.44271,489.62886 70.891884,488.76712 70.7254,488.168 70.403223,487.00859 68.595808,485.59603 67.628846,486.31229 66.57452,487.09326 67.906109,488.8963 68.580442,490.13172 #z0 = P(0, -0) #c0 = P(0, -4.13176) #c1 = P(0.353648, -7.87288) #z1 = P(1.5193, -10.4232) #c2 = P(2.68496, -12.9735) #c3 = P(5.62607, -14.4184) #z2 = P(7.91066, -13.7017) #c4 = P(8.11918, -13.6362) #c5 = P(8.27705, -13.3334) #z3 = P(8.21854, -13.1228) #c6 = P(8.10531, -12.7153) #c7 = P(7.47007, -12.2189) #z4 = P(7.13022, -12.4706) #c8 = P(6.75967, -12.7451) #c9 = P(7.22767, -13.3788) z5 = P(7.46467, -13.813) #z0 = P(0, -0) #c0 = z0 + P(0, -4.13176) #z1 = z0 + P(1.5193, -10.4232) #c1 = z1 + P(-1.16566, 2.55032) #c2 = z1 + P(1.16566, -2.55033) #z2 = z1 + P(6.39135, -3.27846) #c3 = z2 + P(-2.28459, -0.716753) #c4 = z2 + P(0.208525, 0.0654207) #z3 = z2 + P(0.307879, 0.578854) #c5 = z3 + P(0.0585124, -0.210567) #c6 = z3 + P(-0.113232, 0.407486) #z4 = z3 + P(-1.08831, 0.652208) #c7 = z4 + P(0.339848, 0.251737) #c8 = z4 + P(-0.370553, -0.27448) #z5 = z4 + P(0.334448, -1.34238) #c9 = z5 + P(-0.237001, 0.434201) z0 = P(0, -0) c0 = z0 + PP(4.13176, -90) z1 = z0 + PP(10.5333, -81) c1 = z1 + PP(2.80409, 114) c2 = z1 + PP(2.80409, -65) z2 = z1 + PP(7.18316, -27) c3 = z2 + PP(2.39438, -162) c4 = z2 + PP(0.218546, 17) z3 = z2 + PP(0.655638, 61) c5 = z3 + PP(0.218545, -74) c6 = z3 + PP(0.422926, 105) #z4 = z3 + PP(1.26878, 149) z4 = z5 - PP(1.38341, ta + -14) c7 = z4 + PP(0.422928, 36) #c8 = z4 + PP(0.461139, -143) #z5 = z4 + PP(1.38341, -76) #c9 = z5 + PP(0.494671, 118) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), knot(*z3), controlcurve(c6, c7), knot(*z4), #controlcurve(c8, c9), curve(), endknot(*z5, angle=ta) ])
def path_SELCLsl(cls, ta=None, **kwargs): #M 107.808,332.14 C 107.808,343.896 108.814,354.5405 112.1305,361.79687 115.447,369.05325 123.81589,373.16523 130.316,371.125 130.90957,370.93869 131.42948,370.05201 131.192,369.477 130.83438,368.61112 129.40246,368.32515 128.50611,368.64945 127.26323,369.09913 126.66354,370.00068 125.87226,371.61349 #z0 = P(0, -0) #c0 = P(0, -4.13176) #c1 = P(0.353569, -7.87288) #z1 = P(1.51919, -10.4232) #c2 = P(2.6848, -12.9735) #c3 = P(5.62613, -14.4187) #z2 = P(7.91066, -13.7017) #c4 = P(8.11927, -13.6362) #c5 = P(8.302, -13.3246) #z3 = P(8.21854, -13.1225) #c6 = P(8.09285, -12.8181) #c7 = P(7.58959, -12.7176) #z4 = P(7.27456, -12.8316) #c8 = P(6.83773, -12.9897) #c9 = P(6.62697, -13.3065) z5 = P(6.34886, -13.8733) #z0 = P(0, -0) #c0 = z0 + P(0, -4.13176) #z1 = z0 + P(1.51919, -10.4232) #c1 = z1 + P(-1.16562, 2.55032) #c2 = z1 + P(1.16562, -2.55033) #z2 = z1 + P(6.39147, -3.27846) #c3 = z2 + P(-2.28453, -0.717059) #c4 = z2 + P(0.208616, 0.0654805) #z3 = z2 + P(0.307879, 0.579206) #c5 = z3 + P(0.0834647, -0.202093) #c6 = z3 + P(-0.125689, 0.304322) #z4 = z3 + P(-0.943983, 0.290851) #c7 = z4 + P(0.315031, 0.113978) #c8 = z4 + P(-0.436822, -0.158044) #z5 = z4 + P(-0.925693, -1.04174) #c9 = z5 + P(0.278103, 0.566838) z0 = P(0, -0) c0 = z0 + PP(4.13176, -90) z1 = z0 + PP(10.5333, -81) c1 = z1 + PP(2.80407, 114) c2 = z1 + PP(2.80407, -65) z2 = z1 + PP(7.18326, -27) c3 = z2 + PP(2.39442, -162) c4 = z2 + PP(0.218651, 17) z3 = z2 + PP(0.655949, 62) c5 = z3 + PP(0.21865, -67) c6 = z3 + PP(0.329256, 112) #z4 = z3 + PP(0.987774, 162) z4 = z5 - PP(1.3936, ta + -14) c7 = z4 + PP(0.335016, 19) #c8 = z4 + PP(0.464534, -160) #z5 = z4 + PP(1.3936, -131) #c9 = z5 + PP(0.631385, 63) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), knot(*z3), controlcurve(c6, c7), knot(*z4), #controlcurve(c8, c9), curve(), endknot(*z5, angle=ta) ])
def path_SELCLs(cls, ta=None, **kwargs): #M 47.3414,332.14 C 47.3414,343.896 48.347625,354.5405 51.664238,361.79687 54.98085,369.05325 62.240052,372.29206 68.75269,371.53627 69.520676,371.44714 70.469492,371.08199 70.451222,369.95681 70.432248,368.78828 67.628847,365.40401 67.628847,368.16965 67.628847,369.68462 67.644312,369.92243 67.644312,371.60708 #z0 = P(0, -0) #c0 = P(0, -4.13176) #c1 = P(0.353648, -7.87288) #z1 = P(1.5193, -10.4232) #c2 = P(2.68496, -12.9735) #c3 = P(5.23628, -14.1118) #z2 = P(7.52521, -13.8462) #c4 = P(7.79513, -13.8149) #c5 = P(8.1286, -13.6865) #z3 = P(8.12218, -13.2911) #c6 = P(8.11551, -12.8804) #c7 = P(7.13022, -11.691) #z4 = P(7.13022, -12.663) #c8 = P(7.13022, -13.1954) #c9 = P(7.13566, -13.279) z5 = P(7.13566, -13.8711) #z0 = P(0, -0) #c0 = z0 + P(0, -4.13176) #z1 = z0 + P(1.5193, -10.4232) #c1 = z1 + P(-1.16566, 2.55032) #c2 = z1 + P(1.16566, -2.55033) #z2 = z1 + P(6.00591, -3.42301) #c3 = z2 + P(-2.28893, -0.26563) #c4 = z2 + P(0.269916, 0.0313256) #z3 = z2 + P(0.596966, 0.555117) #c5 = z3 + P(0.00642117, -0.395456) #c6 = z3 + P(-0.0066686, 0.410691) #z4 = z3 + P(-0.991952, 0.628115) #c7 = z4 + P(0, 0.972011) #c8 = z4 + P(0, -0.532451) #z5 = z4 + P(0.00543533, -1.20812) #c9 = z5 + P(0, 0.592087) z0 = P(0, -0) c0 = z0 + PP(4.13176, -90) z1 = z0 + PP(10.5333, -81) c1 = z1 + PP(2.80409, 114) c2 = z1 + PP(2.80409, -65) z2 = z1 + PP(6.91288, -29) c3 = z2 + PP(2.30429, -173) c4 = z2 + PP(0.271728, 6) z3 = z2 + PP(0.815183, 42) c5 = z3 + PP(0.395508, -89) c6 = z3 + PP(0.410746, 90) #z4 = z3 + PP(1.17409, 147) z4 = z5 - PP(1.20813, ta + 1) c7 = z4 + PP(0.972011, 90) #c8 = z4 + PP(0.532451, -90) #z5 = z4 + PP(1.20813, -89) #c9 = z5 + PP(0.592087, 90) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), knot(*z3), controlcurve(c6, c7), knot(*z4), #controlcurve(c8, c9), curve(), endknot(*z5, angle=ta) ])
def path_SELCLnel(cls, ta=None, **kwargs): #M 102.922,250.703 C 102.922,262.4595 103.92825,273.104 107.24488,280.36025 110.5615,287.6165 119.155,292.34056 125.43,289.688 126.421,289.26908 127.02139,287.46132 126.37455,286.60157 125.23984,285.09337 123.63294,284.2582 122.47511,285.83628 121.16596,287.62058 123.35646,288.27148 126.5846,287.90297 #z0 = P(0, -0) #c0 = P(0, -4.13194) #c1 = P(0.353657, -7.87305) #z1 = P(1.51932, -10.4233) #c2 = P(2.68498, -12.9736) #c3 = P(5.70525, -14.6339) #z2 = P(7.91066, -13.7017) #c4 = P(8.25896, -13.5544) #c5 = P(8.46997, -12.9191) #z3 = P(8.24263, -12.6169) #c6 = P(7.84383, -12.0868) #c7 = P(7.27906, -11.7933) #z4 = P(6.87213, -12.3479) #c8 = P(6.41202, -12.975) #c9 = P(7.18189, -13.2038) z5 = P(8.31645, -13.0743) #z0 = P(0, -0) #c0 = z0 + P(0, -4.13194) #z1 = z0 + P(1.51932, -10.4233) #c1 = z1 + P(-1.16566, 2.55028) #c2 = z1 + P(1.16566, -2.55028) #z2 = z1 + P(6.39134, -3.27833) #c3 = z2 + P(-2.20541, -0.932268) #c4 = z2 + P(0.348297, 0.147234) #z3 = z2 + P(0.331971, 1.08476) #c5 = z3 + P(0.227338, -0.302168) #c6 = z3 + P(-0.398805, 0.530072) #z4 = z3 + P(-1.3705, 0.268969) #c7 = z4 + P(0.406931, 0.554632) #c8 = z4 + P(-0.460114, -0.62711) #z5 = z4 + P(1.44432, -0.726359) #c9 = z5 + P(-1.13456, -0.129516) z0 = P(0, -0) c0 = z0 + PP(4.13194, -90) z1 = z0 + PP(10.5335, -81) c1 = z1 + PP(2.80405, 114) c2 = z1 + PP(2.80405, -65) z2 = z1 + PP(7.18308, -27) c3 = z2 + PP(2.39436, -157) c4 = z2 + PP(0.378138, 22) z3 = z2 + PP(1.13442, 72) c5 = z3 + PP(0.378138, -53) c6 = z3 + PP(0.663341, 126) #z4 = z3 + PP(1.39664, 168) z4 = z5 - PP(1.61668, ta + 327) c7 = z4 + PP(0.687902, 53) #c8 = z4 + PP(0.777799, -126) #z5 = z4 + PP(1.61668, -26) #c9 = z5 + PP(1.14193, -173) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), knot(*z3), controlcurve(c6, c7), knot(*z4), #controlcurve(c8, c9), curve(), endknot(*z5, angle=ta) ])
def path_SELCLE(cls, ta=None, **kwwargs): #M 253.084,152.622 C 253.084,176.046 257.042,194.951 275.456,191.372 277.076,191.087 277.17421,190.02143 277.27512,189.041 277.32772,188.5299 277.07118,187.84914 276.59419,187.65815 275.71835,187.30746 274.45666,187.43738 273.93696,188.63271 273.29456,190.11027 274.69423,189.874 277.10523,189.874 278.1259,189.874 279.06209,189.91624 280.08276,189.91624 #z0 = P(0, -0) #c0 = P(0, -8.26347) #c1 = P(1.39629, -14.9327) #z1 = P(7.89234, -13.6701) #c2 = P(8.46384, -13.5696) #c3 = P(8.49849, -13.1937) #z2 = P(8.53409, -12.8478) #c4 = P(8.55265, -12.6675) #c5 = P(8.46214, -12.4274) #z3 = P(8.29387, -12.36) #c6 = P(7.9849, -12.2363) #c7 = P(7.5398, -12.2821) #z4 = P(7.35646, -12.7038) #c8 = P(7.12984, -13.225) #c9 = P(7.62361, -13.1417) #z5 = P(8.47416, -13.1417) #c10 = P(8.83423, -13.1417) #c11 = P(9.16449, -13.1566) z6 = P(9.52456, -13.1566) #z0 = P(0, -0) #c0 = z0 + P(0, -8.26347) #z1 = z0 + P(7.89234, -13.6701) #c1 = z1 + P(-6.49605, -1.26259) #c2 = z1 + P(0.5715, 0.100542) #z2 = z1 + P(0.641745, 0.822325) #c3 = z2 + P(-0.0355988, -0.345874) #c4 = z2 + P(0.0185561, 0.180305) #z3 = z2 + P(-0.240217, 0.487839) #c5 = z3 + P(0.168271, -0.067377) #c6 = z3 + P(-0.308977, 0.123716) #z4 = z3 + P(-0.937412, -0.343803) #c7 = z4 + P(0.183339, 0.421686) #c8 = z4 + P(-0.226624, -0.52125) #z5 = z4 + P(1.1177, -0.4379) #c9 = z5 + P(-0.850547, 0) #c10 = z5 + P(0.36007, 0) #z6 = z5 + P(1.05041, -0.0149013) #c11 = z6 + P(-0.36007, 0) z0 = P(0, -0) c0 = z0 + PP(8.26347, -90) z1 = z0 + PP(15.7849, -60) c1 = z1 + PP(6.61761, -169) c2 = z1 + PP(0.580277, 9) z2 = z1 + PP(1.0431, 52) c3 = z2 + PP(0.347701, -95) c4 = z2 + PP(0.181257, 84) z3 = z2 + PP(0.543775, 116) c5 = z3 + PP(0.181259, -21) c6 = z3 + PP(0.332825, 158) z4 = z3 + PP(0.998469, -159) c7 = z4 + PP(0.459817, 66) c8 = z4 + PP(0.568384, -113) z5 = z4 + PP(1.20042, -21) #z5 = z6 - PP(1.05051, ta + 0) c9 = z5 + PP(0.850547, 180) c10 = z5 + PP(0.36007, 0) z6 = z5 + PP(1.05051, 0) c11 = z6 + PP(0.36007, 180) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), knot(*z3), controlcurve(c6, c7), knot(*z4), controlcurve(c8, c9), knot(*z5), controlcurve(c10, c11), #curve(), endknot(*z6) ])
def set_next_head(self, flick_len=2.0, dz=P(1, 0)): if self.after.head_type == 'NER': dz = P(2, -0.3) super().set_next_head(flick_len, dz)
def path_SELCLE(cls, ta=None, **kwargs): #M 193.929,131.515 C 193.929,142.06 197.293,147.357 206.757,147.357 207.864,147.357 208.37078,146.83276 208.53078,146.23576 208.71278,145.60176 208.71341,144.79197 208.20281,144.49627 207.34673,144.0005 205.35261,144.48272 205.39959,145.47088 205.45061,146.54409 207.44496,146.23576 208.53078,146.23576 209.57762,146.23576 210.76742,146.18377 211.671,146.27827 #z0 = P(0, -0) #c0 = P(0, -3.72004) #c1 = P(1.18674, -5.58871) #z1 = P(4.52543, -5.58871) #c2 = P(4.91596, -5.58871) #c3 = P(5.09474, -5.40377) #z2 = P(5.15118, -5.19316) #c4 = P(5.21539, -4.9695) #c5 = P(5.21561, -4.68382) #z3 = P(5.03548, -4.5795) #c6 = P(4.73348, -4.40461) #c7 = P(4.03, -4.57472) #z4 = P(4.04657, -4.92332) #c8 = P(4.06457, -5.30193) #c9 = P(4.76813, -5.19316) #z5 = P(5.15118, -5.19316) #c10 = P(5.52049, -5.19316) #c11 = P(5.94022, -5.17482) z6 = P(6.25898, -5.20815) #z0 = P(0, -0) #c0 = z0 + P(0, -3.72004) #z1 = z0 + P(4.52543, -5.58871) #c1 = z1 + P(-3.33869, 0) #c2 = z1 + P(0.390525, 0) #z2 = z1 + P(0.62575, 0.395549) #c3 = z2 + P(-0.0564444, -0.210608) #c4 = z2 + P(0.0642056, 0.223661) #z3 = z2 + P(-0.115701, 0.613653) #c5 = z3 + P(0.180128, -0.104316) #c6 = z3 + P(-0.302006, 0.174897) #z4 = z3 + P(-0.988914, -0.343821) #c7 = z4 + P(-0.0165735, 0.348601) #c8 = z4 + P(0.0179987, -0.378605) #z5 = z4 + P(1.10461, -0.269833) #c9 = z5 + P(-0.383053, 0) #c10 = z5 + P(0.369302, 0) #z6 = z5 + P(1.1078, -0.0149966) #c11 = z6 + P(-0.318763, 0.0333375) z0 = P(0, -0) c0 = z0 + PP(3.72004, -90) z1 = z0 + PP(7.19119, -51) c1 = z1 + PP(3.33869, 180) c2 = z1 + PP(0.390525, 0) z2 = z1 + PP(0.740285, 32) c3 = z2 + PP(0.218041, -105) c4 = z2 + PP(0.232694, 73) z3 = z2 + PP(0.624465, 100) c5 = z3 + PP(0.208154, -30) c6 = z3 + PP(0.348993, 149) z4 = z3 + PP(1.04698, -160) c7 = z4 + PP(0.348995, 92) c8 = z4 + PP(0.379032, -87) z5 = z4 + PP(1.13709, -13) #z5 = z6 - PP(1.1079, ta + 6) c9 = z5 + PP(0.383053, 180) c10 = z5 + PP(0.369302, 0) z6 = z5 + PP(1.1079, 0) c11 = z6 + PP(0.320501, 174) return pyx.metapost.path.path([ beginknot(*z0), controlcurve(c0, c1), knot(*z1), controlcurve(c2, c3), knot(*z2), controlcurve(c4, c5), knot(*z3), controlcurve(c6, c7), knot(*z4), controlcurve(c8, c9), knot(*z5), controlcurve(c10, c11), #curve(), endknot(*z6) ])