/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: July 11, 1993 8:18:36 pm PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: GGSliceImplE, module: GGSliceImplE */ /* switches: bcfhklnouw */ #include #include static char versionStamp[] = "@(#)mob_version [2898489908,327952352] GGSliceImplE"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2;} W3; typedef struct {word f0, f1, f2, f3, f4;} W5; typedef W2 *W2Pt; typedef W3 *W3Pt; typedef W5 *W5Pt; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef struct {W8 f; W8 r;} W16; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {word f0, f1, f2, f3;} W4; typedef struct {W8 f; word r;} W9; typedef struct {W8 f; W2 r;} W10; typedef struct {W8 f; W3 r;} W11; #define SOURCE(p, l) /* source p, l */ #define SGNCK(i) ((int) (word) (i) < 0 ? XR_RaiseArithmeticFault(): i ) static float fc90 = -1.0; static float fc95 = 0.0; static float fc187 = 8802.04; static float fc197 = 8607.22; static float fc202 = 8702.26; static float fc210 = 8701.135; static float fc221 = 8701.23; static float fc238 = 8607.30; static float fc249 = 8610.29; #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR_RaiseBoundsFault()) : (idx) ) static float fc319 = 1E16; static float fc332 = 9999.0; #define FABS(f, t) ( ((t=(f)) >= (float) 0.0) ? (t) : (- (t)) ) static void NoName_Q5760(); static void GGSliceImplE_P0(); static void BuildMoreTrajSliceClass_P60(); static void AllStrokeEndsEqual_P120(); static word AllStrokeWidthsEqual_P180(); static void AllStrokeColorsEqual_P240(); static void AllDashesEqual_P300(); static word TrajDescribe_P360(); static word TrajDescribeHit_P420(); static void TrajFileout_P480(); static word TrajFilein_P540(); static word RoleFromRope_P600(); static word RoleToRope_P660(); static word TrajPointsInDescriptor_P720(); static void TrajWalkPointsInDescriptor_P780(); static word TrajPointPairsInDescriptor_P840(); static word TrajSegmentsInDescriptor_P900(); static word TrajWalkSegments_P960(); static void TrajNextPoint_P1020(); static void TrajNextPointPair_P1080(); static void TrajNextSegment_P1140(); static void TrajClosestPoint_P1200(); static void TrajClosestJointToHitData_P1260(); static void FindJointNormal_P4044(); static word NearestJointToHitData_P4296(); static void TrajClosestPointAndTangent_P1320(); static void TrajClosestSegment_P1380(); static word InsideContour_P1440(); static word HanrahanInsideContour_P1500(); static void PolylineOfTraj_P1560(); static word GetPolyline_P4500(); static void TrajFilledPathsUnderPoint_P1620(); static void TrajLineIntersection_P1680(); static void TrajCircleIntersection_P1740(); static word TrajHitDataAsSimpleCurve_P1800(); static void TrajSetDefaults_P1860(); static word TrajSetStrokeWidth_P1920(); static void TrajGetStrokeWidth_P1980(); static word DoCheckWidth_P5040(); static void TrajSetStrokeEnd_P2040(); static void TrajGetStrokeEnd_P2100(); static word DoCheckEnd_P5196(); static void TrajSetStrokeJoint_P2160(); static void TrajGetStrokeJoint_P2220(); static void TrajSetStrokeColor_P2280(); static void TrajGetStrokeColor_P2340(); static word DoCheckColor_P5400(); static void TrajSetArrows_P2400(); static void TrajGetArrows_P2460(); static void TrajSetDashed_P2520(); static void TrajGetDashed_P2580(); static word DoCheckDashes_P5604(); static word TrajSetOrientation_P2640(); static void TrajGetOrientation_P2700(); static word FetchSliceClass_P2760(); static void RegisterSliceClass_P2820(); static word DescriptorFromParts_P2880(); static void UnlinkAllSliceDescriptors_P2940(); static void UnlinkSlice_P3000(); static word EntitiesInSlice_P3060(); static void Init_P3120(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\106\354\000\000"}; static struct {unsigned f; char r[8];} string2 = {262148, "\004\200@\034\000\000\000"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\107\050\000\000"}; static struct {unsigned f; char r[4];} string4 = {131074, "\004\007\000"}; static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\050\310\006\072\300\004\273\314\121\100\214\000\000"}; static struct {unsigned f; char r[16];} string6 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[4];} string7 = {65537, "\001\000\000"}; static struct {unsigned f; char r[48];} string8 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\247\365\203\234\300\047\265\225\046\100\310\005\004\162\145\163\164\214\216\257\300\247\365\203\234\300\047\265\225\046\100\310\261\000\000\000"}; static struct {unsigned f; char r[4];} string9 = {131074, "\004\003\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\100\310\000\000"}; static struct {unsigned f; char r[48];} string11 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\254\303\162\064\300\023\214\047\340\100\200\005\004\162\145\163\164\214\216\257\300\254\303\162\064\300\023\214\047\340\100\200\261\000\000\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\254\303\162\064\300\023\214\047\340\100\200\000\000"}; static struct {unsigned f; char r[48];} string13 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\371\314\343\307\300\031\056\017\130\100\324\005\004\162\145\163\164\214\216\257\300\371\314\343\307\300\031\056\017\130\100\324\261\000\000\000"}; static struct {unsigned f; char r[44];} string14 = {2752556, "\260\006\005\146\151\162\163\164\257\300\247\031\224\326\300\123\162\224\023\100\164\005\004\162\145\163\164\214\257\300\247\031\224\326\300\123\162\224\023\100\164\261\000"}; static struct {unsigned f; char r[4];} string15 = {131074, "\003\002\000"}; static struct {unsigned f; char r[48];} string16 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\254\073\314\103\300\064\024\167\046\102\220\005\004\162\145\163\164\214\216\257\300\254\073\314\103\300\064\024\167\046\102\220\261\000\000\000"}; static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\254\073\314\103\300\064\024\167\046\102\220\000\000"}; static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\107\224\000\000"}; static struct {unsigned f; char r[4];} string19 = {131074, "\004\011\000"}; static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\254\303\162\064\300\023\214\047\340\101\224\000\000"}; static struct {unsigned f; char r[16];} string21 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\107\210\000\000"}; static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\254\303\162\064\300\023\214\047\340\101\210\000\000"}; static struct {unsigned f; char r[4];} string23 = {131074, "\004\006\000"}; static struct {unsigned f; char r[4];} string24 = {131076, "\216\251\000"}; static struct {unsigned f; char r[20];} string25 = {1179668, "\260\006\005\146\151\162\163\164\217\005\004\162\145\163\164\214\217\261\000"}; static struct {unsigned f; char r[4];} string26 = {131076, "j:\000"}; static struct {unsigned f; char r[4];} string27 = {131076, "e:\000"}; static struct {unsigned f; char r[4];} string28 = {131076, "w:\000"}; static struct {unsigned f; char r[4];} string29 = {131076, "c:\000"}; static struct {unsigned f; char r[4];} string30 = {131076, "d:\000"}; static struct {unsigned f; char r[8];} string31 = {458760, "arrows:"}; static struct {unsigned f; char r[8];} string32 = {262152, "Traj\000\000\000"}; static struct {unsigned f; char r[8];} string33 = {393224, "Circle\000"}; static struct {unsigned f; char r[8];} string34 = {393224, " fwd: \000"}; static struct {unsigned f; char r[8];} string35 = {262152, "Disc\000\000\000"}; static struct {unsigned f; char r[8];} string36 = {262152, "fwd:\000\000\000"}; static struct {unsigned f; char r[8];} string37 = {327688, "fence\000\000"}; static struct {unsigned f; char r[8];} string38 = {262152, "hole\000\000\000"}; static struct {unsigned f; char r[8];} string39 = {262152, "open\000\000\000"}; static struct {unsigned f; char r[4];} string40 = {65540, ")\000\000"}; static struct {unsigned f; char r[4];} string41 = {131076, ") \000"}; static struct {unsigned f; char r[8];} string42 = {458760, " %g %g "}; static struct {unsigned f; char r[12];} string43 = {524300, " (%g %g \000\000\000"}; static struct {unsigned f; char r[8];} string44 = {327688, " (%g \000\000"}; static struct {unsigned f; char r[8];} string45 = {393224, " %g %g\000"}; static struct {unsigned f; char r[4];} string46 = {196612, "d: "}; static struct {unsigned f; char r[4];} string47 = {196612, "Set"}; static struct {unsigned f; char r[4];} string48 = {196612, "c: "}; static struct {unsigned f; char r[12];} string49 = {589836, "ChangeHue\000\000"}; static struct {unsigned f; char r[24];} string50 = {1441816, "Slice class not found.\000"}; static struct {unsigned f; char r[8];} string51 = {393224, "w: %g \000"}; static struct {unsigned f; char r[8];} string52 = {262152, " e: \000\000\000"}; static struct {unsigned f; char r[4];} string53 = {196612, "j: "}; static struct {unsigned f; char r[24];} string54 = {1441816, " (%g) [%g] arrows: %g \000"}; static struct {unsigned f; char r[28];} string55 = {1769500, "GGSlice.EntitiesInSlice NYI"}; static struct {unsigned f; char r[8];} string56 = {262152, "Text\000\000\000"}; static struct {unsigned f; char r[4];} string57 = {131076, "IP\000"}; static struct {unsigned f; char r[4];} string58 = {196612, "Box"}; static struct {unsigned f; char r[8];} string59 = {458760, "Outline"}; static struct {unsigned f; char r[8];} string60 = {458760, "Cluster"}; static struct {unsigned f; char r[20];} string61 = {1114132, "xerox/pressfonts/\000\000"}; static struct {unsigned f; char r[20];} string62 = {1114132, "xerox/tiogafonts/\000\000"}; static struct {unsigned f; char r[16];} string63 = {851984, "\257\300\254\303\162\064\300\023\214\047\340\100\164\000\000"}; static struct {unsigned f; char r[20];} string64 = {1114129, "\006\005\030\001\034\001\040\001\044\001\100\174\010\000\004\046\001\000\000"}; static struct {unsigned f; char r[16];} string65 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string66 = {851984, "\257\300\322\334\347\304\300\124\107\000\027\100\150\000\000"}; static struct {unsigned f; char r[16];} string67 = {851984, "\257\300\265\217\206\011\300\172\271\371\033\100\150\000\000"}; static struct {unsigned f; char r[16];} string68 = {851984, "\257\300\231\005\151\136\300\275\231\323\274\100\150\000\000"}; static struct {unsigned f; char r[16];} string69 = {851984, "\257\300\236\155\220\261\300\040\017\026\014\100\150\000\000"}; static struct {unsigned f; char r[16];} string70 = {851984, "\257\300\045\215\147\016\300\153\043\150\276\100\150\000\000"}; static struct {unsigned f; char r[16];} string71 = {851984, "\257\300\043\211\212\366\300\343\003\307\242\100\150\000\000"}; static struct {unsigned f; char r[16];} string72 = {851984, "\257\300\261\002\056\176\300\055\321\222\125\100\150\000\000"}; static struct {unsigned f; char r[4];} string73 = {1195856748, "ice"}; static struct {unsigned f; char r[16];} string74 = {851984, "\257\300U$)\337\300Xo9\243@t\000\000"}; static struct {unsigned f; char r[16];} string75 = {851984, "\257\300\336\025\013\356\300\216\115\352\271\100\150\000\000"}; static struct {unsigned f; char r[16];} string76 = {851984, "\257\300\050\310\006\072\300\004\273\314\121\100\150\000\000"}; static struct {unsigned f; char r[16];} string77 = {851984, "\257\300\370\132\042\205\300\045\133\011\125\100\150\000\000"}; static struct {unsigned f; char r[16];} string78 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"}; static struct {unsigned f; char r[16];} string79 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"}; static struct {unsigned f; char r[16];} string80 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string81 = {851984, "\257\300\004\142\347\110\300\363\053\254\345\100\150\000\000"}; static struct { word f0[69]; word f69; word f70; word f71; word f72; word f73; word f74; word f75; word f76; word f77; word f78; word f79; word f80; word f81; word f82; word f83; word f84; word f85; word f86; word f87; word f88; word f89; word f90; word f91; word f92; word f93; word f94; word f95; word f96; word f97; word f98; word f99; word f100; word f101; word f102; word f103; word f104; word f105; word f106; word f107; word f108; word f109; word f110; word f111; word f112; word f113; word f114; word f115; word f116; word f117; word f118; word f119; word f120; word f121; word f122; word f123; word f124; word f125; word f126; word f127; word f128; word f129; word f130; word f131; word f132; word f133; word f134; word f135; word f136; word f137; word f138; word f139; word f140; word f141; word f142; word f143; word f144; word f145; word f146; word f147; word f148; word f149; word f150; word f151; word f152; word f153; word f154; word f155; word f156; word f157; word f158; word f159; word f160; word f161; word f162; word f163; word f164; word f165; word f166; word f167; word f168; word f169; word f170; word f171; word f172; word f173; word f174[18]; } globalframe = { {0}, (word) Init_P3120, 0, (word) EntitiesInSlice_P3060, 0, (word) UnlinkSlice_P3000, 0, (word) UnlinkAllSliceDescriptors_P2940, 0, (word) DescriptorFromParts_P2880, 0, (word) RegisterSliceClass_P2820, 0, (word) FetchSliceClass_P2760, 0, (word) TrajGetOrientation_P2700, 0, (word) TrajSetOrientation_P2640, 0, (word) TrajGetDashed_P2580, 0, (word) TrajSetDashed_P2520, 0, (word) TrajGetArrows_P2460, 0, (word) TrajSetArrows_P2400, 0, (word) TrajGetStrokeColor_P2340, 0, (word) TrajSetStrokeColor_P2280, 0, (word) TrajGetStrokeJoint_P2220, 0, (word) TrajSetStrokeJoint_P2160, 0, (word) TrajGetStrokeEnd_P2100, 0, (word) TrajSetStrokeEnd_P2040, 0, (word) TrajGetStrokeWidth_P1980, 0, (word) TrajSetStrokeWidth_P1920, 0, (word) TrajSetDefaults_P1860, 0, (word) TrajHitDataAsSimpleCurve_P1800, 0, (word) TrajCircleIntersection_P1740, 0, (word) TrajLineIntersection_P1680, 0, (word) TrajFilledPathsUnderPoint_P1620, 0, (word) PolylineOfTraj_P1560, 0, (word) HanrahanInsideContour_P1500, 0, (word) InsideContour_P1440, 0, (word) TrajClosestSegment_P1380, 0, (word) TrajClosestPointAndTangent_P1320, 0, (word) TrajClosestJointToHitData_P1260, 0, (word) TrajClosestPoint_P1200, 0, (word) TrajNextSegment_P1140, 0, (word) TrajNextPointPair_P1080, 0, (word) TrajNextPoint_P1020, 0, (word) TrajWalkSegments_P960, 0, (word) TrajSegmentsInDescriptor_P900, 0, (word) TrajPointPairsInDescriptor_P840, 0, (word) TrajWalkPointsInDescriptor_P780, 0, (word) TrajPointsInDescriptor_P720, 0, (word) RoleToRope_P660, 0, (word) RoleFromRope_P600, 0, (word) TrajFilein_P540, 0, (word) TrajFileout_P480, 0, (word) TrajDescribeHit_P420, 0, (word) TrajDescribe_P360, 0, (word) AllDashesEqual_P300, 0, (word) AllStrokeColorsEqual_P240, 0, (word) AllStrokeWidthsEqual_P180, 0, (word) AllStrokeEndsEqual_P120, 0, (word) BuildMoreTrajSliceClass_P60, 0, (word) GGSliceImplE_P0, {0} }; static void NoName_Q5760() { register ptr gf_c0720 = (ptr) &globalframe; word var_c75316; (* (( (ptr) gf_c0720)+11) ) = (word) XR_GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf_c0720)+12) ) = (word) XR_GetTypeIndex((word) &string3, 0, (word) &string4); (* (( (ptr) gf_c0720)+13) ) = (word) XR_GetTypeIndexS((word) (&string5)); (* (( (ptr) gf_c0720)+15) ) = (word) XR_GetTypeIndex((word) &string6, 0, (word) &string7); (* (( (ptr) gf_c0720)+16) ) = (word) XR_GetTypeIndex((word) &string8, 0, (word) &string9); (* (( (ptr) gf_c0720)+17) ) = (word) XR_GetTypeIndex((word) &string10, 0, (word) &string9); (* (( (ptr) gf_c0720)+18) ) = (word) XR_GetTypeIndex((word) &string11, 0, (word) &string9); (* (( (ptr) gf_c0720)+19) ) = (word) XR_GetTypeIndex((word) &string12, 0, (word) &string9); (* (( (ptr) gf_c0720)+20) ) = (word) XR_GetTypeIndex((word) &string13, 0, (word) &string9); (* (( (ptr) gf_c0720)+21) ) = (word) XR_GetTypeIndex((word) &string14, 0, (word) &string15); (* (( (ptr) gf_c0720)+22) ) = (word) XR_GetTypeIndex((word) &string16, 0, (word) &string9); (* (( (ptr) gf_c0720)+23) ) = (word) XR_GetTypeIndexS((word) (&string17)); (* (( (ptr) gf_c0720)+24) ) = (word) XR_GetTypeIndex((word) &string18, 0, (word) &string19); (* (( (ptr) gf_c0720)+25) ) = (word) XR_GetTypeIndex((word) &string20, 0, (word) &string7); (* (( (ptr) gf_c0720)+26) ) = (word) XR_GetTypeIndex((word) &string21, 0, (word) &string19); (* (( (ptr) gf_c0720)+27) ) = (word) XR_GetTypeIndex((word) &string22, 0, (word) &string23); (* (( (ptr) gf_c0720)+29) ) = (word) XR_GetTypeIndex((word) &string24, 0, (word) &string7); (* (( (ptr) gf_c0720)+30) ) = (word) XR_GetTypeIndex((word) &string25, 0, (word) &string9); (* (ptr) (( (bPt) gf_c0720)+124) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string26); (* (ptr) (( (bPt) gf_c0720)+128) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string27); (* (ptr) (( (bPt) gf_c0720)+132) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string28); (* (ptr) (( (bPt) gf_c0720)+136) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string29); (* (ptr) (( (bPt) gf_c0720)+140) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string30); (* (ptr) (( (bPt) gf_c0720)+144) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string31); (* (ptr) (( (bPt) gf_c0720)+148) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string32); (* (ptr) (( (bPt) gf_c0720)+152) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string33); (* (ptr) (( (bPt) gf_c0720)+156) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string34); (* (ptr) (( (bPt) gf_c0720)+160) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string35); (* (ptr) (( (bPt) gf_c0720)+164) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string36); (* (ptr) (( (bPt) gf_c0720)+168) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string37); (* (ptr) (( (bPt) gf_c0720)+172) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string38); (* (ptr) (( (bPt) gf_c0720)+176) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string39); (* (ptr) (( (bPt) gf_c0720)+180) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string40); (* (ptr) (( (bPt) gf_c0720)+184) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string41); (* (ptr) (( (bPt) gf_c0720)+188) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string42); (* (ptr) (( (bPt) gf_c0720)+192) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string43); (* (ptr) (( (bPt) gf_c0720)+196) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string44); (* (ptr) (( (bPt) gf_c0720)+200) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string45); (* (ptr) (( (bPt) gf_c0720)+204) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string46); (* (ptr) (( (bPt) gf_c0720)+208) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string47); (* (ptr) (( (bPt) gf_c0720)+212) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string48); (* (ptr) (( (bPt) gf_c0720)+216) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string49); (* (ptr) (( (bPt) gf_c0720)+220) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string50); (* (ptr) (( (bPt) gf_c0720)+224) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string51); (* (ptr) (( (bPt) gf_c0720)+228) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string52); (* (ptr) (( (bPt) gf_c0720)+232) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string53); (* (ptr) (( (bPt) gf_c0720)+236) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string54); (* (ptr) (( (bPt) gf_c0720)+240) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string55); (* (ptr) (( (bPt) gf_c0720)+244) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string56); (* (ptr) (( (bPt) gf_c0720)+248) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string57); (* (ptr) (( (bPt) gf_c0720)+252) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string58); (* (ptr) (( (bPt) gf_c0720)+256) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string59); (* (ptr) (( (bPt) gf_c0720)+260) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string60); (* (ptr) (( (bPt) gf_c0720)+264) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+29) ), (word) &string32); (* (ptr) (( (bPt) gf_c0720)+268) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string61); (* (ptr) (( (bPt) gf_c0720)+272) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0720)+15) ), (word) &string62); (void) XR_DeclareGlobalFrame((word) "GGSliceImplE", &globalframe, (word) XR_GetTypeIndex((word) &string63, 0, (word) &string64) , (word) (( (bPt) gf_c0720)+692)/* var_c70580 */ ); var_c75316 = (word) XR_ImportInterface((word) "Atom", (word) XR_GetTypeIndexS((word) (&string65)), 16); (* (( (ptr) gf_c0720)+183)/* var_c71476 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 67895555); (void) XR_ImportProcS(var_c75316, 67372289); var_c75316 = (word) XR_ImportInterface((word) "Feedback", (word) XR_GetTypeIndexS((word) (&string66)), 25); (* (( (ptr) gf_c0720)+175)/* var_c70612 */ ) = var_c75316; var_c75316 = (word) XR_ImportInterface((word) "GGBoundBox", (word) XR_GetTypeIndexS((word) (&string67)), 24); (* (( (ptr) gf_c0720)+190)/* var_c72852 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 67372033); (void) XR_ImportProcS(var_c75316, 68162051); var_c75316 = (word) XR_ImportInterface((word) "GGCoreOps", (word) XR_GetTypeIndexS((word) (&string68)), 37); (* (( (ptr) gf_c0720)+178)/* var_c70804 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 67641090); var_c75316 = (word) XR_ImportInterface((word) "GGParseIn", (word) XR_GetTypeIndexS((word) (&string69)), 26); (* (( (ptr) gf_c0720)+184)/* var_c71956 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 67373313); (void) XR_ImportProcS(var_c75316, 134483713); (void) XR_ImportProcS(var_c75316, 67375873); (void) XR_ImportProcS(var_c75316, 67636226); (void) XR_ImportProcS(var_c75316, 67376897); (void) XR_ImportProcS(var_c75316, 67373569); (void) XR_ImportProcS(var_c75316, 67376129); (void) XR_ImportProcS(var_c75316, 67373825); (void) XR_ImportProcS(var_c75316, 67376385); (void) XR_ImportProcS(var_c75316, 67372033); (void) XR_ImportProcS(var_c75316, 525826); (void) XR_ImportProcS(var_c75316, 525570); var_c75316 = (word) XR_ImportInterface((word) "GGParseOut", (word) XR_GetTypeIndexS((word) (&string70)), 15); (* (( (ptr) gf_c0720)+182)/* var_c71188 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 526594); (void) XR_ImportProcS(var_c75316, 787714); (void) XR_ImportProcS(var_c75316, 526850); (void) XR_ImportProcS(var_c75316, 524802); (void) XR_ImportProcS(var_c75316, 524290); (void) XR_ImportProcS(var_c75316, 527106); (void) XR_ImportProcS(var_c75316, 524546); var_c75316 = (word) XR_ImportInterface((word) "GGSegment", (word) XR_GetTypeIndexS((word) (&string71)), 47); (* (( (ptr) gf_c0720)+186)/* var_c72116 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 68944900); (void) XR_ImportProcS(var_c75316, 67376129); var_c75316 = (word) XR_ImportInterface((word) "GGSequence", (word) XR_GetTypeIndexS((word) (&string72)), 58); (* (( (ptr) gf_c0720)+180)/* var_c70900 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 671621122); (void) XR_ImportProcS(var_c75316, 67905283); (void) XR_ImportProcS(var_c75316, 67643394); (void) XR_ImportProcS(var_c75316, 67642626); (void) XR_ImportProcS(var_c75316, 67634178); (void) XR_ImportProcS(var_c75316, 67897091); (void) XR_ImportProcS(var_c75316, 67381761); (void) XR_ImportProcS(var_c75316, 201600513); (void) XR_ImportProcS(var_c75316, 264961); (void) XR_ImportProcS(var_c75316, 264705); (void) XR_ImportProcS(var_c75316, 67380225); (void) XR_ImportProcS(var_c75316, 67371521); (void) XR_ImportProcS(var_c75316, 797955); (void) XR_ImportProcS(var_c75316, 799235); (void) XR_ImportProcS(var_c75316, 67385601); (void) XR_ImportProcS(var_c75316, 67383553); (void) XR_ImportProcS(var_c75316, 201600769); (void) XR_ImportProcS(var_c75316, 67644418); (void) XR_ImportProcS(var_c75316, 134490881); (void) XR_ImportProcS(var_c75316, 67642882); var_c75316 = (word) XR_ImportInterface((word) &string73, (word) XR_GetTypeIndexS((word) (&string74)), 128); (* (( (ptr) gf_c0720)+176)/* var_c70644 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 67123712); (void) XR_ImportProcS(var_c75316, 67112192); (void) XR_ImportProcS(var_c75316, 67124224); (void) XR_ImportProcS(var_c75316, 67120896); (void) XR_ImportProcS(var_c75316, 67118848); (void) XR_ImportProcS(var_c75316, 67121664); (void) XR_ImportProcS(var_c75316, 67112704); (void) XR_ImportProcS(var_c75316, 279297); (void) XR_ImportProcS(var_c75316, 278785); (void) XR_ImportProcS(var_c75316, 67634178); (void) XR_ImportProcS(var_c75316, 134772738); (void) XR_ImportProcS(var_c75316, 1341189); var_c75316 = (word) XR_ImportInterface((word) "GGSliceOps", (word) XR_GetTypeIndexS((word) (&string75)), 73); (* (( (ptr) gf_c0720)+189)/* var_c72628 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 1324805); (void) XR_ImportProcS(var_c75316, 1850631); (void) XR_ImportProcS(var_c75316, 1061636); (void) XR_ImportProcS(var_c75316, 1062148); (void) XR_ImportProcS(var_c75316, 68169988); (void) XR_ImportProcS(var_c75316, 67634434); (void) XR_ImportProcS(var_c75316, 134752002); var_c75316 = (word) XR_ImportInterface((word) "GGTraj", (word) XR_GetTypeIndexS((word) (&string76)), 55); (* (( (ptr) gf_c0720)+177)/* var_c70676 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 266497); (void) XR_ImportProcS(var_c75316, 67375617); (void) XR_ImportProcS(var_c75316, 67639810); (void) XR_ImportProcS(var_c75316, 67379713); (void) XR_ImportProcS(var_c75316, 470823427); (void) XR_ImportProcS(var_c75316, 67642626); (void) XR_ImportProcS(var_c75316, 67643394); (void) XR_ImportProcS(var_c75316, 402927873); (void) XR_ImportProcS(var_c75316, 470823683); (void) XR_ImportProcS(var_c75316, 537932803); (void) XR_ImportProcS(var_c75316, 787203); (void) XR_ImportProcS(var_c75316, 525314); (void) XR_ImportProcS(var_c75316, 68157956); (void) XR_ImportProcS(var_c75316, 67633153); (void) XR_ImportProcS(var_c75316, 134749186); (void) XR_ImportProcS(var_c75316, 67379969); (void) XR_ImportProcS(var_c75316, 67379457); (void) XR_ImportProcS(var_c75316, 67639554); var_c75316 = (word) XR_ImportInterface((word) "GGUtility", (word) XR_GetTypeIndexS((word) (&string77)), 42); (* (( (ptr) gf_c0720)+179)/* var_c70868 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 67641346); (void) XR_ImportProcS(var_c75316, 67379457); (void) XR_ImportProcS(var_c75316, 67381505); (void) XR_ImportProcS(var_c75316, 67380481); (void) XR_ImportProcS(var_c75316, 67643138); (void) XR_ImportProcS(var_c75316, 67905027); (void) XR_ImportProcS(var_c75316, 67643394); (void) XR_ImportProcS(var_c75316, 67641858); var_c75316 = (word) XR_ImportInterface((word) "Imager", (word) XR_GetTypeIndexS((word) (&string78)), 84); (* (( (ptr) gf_c0720)+185)/* var_c72052 */ ) = var_c75316; var_c75316 = (word) XR_ImportInterface((word) "IO", (word) XR_GetTypeIndexS((word) (&string79)), 103); (* (( (ptr) gf_c0720)+181)/* var_c71156 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 1063171); (void) XR_ImportProcS(var_c75316, 528642); (void) XR_ImportProcS(var_c75316, 1071364); (void) XR_ImportProcS(var_c75316, 2111493); var_c75316 = (word) XR_ImportInterface((word) "Rope", (word) XR_GetTypeIndexS((word) (&string80)), 43); (* (( (ptr) gf_c0720)+188)/* var_c72404 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 67896323); var_c75316 = (word) XR_ImportInterface((word) "Vectors2d", (word) XR_GetTypeIndexS((word) (&string81)), 21); (* (( (ptr) gf_c0720)+187)/* var_c72212 */ ) = var_c75316; (void) XR_ImportProcS(var_c75316, 68158722); (void) XR_ImportProcS(var_c75316, 135270914); (void) XR_ImportProcS(var_c75316, 68161794); (void) XR_ImportProcS(var_c75316, 135268098); var_c75316 = (word) XR_ExportInterface((word) &string73, (word) XR_GetTypeIndexS((word) (&string74)), 128); (* (( (ptr) gf_c0720)+191)/* var_c75348 */ ) = var_c75316; (void) XR_ExportProcS(var_c75316, (word) (( (bPt) gf_c0720)+316)/* var_c69076 */ , 262657, (word) "RegisterSliceClass"); (void) XR_ExportProcS(var_c75316, (word) (( (bPt) gf_c0720)+324)/* var_c69108 */ , 67371777, (word) "FetchSliceClass"); (void) XR_ExportProcS(var_c75316, (word) (( (bPt) gf_c0720)+308)/* var_c69044 */ , 67634178, (word) "DescriptorFromParts") ; (void) XR_ExportProcS(var_c75316, (word) (( (bPt) gf_c0720)+284)/* var_c68948 */ , 67372289, (word) "EntitiesInSlice"); (void) XR_ExportProcS(var_c75316, (word) (( (bPt) gf_c0720)+684)/* var_c70548 */ , 277249, (word) "BuildMoreTrajSliceClass") ; (void) XR_ExportProcS(var_c75316, (word) (( (bPt) gf_c0720)+292)/* var_c68980 */ , 279297, (word) "UnlinkSlice"); } static void GGSliceImplE_P0(formal_c081, formal_c080) word formal_c081; word formal_c080; { register ptr gf_c75380 = (ptr) &globalframe; /* GGSliceImplE: */ SOURCE(293, 43462) SOURCE(3743, 24) (* (( (ptr) gf_c75380)+4)/* Problem_v5464 */ ) = (* (ptr) (* (( (ptr) (* (( (ptr) gf_c75380)+175)/* var_c70612 */ ))+28) ) ); SOURCE(43749, 6) (void) Init_P3120(); } static void BuildMoreTrajSliceClass_P60(class_v7424) word class_v7424; { register ptr gf_c75412 = (ptr) &globalframe; /* BuildMoreTrajSliceClass: */ SOURCE(3804, 1650) SOURCE(3865, 29) (* (( (ptr) class_v7424)+17) ) = (word) (( (bPt) gf_c75412)+644)/* var_c70388 */ ; SOURCE(3896, 35) (* (( (ptr) class_v7424)+18) ) = (word) (( (bPt) gf_c75412)+636)/* var_c70356 */ ; SOURCE(3933, 27) (* (( (ptr) class_v7424)+19) ) = (word) (( (bPt) gf_c75412)+628)/* var_c70324 */ ; SOURCE(3962, 25) (* (( (ptr) class_v7424)+20) ) = (word) (( (bPt) gf_c75412)+620)/* var_c70292 */ ; SOURCE(3989, 49) (* (( (ptr) class_v7424)+30) ) = (word) (( (bPt) gf_c75412)+596)/* var_c70196 */ ; SOURCE(4040, 57) (* (( (ptr) class_v7424)+31) ) = (word) (( (bPt) gf_c75412)+588)/* var_c70164 */ ; SOURCE(4099, 57) (* (( (ptr) class_v7424)+32) ) = (word) (( (bPt) gf_c75412)+580)/* var_c70132 */ ; SOURCE(4158, 53) (* (( (ptr) class_v7424)+33) ) = (word) (( (bPt) gf_c75412)+572)/* var_c70100 */ ; SOURCE(4213, 37) (* (( (ptr) class_v7424)+34) ) = (word) (( (bPt) gf_c75412)+564)/* var_c70068 */ ; SOURCE(4252, 31) (* (( (ptr) class_v7424)+35) ) = (word) (( (bPt) gf_c75412)+556)/* var_c70036 */ ; SOURCE(4285, 39) (* (( (ptr) class_v7424)+36) ) = (word) (( (bPt) gf_c75412)+548)/* var_c70004 */ ; SOURCE(4326, 35) (* (( (ptr) class_v7424)+37) ) = (word) (( (bPt) gf_c75412)+540)/* var_c69972 */ ; SOURCE(4363, 37) (* (( (ptr) class_v7424)+38) ) = (word) (( (bPt) gf_c75412)+532)/* var_c69940 */ ; SOURCE(4402, 55) (* (( (ptr) class_v7424)+39) ) = (word) (( (bPt) gf_c75412)+524)/* var_c69908 */ ; SOURCE(4459, 57) (* (( (ptr) class_v7424)+40) ) = (word) (( (bPt) gf_c75412)+516)/* var_c69876 */ ; SOURCE(4518, 41) (* (( (ptr) class_v7424)+41) ) = (word) (( (bPt) gf_c75412)+508)/* var_c69844 */ ; SOURCE(4561, 55) (* (( (ptr) class_v7424)+42) ) = (word) (( (bPt) gf_c75412)+476)/* var_c69716 */ ; SOURCE(4618, 45) (* (( (ptr) class_v7424)+43) ) = (word) (( (bPt) gf_c75412)+468)/* var_c69684 */ ; SOURCE(4665, 49) (* (( (ptr) class_v7424)+44) ) = (word) (( (bPt) gf_c75412)+460)/* var_c69652 */ ; SOURCE(4716, 53) (* (( (ptr) class_v7424)+45) ) = (word) (( (bPt) gf_c75412)+452)/* var_c69620 */ ; SOURCE(4771, 35) (* (( (ptr) class_v7424)+46) ) = (word) (( (bPt) gf_c75412)+444)/* var_c69588 */ ; SOURCE(4808, 41) (* (( (ptr) class_v7424)+47) ) = (word) (( (bPt) gf_c75412)+436)/* var_c69556 */ ; SOURCE(4851, 41) (* (( (ptr) class_v7424)+48) ) = (word) (( (bPt) gf_c75412)+428)/* var_c69524 */ ; SOURCE(4894, 37) (* (( (ptr) class_v7424)+49) ) = (word) (( (bPt) gf_c75412)+420)/* var_c69492 */ ; SOURCE(4933, 37) (* (( (ptr) class_v7424)+50) ) = (word) (( (bPt) gf_c75412)+412)/* var_c69460 */ ; SOURCE(4972, 41) (* (( (ptr) class_v7424)+51) ) = (word) (( (bPt) gf_c75412)+404)/* var_c69428 */ ; SOURCE(5015, 41) (* (( (ptr) class_v7424)+52) ) = (word) (( (bPt) gf_c75412)+396)/* var_c69396 */ ; SOURCE(5058, 41) (* (( (ptr) class_v7424)+53) ) = (word) (( (bPt) gf_c75412)+388)/* var_c69364 */ ; SOURCE(5101, 41) (* (( (ptr) class_v7424)+54) ) = (word) (( (bPt) gf_c75412)+380)/* var_c69332 */ ; SOURCE(5144, 45) (* (( (ptr) class_v7424)+55) ) = (* (( (ptr) (* (( (ptr) gf_c75412)+176)/* var_c70644 */ ))+123) ); SOURCE(5191, 45) (* (( (ptr) class_v7424)+56) ) = (* (( (ptr) (* (( (ptr) gf_c75412)+176)/* var_c70644 */ ))+124) ); SOURCE(5238, 31) (* (( (ptr) class_v7424)+57) ) = (word) (( (bPt) gf_c75412)+372)/* var_c69300 */ ; SOURCE(5271, 31) (* (( (ptr) class_v7424)+58) ) = (word) (( (bPt) gf_c75412)+364)/* var_c69268 */ ; SOURCE(5304, 31) (* (( (ptr) class_v7424)+59) ) = (word) (( (bPt) gf_c75412)+356)/* var_c69236 */ ; SOURCE(5337, 31) (* (( (ptr) class_v7424)+60) ) = (word) (( (bPt) gf_c75412)+348)/* var_c69204 */ ; SOURCE(5370, 41) (* (( (ptr) class_v7424)+61) ) = (word) (( (bPt) gf_c75412)+340)/* var_c69172 */ ; SOURCE(5413, 41) (* (( (ptr) class_v7424)+62) ) = (word) (( (bPt) gf_c75412)+332)/* var_c69140 */ ; } static void AllStrokeEndsEqual_P120(formal_c091, slice_v7484) word formal_c091; word slice_v7484; { register ptr gf_c75444 = (ptr) &globalframe; word allEqual_v7528; word end_v7556; word seg_v15812 = 0; word firstSeg_v15840; word hiSegment_v15868; /* AllStrokeEndsEqual: */ SOURCE(5460, 369) SOURCE(5460, 369) allEqual_v7528 = 0; SOURCE(5567, 49) { word pd82; pd82 = (* (( (ptr) (* (( (ptr) gf_c75444)+177)/* var_c70676 */ ))+29) ); firstSeg_v15840 = (word) ( *( (fPt) ((* (ptr) pd82 ))))(slice_v7484, 0, pd82); }; SOURCE(5618, 40) { word pd83; pd83 = (* (( (ptr) (* (( (ptr) gf_c75444)+177)/* var_c70676 */ ))+37) ); hiSegment_v15868 = (word) ( *( (fPt) ((* (ptr) pd83 ))))(slice_v7484, pd83); }; SOURCE(5660, 24) end_v7556 = (* (( (ptr) firstSeg_v15840)+3) ); SOURCE(5686, 117) { register word i_v15912 = 1; register word noName_c70708; noName_c70708 = hiSegment_v15868; if (( (int)i_v15912 > (int)noName_c70708)) { goto lab_L100001; }; lab_L100004: ; SOURCE(5718, 35) { word pd84; pd84 = (* (( (ptr) (* (( (ptr) gf_c75444)+177)/* var_c70676 */ ))+29) ); seg_v15812 = (word) ( *( (fPt) ((* (ptr) pd84 ))))(slice_v7484, SGNCK(i_v15912), pd84); }; SOURCE(5755, 48) if (((* (( (ptr) seg_v15812)+3) ) != end_v7556)) { SOURCE(5783, 20) allEqual_v7528 = 0; end_v7556 = 2; goto lab_L100000; }; if (( (int)i_v15912 >= (int)noName_c70708)) { goto lab_L100001; }; i_v15912 = (i_v15912 + 1); goto lab_L100004; lab_L100001: ; }; SOURCE(5814, 15) allEqual_v7528 = 1; /* removed tail goto */ lab_L100000: ; (* (ptr) formal_c091 ) = allEqual_v7528; (* (( (ptr) formal_c091)+1) ) = end_v7556; return; } static word AllStrokeWidthsEqual_P180(slice_v7616) word slice_v7616; { register ptr gf_c75476 = (ptr) &globalframe; word width_v7660; word seg_v15956 = 0; word firstSeg_v15984; word hiSegment_v16012; /* AllStrokeWidthsEqual: */ SOURCE(5835, 318) SOURCE(5917, 49) { word pd85; pd85 = (* (( (ptr) (* (( (ptr) gf_c75476)+177)/* var_c70676 */ ))+29) ); firstSeg_v15984 = (word) ( *( (fPt) ((* (ptr) pd85 ))))(slice_v7616, 0, pd85); }; SOURCE(5968, 40) { word pd86; pd86 = (* (( (ptr) (* (( (ptr) gf_c75476)+177)/* var_c70676 */ ))+37) ); hiSegment_v16012 = (word) ( *( (fPt) ((* (ptr) pd86 ))))(slice_v7616, pd86); }; SOURCE(6010, 28) width_v7660 = (* (( (ptr) firstSeg_v15984)+2) ); SOURCE(6040, 113) { register word i_v16056 = 1; register word noName_c70740; noName_c70740 = hiSegment_v16012; if (( (int)i_v16056 > (int)noName_c70740)) { goto lab_L100005; }; lab_L100008: ; SOURCE(6072, 35) { word pd87; pd87 = (* (( (ptr) (* (( (ptr) gf_c75476)+177)/* var_c70676 */ ))+29) ); seg_v15956 = (word) ( *( (fPt) ((* (ptr) pd87 ))))(slice_v7616, SGNCK(i_v16056), pd87); }; SOURCE(6109, 44) { word x88; word x89; if ((( x88 = (* (( (ptr) seg_v15956)+2) ), *(float*)&x88 ) != ( x89 = width_v7660, *(float*)&x89 ))) { SOURCE(6141, 12) return((* (ptr) &fc90 )); }; }; if (( (int)i_v16056 >= (int)noName_c70740)) { goto lab_L100005; }; i_v16056 = (i_v16056 + 1); goto lab_L100008; lab_L100005: ; }; SOURCE(5835, 318) return(width_v7660); } static void AllStrokeColorsEqual_P240(formal_c0107, slice_v7720) word formal_c0107; word slice_v7720; { register ptr gf_c75508 = (ptr) &globalframe; word allEqual_v7764; word color_v7792; word seg_v16100 = 0; word firstSeg_v16128; word hiSegment_v16156; /* AllStrokeColorsEqual: */ SOURCE(6168, 394) SOURCE(6168, 394) allEqual_v7764 = 0; SOURCE(6168, 394) color_v7792 = 0; SOURCE(6275, 49) { word pd91; pd91 = (* (( (ptr) (* (( (ptr) gf_c75508)+177)/* var_c70676 */ ))+29) ); firstSeg_v16128 = (word) ( *( (fPt) ((* (ptr) pd91 ))))(slice_v7720, 0, pd91); }; SOURCE(6326, 40) { word pd92; pd92 = (* (( (ptr) (* (( (ptr) gf_c75508)+177)/* var_c70676 */ ))+37) ); hiSegment_v16156 = (word) ( *( (fPt) ((* (ptr) pd92 ))))(slice_v7720, pd92); }; SOURCE(6368, 22) color_v7792 = (* (( (ptr) firstSeg_v16128)+8) ); SOURCE(6392, 144) { register word i_v16200 = 1; register word noName_c70772; noName_c70772 = hiSegment_v16156; if (( (int)i_v16200 > (int)noName_c70772)) { goto lab_L100010; }; lab_L100013: ; SOURCE(6424, 35) { word pd93; pd93 = (* (( (ptr) (* (( (ptr) gf_c75508)+177)/* var_c70676 */ ))+29) ); seg_v16100 = (word) ( *( (fPt) ((* (ptr) pd93 ))))(slice_v7720, SGNCK(i_v16200), pd93); }; SOURCE(6461, 75) { word pd94; pd94 = (* (( (ptr) (* (( (ptr) gf_c75508)+178)/* var_c70804 */ ))+35) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd94 ))))(color_v7792, (* (( (ptr) seg_v16100)+8) ), pd94))) { SOURCE(6518, 18) allEqual_v7764 = 0; color_v7792 = 0; goto lab_L100009; }; }; if (( (int)i_v16200 >= (int)noName_c70772)) { goto lab_L100010; }; i_v16200 = (i_v16200 + 1); goto lab_L100013; lab_L100010: ; }; SOURCE(6547, 15) allEqual_v7764 = 1; /* removed tail goto */ lab_L100009: ; (* (ptr) formal_c0107 ) = allEqual_v7764; (* (( (ptr) formal_c0107)+1) ) = color_v7792; return; } static void AllDashesEqual_P300(formal_c0119, slice_v7852) word formal_c0119; word slice_v7852; { register ptr gf_c75540 = (ptr) &globalframe; word allEqual_v7896; word dashed_v7924; word pattern_v7952; word offset_v7980; word length_v8008; word seg_v16244 = 0; word firstSeg_v16272; word hiSegment_v16300; /* AllDashesEqual: */ SOURCE(6568, 692) SOURCE(6568, 692) allEqual_v7896 = 0; SOURCE(6568, 692) dashed_v7924 = 0; SOURCE(6568, 692) pattern_v7952 = 0; SOURCE(6568, 692) offset_v7980 = (* (ptr) &fc95 ); SOURCE(6568, 692) length_v8008 = (* (ptr) &fc95 ); SOURCE(6736, 49) { word pd96; pd96 = (* (( (ptr) (* (( (ptr) gf_c75540)+177)/* var_c70676 */ ))+29) ); firstSeg_v16272 = (word) ( *( (fPt) ((* (ptr) pd96 ))))(slice_v7852, 0, pd96); }; SOURCE(6787, 40) { word pd97; pd97 = (* (( (ptr) (* (( (ptr) gf_c75540)+177)/* var_c70676 */ ))+37) ); hiSegment_v16300 = (word) ( *( (fPt) ((* (ptr) pd97 ))))(slice_v7852, pd97); }; SOURCE(6829, 24) dashed_v7924 = (* (( (ptr) firstSeg_v16272)+4) ); SOURCE(6855, 26) pattern_v7952 = (* (( (ptr) firstSeg_v16272)+5) ); SOURCE(6883, 24) offset_v7980 = (* (( (ptr) firstSeg_v16272)+6) ); SOURCE(6909, 24) length_v8008 = (* (( (ptr) firstSeg_v16272)+7) ); SOURCE(6935, 299) { register word i_v16344 = 1; register word noName_c70836; noName_c70836 = hiSegment_v16300; if (( (int)i_v16344 > (int)noName_c70836)) { goto lab_L100015; }; lab_L100018: ; SOURCE(6967, 35) { word pd98; pd98 = (* (( (ptr) (* (( (ptr) gf_c75540)+177)/* var_c70676 */ ))+29) ); seg_v16244 = (word) ( *( (fPt) ((* (ptr) pd98 ))))(slice_v7852, SGNCK(i_v16344), pd98); }; SOURCE(7004, 41) if (((* (( (ptr) seg_v16244)+4) ) != dashed_v7924)) { SOURCE(7032, 13) allEqual_v7896 = 0; dashed_v7924 = 0; pattern_v7952 = 0; offset_v7980 = (* (ptr) &fc95 ); length_v8008 = (* (ptr) &fc95 ); goto lab_L100014; }; SOURCE(7047, 19) if ((0 == dashed_v7924)) { SOURCE(7066, 4) goto lab_L100017; }; SOURCE(7072, 76) { word pd99; pd99 = (* (( (ptr) (* (( (ptr) gf_c75540)+179)/* var_c70868 */ ))+38) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd99 ))))((* (( (ptr) seg_v16244)+5) ), pattern_v7952, pd99))) { SOURCE(7135, 13) allEqual_v7896 = 0; dashed_v7924 = 0; pattern_v7952 = 0; offset_v7980 = (* (ptr) &fc95 ); length_v8008 = (* (ptr) &fc95 ); goto lab_L100014; }; }; SOURCE(7150, 41) { word x100; word x101; if ((( x100 = (* (( (ptr) seg_v16244)+6) ), *(float*)&x100 ) != ( x101 = offset_v7980, *(float*)&x101 ))) { SOURCE(7178, 13) allEqual_v7896 = 0; dashed_v7924 = 0; pattern_v7952 = 0; offset_v7980 = (* (ptr) &fc95 ); length_v8008 = (* (ptr) &fc95 ); goto lab_L100014; }; }; SOURCE(7193, 41) { word x102; word x103; if ((( x102 = (* (( (ptr) seg_v16244)+7) ), *(float*)&x102 ) != ( x103 = length_v8008, *(float*)&x103 ))) { SOURCE(7221, 13) allEqual_v7896 = 0; dashed_v7924 = 0; pattern_v7952 = 0; offset_v7980 = (* (ptr) &fc95 ); length_v8008 = (* (ptr) &fc95 ); goto lab_L100014; }; }; lab_L100017: ; if (( (int)i_v16344 >= (int)noName_c70836)) { goto lab_L100015; }; i_v16344 = (i_v16344 + 1); goto lab_L100018; lab_L100015: ; }; SOURCE(7245, 15) allEqual_v7896 = 1; /* removed tail goto */ lab_L100014: ; (* (ptr) formal_c0119 ) = allEqual_v7896; (* (( (ptr) formal_c0119)+1) ) = dashed_v7924; (* (( (ptr) formal_c0119)+2) ) = pattern_v7952; (* (( (ptr) formal_c0119)+3) ) = offset_v7980; (* (( (ptr) formal_c0119)+4) ) = length_v8008; return; } static word TrajDescribe_P360(sliceD_v8068) word sliceD_v8068; { register ptr gf_c75572 = (ptr) &globalframe; word rope_v8112; word trajData_v16388; word trajParts_v16416; /* TrajDescribe: */ SOURCE(7266, 1163) SOURCE(7266, 1163) rope_v8112 = 0; SOURCE(7341, 46) trajData_v16388 = XR_Narrow((* (( (ptr) (* (ptr) sliceD_v8068 ))+1) ), (* (( (ptr) gf_c75572)+11) )); SOURCE(7389, 43) trajParts_v16416 = XR_Narrow((* (( (ptr) sliceD_v8068)+1) ), (* (( (ptr) gf_c75572)+12) )); SOURCE(7434, 995) if ((trajParts_v16416 == 0)) { SOURCE(7456, 17) return(0); } else { SOURCE(7473, 958) { word segNum_v16460; word cpNum_v16488; word segCount_v16516; word jointCount_v16544; word cpCount_v16572; SOURCE(7495, 34) segCount_v16516 = (* (( (ptr) trajParts_v16416)+3) ); SOURCE(7531, 38) jointCount_v16544 = (* (( (ptr) trajParts_v16416)+4) ); SOURCE(7571, 42) cpCount_v16572 = (* (( (ptr) trajParts_v16416)+5) ); if ((segCount_v16516 == 1)) { SOURCE(7646, 215) { word segGen_v16616; SOURCE(7688, 77) { word pd104; pd104 = (* (( (ptr) (* (( (ptr) gf_c75572)+180)/* var_c70900 */ ))+42) ); segGen_v16616 = (word) ( *( (fPt) ((* (ptr) pd104 ))))(trajData_v16388, trajParts_v16416, pd104); }; SOURCE(7767, 92) { W2 var_c0131; word var_c70932; { word pd105; pd105 = (* (( (ptr) (* (( (ptr) gf_c75572)+180)/* var_c70900 */ ))+47) ); (void) ( *( (fPt) ((* (ptr) pd105 ))))((word) &var_c0131, segGen_v16616, pd105); }; var_c70932 = var_c0131.f1; { word pd106; pd106 = (* (( (ptr) (* (( (ptr) gf_c75572)+179)/* var_c70868 */ ))+44) ); rope_v8112 = (word) ( *( (fPt) ((* (ptr) pd106 ))))((* (ptr) sliceD_v8068 ), var_c70932, pd106); }; }; }; } else { if ( ( (segCount_v16516 == 0) ? (cpCount_v16572 == 1) : 0 ) ) { SOURCE(7892, 249) { word cpGen_v16660; SOURCE(7929, 86) { word pd107; pd107 = (* (( (ptr) (* (( (ptr) gf_c75572)+180)/* var_c70900 */ ))+48) ); cpGen_v16660 = (word) ( *( (fPt) ((* (ptr) pd107 ))))(trajData_v16388, trajParts_v16416, pd107); }; SOURCE(8017, 54) { W3 var_c70964; { word pd108; pd108 = (* (( (ptr) (* (( (ptr) gf_c75572)+180)/* var_c70900 */ ))+51) ); (void) ( *( (fPt) ((* (ptr) pd108 ))))((word) &var_c70964, cpGen_v16660, pd108); }; cpNum_v16488 = var_c70964.f1; segNum_v16460 = var_c70964.f0; }; SOURCE(8073, 66) { word pd109; pd109 = (* (( (ptr) (* (( (ptr) gf_c75572)+179)/* var_c70868 */ ))+42) ); rope_v8112 = (word) ( *( (fPt) ((* (ptr) pd109 ))))((* (ptr) sliceD_v8068 ), segNum_v16460, cpNum_v16488, pd109); }; }; } else { if ( ( ( (segCount_v16516 == 0) ? (cpCount_v16572 == 0) : 0 ) ? (jointCount_v16544 == 1) : 0 ) ) { SOURCE(8189, 185) { word jointGen_v16704; SOURCE(8229, 65) { word pd110; pd110 = (* (( (ptr) (* (( (ptr) gf_c75572)+180)/* var_c70900 */ ))+53) ); jointGen_v16704 = (word) ( *( (fPt) ((* (ptr) pd110 ))))(trajParts_v16416, pd110); }; SOURCE(8296, 76) { word var_c70996; { word pd111; word idx112; pd111 = (* (( (ptr) (* (( (ptr) gf_c75572)+180)/* var_c70900 */ ))+61) ); var_c70996 = ( /*1*/ idx112 = (word) ( *( (fPt) ((* (ptr) pd111 ))))(jointGen_v16704, pd111), /*1*/ SGNCK(idx112) /*1*/ ); }; { word pd113; pd113 = (* (( (ptr) (* (( (ptr) gf_c75572)+179)/* var_c70868 */ ))+43) ); rope_v8112 = (word) ( *( (fPt) ((* (ptr) pd113 ))))((* (ptr) sliceD_v8068 ), var_c70996, pd113); }; }; }; } else { SOURCE(8388, 41) { word pd114; pd114 = (* (( (ptr) (* (( (ptr) gf_c75572)+179)/* var_c70868 */ ))+41) ); rope_v8112 = (word) ( *( (fPt) ((* (ptr) pd114 ))))(sliceD_v8068, pd114); }; }; }; }; }; }; SOURCE(7266, 1163) return(rope_v8112); } static word TrajDescribeHit_P420(slice_v8172, hitData_v8200) word slice_v8172; word hitData_v8200; { register ptr gf_c75604 = (ptr) &globalframe; word rope_v8260; word trajHitData_v16748; /* TrajDescribeHit: */ SOURCE(8438, 456) SOURCE(8438, 456) rope_v8260 = 0; SOURCE(8523, 42) trajHitData_v16748 = XR_Narrow(hitData_v8200, (* (( (ptr) gf_c75604)+13) )); SOURCE(8567, 327) { word var_c71028; var_c71028 = (* (ptr) trajHitData_v16748 ); switch (var_c71028) { case 1: SOURCE(8608, 59) { word pd115; word idx116; pd115 = (* (( (ptr) (* (( (ptr) gf_c75604)+179)/* var_c70868 */ ))+43) ); rope_v8260 = (word) ( *( (fPt) ((* (ptr) pd115 ))))(slice_v8172, ( idx116 = (* (( (ptr) trajHitData_v16748)+3) ), SGNCK(idx116) ), pd115); }; break; case 2: SOURCE(8685, 83) { word pd117; word idx118; word idx119; pd117 = (* (( (ptr) (* (( (ptr) gf_c75604)+179)/* var_c70868 */ ))+42) ); rope_v8260 = (word) ( *( (fPt) ((* (ptr) pd117 ))))(slice_v8172, ( idx118 = (* (( (ptr) trajHitData_v16748)+1) ), SGNCK(idx118) ), ( idx119 = (* (( (ptr) trajHitData_v16748)+2) ), SGNCK(idx119) ), pd117); }; break; case 3: SOURCE(8781, 59) { word pd120; word idx121; pd120 = (* (( (ptr) (* (( (ptr) gf_c75604)+179)/* var_c70868 */ ))+44) ); rope_v8260 = (word) ( *( (fPt) ((* (ptr) pd120 ))))(slice_v8172, ( idx121 = (* (( (ptr) trajHitData_v16748)+1) ), SGNCK(idx121) ), pd120); }; break; case 4: SOURCE(8854, 40) { word pd122; pd122 = (* (( (ptr) (* (( (ptr) gf_c75604)+179)/* var_c70868 */ ))+45) ); rope_v8260 = (word) ( *( (fPt) ((* (ptr) pd122 ))))(slice_v8172, pd122); }; break; default: SOURCE(8907, 5) (void) XR_RaiseUnnamedError(); break; }; }; SOURCE(8438, 456) return(rope_v8260); } static void TrajFileout_P480(slice_v8320, f_v8348) word slice_v8320; word f_v8348; { register ptr gf_c75636 = (ptr) &globalframe; word trajData_v16792; word roleRope_v16820; word strokeWidth_v16848; word offset_v16876; word length_v16904; word strokeOK_v16932; word endsOK_v16960; word colorOK_v16988; word dashOK_v17016; word dashed_v17044; word pattern_v17072 = 0; word color_v17100 = 0; W2 point_v17128; word end_v17156; word className_v17184 = 0; word seg_v17212 = 0; word arrowCode_v17240; word hiJoint_v17268; /* TrajFileout: */ SOURCE(8918, 3197) SOURCE(8969, 39) trajData_v16792 = XR_Narrow((* (( (ptr) slice_v8320)+1) ), (* (( (ptr) gf_c75636)+11) )); SOURCE(9010, 47) roleRope_v16820 = (word) RoleToRope_P660((* (ptr) (trajData_v16792) )); SOURCE(9264, 36) { word pd123; pd123 = (* (( (ptr) (* (( (ptr) gf_c75636)+177)/* var_c70676 */ ))+39) ); hiJoint_v17268 = (word) ( *( (fPt) ((* (ptr) pd123 ))))(slice_v8320, pd123); }; SOURCE(9302, 166) if ((0 != (* (( (ptr) trajData_v16792)+8) ))) { if ((0 != (* (( (ptr) trajData_v16792)+7) ))) { arrowCode_v17240 = 3; } else { arrowCode_v17240 = 2; }; } else { if ((0 != (* (( (ptr) trajData_v16792)+7) ))) { arrowCode_v17240 = 1; } else { arrowCode_v17240 = 0; }; }; SOURCE(9470, 92) { W2 var_c71060; W2 var_c71092; W2 var_c71124; var_c71060.f0 = 11; var_c71060.f1 = roleRope_v16820; var_c71092.f0 = 5; var_c71092.f1 = hiJoint_v17268; var_c71124.f0 = 5; var_c71124.f1 = arrowCode_v17240; { word pd124; pd124 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd124 ))))(f_v8348, (* (( (ptr) gf_c75636)+59) ), var_c71060, var_c71092, var_c71124, pd124) ; }; }; SOURCE(9564, 16) { word pd125; pd125 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd125 ))))(f_v8348, (* (( (ptr) gf_c75636)+58) ), 0, 2147483647, pd125); }; SOURCE(9597, 52) { word pd126; pd126 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd126 ))))(f_v8348, (* (( (ptr) trajData_v16792)+6) ), pd126); }; SOURCE(9651, 41) { W2 var_c71220; (void) AllStrokeEndsEqual_P120((word) &var_c71220, slice_v8320); end_v17156 = var_c71220.f1; endsOK_v16960 = var_c71220.f0; }; SOURCE(9694, 17) { word pd127; pd127 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd127 ))))(f_v8348, (* (( (ptr) gf_c75636)+57) ), 0, 2147483647, pd127); }; SOURCE(9713, 31) { word pd128; pd128 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd128 ))))(f_v8348, endsOK_v16960, pd128); }; SOURCE(9746, 16) { word pd129; pd129 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd129 ))))(f_v8348, 32, pd129); }; SOURCE(9764, 33) { word pd130; pd130 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd130 ))))(f_v8348, end_v17156, pd130); }; SOURCE(9799, 16) { word pd131; pd131 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd131 ))))(f_v8348, 32, pd131); }; SOURCE(9817, 41) strokeWidth_v16848 = (word) AllStrokeWidthsEqual_P180(slice_v8320); SOURCE(9860, 29) { word x132; word x133; strokeOK_v16932 = (unsigned) (( x132 = strokeWidth_v16848, *(float*)&x132 ) >= ( x133 = (* (ptr) &fc95 ), *(float*)&x133 )); }; SOURCE(9891, 38) { W2 var_c71252; var_c71252.f0 = 8; var_c71252.f1 = strokeWidth_v16848; { word pd134; pd134 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd134 ))))(f_v8348, (* (( (ptr) gf_c75636)+56) ), var_c71252, pd134); }; }; SOURCE(9931, 46) { W2 var_c71284; (void) AllStrokeColorsEqual_P240((word) &var_c71284, slice_v8320); color_v17100 = var_c71284.f1; colorOK_v16988 = var_c71284.f0; }; SOURCE(9979, 16) { word pd135; pd135 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd135 ))))(f_v8348, (* (( (ptr) gf_c75636)+53) ), 0, 2147483647, pd135); }; SOURCE(9997, 32) { word pd136; pd136 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd136 ))))(f_v8348, colorOK_v16988, pd136); }; SOURCE(10031, 16) { word pd137; pd137 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd137 ))))(f_v8348, 32, pd137); }; SOURCE(10049, 31) { word pd138; pd138 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd138 ))))(f_v8348, color_v17100, pd138); }; SOURCE(10082, 16) { word pd139; pd139 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd139 ))))(f_v8348, 32, pd139); }; SOURCE(10100, 65) { W5 var_c71316; (void) AllDashesEqual_P300((word) &var_c71316, slice_v8320); length_v16904 = var_c71316.f4; offset_v16876 = var_c71316.f3; pattern_v17072 = var_c71316.f2; dashed_v17044 = var_c71316.f1; dashOK_v17016 = var_c71316.f0; }; SOURCE(10167, 16) { word pd140; pd140 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd140 ))))(f_v8348, (* (( (ptr) gf_c75636)+51) ), 0, 2147483647, pd140); }; SOURCE(10185, 31) { word pd141; pd141 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd141 ))))(f_v8348, dashOK_v17016, pd141); }; SOURCE(10218, 192) if ((0 != dashOK_v17016)) { SOURCE(10235, 16) { word pd142; pd142 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd142 ))))(f_v8348, 32, pd142); }; SOURCE(10253, 31) { word pd143; pd143 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd143 ))))(f_v8348, dashed_v17044, pd143); }; SOURCE(10286, 16) { word pd144; pd144 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd144 ))))(f_v8348, 32, pd144); }; SOURCE(10304, 106) if ((0 != dashed_v17044)) { SOURCE(10321, 39) { word pd145; pd145 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd145 ))))(f_v8348, pattern_v17072, pd145); }; SOURCE(10362, 48) { W2 var_c71348; W2 var_c71380; W2 var_c0782; var_c71348.f0 = 8; var_c71348.f1 = offset_v16876; var_c71380.f0 = 8; var_c71380.f1 = length_v16904; (* (ptr) (word) &var_c0782 ) = 0; (* (( (ptr) (word) &var_c0782) + 1) ) = 0; { word pd146; pd146 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd146 ))))(f_v8348, (* (( (ptr) gf_c75636)+50) ), var_c71348, var_c71380, var_c0782, pd146); }; }; }; }; SOURCE(10418, 16) { word pd147; pd147 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd147 ))))(f_v8348, 10, pd147); }; SOURCE(10436, 38) { word pd148; pd148 = (* (( (ptr) (* (( (ptr) gf_c75636)+177)/* var_c70676 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd148 ))))((word) &point_v17128, slice_v8320, 0, pd148); }; SOURCE(10476, 31) { word pd149; pd149 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd149 ))))(f_v8348, point_v17128, pd149); }; SOURCE(10509, 792) { register word index_v17312 = 1; register word noName_c71444; noName_c71444 = hiJoint_v17268; if ((index_v17312 > noName_c71444)) { goto lab_L100019; }; lab_L100022: ; SOURCE(10543, 43) { word pd150; pd150 = (* (( (ptr) (* (( (ptr) gf_c75636)+177)/* var_c70676 */ ))+29) ); seg_v17212 = (word) ( *( (fPt) ((* (ptr) pd150 ))))(slice_v8320, SGNCK((index_v17312 - 1)), pd150); }; SOURCE(10588, 41) { word pd151; pd151 = (* (( (ptr) (* (( (ptr) gf_c75636)+183)/* var_c71476 */ ))+9) ); className_v17184 = (word) ( *( (fPt) ((* (ptr) pd151 ))))((* (ptr) ((* (ptr) seg_v17212 )) ), pd151); }; SOURCE(10631, 120) if ((0 != strokeOK_v16932)) { SOURCE(10648, 41) { W2 var_c71508; var_c71508.f0 = 11; var_c71508.f1 = className_v17184; { word pd152; pd152 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd152 ))))(f_v8348, (* (( (ptr) gf_c75636)+49) ), var_c71508, pd152); }; }; } else { SOURCE(10689, 62) { W2 var_c71540; W2 var_c71572; W2 var_c0783; var_c71540.f0 = 11; var_c71540.f1 = className_v17184; var_c71572.f0 = 8; var_c71572.f1 = (* (( (ptr) seg_v17212)+2) ); (* (ptr) (word) &var_c0783 ) = 0; (* (( (ptr) (word) &var_c0783) + 1) ) = 0; { word pd153; pd153 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd153 ))))(f_v8348, (* (( (ptr) gf_c75636)+48) ), var_c71540, var_c71572, var_c0783, pd153); }; }; }; SOURCE(10753, 82) if ((0 == endsOK_v16960)) { SOURCE(10774, 43) { word pd154; pd154 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd154 ))))(f_v8348, (* (( (ptr) seg_v17212)+3) ), pd154); }; SOURCE(10819, 16) { word pd155; pd155 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd155 ))))(f_v8348, 32, pd155); }; }; SOURCE(10840, 75) if ((0 == colorOK_v16988)) { SOURCE(10862, 35) { word pd156; pd156 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd156 ))))(f_v8348, (* (( (ptr) seg_v17212)+8) ), pd156); }; SOURCE(10899, 16) { word pd157; pd157 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd157 ))))(f_v8348, 32, pd157); }; }; SOURCE(10920, 217) if ((0 == dashOK_v17016)) { SOURCE(10941, 35) { word pd158; pd158 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd158 ))))(f_v8348, (* (( (ptr) seg_v17212)+4) ), pd158); }; SOURCE(10978, 16) { word pd159; pd159 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd159 ))))(f_v8348, 32, pd159); }; SOURCE(10996, 141) if ((0 != (* (( (ptr) seg_v17212)+4) ))) { SOURCE(11017, 43) { word pd160; pd160 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd160 ))))(f_v8348, (* (( (ptr) seg_v17212)+5) ), pd160); }; SOURCE(11062, 16) { word pd161; pd161 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd161 ))))(f_v8348, 32, pd161); }; SOURCE(11080, 57) { W2 var_c71636; W2 var_c71668; W2 var_c0784; var_c71636.f0 = 8; var_c71636.f1 = (* (( (ptr) seg_v17212)+6) ); var_c71668.f0 = 8; var_c71668.f1 = (* (( (ptr) seg_v17212)+7) ); (* (ptr) (word) &var_c0784 ) = 0; (* (( (ptr) (word) &var_c0784) + 1) ) = 0; { word pd162; pd162 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd162 ))))(f_v8348, (* (( (ptr) gf_c75636)+47) ), var_c71636, var_c71668, var_c0784, pd162); }; }; }; }; SOURCE(11145, 25) { word pd163; pd163 = (* (( (ptr) (* (ptr) seg_v17212 ))+12) ); (void) ( *( (fPt) ((* (ptr) pd163 ))))(seg_v17212, f_v8348, pd163); }; SOURCE(11172, 35) { word pd164; pd164 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd164 ))))(f_v8348, (* (( (ptr) seg_v17212)+25) ), pd164); }; SOURCE(11209, 15) { word pd165; pd165 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd165 ))))(f_v8348, (* (( (ptr) gf_c75636)+46) ), 0, 2147483647, pd165); }; SOURCE(11226, 42) { word pd166; pd166 = (* (( (ptr) (* (( (ptr) gf_c75636)+177)/* var_c70676 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd166 ))))((word) &point_v17128, slice_v8320, index_v17312, pd166); }; SOURCE(11270, 31) { word pd167; pd167 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd167 ))))(f_v8348, point_v17128, pd167); }; if ((index_v17312 >= noName_c71444)) { goto lab_L100019; }; index_v17312 = (index_v17312 + 1); goto lab_L100022; lab_L100019: ; }; SOURCE(11312, 736) if (((* (ptr) trajData_v16792 ) == 0) || ((* (ptr) trajData_v16792 ) == 1)) { SOURCE(11370, 41) { word pd168; pd168 = (* (( (ptr) (* (( (ptr) gf_c75636)+177)/* var_c70676 */ ))+29) ); seg_v17212 = (word) ( *( (fPt) ((* (ptr) pd168 ))))(slice_v8320, hiJoint_v17268, pd168); }; SOURCE(11413, 41) { word pd169; pd169 = (* (( (ptr) (* (( (ptr) gf_c75636)+183)/* var_c71476 */ ))+9) ); className_v17184 = (word) ( *( (fPt) ((* (ptr) pd169 ))))((* (ptr) ((* (ptr) seg_v17212 )) ), pd169); }; SOURCE(11456, 120) if ((0 != strokeOK_v16932)) { SOURCE(11473, 41) { W2 var_c71732; var_c71732.f0 = 11; var_c71732.f1 = className_v17184; { word pd170; pd170 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+61) ); (void) ( *( (fPt) ((* (ptr) pd170 ))))(f_v8348, (* (( (ptr) gf_c75636)+49) ), var_c71732, pd170); }; }; } else { SOURCE(11514, 62) { W2 var_c71764; W2 var_c71796; W2 var_c0785; var_c71764.f0 = 11; var_c71764.f1 = className_v17184; var_c71796.f0 = 8; var_c71796.f1 = (* (( (ptr) seg_v17212)+2) ); (* (ptr) (word) &var_c0785 ) = 0; (* (( (ptr) (word) &var_c0785) + 1) ) = 0; { word pd171; pd171 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd171 ))))(f_v8348, (* (( (ptr) gf_c75636)+48) ), var_c71764, var_c71796, var_c0785, pd171); }; }; }; SOURCE(11578, 82) if ((0 == endsOK_v16960)) { SOURCE(11599, 43) { word pd172; pd172 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+4) ); (void) ( *( (fPt) ((* (ptr) pd172 ))))(f_v8348, (* (( (ptr) seg_v17212)+3) ), pd172); }; SOURCE(11644, 16) { word pd173; pd173 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd173 ))))(f_v8348, 32, pd173); }; }; SOURCE(11665, 75) if ((0 == colorOK_v16988)) { SOURCE(11687, 35) { word pd174; pd174 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd174 ))))(f_v8348, (* (( (ptr) seg_v17212)+8) ), pd174); }; SOURCE(11724, 16) { word pd175; pd175 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd175 ))))(f_v8348, 32, pd175); }; }; SOURCE(11745, 217) if ((0 == dashOK_v17016)) { SOURCE(11766, 35) { word pd176; pd176 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd176 ))))(f_v8348, (* (( (ptr) seg_v17212)+4) ), pd176); }; SOURCE(11803, 16) { word pd177; pd177 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd177 ))))(f_v8348, 32, pd177); }; SOURCE(11821, 141) if ((0 != (* (( (ptr) seg_v17212)+4) ))) { SOURCE(11842, 43) { word pd178; pd178 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd178 ))))(f_v8348, (* (( (ptr) seg_v17212)+5) ), pd178); }; SOURCE(11887, 16) { word pd179; pd179 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd179 ))))(f_v8348, 32, pd179); }; SOURCE(11905, 57) { W2 var_c71860; W2 var_c71892; W2 var_c0786; var_c71860.f0 = 8; var_c71860.f1 = (* (( (ptr) seg_v17212)+6) ); var_c71892.f0 = 8; var_c71892.f1 = (* (( (ptr) seg_v17212)+7) ); (* (ptr) (word) &var_c0786 ) = 0; (* (( (ptr) (word) &var_c0786) + 1) ) = 0; { word pd180; pd180 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+60) ); (void) ( *( (fPt) ((* (ptr) pd180 ))))(f_v8348, (* (( (ptr) gf_c75636)+47) ), var_c71860, var_c71892, var_c0786, pd180); }; }; }; }; SOURCE(11970, 25) { word pd181; pd181 = (* (( (ptr) (* (ptr) seg_v17212 ))+12) ); (void) ( *( (fPt) ((* (ptr) pd181 ))))(seg_v17212, f_v8348, pd181); }; SOURCE(11997, 35) { word pd182; pd182 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd182 ))))(f_v8348, (* (( (ptr) seg_v17212)+25) ), pd182); }; SOURCE(12034, 14) { word pd183; pd183 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd183 ))))(f_v8348, (* (( (ptr) gf_c75636)+45) ), 0, 2147483647, pd183); }; }; SOURCE(12053, 19) { word pd184; pd184 = (* (( (ptr) (* (( (ptr) gf_c75636)+181)/* var_c71156 */ ))+93) ); (void) ( *( (fPt) ((* (ptr) pd184 ))))(f_v8348, (* (( (ptr) gf_c75636)+39) ), 0, 2147483647, pd184); }; SOURCE(12074, 41) { word pd185; pd185 = (* (( (ptr) (* (( (ptr) gf_c75636)+182)/* var_c71188 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd185 ))))(f_v8348, (* (( (ptr) trajData_v16792)+9) ), pd185); }; } static word TrajFilein_P540(f_v8408, version_v8436, router_v8464, camera_v8492) word f_v8408; word version_v8436; word router_v8464; word camera_v8492; { register ptr gf_c75668 = (ptr) &globalframe; word slice_v8536; word hasCircle_v17356 = 0; word hiJoint_v17384; word arrowCode_v17412; word role_v17440; word roleName_v17468 = 0; word className_v17496 = 0; W2 pFirst_v17524; W2 p0_v17552; W2 p1_v17580; word trajData_v17608 = 0; word seg_v17636 = 0; word class_v17664 = 0; word strokeWidth_v17692; word offset_v17720; word length_v17748; word pattern_v17776 = 0; word strokeColor_v17804 = 0; word strokeEnd_v17832; word strokeJoint_v17860; word success_v17888; word colorOK_v17916; word widthOK_v17944; word endsOK_v17972; word dashOK_v18000; word dashed_v18028; word fwd_v18056; /* TrajFilein: */ SOURCE(12120, 5215) SOURCE(12120, 5215) slice_v8536 = 0; SOURCE(12600, 55) { word x186; word x188; if ((( x186 = version_v8436, *(float*)&x186 ) < ( x188 = (* (ptr) &fc187 ), *(float*)&x188 ))) { SOURCE(12626, 29) { word pd189; pd189 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd189 ))))(f_v8408, (* (( (ptr) gf_c75668)+37) ), pd189); }; }; }; SOURCE(12687, 25) { word pd190; pd190 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd190 ))))(f_v8408, 40, pd190); }; SOURCE(12714, 32) { word pd191; pd191 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+8) ); roleName_v17468 = (word) ( *( (fPt) ((* (ptr) pd191 ))))(f_v8408, pd191); }; SOURCE(12748, 29) role_v17440 = (word) RoleFromRope_P600(roleName_v17468); SOURCE(12779, 25) { word pd192; pd192 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd192 ))))(f_v8408, 41, pd192); }; SOURCE(12806, 25) { word pd193; pd193 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd193 ))))(f_v8408, 91, pd193); }; SOURCE(12833, 30) { word pd194; pd194 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+25) ); hiJoint_v17384 = (word) ( *( (fPt) ((* (ptr) pd194 ))))(f_v8408, pd194); }; SOURCE(12865, 25) { word pd195; pd195 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd195 ))))(f_v8408, 93, pd195); }; SOURCE(12892, 117) { word x196; word x198; if ((( x196 = version_v8436, *(float*)&x196 ) >= ( x198 = (* (ptr) &fc197 ), *(float*)&x198 ))) { SOURCE(12921, 32) { word pd199; pd199 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd199 ))))(f_v8408, (* (( (ptr) gf_c75668)+36) ), pd199); }; SOURCE(12955, 32) { word pd200; pd200 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+25) ); arrowCode_v17412 = (word) ( *( (fPt) ((* (ptr) pd200 ))))(f_v8408, pd200); }; } else { SOURCE(12996, 13) arrowCode_v17412 = 0; }; }; SOURCE(13011, 247) { word x201; word x203; if ((( x201 = version_v8436, *(float*)&x201 ) >= ( x203 = (* (ptr) &fc202 ), *(float*)&x203 ))) { SOURCE(13040, 27) { word pd204; pd204 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd204 ))))(f_v8408, (* (( (ptr) gf_c75668)+31) ), pd204); }; SOURCE(13069, 42) { word pd205; pd205 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+15) ); strokeJoint_v17860 = (word) ( *( (fPt) ((* (ptr) pd205 ))))(f_v8408, pd205); }; SOURCE(13113, 27) { word pd206; pd206 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd206 ))))(f_v8408, (* (( (ptr) gf_c75668)+32) ), pd206); }; SOURCE(13142, 30) { word pd207; pd207 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+24) ); endsOK_v17972 = (word) ( *( (fPt) ((* (ptr) pd207 ))))(f_v8408, pd207); }; SOURCE(13174, 38) { word pd208; pd208 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+14) ); strokeEnd_v17832 = (word) ( *( (fPt) ((* (ptr) pd208 ))))(f_v8408, pd208); }; } else { SOURCE(13223, 19) strokeJoint_v17860 = 2; SOURCE(13244, 14) endsOK_v17972 = 0; }; }; SOURCE(13263, 302) { word x209; word x211; if ((( x209 = version_v8436, *(float*)&x209 ) >= ( x211 = (* (ptr) &fc210 ), *(float*)&x211 ))) { SOURCE(13293, 27) { word pd212; pd212 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd212 ))))(f_v8408, (* (( (ptr) gf_c75668)+33) ), pd212); }; SOURCE(13322, 35) { word pd213; pd213 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+27) ); strokeWidth_v17692 = (word) ( *( (fPt) ((* (ptr) pd213 ))))(f_v8408, pd213); }; SOURCE(13359, 27) { word x214; word x215; widthOK_v17944 = (unsigned) (( x214 = strokeWidth_v17692, *(float*)&x214 ) >= ( x215 = (* (ptr) &fc95 ), *(float*)&x215 )); }; SOURCE(13388, 27) { word pd216; pd216 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd216 ))))(f_v8408, (* (( (ptr) gf_c75668)+34) ), pd216); }; SOURCE(13417, 31) { word pd217; pd217 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+24) ); colorOK_v17916 = (word) ( *( (fPt) ((* (ptr) pd217 ))))(f_v8408, pd217); }; SOURCE(13450, 45) { word pd218; pd218 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+16) ); strokeColor_v17804 = (word) ( *( (fPt) ((* (ptr) pd218 ))))(f_v8408, version_v8436, pd218); }; } else { SOURCE(13506, 25) { word pd219; pd219 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd219 ))))(f_v8408, 58, pd219); }; SOURCE(13533, 15) widthOK_v17944 = 0; SOURCE(13550, 15) colorOK_v17916 = 0; }; }; SOURCE(13570, 304) { word x220; word x222; if ((( x220 = version_v8436, *(float*)&x220 ) >= ( x222 = (* (ptr) &fc221 ), *(float*)&x222 ))) { SOURCE(13599, 27) { word pd223; pd223 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd223 ))))(f_v8408, (* (( (ptr) gf_c75668)+35) ), pd223); }; SOURCE(13628, 30) { word pd224; pd224 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+24) ); dashOK_v18000 = (word) ( *( (fPt) ((* (ptr) pd224 ))))(f_v8408, pd224); }; SOURCE(13660, 168) if ((0 != dashOK_v18000)) { SOURCE(13677, 30) { word pd225; pd225 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+24) ); dashed_v18028 = (word) ( *( (fPt) ((* (ptr) pd225 ))))(f_v8408, pd225); }; SOURCE(13709, 119) if ((0 != dashed_v18028)) { SOURCE(13726, 38) { word pd226; pd226 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+23) ); pattern_v17776 = (word) ( *( (fPt) ((* (ptr) pd226 ))))(f_v8408, pd226); }; SOURCE(13766, 30) { word pd227; pd227 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+27) ); offset_v17720 = (word) ( *( (fPt) ((* (ptr) pd227 ))))(f_v8408, pd227); }; SOURCE(13798, 30) { word pd228; pd228 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+27) ); length_v17748 = (word) ( *( (fPt) ((* (ptr) pd228 ))))(f_v8408, pd228); }; }; }; } else { SOURCE(13845, 13) dashOK_v18000 = 1; SOURCE(13860, 14) dashed_v18028 = 0; }; }; SOURCE(13880, 36) { W2 var_c71988; { word pd229; pd229 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+19) ); (void) ( *( (fPt) ((* (ptr) pd229 ))))((word) &var_c71988, f_v8408, pd229); }; p0_v17552 = var_c71988; pFirst_v17524 = var_c71988; }; SOURCE(13918, 29) { word pd230; pd230 = (* (( (ptr) (* (( (ptr) gf_c75668)+177)/* var_c70676 */ ))+4) ); slice_v8536 = (word) ( *( (fPt) ((* (ptr) pd230 ))))(p0_v17552, pd230); }; SOURCE(13949, 29) trajData_v17608 = XR_Narrow((* (( (ptr) slice_v8536)+1) ), (* (( (ptr) gf_c75668)+11) )); SOURCE(13980, 34) (* (( (ptr) trajData_v17608)+6) ) = strokeJoint_v17860; SOURCE(14016, 1662) { register word index_v18100 = 1; register word noName_c72020; noName_c72020 = hiJoint_v17384; if ((index_v18100 > noName_c72020)) { goto lab_L100023; }; lab_L100026: ; SOURCE(14050, 25) { word pd231; pd231 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd231 ))))(f_v8408, 40, pd231); }; SOURCE(14077, 33) { word pd232; pd232 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+8) ); className_v17496 = (word) ( *( (fPt) ((* (ptr) pd232 ))))(f_v8408, pd232); }; SOURCE(14112, 55) if ((0 == widthOK_v17944)) { SOURCE(14132, 35) { word pd233; pd233 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+27) ); strokeWidth_v17692 = (word) ( *( (fPt) ((* (ptr) pd233 ))))(f_v8408, pd233); }; }; SOURCE(14169, 112) { word x234; word x235; if ((( x234 = version_v8436, *(float*)&x234 ) >= ( x235 = (* (ptr) &fc202 ), *(float*)&x235 ))) { SOURCE(14198, 57) if ((0 == endsOK_v17972)) { SOURCE(14217, 38) { word pd236; pd236 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+14) ); strokeEnd_v17832 = (word) ( *( (fPt) ((* (ptr) pd236 ))))(f_v8408, pd236); }; }; } else { SOURCE(14264, 17) strokeEnd_v17832 = 2; }; }; SOURCE(14283, 129) { word x237; word x239; if ((( x237 = version_v8436, *(float*)&x237 ) >= ( x239 = (* (ptr) &fc238 ), *(float*)&x239 ))) { SOURCE(14312, 65) if ((0 == colorOK_v17916)) { SOURCE(14332, 45) { word pd240; pd240 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+16) ); strokeColor_v17804 = (word) ( *( (fPt) ((* (ptr) pd240 ))))(f_v8408, version_v8436, pd240); }; }; } else { SOURCE(14386, 26) strokeColor_v17804 = (* (ptr) (* (( (ptr) (* (( (ptr) gf_c75668)+185)/* var_c72052 */ ))+54) ) ); }; }; SOURCE(14414, 172) if ((0 == dashOK_v18000)) { SOURCE(14435, 30) { word pd241; pd241 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+24) ); dashed_v18028 = (word) ( *( (fPt) ((* (ptr) pd241 ))))(f_v8408, pd241); }; SOURCE(14467, 119) if ((0 != dashed_v18028)) { SOURCE(14484, 38) { word pd242; pd242 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+23) ); pattern_v17776 = (word) ( *( (fPt) ((* (ptr) pd242 ))))(f_v8408, pd242); }; SOURCE(14524, 30) { word pd243; pd243 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+27) ); offset_v17720 = (word) ( *( (fPt) ((* (ptr) pd243 ))))(f_v8408, pd243); }; SOURCE(14556, 30) { word pd244; pd244 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+27) ); length_v17748 = (word) ( *( (fPt) ((* (ptr) pd244 ))))(f_v8408, pd244); }; }; }; SOURCE(14594, 61) { word var_c72084; { word pd245; pd245 = (* (( (ptr) (* (( (ptr) gf_c75668)+183)/* var_c71476 */ ))+5) ); var_c72084 = (word) ( *( (fPt) ((* (ptr) pd245 ))))(className_v17496, 0, 2147483647, pd245); }; { word pd246; pd246 = (* (( (ptr) (* (( (ptr) gf_c75668)+186)/* var_c72116 */ ))+24) ); class_v17664 = (word) ( *( (fPt) ((* (ptr) pd246 ))))(var_c72084, pd246); }; }; SOURCE(14657, 46) { W2 var_c72148; var_c72148.f0 = (* (ptr) &fc95 ); var_c72148.f1 = (* (ptr) &fc95 ); { word pd247; pd247 = (* (( (ptr) class_v17664)+13) ); seg_v17636 = (word) ( *( (fPt) ((* (ptr) pd247 ))))(f_v8408, p0_v17552, var_c72148, version_v8436, pd247); }; }; SOURCE(14705, 256) { word x248; word x250; if ((( x248 = version_v8436, *(float*)&x248 ) >= ( x250 = (* (ptr) &fc249 ), *(float*)&x250 ))) { SOURCE(14732, 240) { word lor_v18144 = 0; SOURCE(14758, 33) { word pd251; pd251 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+13) ); lor_v18144 = (word) ( *( (fPt) ((* (ptr) pd251 ))))(f_v8408, pd251); }; SOURCE(14859, 102) { register word next_v18272; next_v18272 = lor_v18144; lab_L100030: ; if ((next_v18272 != 0)) { } else { goto lab_L100027; }; SOURCE(14922, 39) { word var_c72180; var_c72180 = XR_NewObject(8, (* (( (ptr) gf_c75668)+30) )); (* (ptr) var_c72180 ) = (* (ptr) next_v18272 ); (* (( (ptr) var_c72180)+1) ) = (* (( (ptr) seg_v17636)+25) ); (* (( (ptr) seg_v17636)+25) ) = var_c72180; }; next_v18272 = (* (( (ptr) next_v18272)+1) ); goto lab_L100030; lab_L100027: ; }; }; }; }; SOURCE(14975, 25) { word pd252; pd252 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd252 ))))(f_v8408, 41, pd252); }; SOURCE(15002, 27) { word pd253; pd253 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+19) ); (void) ( *( (fPt) ((* (ptr) pd253 ))))((word) &p1_v17580, f_v8408, pd253); }; SOURCE(15031, 11) (* (W2Pt) (( (ptr) seg_v17636)+11) ) = p1_v17580; SOURCE(15044, 39) { word pd254; pd254 = (* (( (ptr) (* (ptr) seg_v17636 ))+9) ); (void) ( *( (fPt) ((* (ptr) pd254 ))))(seg_v17636, 0, p1_v17580, pd254); }; SOURCE(15085, 29) (* (( (ptr) seg_v17636)+2) ) = strokeWidth_v17692; SOURCE(15116, 25) (* (( (ptr) seg_v17636)+3) ) = strokeEnd_v17832; SOURCE(15143, 23) (* (( (ptr) seg_v17636)+8) ) = strokeColor_v17804; SOURCE(15168, 19) (* (( (ptr) seg_v17636)+4) ) = dashed_v18028; SOURCE(15189, 21) (* (( (ptr) seg_v17636)+5) ) = pattern_v17776; SOURCE(15212, 19) (* (( (ptr) seg_v17636)+6) ) = offset_v17720; SOURCE(15233, 19) (* (( (ptr) seg_v17636)+7) ) = length_v17748; SOURCE(15254, 388) if (((* (ptr) class_v17664 ) == (* (( (ptr) gf_c75668)+38) )) || ((* (ptr) class_v17664 ) == (* (( (ptr) gf_c75668)+40) ))) { SOURCE(15301, 287) { W2 p_v18400; W2 newJoint_v18428; W2 newCp_v18456; SOURCE(15303, 40) { word pd255; pd255 = (* (( (ptr) (* (( (ptr) gf_c75668)+187)/* var_c72212 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd255 ))))((word) &p_v18400, (* (W2Pt) (( (ptr) seg_v17636)+11) ), (* (W2Pt) (( (ptr) seg_v17636)+9) ), pd255); }; SOURCE(15345, 46) { word x256; word x257; *(float*)&newJoint_v18428.f0 = ( x256 = (* (( (ptr) seg_v17636)+9) ), *(float*)&x256 ) - ( x257 = p_v18400.f0, *(float*)&x257 ); }; { word x258; word x259; *(float*)&newJoint_v18428.f1 = ( x258 = (* (( (ptr) seg_v17636)+10) ), *(float*)&x258 ) - ( x259 = p_v18400.f1, *(float*)&x259 ); }; SOURCE(15393, 43) { word x260; word x261; *(float*)&newCp_v18456.f0 = ( x260 = (* (( (ptr) seg_v17636)+9) ), *(float*)&x260 ) + ( x261 = p_v18400.f0, *(float*)&x261 ); }; { word x262; word x263; *(float*)&newCp_v18456.f1 = ( x262 = (* (( (ptr) seg_v17636)+10) ), *(float*)&x262 ) + ( x263 = p_v18400.f1, *(float*)&x263 ); }; SOURCE(15438, 93) { word var_c72308; { word pd264; pd264 = (* (( (ptr) (* (( (ptr) gf_c75668)+186)/* var_c72116 */ ))+8) ); var_c72308 = (word) ( *( (fPt) ((* (ptr) pd264 ))))(newJoint_v18428, newCp_v18456, newJoint_v18428, 0, pd264); }; { word pd265; pd265 = (* (( (ptr) (* (( (ptr) gf_c75668)+177)/* var_c70676 */ ))+6) ); success_v17888 = (word) ( *( (fPt) ((* (ptr) pd265 ))))(slice_v8536, 1, var_c72308, 0, pd265); }; }; SOURCE(15533, 35) { word pd266; pd266 = (* (( (ptr) (* (( (ptr) gf_c75668)+177)/* var_c70676 */ ))+8) ); (void) ( *( (fPt) ((* (ptr) pd266 ))))(slice_v8536, 0, pd266); }; SOURCE(15570, 16) hasCircle_v17356 = 1; }; } else { SOURCE(15595, 47) { word pd267; pd267 = (* (( (ptr) (* (( (ptr) gf_c75668)+177)/* var_c70676 */ ))+6) ); success_v17888 = (word) ( *( (fPt) ((* (ptr) pd267 ))))(slice_v8536, 1, seg_v17636, 0, pd267); }; }; SOURCE(15644, 20) if ((0 == success_v17888)) { SOURCE(15664, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(15671, 7) p0_v17552 = p1_v17580; if ((index_v18100 >= noName_c72020)) { goto lab_L100023; }; index_v18100 = (index_v18100 + 1); goto lab_L100026; lab_L100023: ; }; SOURCE(15689, 1398) if ((role_v17440 == 0) || (role_v17440 == 1)) { SOURCE(15729, 25) { word pd268; pd268 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd268 ))))(f_v8408, 40, pd268); }; SOURCE(15756, 33) { word pd269; pd269 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+8) ); className_v17496 = (word) ( *( (fPt) ((* (ptr) pd269 ))))(f_v8408, pd269); }; SOURCE(15791, 55) if ((0 == widthOK_v17944)) { SOURCE(15811, 35) { word pd270; pd270 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+27) ); strokeWidth_v17692 = (word) ( *( (fPt) ((* (ptr) pd270 ))))(f_v8408, pd270); }; }; SOURCE(15848, 112) { word x271; word x272; if ((( x271 = version_v8436, *(float*)&x271 ) >= ( x272 = (* (ptr) &fc202 ), *(float*)&x272 ))) { SOURCE(15877, 57) if ((0 == endsOK_v17972)) { SOURCE(15896, 38) { word pd273; pd273 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+14) ); strokeEnd_v17832 = (word) ( *( (fPt) ((* (ptr) pd273 ))))(f_v8408, pd273); }; }; } else { SOURCE(15943, 17) strokeEnd_v17832 = 2; }; }; SOURCE(15962, 129) { word x274; word x275; if ((( x274 = version_v8436, *(float*)&x274 ) >= ( x275 = (* (ptr) &fc238 ), *(float*)&x275 ))) { SOURCE(15991, 65) if ((0 == colorOK_v17916)) { SOURCE(16011, 45) { word pd276; pd276 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+16) ); strokeColor_v17804 = (word) ( *( (fPt) ((* (ptr) pd276 ))))(f_v8408, version_v8436, pd276); }; }; } else { SOURCE(16065, 26) strokeColor_v17804 = (* (ptr) (* (( (ptr) (* (( (ptr) gf_c75668)+185)/* var_c72052 */ ))+54) ) ); }; }; SOURCE(16093, 172) if ((0 == dashOK_v18000)) { SOURCE(16114, 30) { word pd277; pd277 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+24) ); dashed_v18028 = (word) ( *( (fPt) ((* (ptr) pd277 ))))(f_v8408, pd277); }; SOURCE(16146, 119) if ((0 != dashed_v18028)) { SOURCE(16163, 38) { word pd278; pd278 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+23) ); pattern_v17776 = (word) ( *( (fPt) ((* (ptr) pd278 ))))(f_v8408, pd278); }; SOURCE(16203, 30) { word pd279; pd279 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+27) ); offset_v17720 = (word) ( *( (fPt) ((* (ptr) pd279 ))))(f_v8408, pd279); }; SOURCE(16235, 30) { word pd280; pd280 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+27) ); length_v17748 = (word) ( *( (fPt) ((* (ptr) pd280 ))))(f_v8408, pd280); }; }; }; SOURCE(16273, 61) { word var_c72340; { word pd281; pd281 = (* (( (ptr) (* (( (ptr) gf_c75668)+183)/* var_c71476 */ ))+5) ); var_c72340 = (word) ( *( (fPt) ((* (ptr) pd281 ))))(className_v17496, 0, 2147483647, pd281); }; { word pd282; pd282 = (* (( (ptr) (* (( (ptr) gf_c75668)+186)/* var_c72116 */ ))+24) ); class_v17664 = (word) ( *( (fPt) ((* (ptr) pd282 ))))(var_c72340, pd282); }; }; SOURCE(16336, 42) { word pd283; pd283 = (* (( (ptr) class_v17664)+13) ); seg_v17636 = (word) ( *( (fPt) ((* (ptr) pd283 ))))(f_v8408, p0_v17552, pFirst_v17524, version_v8436, pd283); }; SOURCE(16380, 256) { word x284; word x285; if ((( x284 = version_v8436, *(float*)&x284 ) >= ( x285 = (* (ptr) &fc249 ), *(float*)&x285 ))) { SOURCE(16407, 240) { word lor_v18500 = 0; SOURCE(16433, 33) { word pd286; pd286 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+13) ); lor_v18500 = (word) ( *( (fPt) ((* (ptr) pd286 ))))(f_v8408, pd286); }; SOURCE(16534, 102) { register word next_v18628; next_v18628 = lor_v18500; lab_L100034: ; if ((next_v18628 != 0)) { } else { goto lab_L100031; }; SOURCE(16597, 39) { word var_c72372; var_c72372 = XR_NewObject(8, (* (( (ptr) gf_c75668)+30) )); (* (ptr) var_c72372 ) = (* (ptr) next_v18628 ); (* (( (ptr) var_c72372)+1) ) = (* (( (ptr) seg_v17636)+25) ); (* (( (ptr) seg_v17636)+25) ) = var_c72372; }; next_v18628 = (* (( (ptr) next_v18628)+1) ); goto lab_L100034; lab_L100031: ; }; }; }; }; SOURCE(16650, 25) { word pd287; pd287 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd287 ))))(f_v8408, 41, pd287); }; SOURCE(16677, 29) (* (( (ptr) seg_v17636)+2) ) = strokeWidth_v17692; SOURCE(16708, 23) (* (( (ptr) seg_v17636)+8) ) = strokeColor_v17804; SOURCE(16733, 25) (* (( (ptr) seg_v17636)+3) ) = strokeEnd_v17832; SOURCE(16760, 19) (* (( (ptr) seg_v17636)+4) ) = dashed_v18028; SOURCE(16781, 21) (* (( (ptr) seg_v17636)+5) ) = pattern_v17776; SOURCE(16804, 19) (* (( (ptr) seg_v17636)+6) ) = offset_v17720; SOURCE(16825, 19) (* (( (ptr) seg_v17636)+7) ) = length_v17748; SOURCE(16846, 241) if (((* (( (ptr) trajData_v17608)+1) ) == 0)) { SOURCE(16928, 47) { word pd288; pd288 = (* (( (ptr) (* (( (ptr) gf_c75668)+177)/* var_c70676 */ ))+6) ); success_v17888 = (word) ( *( (fPt) ((* (ptr) pd288 ))))(slice_v8536, 1, seg_v17636, 0, pd288); }; SOURCE(16977, 20) if ((0 == success_v17888)) { SOURCE(16997, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(17004, 35) { word pd289; pd289 = (* (( (ptr) (* (( (ptr) gf_c75668)+177)/* var_c70676 */ ))+8) ); (void) ( *( (fPt) ((* (ptr) pd289 ))))(slice_v8536, 0, pd289); }; } else { SOURCE(17048, 39) { word pd290; pd290 = (* (( (ptr) (* (( (ptr) gf_c75668)+177)/* var_c70676 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd290 ))))(slice_v8536, seg_v17636, 0, pd290); }; }; }; SOURCE(17092, 167) { word x291; word x292; if ((( x291 = version_v8436, *(float*)&x291 ) >= ( x292 = (* (ptr) &fc187 ), *(float*)&x292 ))) { SOURCE(17182, 29) { word pd293; pd293 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd293 ))))(f_v8408, (* (( (ptr) gf_c75668)+41) ), pd293); }; SOURCE(17213, 27) { word pd294; pd294 = (* (( (ptr) (* (( (ptr) gf_c75668)+184)/* var_c71956 */ ))+24) ); fwd_v18056 = (word) ( *( (fPt) ((* (ptr) pd294 ))))(f_v8408, pd294); }; } else { SOURCE(17249, 10) fwd_v18056 = 1; }; }; SOURCE(17261, 22) (* (( (ptr) trajData_v17608)+9) ) = fwd_v18056; SOURCE(17285, 50) if ((0 != hasCircle_v17356)) { (* (ptr) trajData_v17608 ) = 3; } else { (* (ptr) trajData_v17608 ) = role_v17440; }; SOURCE(12120, 5215) return(slice_v8536); } static word RoleFromRope_P600(roleName_v8596) word roleName_v8596; { register ptr gf_c75700 = (ptr) &globalframe; word role_v8640; /* RoleFromRope: */ SOURCE(17372, 227) { word pd295; pd295 = (* (( (ptr) (* (( (ptr) gf_c75700)+188)/* var_c72404 */ ))+8) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd295 ))))(roleName_v8596, (* (( (ptr) gf_c75700)+42) ), 1, pd295))) { SOURCE(17497, 12) role_v8640 = 0; } else { { word pd296; pd296 = (* (( (ptr) (* (( (ptr) gf_c75700)+188)/* var_c72404 */ ))+8) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd296 ))))(roleName_v8596, (* (( (ptr) gf_c75700)+43) ), 1, pd296))) { SOURCE(17543, 11) role_v8640 = 1; } else { { word pd297; pd297 = (* (( (ptr) (* (( (ptr) gf_c75700)+188)/* var_c72404 */ ))+8) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd297 ))))(roleName_v8596, (* (( (ptr) gf_c75700)+44) ), 1, pd297))) { SOURCE(17588, 11) role_v8640 = 2; } else { SOURCE(17612, 5) (void) XR_RaiseUnnamedError(); }; }; }; }; }; }; SOURCE(17372, 227) return(role_v8640); } static word RoleToRope_P660(role_v8700) word role_v8700; { register ptr gf_c75732 = (ptr) &globalframe; word roleName_v8744; /* RoleToRope: */ SOURCE(17623, 171) SOURCE(17623, 171) roleName_v8744 = 0; SOURCE(17696, 98) { word var_c72436; var_c72436 = role_v8700; switch (var_c72436) { case 0: SOURCE(17722, 18) roleName_v8744 = (* (( (ptr) gf_c75732)+42) ); break; case 1: SOURCE(17750, 17) roleName_v8744 = (* (( (ptr) gf_c75732)+43) ); break; case 2: SOURCE(17777, 17) roleName_v8744 = (* (( (ptr) gf_c75732)+44) ); break; default: SOURCE(17807, 5) (void) XR_RaiseUnnamedError(); break; }; }; SOURCE(17623, 171) return(roleName_v8744); } static word TrajPointsInDescriptor_P720(sliceD_v8972) word sliceD_v8972; { register ptr gf_c75764 = (ptr) &globalframe; word pointGen_v9016; word trajData_v18756; word trajParts_v18784; word pgd_v18812 = 0; word jointGen_v18840 = 0; word cpGen_v18868 = 0; /* TrajPointsInDescriptor: */ SOURCE(18158, 508) SOURCE(18158, 508) pointGen_v9016 = 0; SOURCE(18252, 46) trajData_v18756 = XR_Narrow((* (( (ptr) (* (ptr) sliceD_v8972 ))+1) ), (* (( (ptr) gf_c75764)+11) )); SOURCE(18300, 43) trajParts_v18784 = XR_Narrow((* (( (ptr) sliceD_v8972)+1) ), (* (( (ptr) gf_c75764)+12) )); SOURCE(18430, 49) { word pd298; pd298 = (* (( (ptr) (* (( (ptr) gf_c75764)+180)/* var_c70900 */ ))+53) ); jointGen_v18840 = (word) ( *( (fPt) ((* (ptr) pd298 ))))(trajParts_v18784, pd298); }; SOURCE(18481, 63) { word pd299; pd299 = (* (( (ptr) (* (( (ptr) gf_c75764)+180)/* var_c70900 */ ))+48) ); cpGen_v18868 = (word) ( *( (fPt) ((* (ptr) pd299 ))))(trajData_v18756, trajParts_v18784, pd299); }; SOURCE(18546, 63) { word var_c72468; var_c72468 = XR_NewObject(12, (* (( (ptr) gf_c75764)+27) )); (* (( (ptr) var_c72468)+1) ) = jointGen_v18840; (* (( (ptr) var_c72468)+2) ) = cpGen_v18868; pgd_v18812 = var_c72468; }; SOURCE(18611, 55) { word var_c72500; var_c72500 = XR_NewObject(16, (* (( (ptr) gf_c75764)+26) )); (* (ptr) var_c72500 ) = sliceD_v8972; (* (( (ptr) var_c72500)+3) ) = pgd_v18812; pointGen_v9016 = var_c72500; }; SOURCE(18158, 508) return(pointGen_v9016); } static void TrajWalkPointsInDescriptor_P780(sliceD_v9076, walkProc_v9104) word sliceD_v9076; word walkProc_v9104; { register ptr gf_c75796 = (ptr) &globalframe; word trajParts_v18912; word trajData_v18940; /* TrajWalkPointsInDescriptor: */ SOURCE(18672, 314) SOURCE(18760, 43) trajParts_v18912 = XR_Narrow((* (( (ptr) sliceD_v9076)+1) ), (* (( (ptr) gf_c75796)+12) )); SOURCE(18805, 46) trajData_v18940 = XR_Narrow((* (( (ptr) (* (ptr) sliceD_v9076 ))+1) ), (* (( (ptr) gf_c75796)+11) )); SOURCE(18853, 62) { word pd300; pd300 = (* (( (ptr) (* (( (ptr) gf_c75796)+180)/* var_c70900 */ ))+54) ); (void) ( *( (fPt) ((* (ptr) pd300 ))))(trajData_v18940, trajParts_v18912, walkProc_v9104, pd300); }; SOURCE(18917, 69) { word pd301; pd301 = (* (( (ptr) (* (( (ptr) gf_c75796)+180)/* var_c70900 */ ))+49) ); (void) ( *( (fPt) ((* (ptr) pd301 ))))(trajData_v18940, trajParts_v18912, walkProc_v9104, pd301); }; } static word TrajPointPairsInDescriptor_P840(sliceD_v9164) word sliceD_v9164; { register ptr gf_c75828 = (ptr) &globalframe; word pointPairGen_v9208; word trajData_v18984; word trajParts_v19012; word pgd_v19040 = 0; word segGen_v19068 = 0; /* TrajPointPairsInDescriptor: */ SOURCE(18992, 435) SOURCE(18992, 435) pointPairGen_v9208 = 0; SOURCE(19098, 46) trajData_v18984 = XR_Narrow((* (( (ptr) (* (ptr) sliceD_v9164 ))+1) ), (* (( (ptr) gf_c75828)+11) )); SOURCE(19146, 43) trajParts_v19012 = XR_Narrow((* (( (ptr) sliceD_v9164)+1) ), (* (( (ptr) gf_c75828)+12) )); SOURCE(19250, 59) { word pd302; pd302 = (* (( (ptr) (* (( (ptr) gf_c75828)+180)/* var_c70900 */ ))+42) ); segGen_v19068 = (word) ( *( (fPt) ((* (ptr) pd302 ))))(trajData_v18984, trajParts_v19012, pd302); }; SOURCE(19311, 51) { word var_c72532; var_c72532 = XR_NewObject(4, (* (( (ptr) gf_c75828)+25) )); (* (ptr) var_c72532 ) = segGen_v19068; pgd_v19040 = var_c72532; }; SOURCE(19364, 63) { word var_c72564; var_c72564 = XR_NewObject(16, (* (( (ptr) gf_c75828)+24) )); (* (ptr) var_c72564 ) = sliceD_v9164; (* (( (ptr) var_c72564)+3) ) = pgd_v19040; pointPairGen_v9208 = var_c72564; }; SOURCE(18992, 435) return(pointPairGen_v9208); } static word TrajSegmentsInDescriptor_P900(sliceD_v9268) word sliceD_v9268; { register ptr gf_c75860 = (ptr) &globalframe; word segGen_v9312; word trajData_v19112; word trajParts_v19140; /* TrajSegmentsInDescriptor: */ SOURCE(19433, 248) SOURCE(19433, 248) segGen_v9312 = 0; SOURCE(19529, 46) trajData_v19112 = XR_Narrow((* (( (ptr) (* (ptr) sliceD_v9268 ))+1) ), (* (( (ptr) gf_c75860)+11) )); SOURCE(19577, 43) trajParts_v19140 = XR_Narrow((* (( (ptr) sliceD_v9268)+1) ), (* (( (ptr) gf_c75860)+12) )); SOURCE(19622, 59) { word pd303; pd303 = (* (( (ptr) (* (( (ptr) gf_c75860)+180)/* var_c70900 */ ))+42) ); segGen_v9312 = (word) ( *( (fPt) ((* (ptr) pd303 ))))(trajData_v19112, trajParts_v19140, pd303); }; SOURCE(19433, 248) return(segGen_v9312); } static word TrajWalkSegments_P960(slice_v9372, walkProc_v9400) word slice_v9372; word walkProc_v9400; { register ptr gf_c75892 = (ptr) &globalframe; word sliceD_v9444; word trajData_v19184; word trajParts_v19212; word segGen_v19240; /* TrajWalkSegments: */ SOURCE(19687, 663) SOURCE(19687, 663) sliceD_v9444 = 0; SOURCE(19783, 39) trajData_v19184 = XR_Narrow((* (( (ptr) slice_v9372)+1) ), (* (( (ptr) gf_c75892)+11) )); SOURCE(19824, 55) { word pd304; pd304 = (* (( (ptr) (* (( (ptr) gf_c75892)+180)/* var_c70900 */ ))+6) ); trajParts_v19212 = (word) ( *( (fPt) ((* (ptr) pd304 ))))(trajData_v19184, pd304); }; SOURCE(19881, 62) { word pd305; pd305 = (* (( (ptr) (* (( (ptr) gf_c75892)+180)/* var_c70900 */ ))+40) ); segGen_v19240 = (word) ( *( (fPt) ((* (ptr) pd305 ))))(trajData_v19184, pd305); }; SOURCE(19945, 258) { W2 next_v19284; { word pd306; pd306 = (* (( (ptr) (* (( (ptr) gf_c75892)+180)/* var_c70900 */ ))+47) ); (void) ( *( (fPt) ((* (ptr) pd306 ))))((word) &next_v19284, segGen_v19240, pd306); }; lab_L100038: ; if ((next_v19284.f0 != 0)) { } else { goto lab_L100035; }; { word keep_v19328; SOURCE(20070, 36) keep_v19328 = (word) ( *( (fPt) ((* (ptr) walkProc_v9400 ))))(next_v19284.f0, 0, walkProc_v9400); SOURCE(20108, 95) if ((0 != keep_v19328)) { SOURCE(20123, 37) { word var_c72596; var_c72596 = (* (ptr) trajParts_v19212 ); { word idx307; word limit308; word xs309; xs309 = (word) ( idx307 = (word) next_v19284.f1, limit308 = (* (ptr) var_c72596 ), BCK(idx307, limit308) ); (* (bPt) ((( (bPt) var_c72596)+4) + ((word) xs309 >> 3)) ) |= ((unsigned) 1 << 8 - ((word) (xs309 & 7)+1)); }; }; SOURCE(20162, 41) (* (( (ptr) trajParts_v19212)+3) ) = ((* (( (ptr) trajParts_v19212)+3) ) + 1); }; }; { word pd310; pd310 = (* (( (ptr) (* (( (ptr) gf_c75892)+180)/* var_c70900 */ ))+47) ); (void) ( *( (fPt) ((* (ptr) pd310 ))))((word) &next_v19284, segGen_v19240, pd310); }; goto lab_L100038; lab_L100035: ; }; SOURCE(20217, 34) { word pd311; pd311 = (* (( (ptr) (* (( (ptr) gf_c75892)+180)/* var_c70900 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd311 ))))(trajParts_v19212, pd311); }; SOURCE(20253, 41) { word pd312; pd312 = (* (( (ptr) (* (( (ptr) gf_c75892)+180)/* var_c70900 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd312 ))))(trajParts_v19212, pd312); }; SOURCE(20296, 54) { word pd313; pd313 = (* (( (ptr) (* (( (ptr) gf_c75892)+176)/* var_c70644 */ ))+8) ); sliceD_v9444 = (word) ( *( (fPt) ((* (ptr) pd313 ))))(slice_v9372, trajParts_v19212, pd313); }; SOURCE(19687, 663) return(sliceD_v9444); } static void TrajNextPoint_P1020(formal_c0286, slice_v9504, pointGen_v9532) word formal_c0286; word slice_v9504; word pointGen_v9532; { register ptr gf_c75924 = (ptr) &globalframe; W3 pointAndDone_v9576; word pgd_v19372; /* TrajNextPoint: */ SOURCE(20356, 501) SOURCE(20458, 60) pgd_v19372 = XR_Narrow((* (( (ptr) pointGen_v9532)+3) ), (* (( (ptr) gf_c75924)+27) )); SOURCE(20520, 276) if ((0 == (* (ptr) pgd_v19372 ))) { SOURCE(20547, 254) { word nextJoint_v19416; SOURCE(20549, 51) { word pd314; pd314 = (* (( (ptr) (* (( (ptr) gf_c75924)+180)/* var_c70900 */ ))+61) ); nextJoint_v19416 = (word) ( *( (fPt) ((* (ptr) pd314 ))))((* ((( (ptr) pgd_v19372)+1)) ), pd314); }; SOURCE(20602, 194) if (( (int)nextJoint_v19416 == (int) (word) -1)) { SOURCE(20627, 21) (* (ptr) pgd_v19372 ) = 1; } else { SOURCE(20659, 36) if (((* (ptr) (* (ptr) pointGen_v9532 ) ) != slice_v9504)) { SOURCE(20695, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(20702, 59) { word pd315; pd315 = (* (( (ptr) (* (( (ptr) gf_c75924)+177)/* var_c70676 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd315 ))))((word) &pointAndDone_v9576, slice_v9504, SGNCK(nextJoint_v19416), pd315); }; SOURCE(20763, 25) pointAndDone_v9576.f2 = 0; SOURCE(20790, 6) goto lab_L100039; }; }; }; SOURCE(20804, 53) { word pd316; pd316 = (* (( (ptr) (* (( (ptr) gf_c75924)+180)/* var_c70900 */ ))+50) ); (void) ( *( (fPt) ((* (ptr) pd316 ))))((word) &pointAndDone_v9576, (* (( (ptr) pgd_v19372)+2) ), pd316); }; /* removed tail goto */ lab_L100039: ; (* (W3Pt) formal_c0286 ) = pointAndDone_v9576; return; } static void TrajNextPointPair_P1080(formal_c0295, slice_v9636, pointPairGen_v9664) word formal_c0295; word slice_v9636; word pointPairGen_v9664; { register ptr gf_c75956 = (ptr) &globalframe; W5 pointPairAndDone_v9708; word pgd_v19460; word seg_v19488; W2 var_c0292; /* TrajNextPointPair: */ SOURCE(20863, 337) SOURCE(20985, 68) pgd_v19460 = XR_Narrow((* (( (ptr) pointPairGen_v9664)+3) ), (* (( (ptr) gf_c75956)+25) )); SOURCE(21055, 60) { word pd317; pd317 = (* (( (ptr) (* (( (ptr) gf_c75956)+189)/* var_c72628 */ ))+43) ); (void) ( *( (fPt) ((* (ptr) pd317 ))))((word) &var_c0292, slice_v9636, (* (ptr) pgd_v19460 ), pd317); }; seg_v19488 = var_c0292.f0; SOURCE(21117, 83) if ((seg_v19488 == 0)) { SOURCE(21135, 34) pointPairAndDone_v9708.f0 = (* (ptr) &fc95 ); pointPairAndDone_v9708.f1 = (* (ptr) &fc95 ); pointPairAndDone_v9708.f2 = (* (ptr) &fc95 ); pointPairAndDone_v9708.f3 = (* (ptr) &fc95 ); pointPairAndDone_v9708.f4 = 1; /* removed tail goto */ } else { SOURCE(21169, 31) (* (W2Pt) &pointPairAndDone_v9708 ) = (* (W2Pt) (( (ptr) seg_v19488)+9) ); (* (W2Pt) (( (ptr) &pointPairAndDone_v9708)+2) ) = (* (W2Pt) (( (ptr) seg_v19488)+11) ); pointPairAndDone_v9708.f4 = 0; /* removed tail goto */ }; (* (W5Pt) formal_c0295 ) = pointPairAndDone_v9708; return; } static void TrajNextSegment_P1140(formal_c0301, slice_v9768, segGen_v9796) word formal_c0301; word slice_v9768; word segGen_v9796; { register ptr gf_c75988 = (ptr) &globalframe; word seg_v9840; word transform_v9868; /* TrajNextSegment: */ SOURCE(21206, 160) SOURCE(21206, 160) seg_v9840 = 0; SOURCE(21206, 160) transform_v9868 = 0; SOURCE(21323, 43) { word var_c72788; { word pd318; pd318 = (* (( (ptr) (* (( (ptr) gf_c75988)+180)/* var_c70900 */ ))+46) ); var_c72788 = (word) ( *( (fPt) ((* (ptr) pd318 ))))(segGen_v9796, pd318); }; seg_v9840 = var_c72788; transform_v9868 = 0; /* removed tail goto */ }; (* (ptr) formal_c0301 ) = seg_v9840; (* (( (ptr) formal_c0301)+1) ) = transform_v9868; return; } static void TrajClosestPoint_P1200(formal_c0333, sliceD_v9928, testPoint_v9956, tolerance_v9984) word formal_c0333; word sliceD_v9928; W2 testPoint_v9956; word tolerance_v9984; { register ptr gf_c76020 = (ptr) &globalframe; W2 bestPoint_v10028; word bestDist_v10056; W2 bestNormal_v10084; word hitData_v10112; word success_v10140; word trajParts_v19532; word thisDist_v19560; word thisSegNum_v19588; word bestSegNum_v19616; word thisCP_v19644; word bestCP_v19672; word thisJointNum_v19700; word bestJointNum_v19728; W2 thisPoint_v19756; W2 thisNormal_v19784; word thisSuccess_v19812; word bestType_v19840 = 0; word trajHitData_v19868 = 0; /* TrajClosestPoint: */ SOURCE(21372, 1509) SOURCE(21372, 1509) bestPoint_v10028.f0 = (* (ptr) &fc95 ); bestPoint_v10028.f1 = (* (ptr) &fc95 ); SOURCE(21372, 1509) bestNormal_v10084.f0 = (* (ptr) &fc95 ); bestNormal_v10084.f1 = (* (ptr) &fc90 ); SOURCE(21372, 1509) hitData_v10112 = 0; SOURCE(21372, 1509) success_v10140 = 0; SOURCE(21582, 43) trajParts_v19532 = XR_Narrow((* (( (ptr) sliceD_v9928)+1) ), (* (( (ptr) gf_c76020)+12) )); { word var_c72820; SOURCE(21831, 33) bestDist_v10056 = (* (ptr) &fc319 ); SOURCE(21866, 107) { word pd321; { word pd320; pd320 = (* (( (ptr) (* (( (ptr) gf_c76020)+189)/* var_c72628 */ ))+9) ); var_c72820 = (word) ( *( (fPt) ((* (ptr) pd320 ))))((* (ptr) sliceD_v9928 ), 0, pd320); }; pd321 = (* (( (ptr) (* (( (ptr) gf_c76020)+190)/* var_c72852 */ ))+22) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd321 ))))(testPoint_v9956, var_c72820, tolerance_v9984, pd321))) { SOURCE(21967, 6) goto lab_L100042; }; }; SOURCE(22002, 125) { W8 var_c72884; { word pd322; pd322 = (* (( (ptr) (* (( (ptr) gf_c76020)+177)/* var_c70676 */ ))+56) ); (void) ( *( (fPt) ((* (ptr) pd322 ))))((word) &var_c72884, testPoint_v9956, sliceD_v9928, tolerance_v9984, pd322); }; thisSuccess_v19812 = var_c72884.f7; thisNormal_v19784 = (* (W2Pt) (( (ptr) &var_c72884)+5) ); thisPoint_v19756 = (* (W2Pt) (( (ptr) &var_c72884)+3) ); thisCP_v19644 = var_c72884.f2; thisSegNum_v19588 = var_c72884.f1; thisDist_v19560 = var_c72884.f0; }; SOURCE(22129, 196) { word x323; word x324; if ( ( (0 != thisSuccess_v19812) ? (( x323 = thisDist_v19560, *(float*)&x323 ) < ( x324 = bestDist_v10056, *(float*)&x324 )) : 0 ) ) { SOURCE(22175, 23) bestType_v19840 = 2; SOURCE(22200, 21) bestPoint_v10028 = thisPoint_v19756; SOURCE(22223, 23) bestNormal_v10084 = thisNormal_v19784; SOURCE(22248, 19) bestDist_v10056 = thisDist_v19560; SOURCE(22269, 23) bestSegNum_v19616 = thisSegNum_v19588; SOURCE(22294, 15) bestCP_v19672 = thisCP_v19644; SOURCE(22311, 14) success_v10140 = 1; }; }; SOURCE(22330, 112) { W7 var_c72916; { word pd325; pd325 = (* (( (ptr) (* (( (ptr) gf_c76020)+177)/* var_c70676 */ ))+55) ); (void) ( *( (fPt) ((* (ptr) pd325 ))))((word) &var_c72916, testPoint_v9956, sliceD_v9928, tolerance_v9984, pd325); }; thisSuccess_v19812 = var_c72916.f6; thisNormal_v19784 = (* (W2Pt) (( (ptr) &var_c72916)+4) ); thisPoint_v19756 = (* (W2Pt) (( (ptr) &var_c72916)+2) ); thisJointNum_v19700 = var_c72916.f1; thisDist_v19560 = var_c72916.f0; }; SOURCE(22444, 176) { word x326; word x327; if ( ( (0 != thisSuccess_v19812) ? (( x326 = thisDist_v19560, *(float*)&x326 ) < ( x327 = bestDist_v10056, *(float*)&x327 )) : 0 ) ) { SOURCE(22490, 16) bestType_v19840 = 1; SOURCE(22508, 21) bestPoint_v10028 = thisPoint_v19756; SOURCE(22531, 23) bestNormal_v10084 = thisNormal_v19784; SOURCE(22556, 19) bestDist_v10056 = thisDist_v19560; SOURCE(22577, 27) bestJointNum_v19728 = thisJointNum_v19700; SOURCE(22606, 14) success_v10140 = 1; }; }; SOURCE(22625, 256) if ((0 != success_v10140)) { SOURCE(22643, 238) { word var_c72948; var_c72948 = bestType_v19840; if ((var_c72948 == 2)) { SOURCE(22682, 96) { word var_c72980; { word var_c73012; var_c73012 = XR_NewObject(24, (* (( (ptr) gf_c76020)+13) )); (* (ptr) var_c73012 ) = 2; (* (( (ptr) var_c73012)+1) ) = bestSegNum_v19616; (* (( (ptr) var_c73012)+2) ) = bestCP_v19672; (* (( (ptr) var_c73012)+3) ) = (word) -1; (* (W2Pt) (( (ptr) var_c73012)+4) ) = bestPoint_v10028; var_c72980 = var_c73012; }; trajHitData_v19868 = var_c72980; hitData_v10112 = var_c72980; }; } else { if ((var_c72948 == 1)) { SOURCE(22794, 87) { word var_c73044; { word var_c73076; var_c73076 = XR_NewObject(24, (* (( (ptr) gf_c76020)+13) )); (* (ptr) var_c73076 ) = 1; (* (( (ptr) var_c73076)+1) ) = (word) -1; (* (( (ptr) var_c73076)+2) ) = (word) -1; (* (( (ptr) var_c73076)+3) ) = bestJointNum_v19728; (* (W2Pt) (( (ptr) var_c73076)+4) ) = bestPoint_v10028; var_c73044 = var_c73076; }; trajHitData_v19868 = var_c73044; hitData_v10112 = var_c73044; }; } else { SOURCE(22897, 5) (void) XR_RaiseUnnamedError(); }; }; }; }; }; /* removed tail goto */ lab_L100042: ; (* (W2Pt) formal_c0333 ) = bestPoint_v10028; (* (( (ptr) formal_c0333)+2) ) = bestDist_v10056; (* (W2Pt) (( (ptr) formal_c0333)+3) ) = bestNormal_v10084; (* (( (ptr) formal_c0333)+5) ) = hitData_v10112; (* (( (ptr) formal_c0333)+6) ) = success_v10140; return; } static void TrajClosestJointToHitData_P1260(formal_c0387, sliceD_v10212, mapPoint_v10240, formal_c0801, formal_c0802) word formal_c0387; word sliceD_v10212; W2 mapPoint_v10240; W2 formal_c0801; word formal_c0802; { W16 var_c76052; /* declaration of testPoint_v10268 skipped */ /* declaration of hitData_v10296 skipped */ register ptr gf_c76084 = (ptr) &globalframe; word jointD_v10352; /* declaration of point_v10380 skipped */ W2 normal_v10408; /* declaration of var_c73108 skipped */ /* declaration of var_c73140 skipped */ word hitType_v19940; word segNum_v19968; word cpNum_v19996; /* declaration of jointNum_v20024 skipped */ W2 hitPoint_v20052; word jointParts_v20080 = 0; /* declaration of traj_v20108 skipped */ /* declaration of trajData_v20136 skipped */ (* (W2Pt) (( (ptr) &var_c76052)+4)/* testPoint_v10268 */ ) = formal_c0801; (* (( (ptr) &var_c76052)+6)/* hitData_v10296 */ ) = formal_c0802; /* TrajClosestJointToHitData: */ SOURCE(22911, 4402) { word tmpAddr328; tmpAddr328 = (word) (( (ptr) &var_c76052)+9)/* var_c73108 */ ; (* (ptr) tmpAddr328 ) = ( ((word) (fPt) NearestJointToHitData_P4296) ); (* (( (ptr) tmpAddr328) + 1) ) = 1; }; { word tmpAddr329; tmpAddr329 = (word) (( (ptr) &var_c76052)+11)/* var_c73140 */ ; (* (ptr) tmpAddr329 ) = ( ((word) (fPt) FindJointNormal_P4044) ); (* (( (ptr) tmpAddr329) + 1) ) = 1; }; SOURCE(22911, 4402) jointD_v10352 = 0; SOURCE(22911, 4402) normal_v10408.f0 = (* (ptr) &fc95 ); normal_v10408.f1 = (* (ptr) &fc90 ); SOURCE(24139, 26) (* (( (ptr) &var_c76052)+14)/* traj_v20108 */ ) = (* (ptr) sliceD_v10212 ); SOURCE(24167, 38) (* (( (ptr) &var_c76052)+15)/* trajData_v20136 */ ) = XR_Narrow((* (( (ptr) (* (( (ptr) &var_c76052)+14)/* traj_v20108 */ ))+1) ), (* (( (ptr) gf_c76084)+11) )); SOURCE(24207, 76) { W6 var_c73172; { word pd330; pd330 = (* (( (ptr) (* (( (ptr) gf_c76084)+177)/* var_c70676 */ ))+53) ); (void) ( *( (fPt) ((* (ptr) pd330 ))))((word) &var_c73172, (* (( (ptr) &var_c76052)+6)/* hitData_v10296 */ ), pd330); }; hitPoint_v20052 = (* (W2Pt) (( (ptr) &var_c73172)+4) ); (* (( (ptr) &var_c76052)+13)/* jointNum_v20024 */ ) = var_c73172.f3; cpNum_v19996 = var_c73172.f2; segNum_v19968 = var_c73172.f1; hitType_v19940 = var_c73172.f0; }; SOURCE(24285, 2945) { word var_c73204; var_c73204 = hitType_v19940; switch (var_c73204) { case 4: SOURCE(24317, 984) { word jointDist_v20240; word cpDist_v20268; word bestControlPoint_v20296; word bestSeg_v20324; W2 bestPoint_v20352; W2 bestCPPoint_v20380; W2 bestNormal_v20408; word jointSuccess_v20436 = 0; word cpSuccess_v20464 = 0; SOURCE(24466, 106) { W7 var_c73236; { word pd331; pd331 = (* (( (ptr) (* (( (ptr) gf_c76084)+177)/* var_c70676 */ ))+55) ); (void) ( *( (fPt) ((* (ptr) pd331 ))))((word) &var_c73236, mapPoint_v10240, sliceD_v10212, (* (ptr) &fc332 ), pd331); }; jointSuccess_v20436 = var_c73236.f6; bestNormal_v20408 = (* (W2Pt) (( (ptr) &var_c73236)+4) ); bestPoint_v20352 = (* (W2Pt) (( (ptr) &var_c73236)+2) ); (* (( (ptr) &var_c76052)+13)/* jointNum_v20024 */ ) = var_c73236.f1; jointDist_v20240 = var_c73236.f0; }; SOURCE(24574, 126) { W8 var_c73268; { word pd333; pd333 = (* (( (ptr) (* (( (ptr) gf_c76084)+177)/* var_c70676 */ ))+56) ); (void) ( *( (fPt) ((* (ptr) pd333 ))))((word) &var_c73268, mapPoint_v10240, sliceD_v10212, (* (ptr) &fc332 ), pd333); }; cpSuccess_v20464 = var_c73268.f7; bestNormal_v20408 = (* (W2Pt) (( (ptr) &var_c73268)+5) ); bestCPPoint_v20380 = (* (W2Pt) (( (ptr) &var_c73268)+3) ); bestControlPoint_v20296 = var_c73268.f2; bestSeg_v20324 = var_c73268.f1; cpDist_v20268 = var_c73268.f0; }; SOURCE(24702, 545) if ((0 != jointSuccess_v20436)) { SOURCE(24725, 522) if ((0 != cpSuccess_v20464)) { SOURCE(24745, 382) { word x334; word x335; if ((( x334 = cpDist_v20268, *(float*)&x334 ) < ( x335 = jointDist_v20240, *(float*)&x335 ))) { SOURCE(24772, 240) { /*1*/ word seg_v20508 = 0; SOURCE(24788, 83) /*1*/ { /*1*/ word pd336; /*1*/ pd336 = (* (( (ptr) (* (( (ptr) gf_c76084)+180)/* var_c70900 */ ))+11) ); /*1*/ jointParts_v20080 = (word) ( *( (fPt) ((* (ptr) pd336 ))))((* (( (ptr) &var_c76052)+15)/* trajData_v20136 */ ), bestSeg_v20324, bestControlPoint_v20296, pd336) /*1*/ ; /*1*/ }; SOURCE(24873, 19) /*1*/ (* (W2Pt) (( (ptr) &var_c76052)+7)/* point_v10380 */ ) = bestCPPoint_v20380; SOURCE(24894, 40) /*1*/ { /*1*/ word pd337; /*1*/ pd337 = (* (( (ptr) (* (( (ptr) gf_c76084)+177)/* var_c70676 */ ))+29) ); /*1*/ seg_v20508 = (word) ( *( (fPt) ((* (ptr) pd337 ))))((* (( (ptr) &var_c76052)+14)/* traj_v20108 */ ), bestSeg_v20324, pd337) /*1*/ ; /*1*/ }; SOURCE(24936, 74) /*1*/ { /*1*/ word pd338; /*1*/ pd338 = (* (( (ptr) (* (ptr) seg_v20508 ))+25) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd338 ))))((word) &normal_v10408, seg_v20508, bestControlPoint_v20296, bestCPPoint_v20380, (* (W2Pt) ( /*1*/ ( (ptr) &var_c76052)+4)/* testPoint_v10268 */ ), pd338); /*1*/ }; /*1*/ }; } else { SOURCE(25021, 59) { /*1*/ word pd339; /*1*/ word idx340; /*1*/ pd339 = (* (( (ptr) (* (( (ptr) gf_c76084)+180)/* var_c70900 */ ))+8) ); /*1*/ jointParts_v20080 = (word) ( *( (fPt) ((* (ptr) pd339 ))))((* (( (ptr) &var_c76052)+15)/* trajData_v20136 */ ), ( /*1*/ idx340 = (* (( (ptr) &var_c76052)+13)/* jointNum_v20024 */ ), /*1*/ SGNCK(idx340) /*1*/ ), pd339); /*1*/ }; SOURCE(25082, 17) (* (W2Pt) (( (ptr) &var_c76052)+7)/* point_v10380 */ ) = bestPoint_v20352; SOURCE(25101, 26) (void) FindJointNormal_P4044((word) &normal_v10408, (word) (( (bPt) &var_c76052)+44)/* var_c73140 */ ); }; }; } else { SOURCE(25141, 59) { word pd341; word idx342; pd341 = (* (( (ptr) (* (( (ptr) gf_c76084)+180)/* var_c70900 */ ))+8) ); jointParts_v20080 = (word) ( *( (fPt) ((* (ptr) pd341 ))))((* (( (ptr) &var_c76052)+15)/* trajData_v20136 */ ), ( /*1*/ idx342 = (* (( (ptr) &var_c76052)+13)/* jointNum_v20024 */ ), /*1*/ SGNCK(idx342) /*1*/ ), pd341); }; SOURCE(25202, 17) (* (W2Pt) (( (ptr) &var_c76052)+7)/* point_v10380 */ ) = bestPoint_v20352; SOURCE(25221, 26) (void) FindJointNormal_P4044((word) &normal_v10408, (word) (( (bPt) &var_c76052)+44)/* var_c73140 */ ); }; } else { SOURCE(25259, 5) (void) XR_RaiseUnnamedError(); }; }; break; case 1: SOURCE(25315, 59) { word pd343; word idx344; pd343 = (* (( (ptr) (* (( (ptr) gf_c76084)+180)/* var_c70900 */ ))+8) ); jointParts_v20080 = (word) ( *( (fPt) ((* (ptr) pd343 ))))((* (( (ptr) &var_c76052)+15)/* trajData_v20136 */ ), ( idx344 = (* (( (ptr) &var_c76052)+13)/* jointNum_v20024 */ ), SGNCK(idx344) ), pd343); }; SOURCE(25376, 16) (* (W2Pt) (( (ptr) &var_c76052)+7)/* point_v10380 */ ) = mapPoint_v10240; SOURCE(25394, 26) (void) FindJointNormal_P4044((word) &normal_v10408, (word) (( (bPt) &var_c76052)+44)/* var_c73140 */ ); break; case 2: SOURCE(25441, 207) { word seg_v20552 = 0; SOURCE(25457, 71) { word pd345; pd345 = (* (( (ptr) (* (( (ptr) gf_c76084)+180)/* var_c70900 */ ))+11) ); jointParts_v20080 = (word) ( *( (fPt) ((* (ptr) pd345 ))))((* (( (ptr) &var_c76052)+15)/* trajData_v20136 */ ), SGNCK(segNum_v19968) , SGNCK(cpNum_v19996), pd345); }; SOURCE(25530, 16) (* (W2Pt) (( (ptr) &var_c76052)+7)/* point_v10380 */ ) = mapPoint_v10240; SOURCE(25548, 39) { word pd346; pd346 = (* (( (ptr) (* (( (ptr) gf_c76084)+177)/* var_c70676 */ ))+29) ); seg_v20552 = (word) ( *( (fPt) ((* (ptr) pd346 ))))((* (( (ptr) &var_c76052)+14)/* traj_v20108 */ ), SGNCK(segNum_v19968) , pd346); }; SOURCE(25589, 57) { word pd347; pd347 = (* (( (ptr) (* (ptr) seg_v20552 ))+25) ); (void) ( *( (fPt) ((* (ptr) pd347 ))))((word) &normal_v10408, seg_v20552, SGNCK(cpNum_v19996), (* (W2Pt) (( (ptr) &var_c76052)+7) /* point_v10380 */ ), (* (W2Pt) (( (ptr) &var_c76052)+4)/* testPoint_v10268 */ ), pd347); }; }; break; case 3: SOURCE(25662, 1576) { word success_v20624 = 0; W2 jointPoint_v20652; W2 cpPoint_v20680; W2 cpNormal_v20708; word seg_v20736 = 0; SOURCE(26365, 39) { word pd348; pd348 = (* (( (ptr) (* (( (ptr) gf_c76084)+177)/* var_c70676 */ ))+29) ); seg_v20736 = (word) ( *( (fPt) ((* (ptr) pd348 ))))((* (( (ptr) &var_c76052)+14)/* traj_v20108 */ ), SGNCK(segNum_v19968) , pd348); }; SOURCE(26406, 34) (* (( (ptr) &var_c76052)+13)/* jointNum_v20024 */ ) = (word) NearestJointToHitData_P4296((word) ((( (bPt) &var_c76052)+36) /* var_c73108 */ )); SOURCE(26442, 49) { word pd349; word idx350; pd349 = (* (( (ptr) (* (( (ptr) gf_c76084)+177)/* var_c70676 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd349 ))))((word) &jointPoint_v20652, (* (( (ptr) &var_c76052)+14)/* traj_v20108 */ ), ( idx350 = (* (( (ptr) &var_c76052)+13)/* jointNum_v20024 */ ), SGNCK(idx350) ), pd349); }; SOURCE(26493, 106) { W6 var_c73300; { word pd351; pd351 = (* (( (ptr) (* (ptr) seg_v20736 ))+19) ); (void) ( *( (fPt) ((* (ptr) pd351 ))))((word) &var_c73300, seg_v20736, mapPoint_v10240, (* (ptr) &fc319 ), pd351); }; success_v20624 = var_c73300.f5; cpNum_v19996 = var_c73300.f4; cpNormal_v20708 = (* (W2Pt) (( (ptr) &var_c73300)+2) ); cpPoint_v20680 = (* (W2Pt) &var_c73300 ); }; SOURCE(26601, 629) if ((0 == success_v20624)) { SOURCE(26664, 59) { word pd352; word idx353; pd352 = (* (( (ptr) (* (( (ptr) gf_c76084)+180)/* var_c70900 */ ))+8) ); jointParts_v20080 = (word) ( *( (fPt) ((* (ptr) pd352 ))))((* (( (ptr) &var_c76052)+15)/* trajData_v20136 */ ), ( idx353 = (* (( (ptr) &var_c76052)+13)/* jointNum_v20024 */ ), SGNCK(idx353) ), pd352); }; SOURCE(26725, 18) (* (W2Pt) (( (ptr) &var_c76052)+7)/* point_v10380 */ ) = jointPoint_v20652; SOURCE(26745, 26) (void) FindJointNormal_P4044((word) &normal_v10408, (word) (( (bPt) &var_c76052)+44)/* var_c73140 */ ); } else { SOURCE(26780, 455) { word cpDist_v20840; word jointDist_v20868; word tisAJoint_v20896; SOURCE(26818, 59) { word pd354; pd354 = (* (( (ptr) (* (( (ptr) gf_c76084)+187)/* var_c72212 */ ))+21) ); cpDist_v20840 = (word) ( *( (fPt) ((* (ptr) pd354 ))))(cpPoint_v20680, mapPoint_v10240, pd354); }; SOURCE(26879, 65) { word pd355; pd355 = (* (( (ptr) (* (( (ptr) gf_c76084)+187)/* var_c72212 */ ))+21) ); jointDist_v20868 = (word) ( *( (fPt) ((* (ptr) pd355 ))))(jointPoint_v20652, mapPoint_v10240, pd355); }; SOURCE(26946, 37) { word x356; word x357; tisAJoint_v20896 = (unsigned) (( x356 = jointDist_v20868, *(float*)&x356 ) <= ( x357 = cpDist_v20840, *(float*)&x357 )); }; SOURCE(26985, 245) if ((0 != tisAJoint_v20896)) { SOURCE(27005, 59) { word pd358; word idx359; pd358 = (* (( (ptr) (* (( (ptr) gf_c76084)+180)/* var_c70900 */ ))+8) ); jointParts_v20080 = (word) ( *( (fPt) ((* (ptr) pd358 ))))((* (( (ptr) &var_c76052)+15)/* trajData_v20136 */ ), ( /*1*/ idx359 = (* (( (ptr) &var_c76052)+13)/* jointNum_v20024 */ ), /*1*/ SGNCK(idx359) /*1*/ ), pd358); }; SOURCE(27066, 18) (* (W2Pt) (( (ptr) &var_c76052)+7)/* point_v10380 */ ) = jointPoint_v20652; SOURCE(27086, 26) (void) FindJointNormal_P4044((word) &normal_v10408, (word) (( (bPt) &var_c76052)+44)/* var_c73140 */ ); } else { SOURCE(27123, 71) { word pd360; pd360 = (* (( (ptr) (* (( (ptr) gf_c76084)+180)/* var_c70900 */ ))+11) ); jointParts_v20080 = (word) ( *( (fPt) ((* (ptr) pd360 ))))((* (( (ptr) &var_c76052)+15)/* trajData_v20136 */ ), SGNCK(segNum_v19968) /*1*/ , SGNCK(cpNum_v19996), pd360); }; SOURCE(27196, 15) (* (W2Pt) (( (ptr) &var_c76052)+7)/* point_v10380 */ ) = cpPoint_v20680; SOURCE(27213, 17) normal_v10408 = cpNormal_v20708; }; }; }; }; break; default: SOURCE(27252, 5) (void) XR_RaiseUnnamedError(); break; }; }; SOURCE(27259, 54) { word pd361; pd361 = (* (( (ptr) (* (( (ptr) gf_c76084)+176)/* var_c70644 */ ))+8) ); jointD_v10352 = (word) ( *( (fPt) ((* (ptr) pd361 ))))((* (( (ptr) &var_c76052)+14)/* traj_v20108 */ ), jointParts_v20080, pd361) ; }; /* removed tail goto */ (* (ptr) formal_c0387 ) = jointD_v10352; (* (W2Pt) (( (ptr) formal_c0387)+1) ) = (* (W2Pt) (( (ptr) &var_c76052)+7)/* point_v10380 */ ); (* (W2Pt) (( (ptr) formal_c0387)+3) ) = normal_v10408; return; } static void FindJointNormal_P4044(formal_c0405, formal_c76148) word formal_c0405; word formal_c76148; { register ptr gf_c76116 = (ptr) &globalframe; W2 normal_v20212; word seg1_v21124 = 0; word seg2_v21152 = 0; W2 normal1_v21180; W2 normal2_v21208; W2 tangent1_v21236; W2 tangent2_v21264; W2 direction_v21292; formal_c76148 = (formal_c76148 - 44); /* FindJointNormal: */ SOURCE(23092, 950) SOURCE(23224, 164) { word pd362; pd362 = (* (( (ptr) (* (( (ptr) gf_c76116)+177)/* var_c70676 */ ))+37) ); if (( (int)(word) ( *( (fPt) ((* (ptr) pd362 ))))((* ((( (ptr) formal_c76148)+14)) ), pd362) < (int)(* (( (ptr) formal_c76148)+13) ))) { SOURCE(23266, 80) { word pd363; if (((* (ptr) (* (( (ptr) formal_c76148)+15) ) ) == 2)) { seg2_v21152 = 0; } else { pd363 = (* (( (ptr) (* (( (ptr) gf_c76116)+177)/* var_c70676 */ ))+29) ); seg2_v21152 = (word) ( *( (fPt) ((* (ptr) pd363 ))))((* (( (ptr) formal_c76148)+14) ), 0, pd363); }; }; } else { SOURCE(23346, 42) { word pd364; word idx365; pd364 = (* (( (ptr) (* (( (ptr) gf_c76116)+177)/* var_c70676 */ ))+29) ); seg2_v21152 = (word) ( *( (fPt) ((* (ptr) pd364 ))))((* (( (ptr) formal_c76148)+14) ), ( idx365 = (* (( (ptr) formal_c76148)+13) ), SGNCK(idx365) ), pd364); }; }; }; SOURCE(23390, 45) { word pd366; word idx367; pd366 = (* (( (ptr) (* (( (ptr) gf_c76116)+177)/* var_c70676 */ ))+41) ); seg1_v21124 = (word) ( *( (fPt) ((* (ptr) pd366 ))))((* (( (ptr) formal_c76148)+14) ), ( idx367 = (* (( (ptr) formal_c76148)+13) ), SGNCK(idx367) ), pd366); }; SOURCE(23437, 605) if ( ( (seg1_v21124 != 0) ? (seg2_v21152 != 0) : 0 ) ) { SOURCE(23473, 75) { W4 var_c73332; { word pd368; pd368 = (* (( (ptr) (* (ptr) seg2_v21152 ))+26) ); (void) ( *( (fPt) ((* (ptr) pd368 ))))((word) &var_c73332, seg2_v21152, (* (W2Pt) (( (ptr) formal_c76148)+7) ), (* (W2Pt) ( ( (ptr) formal_c76148)+4) ), 0, pd368); }; tangent2_v21264 = (* (W2Pt) (( (ptr) &var_c73332)+2) ); normal2_v21208 = (* (W2Pt) &var_c73332 ); }; SOURCE(23550, 74) { W4 var_c73364; { word pd369; pd369 = (* (( (ptr) (* (ptr) seg1_v21124 ))+26) ); (void) ( *( (fPt) ((* (ptr) pd369 ))))((word) &var_c73364, seg1_v21124, (* (W2Pt) (( (ptr) formal_c76148)+7) ), (* (W2Pt) ( ( (ptr) formal_c76148)+4) ), 1, pd369); }; tangent1_v21236 = (* (W2Pt) (( (ptr) &var_c73364)+2) ); normal1_v21180 = (* (W2Pt) &var_c73364 ); }; SOURCE(23626, 56) { word pd370; pd370 = (* (( (ptr) (* (( (ptr) gf_c76116)+187)/* var_c72212 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd370 ))))((word) &direction_v21292, (* (W2Pt) (( (ptr) formal_c76148)+7) ), (* (W2Pt) (( (ptr) formal_c76148)+4) ), pd370); }; SOURCE(23684, 168) { float tf371; word pd372; word x373; float tf374; word pd375; word x376; pd372 = (* (( (ptr) (* (( (ptr) gf_c76116)+187)/* var_c72212 */ ))+9) ); pd375 = (* (( (ptr) (* (( (ptr) gf_c76116)+187)/* var_c72212 */ ))+9) ); if ((FABS(( x373 = (word) ( *( (fPt) ((* (ptr) pd372 ))))(tangent1_v21236, direction_v21292, pd372), *(float*)&x373 ), tf371) < FABS(( x376 = (word) ( *( (fPt) ((* (ptr) pd375 ))))(tangent2_v21264, direction_v21292, pd375), *(float*)&x376 ), tf374))) { normal_v20212 = normal1_v21180; } else { normal_v20212 = normal2_v21208; }; }; } else { SOURCE(23863, 88) if ((seg1_v21124 != 0)) { SOURCE(23882, 69) { W4 var_c73396; { word pd377; pd377 = (* (( (ptr) (* (ptr) seg1_v21124 ))+26) ); (void) ( *( (fPt) ((* (ptr) pd377 ))))((word) &var_c73396, seg1_v21124, (* (W2Pt) (( (ptr) formal_c76148)+7) ), (* (W2Pt) ( ( (ptr) formal_c76148)+4) ), 1, pd377); }; normal_v20212 = (* (W2Pt) &var_c73396 ); }; }; SOURCE(23953, 89) if ((seg2_v21152 != 0)) { SOURCE(23972, 70) { W4 var_c73428; { word pd378; pd378 = (* (( (ptr) (* (ptr) seg2_v21152 ))+26) ); (void) ( *( (fPt) ((* (ptr) pd378 ))))((word) &var_c73428, seg2_v21152, (* (W2Pt) (( (ptr) formal_c76148)+7) ), (* (W2Pt) ( ( (ptr) formal_c76148)+4) ), 0, pd378); }; normal_v20212 = (* (W2Pt) &var_c73428 ); }; }; }; /* removed tail goto */ (* (W2Pt) formal_c0405 ) = normal_v20212; return; } static word NearestJointToHitData_P4296(formal_c76212) word formal_c76212; { register ptr gf_c76180 = (ptr) &globalframe; word jointNum_v20812; word nextNum_v20940; W2 p1_v20968; W2 p2_v20996; word d1_v21024; word d2_v21052; word trajHitData_v21080; formal_c76212 = (formal_c76212 - 36); /* NearestJointToHitData: */ SOURCE(25664, 40) SOURCE(25766, 42) trajHitData_v21080 = XR_Narrow((* (( (ptr) formal_c76212)+6) ), (* (( (ptr) gf_c76180)+13) )); SOURCE(25810, 446) { word var_c73460; var_c73460 = (* (ptr) trajHitData_v21080 ); switch (var_c73460) { case 1: SOURCE(25853, 31) { word idx379; jointNum_v20812 = ( idx379 = (* (( (ptr) trajHitData_v21080)+3) ), SGNCK(idx379) ); }; break; case 3: case 2: SOURCE(25916, 57) { word pd380; word idx381; word idx382; pd380 = (* (( (ptr) (* (( (ptr) gf_c76180)+177)/* var_c70676 */ ))+44) ); nextNum_v20940 = ( idx382 = (word) ( *( (fPt) ((* (ptr) pd380 ))))((* (( (ptr) formal_c76212)+14) ), ( idx381 = (* (( (ptr) trajHitData_v21080)+1) ), SGNCK(idx381) ), pd380), SGNCK(idx382) ); }; SOURCE(25975, 51) { word pd383; word idx384; pd383 = (* (( (ptr) (* (( (ptr) gf_c76180)+177)/* var_c70676 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd383 ))))((word) &p1_v20968, (* (( (ptr) formal_c76212)+14) ), ( idx384 = (* (( (ptr) trajHitData_v21080)+1) ), SGNCK(idx384) ), pd383); }; SOURCE(26028, 40) { word pd385; pd385 = (* (( (ptr) (* (( (ptr) gf_c76180)+177)/* var_c70676 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd385 ))))((word) &p2_v20996, (* (( (ptr) formal_c76212)+14) ), nextNum_v20940, pd385); }; SOURCE(26070, 56) { word pd386; pd386 = (* (( (ptr) (* (( (ptr) gf_c76180)+187)/* var_c72212 */ ))+21) ); d1_v21024 = (word) ( *( (fPt) ((* (ptr) pd386 ))))(p1_v20968, (* (W2Pt) (( (ptr) trajHitData_v21080)+4) ), pd386); }; SOURCE(26128, 56) { word pd387; pd387 = (* (( (ptr) (* (( (ptr) gf_c76180)+187)/* var_c72212 */ ))+21) ); d2_v21052 = (word) ( *( (fPt) ((* (ptr) pd387 ))))(p2_v20996, (* (W2Pt) (( (ptr) trajHitData_v21080)+4) ), pd387); }; SOURCE(26186, 70) { word x388; word x389; if ((( x388 = d1_v21024, *(float*)&x388 ) <= ( x389 = d2_v21052, *(float*)&x389 ))) { SOURCE(26203, 35) { word idx390; jointNum_v20812 = ( idx390 = (* (( (ptr) trajHitData_v21080)+1) ), SGNCK(idx390) ); }; } else { SOURCE(26238, 18) jointNum_v20812 = nextNum_v20940; }; }; break; default: SOURCE(26272, 5) (void) XR_RaiseUnnamedError(); break; }; }; SOURCE(25664, 40) return(jointNum_v20812); } static void TrajClosestPointAndTangent_P1320(formal_c0424, sliceD_v10468, testPoint_v10496, tolerance_v10524) word formal_c0424; word sliceD_v10468; W2 testPoint_v10496; word tolerance_v10524; { W2 bestPoint_v10568; word bestDist_v10596; W2 tangent_v10624; word hitData_v10652; word success_v10680; /* TrajClosestPointAndTangent: */ SOURCE(27318, 34) SOURCE(27318, 34) bestPoint_v10568.f0 = (* (ptr) &fc95 ); bestPoint_v10568.f1 = (* (ptr) &fc95 ); SOURCE(27318, 34) bestDist_v10596 = (* (ptr) &fc95 ); SOURCE(27318, 34) tangent_v10624.f0 = (* (ptr) &fc95 ); tangent_v10624.f1 = (* (ptr) &fc90 ); SOURCE(27318, 34) hitData_v10652 = 0; SOURCE(27318, 34) success_v10680 = 0; /* removed tail goto */ (* (W2Pt) formal_c0424 ) = bestPoint_v10568; (* (( (ptr) formal_c0424)+2) ) = bestDist_v10596; (* (W2Pt) (( (ptr) formal_c0424)+3) ) = tangent_v10624; (* (( (ptr) formal_c0424)+5) ) = hitData_v10652; (* (( (ptr) formal_c0424)+6) ) = success_v10680; return; } static void TrajClosestSegment_P1380(formal_c0439, sliceD_v10752, testPoint_v10780, tolerance_v10808) word formal_c0439; word sliceD_v10752; W2 testPoint_v10780; word tolerance_v10808; { register ptr gf_c76244 = (ptr) &globalframe; W2 bestPoint_v10852; word bestDist_v10880; W2 bestNormal_v10908; word hitData_v10936; word success_v10964; word bestSegNum_v21336; word trajHitData_v21364 = 0; /* TrajClosestSegment: */ SOURCE(27549, 461) SOURCE(27549, 461) bestNormal_v10908.f0 = (* (ptr) &fc95 ); bestNormal_v10908.f1 = (* (ptr) &fc90 ); SOURCE(27549, 461) hitData_v10936 = 0; SOURCE(27549, 461) success_v10964 = 0; SOURCE(27795, 108) { W7 var_c73492; { word pd391; pd391 = (* (( (ptr) (* (( (ptr) gf_c76244)+177)/* var_c70676 */ ))+54) ); (void) ( *( (fPt) ((* (ptr) pd391 ))))((word) &var_c73492, testPoint_v10780, sliceD_v10752, tolerance_v10808, pd391); }; success_v10964 = var_c73492.f6; bestNormal_v10908 = (* (W2Pt) (( (ptr) &var_c73492)+4) ); bestPoint_v10852 = (* (W2Pt) (( (ptr) &var_c73492)+2) ); bestSegNum_v21336 = var_c73492.f1; bestDist_v10880 = var_c73492.f0; }; SOURCE(27905, 105) if ((0 != success_v10964)) { SOURCE(27923, 87) { word var_c73524; { word var_c73556; var_c73556 = XR_NewObject(24, (* (( (ptr) gf_c76244)+13) )); (* (ptr) var_c73556 ) = 3; (* (( (ptr) var_c73556)+1) ) = bestSegNum_v21336; (* (( (ptr) var_c73556)+2) ) = (word) -1; (* (( (ptr) var_c73556)+3) ) = (word) -1; (* (W2Pt) (( (ptr) var_c73556)+4) ) = bestPoint_v10852; var_c73524 = var_c73556; }; trajHitData_v21364 = var_c73524; hitData_v10936 = var_c73524; }; }; /* removed tail goto */ (* (W2Pt) formal_c0439 ) = bestPoint_v10852; (* (( (ptr) formal_c0439)+2) ) = bestDist_v10880; (* (W2Pt) (( (ptr) formal_c0439)+3) ) = bestNormal_v10908; (* (( (ptr) formal_c0439)+5) ) = hitData_v10936; (* (( (ptr) formal_c0439)+6) ) = success_v10964; return; } static word InsideContour_P1440(p_v11136, pairs_v11164) W2 p_v11136; word pairs_v11164; { word var_c11208; /* InsideContour: */ SOURCE(28050, 132) SOURCE(28136, 46) return( (unsigned) ((word) HanrahanInsideContour_P1500(p_v11136, pairs_v11164) != 1)); } static word HanrahanInsideContour_P1500(p_v11268, pairs_v11296) W2 p_v11268; word pairs_v11296; { word var_c11340; word zcross_v21408; word odd_v21436 = 0; W2 d2_v21464; /* HanrahanInsideContour: */ SOURCE(28186, 600) SOURCE(28316, 70) { word var_c73652; word var_c0787; { word limit392; var_c73652 = ((* (ptr) pairs_v11296 ) - 1); var_c0787 = (* (( (W2Pt) (( (ptr) pairs_v11296)+2))+( limit392 = (* (( (ptr) pairs_v11296)+1) ), BCK(var_c73652, limit392) )) ).f0; }; { word x393; word x394; *(float*)&d2_v21464.f0 = ( x393 = var_c0787, *(float*)&x393 ) - ( x394 = p_v11268.f0, *(float*)&x394 ); }; }; { word var_c73684; word var_c0788; { word limit395; var_c73684 = ((* (ptr) pairs_v11296 ) - 1); var_c0788 = (* (( (W2Pt) (( (ptr) pairs_v11296)+2))+( limit395 = (* (( (ptr) pairs_v11296)+1) ), BCK(var_c73684, limit395) )) ).f1; }; { word x396; word x397; *(float*)&d2_v21464.f1 = ( x396 = var_c0788, *(float*)&x396 ) - ( x397 = p_v11268.f1, *(float*)&x397 ); }; }; SOURCE(28388, 356) { register word n_v21508 = 0; register word noName_c73716; noName_c73716 = (* (ptr) pairs_v11296 ); if ((n_v21508 >= noName_c73716)) { goto lab_L100047; }; lab_L100050: ; { W2 d1_v21552; SOURCE(28423, 14) d1_v21552 = d2_v21464; SOURCE(28439, 37) { word limit398; word x399; word x400; *(float*)&d2_v21464.f0 = ( x399 = (* (( (W2Pt) (( (ptr) pairs_v11296)+2))+( limit398 = (* (( (ptr) pairs_v11296)+1) ), BCK(n_v21508, limit398) )) ).f0, *(float*)&x399 ) - ( x400 = p_v11268.f0, *(float*)&x400 ); }; { word limit401; word x402; word x403; *(float*)&d2_v21464.f1 = ( x402 = (* (( (W2Pt) (( (ptr) pairs_v11296)+2))+( limit401 = (* (( (ptr) pairs_v11296)+1) ), BCK(n_v21508, limit401) )) ).f1, *(float*)&x402 ) - ( x403 = p_v11268.f1, *(float*)&x403 ); }; SOURCE(28478, 86) { word x404; word x405; word x406; word x407; word x408; word x409; word x410; word x411; word x412; word x413; word x414; word x415; if (( ( (( x404 = d1_v21552.f1, *(float*)&x404 ) > ( x405 = (* (ptr) &fc95 ), *(float*)&x405 )) ? (( x406 = d2_v21464.f1, *(float*)&x406 ) > ( x407 = (* (ptr) &fc95 ), *(float*)&x407 )) : 0 ) || ( (( x408 = d1_v21552.f1, *(float*)&x408 ) < ( x409 = (* (ptr) &fc95 ), *(float*)&x409 )) ? (( x410 = d2_v21464.f1, *(float*)&x410 ) < ( x411 = (* (ptr) &fc95 ), *(float*)&x411 )) : 0 ) ) || ( (( x412 = d1_v21552.f0, *(float*)&x412 ) < ( x413 = (* (ptr) &fc95 ), *(float*)&x413 )) ? (( x414 = d2_v21464.f0, *(float*)&x414 ) < ( x415 = (* (ptr) &fc95 ), *(float*)&x415 )) : 0 ) ) { SOURCE(28564, 4) goto lab_L100049; }; }; SOURCE(28593, 55) { word x420; word x421; { word x416; word x417; word x418; word x419; *(float*)&zcross_v21408 = (( x416 = d2_v21464.f1, *(float*)&x416 ) * ( x417 = d1_v21552.f0, *(float*)&x417 )) - (( x418 = d1_v21552.f1, *(float*)&x418 ) * ( x419 = d2_v21464.f0, *(float*)&x419 )); }; if ((( x420 = zcross_v21408, *(float*)&x420 ) == ( x421 = (* (ptr) &fc95 ), *(float*)&x421 ))) { SOURCE(28638, 10) return(2); }; }; SOURCE(28665, 79) { word tc422; word x423; word x424; word x425; word x426; word x427; word x428; word x429; word x430; word x431; if ((( x423 = d1_v21552.f1, *(float*)&x423 ) > ( x424 = (* (ptr) &fc95 ), *(float*)&x424 )) || (( x425 = d2_v21464.f1, *(float*)&x425 ) > ( x426 = (* (ptr) &fc95 ), *(float*)&x426 ))) { tc422 = (word) ( (unsigned) (( x427 = zcross_v21408, *(float*)&x427 ) < ( x428 = (* (ptr) &fc95 ), *(float*)&x428 )) != (unsigned) (( x429 = d1_v21552.f1, *(float*)&x429 ) - ( x430 = d2_v21464.f1, *(float*)&x430 ) < ( x431 = (* (ptr) &fc95 ), *(float*)&x431 ))); } else { tc422 = (word) 0; }; if (tc422) { SOURCE(28731, 13) odd_v21436 = (unsigned) (0 == odd_v21436); }; }; }; lab_L100049: ; n_v21508 = (n_v21508 + 1); if ((n_v21508 < noName_c73716)) { goto lab_L100050; }; lab_L100047: ; }; SOURCE(28755, 31) if ((0 != odd_v21436)) { return(0); } else { return(1); }; } static void PolylineOfTraj_P1560(formal_c0468, trajData_v11400, formal_c0803) word formal_c0468; word trajData_v11400; word formal_c0803; { W9 var_c76276; /* declaration of tolerance_v11428 skipped */ register ptr gf_c76308 = (ptr) &globalframe; word wholePolyline_v11472; word success_v11500; /* declaration of var_c73748 skipped */ /* declaration of polyList_v21596 skipped */ /* declaration of segCount_v21624 skipped */ (* (( (ptr) &var_c76276)+4)/* tolerance_v11428 */ ) = formal_c0803; /* PolylineOfTraj: */ SOURCE(28792, 899) { word tmpAddr432; tmpAddr432 = (word) (( (ptr) &var_c76276)+5)/* var_c73748 */ ; (* (ptr) tmpAddr432 ) = ( ((word) (fPt) GetPolyline_P4500) ); (* (( (ptr) tmpAddr432) + 1) ) = 1; }; SOURCE(28792, 899) wholePolyline_v11472 = 0; SOURCE(28792, 899) success_v11500 = 1; SOURCE(28930, 10) (* (( (ptr) &var_c76276)+7)/* polyList_v21596 */ ) = 0; SOURCE(28977, 17) (* (( (ptr) &var_c76276)+8)/* segCount_v21624 */ ) = 0; SOURCE(29261, 57) { word var_c73780; word pd433; pd433 = (* (( (ptr) (* (( (ptr) gf_c76308)+180)/* var_c70900 */ ))+41) ); var_c73780 = (word) ( *( (fPt) ((* (ptr) pd433 ))))(trajData_v11400, (word) (( (bPt) &var_c76276)+20)/* var_c73748 */ , pd433) ; }; SOURCE(29320, 371) if (((* (( (ptr) &var_c76276)+7)/* polyList_v21596 */ ) == 0)) { SOURCE(29343, 24) wholePolyline_v11472 = 0; success_v11500 = 0; goto lab_L100051; } else { SOURCE(29367, 344) { word index_v21940 = 0; SOURCE(29385, 14) success_v11500 = 1; SOURCE(29401, 61) { word var_c73812; word var_c73844; var_c73812 = ((* (( (ptr) &var_c76276)+8)/* segCount_v21624 */ ) << 3); var_c73844 = XR_NewObject((8 + var_c73812), (* (( (ptr) gf_c76308)+23) )); (* (( (ptr) var_c73844)+1) ) = (* (( (ptr) &var_c76276)+8)/* segCount_v21624 */ ); wholePolyline_v11472 = var_c73844; }; SOURCE(29464, 31) (* (ptr) wholePolyline_v11472 ) = (* (( (ptr) &var_c76276)+8)/* segCount_v21624 */ ); SOURCE(29497, 194) { register word list_v21984; list_v21984 = (* (( (ptr) &var_c76276)+7)/* polyList_v21596 */ ); lab_L100055: ; if ((list_v21984 != 0)) { } else { goto lab_L100052; }; SOURCE(29585, 106) { register word j_v22112; j_v22112 = (* (ptr) (* (ptr) list_v21984 ) ); if ((1 >= j_v22112)) { goto lab_L100056; }; j_v22112 = (j_v22112 - 1); lab_L100059: ; SOURCE(29636, 36) { word var_c73876; var_c73876 = (* (ptr) list_v21984 ); { word limit434; word limit435; (* (( (W2Pt) (( (ptr) wholePolyline_v11472)+2))+( limit434 = (* (( (ptr) wholePolyline_v11472)+1) ), BCK(index_v21940, limit434) )) ) = (* (( (W2Pt) (( (ptr) var_c73876)+2))+( limit435 = (* (( (ptr) var_c73876)+1) ), BCK(j_v22112, limit435) )) ); }; }; SOURCE(29674, 17) index_v21940 = (index_v21940 + 1); if ((1 >= j_v22112)) { goto lab_L100056; }; j_v22112 = (j_v22112 - 1); goto lab_L100059; lab_L100056: ; }; list_v21984 = (* (( (ptr) list_v21984)+1) ); goto lab_L100055; lab_L100052: ; }; }; }; /* removed tail goto */ lab_L100051: ; (* (ptr) formal_c0468 ) = wholePolyline_v11472; (* (( (ptr) formal_c0468)+1) ) = success_v11500; return; } static word GetPolyline_P4500(traj_v21812, seg_v21840, index_v21868, formal_c76372) word traj_v21812; word seg_v21840; word index_v21868; word formal_c76372; { register ptr gf_c76340 = (ptr) &globalframe; word done_v21912; word thisPolyline_v22156; formal_c76372 = (formal_c76372 - 20); /* GetPolyline: */ SOURCE(28996, 260) SOURCE(28996, 260) done_v21912 = 0; SOURCE(29090, 80) { word pd436; pd436 = (* (( (ptr) (* (ptr) seg_v21840 ))+24) ); thisPolyline_v22156 = (word) ( *( (fPt) ((* (ptr) pd436 ))))(seg_v21840, (* (( (ptr) formal_c76372)+4) ), pd436); }; SOURCE(29172, 43) { word idx437; (* (( (ptr) formal_c76372)+8) ) = ( idx437 = (word) ((* (( (ptr) formal_c76372)+8) ) + ((* (ptr) thisPolyline_v22156 ) - 1)), SGNCK(idx437) ); }; SOURCE(29217, 39) { word var_c73908; var_c73908 = XR_NewObject(8, (* (( (ptr) gf_c76340)+22) )); (* (ptr) var_c73908 ) = thisPolyline_v22156; (* (( (ptr) var_c73908)+1) ) = (* (( (ptr) formal_c76372)+7) ); (* (( (ptr) formal_c76372)+7) ) = var_c73908; }; SOURCE(28996, 260) return(done_v21912); } static void TrajFilledPathsUnderPoint_P1620(formal_c0487, slice_v11560, point_v11588, tolerance_v11616) word formal_c0487; word slice_v11560; W2 point_v11588; word tolerance_v11616; { register ptr gf_c76404 = (ptr) &globalframe; word hitData_v11660; word moreHitDatas_v11688; word trajData_v22200; word wholePolyline_v22228 = 0; word success_v22256 = 1; /* TrajFilledPathsUnderPoint: */ SOURCE(29718, 836) SOURCE(29718, 836) hitData_v11660 = 0; SOURCE(29718, 836) moreHitDatas_v11688 = 0; SOURCE(29870, 39) trajData_v22200 = XR_Narrow((* (( (ptr) slice_v11560)+1) ), (* (( (ptr) gf_c76404)+11) )); { word var_c73940; SOURCE(29978, 96) { word pd439; { word pd438; pd438 = (* (( (ptr) (* (( (ptr) gf_c76404)+189)/* var_c72628 */ ))+9) ); var_c73940 = (word) ( *( (fPt) ((* (ptr) pd438 ))))(slice_v11560, 0, pd438); }; pd439 = (* (( (ptr) (* (( (ptr) gf_c76404)+190)/* var_c72852 */ ))+22) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd439 ))))(point_v11588, var_c73940, tolerance_v11616, pd439))) { SOURCE(30068, 6) goto lab_L100060; }; }; SOURCE(30076, 35) if (((* (ptr) trajData_v22200 ) == 2)) { SOURCE(30105, 6) goto lab_L100060; }; SOURCE(30114, 328) { word x440; word x441; if ( ( ((* (( (ptr) trajData_v22200)+14) ) != 0) ? (( x440 = (* (( (ptr) trajData_v22200)+15) ), *(float*)&x440 ) <= ( x441 = tolerance_v11616, *(float*)&x441 )) : 0 ) ) { SOURCE(30190, 39) wholePolyline_v22228 = (* (( (ptr) trajData_v22200)+14) ); } else { SOURCE(30231, 62) { W2 var_c73972; (void) PolylineOfTraj_P1560((word) &var_c73972, trajData_v22200, tolerance_v11616); success_v22256 = var_c73972.f1; wholePolyline_v22228 = var_c73972.f0; }; SOURCE(30295, 36) if ((0 == success_v22256)) { SOURCE(30315, 16) hitData_v11660 = 0; moreHitDatas_v11688 = 0; goto lab_L100060; }; SOURCE(30333, 33) (* (( (ptr) trajData_v22200)+14) ) = wholePolyline_v22228; SOURCE(30404, 38) (* (( (ptr) trajData_v22200)+15) ) = tolerance_v11616; }; }; SOURCE(30447, 107) if ((0 != (word) InsideContour_P1440(point_v11588, wholePolyline_v22228))) { SOURCE(30493, 61) { word var_c74004; var_c74004 = XR_NewObject(24, (* (( (ptr) gf_c76404)+13) )); (* (ptr) var_c74004 ) = 4; (* (( (ptr) var_c74004)+1) ) = (word) -1; (* (( (ptr) var_c74004)+2) ) = (word) -1; (* (( (ptr) var_c74004)+3) ) = (word) -1; (* (W2Pt) (( (ptr) var_c74004)+4) ) = point_v11588; hitData_v11660 = var_c74004; }; }; }; /* removed tail goto */ lab_L100060: ; (* (ptr) formal_c0487 ) = hitData_v11660; (* (( (ptr) formal_c0487)+1) ) = moreHitDatas_v11688; return; } static void TrajLineIntersection_P1680(formal_c0502, sliceD_v11856, line_v11884) word formal_c0502; word sliceD_v11856; word line_v11884; { register ptr gf_c76436 = (ptr) &globalframe; word points_v11928; word pointCount_v11956; word segGen_v22300 = 0; word thesePoints_v22328 = 0; word thisCount_v22356 = 0; word trajParts_v22384; word trajData_v22412; /* TrajLineIntersection: */ SOURCE(30563, 666) SOURCE(30563, 666) points_v11928 = 0; SOURCE(30563, 666) pointCount_v11956 = 0; SOURCE(30760, 43) trajParts_v22384 = XR_Narrow((* (( (ptr) sliceD_v11856)+1) ), (* (( (ptr) gf_c76436)+12) )); SOURCE(30805, 46) trajData_v22412 = XR_Narrow((* (( (ptr) (* (ptr) sliceD_v11856 ))+1) ), (* (( (ptr) gf_c76436)+11) )); SOURCE(30853, 59) { word pd442; pd442 = (* (( (ptr) (* (( (ptr) gf_c76436)+180)/* var_c70900 */ ))+42) ); segGen_v22300 = (word) ( *( (fPt) ((* (ptr) pd442 ))))(trajData_v22412, trajParts_v22384, pd442); }; SOURCE(30914, 315) { register word seg_v22540; { word pd443; pd443 = (* (( (ptr) (* (( (ptr) gf_c76436)+180)/* var_c70900 */ ))+46) ); seg_v22540 = (word) ( *( (fPt) ((* (ptr) pd443 ))))(segGen_v22300, pd443); }; lab_L100065: ; if ((seg_v22540 != 0)) { } else { goto lab_L100062; }; SOURCE(31015, 64) { W2 var_c74036; { word pd444; pd444 = (* (( (ptr) (* (ptr) seg_v22540 ))+21) ); (void) ( *( (fPt) ((* (ptr) pd444 ))))((word) &var_c74036, seg_v22540, line_v11884, pd444); }; thisCount_v22356 = var_c74036.f1; thesePoints_v22328 = var_c74036.f0; }; SOURCE(31081, 102) { register word list_v22584; list_v22584 = thesePoints_v22328; lab_L100069: ; if ((list_v22584 != 0)) { } else { goto lab_L100066; }; SOURCE(31150, 33) { word var_c74068; var_c74068 = XR_NewObject(12, (* (( (ptr) gf_c76436)+21) )); (* (W2Pt) var_c74068 ) = (* (W2Pt) list_v22584 ); (* (( (ptr) var_c74068)+2) ) = points_v11928; points_v11928 = var_c74068; }; list_v22584 = (* (( (ptr) list_v22584)+2) ); goto lab_L100069; lab_L100066: ; }; SOURCE(31194, 35) pointCount_v11956 = SGNCK((pointCount_v11956 + thisCount_v22356)); { word pd445; pd445 = (* (( (ptr) (* (( (ptr) gf_c76436)+180)/* var_c70900 */ ))+46) ); seg_v22540 = (word) ( *( (fPt) ((* (ptr) pd445 ))))(segGen_v22300, pd445); }; goto lab_L100065; lab_L100062: ; }; /* removed tail goto */ (* (ptr) formal_c0502 ) = points_v11928; (* (( (ptr) formal_c0502)+1) ) = pointCount_v11956; return; } static void TrajCircleIntersection_P1740(formal_c0517, sliceD_v12100, circle_v12128) word formal_c0517; word sliceD_v12100; word circle_v12128; { register ptr gf_c76468 = (ptr) &globalframe; word points_v12172; word pointCount_v12200; word segGen_v22712 = 0; word thesePoints_v22740 = 0; word thisCount_v22768 = 0; word trajParts_v22796; word trajData_v22824; /* TrajCircleIntersection: */ SOURCE(31244, 676) SOURCE(31244, 676) points_v12172 = 0; SOURCE(31244, 676) pointCount_v12200 = 0; SOURCE(31447, 43) trajParts_v22796 = XR_Narrow((* (( (ptr) sliceD_v12100)+1) ), (* (( (ptr) gf_c76468)+12) )); SOURCE(31492, 46) trajData_v22824 = XR_Narrow((* (( (ptr) (* (ptr) sliceD_v12100 ))+1) ), (* (( (ptr) gf_c76468)+11) )); SOURCE(31540, 59) { word pd446; pd446 = (* (( (ptr) (* (( (ptr) gf_c76468)+180)/* var_c70900 */ ))+42) ); segGen_v22712 = (word) ( *( (fPt) ((* (ptr) pd446 ))))(trajData_v22824, trajParts_v22796, pd446); }; SOURCE(31601, 319) { register word seg_v22952; { word pd447; pd447 = (* (( (ptr) (* (( (ptr) gf_c76468)+180)/* var_c70900 */ ))+46) ); seg_v22952 = (word) ( *( (fPt) ((* (ptr) pd447 ))))(segGen_v22712, pd447); }; lab_L100074: ; if ((seg_v22952 != 0)) { } else { goto lab_L100071; }; SOURCE(31702, 68) { W2 var_c74100; { word pd448; pd448 = (* (( (ptr) (* (ptr) seg_v22952 ))+22) ); (void) ( *( (fPt) ((* (ptr) pd448 ))))((word) &var_c74100, seg_v22952, circle_v12128, pd448); }; thisCount_v22768 = var_c74100.f1; thesePoints_v22740 = var_c74100.f0; }; SOURCE(31772, 102) { register word list_v22996; list_v22996 = thesePoints_v22740; lab_L100078: ; if ((list_v22996 != 0)) { } else { goto lab_L100075; }; SOURCE(31841, 33) { word var_c74132; var_c74132 = XR_NewObject(12, (* (( (ptr) gf_c76468)+21) )); (* (W2Pt) var_c74132 ) = (* (W2Pt) list_v22996 ); (* (( (ptr) var_c74132)+2) ) = points_v12172; points_v12172 = var_c74132; }; list_v22996 = (* (( (ptr) list_v22996)+2) ); goto lab_L100078; lab_L100075: ; }; SOURCE(31885, 35) pointCount_v12200 = SGNCK((pointCount_v12200 + thisCount_v22768)); { word pd449; pd449 = (* (( (ptr) (* (( (ptr) gf_c76468)+180)/* var_c70900 */ ))+46) ); seg_v22952 = (word) ( *( (fPt) ((* (ptr) pd449 ))))(segGen_v22712, pd449); }; goto lab_L100074; lab_L100071: ; }; /* removed tail goto */ (* (ptr) formal_c0517 ) = points_v12172; (* (( (ptr) formal_c0517)+1) ) = pointCount_v12200; return; } static word TrajHitDataAsSimpleCurve_P1800(slice_v12344, hitData_v12372) word slice_v12344; word hitData_v12372; { register ptr gf_c76500 = (ptr) &globalframe; word simpleCurve_v12428; word trajHitData_v23124; /* TrajHitDataAsSimpleCurve: */ SOURCE(31935, 383) SOURCE(31935, 383) simpleCurve_v12428 = 0; SOURCE(32034, 42) trajHitData_v23124 = XR_Narrow(hitData_v12372, (* (( (ptr) gf_c76500)+13) )); SOURCE(32078, 240) { word var_c74164; var_c74164 = (* (ptr) trajHitData_v23124 ); switch (var_c74164) { case 1: case 2: case 4: SOURCE(32143, 11) return(0); case 3: SOURCE(32167, 153) { word segNum_v23168; word seg_v23196; SOURCE(32169, 32) segNum_v23168 = (* (( (ptr) trajHitData_v23124)+1) ); SOURCE(32203, 49) { word pd450; pd450 = (* (( (ptr) (* (( (ptr) gf_c76500)+177)/* var_c70676 */ ))+29) ); seg_v23196 = (word) ( *( (fPt) ((* (ptr) pd450 ))))(slice_v12344, SGNCK(segNum_v23168), pd450); }; SOURCE(32254, 64) { word pd451; pd451 = (* (( (ptr) (* (ptr) seg_v23196 ))+23) ); simpleCurve_v12428 = (word) ( *( (fPt) ((* (ptr) pd451 ))))(seg_v23196, (* (W2Pt) (( (ptr) trajHitData_v23124)+4) ), pd451) ; }; }; break; default: SOURCE(32334, 5) (void) XR_RaiseUnnamedError(); break; }; }; SOURCE(31935, 383) return(simpleCurve_v12428); } static void TrajSetDefaults_P1860(slice_v12500, parts_v12528, defaults_v12556, history_v12584) word slice_v12500; word parts_v12528; word defaults_v12556; word history_v12584; { register ptr gf_c76532 = (ptr) &globalframe; /* TrajSetDefaults: */ SOURCE(32345, 516) SOURCE(32451, 71) { word var_c74196; word pd452; pd452 = (* (( (ptr) (* (( (ptr) gf_c76532)+189)/* var_c72628 */ ))+53) ); var_c74196 = (word) ( *( (fPt) ((* (ptr) pd452 ))))(slice_v12500, parts_v12528, (* (ptr) defaults_v12556 ), 0, pd452); }; SOURCE(32524, 66) { word pd453; pd453 = (* (( (ptr) (* (( (ptr) gf_c76532)+189)/* var_c72628 */ ))+57) ); (void) ( *( (fPt) ((* (ptr) pd453 ))))(slice_v12500, parts_v12528, (* (( (ptr) defaults_v12556)+1) ), 0, pd453); }; SOURCE(32592, 62) { word pd454; pd454 = (* (( (ptr) (* (( (ptr) gf_c76532)+189)/* var_c72628 */ ))+55) ); (void) ( *( (fPt) ((* (ptr) pd454 ))))(slice_v12500, parts_v12528, (* (( (ptr) defaults_v12556)+2) ), 0, pd454); }; SOURCE(32656, 131) { word var_c74228; { word pd455; pd455 = (* (( (ptr) (* (( (ptr) gf_c76532)+179)/* var_c70868 */ ))+37) ); var_c74228 = (word) ( *( (fPt) ((* (ptr) pd455 ))))((* ((( (ptr) defaults_v12556)+4)) ), pd455); }; { word pd456; pd456 = (* (( (ptr) (* (( (ptr) gf_c76532)+189)/* var_c72628 */ ))+65) ); (void) ( *( (fPt) ((* (ptr) pd456 ))))(slice_v12500, parts_v12528, (* (( (ptr) defaults_v12556)+3) ), var_c74228, (* (( (ptr) defaults_v12556)+5) ), (* (( (ptr) defaults_v12556)+6) ) , 0, pd456); }; }; SOURCE(32789, 72) { word pd457; pd457 = (* (( (ptr) (* (( (ptr) gf_c76532)+189)/* var_c72628 */ ))+59) ); (void) ( *( (fPt) ((* (ptr) pd457 ))))(slice_v12500, parts_v12528, (* (( (ptr) defaults_v12556)+7) ), (* (( (ptr) gf_c76532)+52) ), 0, pd457); }; } static word TrajSetStrokeWidth_P1920(slice_v12644, parts_v12672, strokeWidth_v12700, history_v12728) word slice_v12644; word parts_v12672; word strokeWidth_v12700; word history_v12728; { register ptr gf_c76564 = (ptr) &globalframe; word box_v12772; word bBoxes_v23240 = 0; word thisBox_v23268 = 0; word trajParts_v23296; word trajData_v23324; word segGen_v23352; /* TrajSetStrokeWidth: */ SOURCE(32867, 705) SOURCE(32867, 705) box_v12772 = 0; SOURCE(33041, 36) trajParts_v23296 = XR_Narrow(parts_v12672, (* (( (ptr) gf_c76564)+12) )); SOURCE(33079, 39) trajData_v23324 = XR_Narrow((* (( (ptr) slice_v12644)+1) ), (* (( (ptr) gf_c76564)+11) )); SOURCE(33120, 136) { word tc458; word pd459; word pd460; if ((parts_v12672 != 0)) { pd459 = (* (( (ptr) (* (( (ptr) gf_c76564)+180)/* var_c70900 */ ))+42) ); tc458 = (word) ( *( (fPt) ((* (ptr) pd459 ))))(trajData_v23324, trajParts_v23296, pd459); } else { pd460 = (* (( (ptr) (* (( (ptr) gf_c76564)+180)/* var_c70900 */ ))+40) ); tc458 = (word) ( *( (fPt) ((* (ptr) pd460 ))))(trajData_v23324, pd460); }; segGen_v23352 = tc458; }; SOURCE(33258, 230) { register word seg_v23480; { word pd461; pd461 = (* (( (ptr) (* (( (ptr) gf_c76564)+180)/* var_c70900 */ ))+46) ); seg_v23480 = (word) ( *( (fPt) ((* (ptr) pd461 ))))(segGen_v23352, pd461); }; lab_L100082: ; if ((seg_v23480 != 0)) { } else { goto lab_L100079; }; SOURCE(33359, 42) { word pd462; pd462 = (* (( (ptr) (* (ptr) seg_v23480 ))+28) ); (void) ( *( (fPt) ((* (ptr) pd462 ))))(seg_v23480, strokeWidth_v12700, pd462); }; SOURCE(33403, 33) { word pd463; pd463 = (* (( (ptr) (* (ptr) seg_v23480 ))+1) ); thisBox_v23268 = (word) ( *( (fPt) ((* (ptr) pd463 ))))(seg_v23480, pd463); }; SOURCE(33438, 50) if ((thisBox_v23268 != 0)) { SOURCE(33458, 30) { word var_c74260; var_c74260 = XR_NewObject(8, (* (( (ptr) gf_c76564)+20) )); (* (ptr) var_c74260 ) = thisBox_v23268; (* (( (ptr) var_c74260)+1) ) = bBoxes_v23240; bBoxes_v23240 = var_c74260; }; }; { word pd464; pd464 = (* (( (ptr) (* (( (ptr) gf_c76564)+180)/* var_c70900 */ ))+46) ); seg_v23480 = (word) ( *( (fPt) ((* (ptr) pd464 ))))(segGen_v23352, pd464); }; goto lab_L100082; lab_L100079: ; }; SOURCE(33499, 40) { word pd465; pd465 = (* (( (ptr) (* (( (ptr) gf_c76564)+190)/* var_c72852 */ ))+8) ); box_v12772 = (word) ( *( (fPt) ((* (ptr) pd465 ))))(bBoxes_v23240, pd465); }; SOURCE(33541, 31) { word pd466; pd466 = (* (( (ptr) (* (( (ptr) gf_c76564)+176)/* var_c70644 */ ))+69) ); (void) ( *( (fPt) ((* (ptr) pd466 ))))(slice_v12644, pd466); }; SOURCE(32867, 705) return(box_v12772); } static void TrajGetStrokeWidth_P1980(formal_c0552, slice_v12832, parts_v12860) word formal_c0552; word slice_v12832; word parts_v12860; { W8 var_c76596; register ptr gf_c76628 = (ptr) &globalframe; /* declaration of strokeWidth_v12904 skipped */ word isUnique_v12932; /* declaration of var_c74292 skipped */ word trajParts_v23524; word trajData_v23552; /* declaration of found_v23580 skipped */ word aborted_v23608 = 0; /* TrajGetStrokeWidth: */ SOURCE(33578, 753) { word tmpAddr467; tmpAddr467 = (word) (( (ptr) &var_c76596)+5)/* var_c74292 */ ; (* (ptr) tmpAddr467 ) = ( ((word) (fPt) DoCheckWidth_P5040) ); (* (( (ptr) tmpAddr467) + 1) ) = 1; }; SOURCE(33578, 753) var_c76596.f4/* strokeWidth_v12904 */ = (* (ptr) &fc90 ); SOURCE(33578, 753) isUnique_v12932 = 1; SOURCE(33699, 36) trajParts_v23524 = XR_Narrow(parts_v12860, (* (( (ptr) gf_c76628)+12) )); SOURCE(33737, 39) trajData_v23552 = XR_Narrow((* (( (ptr) slice_v12832)+1) ), (* (( (ptr) gf_c76628)+11) )); SOURCE(33778, 28) var_c76596.f7/* found_v23580 */ = 0; SOURCE(33808, 523) { word pd469; if ((parts_v12860 == 0)) { goto then0468;}; pd469 = (* (( (ptr) (* (( (ptr) gf_c76628)+180)/* var_c70900 */ ))+44) ); if (((word) ( *( (fPt) ((* (ptr) pd469 ))))(trajData_v23552, trajParts_v23524, pd469) > 0)) { then0468: ; SOURCE(33891, 415) SOURCE(34115, 165) if ((parts_v12860 != 0)) { SOURCE(34133, 84) { word pd470; pd470 = (* (( (ptr) (* (( (ptr) gf_c76628)+180)/* var_c70900 */ ))+43) ); aborted_v23608 = (word) ( *( (fPt) ((* (ptr) pd470 ))))(trajData_v23552, trajParts_v23524, (word) (( (bPt) &var_c76596)+20) /* var_c74292 */ , pd470); }; } else { SOURCE(34217, 63) { word pd471; pd471 = (* (( (ptr) (* (( (ptr) gf_c76628)+180)/* var_c70900 */ ))+41) ); aborted_v23608 = (word) ( *( (fPt) ((* (ptr) pd471 ))))(trajData_v23552, (word) (( (bPt) &var_c76596)+20)/* var_c74292 */ , pd471) ; }; }; SOURCE(34282, 22) isUnique_v12932 = (unsigned) (0 == aborted_v23608); } else { SOURCE(34315, 16) isUnique_v12932 = 0; }; }; /* removed tail goto */ (* (ptr) formal_c0552 ) = var_c76596.f4/* strokeWidth_v12904 */ ; (* (( (ptr) formal_c0552)+1) ) = isUnique_v12932; return; } static word DoCheckWidth_P5040(traj_v23728, seg_v23756, index_v23784, formal_c76660) word traj_v23728; word seg_v23756; word index_v23784; word formal_c76660; { word done_v23828; formal_c76660 = (formal_c76660 - 20); /* DoCheckWidth: */ SOURCE(33893, 20) SOURCE(33893, 20) done_v23828 = 0; SOURCE(33988, 119) if ((0 != (* (( (ptr) formal_c76660)+7) ))) { SOURCE(34004, 49) { word x472; word x473; if ((( x472 = (* (( (ptr) seg_v23756)+2) ), *(float*)&x472 ) != ( x473 = (* (( (ptr) formal_c76660)+4) ), *(float*)&x473 ))) { SOURCE(34042, 11) done_v23828 = 1; }; }; } else { SOURCE(34064, 12) (* (( (ptr) formal_c76660)+7) ) = 1; SOURCE(34078, 29) (* (( (ptr) formal_c76660)+4) ) = (* (( (ptr) seg_v23756)+2) ); }; SOURCE(33893, 20) return(done_v23828); } static void TrajSetStrokeEnd_P2040(slice_v12992, parts_v13020, strokeEnd_v13048, history_v13076) word slice_v12992; word parts_v13020; word strokeEnd_v13048; word history_v13076; { register ptr gf_c76692 = (ptr) &globalframe; word trajParts_v23856; word trajData_v23884; word segGen_v23912; /* TrajSetStrokeEnd: */ SOURCE(34340, 449) SOURCE(34446, 36) trajParts_v23856 = XR_Narrow(parts_v13020, (* (( (ptr) gf_c76692)+12) )); SOURCE(34484, 39) trajData_v23884 = XR_Narrow((* (( (ptr) slice_v12992)+1) ), (* (( (ptr) gf_c76692)+11) )); SOURCE(34525, 136) { word tc474; word pd475; word pd476; if ((parts_v13020 != 0)) { pd475 = (* (( (ptr) (* (( (ptr) gf_c76692)+180)/* var_c70900 */ ))+42) ); tc474 = (word) ( *( (fPt) ((* (ptr) pd475 ))))(trajData_v23884, trajParts_v23856, pd475); } else { pd476 = (* (( (ptr) (* (( (ptr) gf_c76692)+180)/* var_c70900 */ ))+40) ); tc474 = (word) ( *( (fPt) ((* (ptr) pd476 ))))(trajData_v23884, pd476); }; segGen_v23912 = tc474; }; SOURCE(34663, 126) { register word seg_v23956; { word pd477; pd477 = (* (( (ptr) (* (( (ptr) gf_c76692)+180)/* var_c70900 */ ))+46) ); seg_v23956 = (word) ( *( (fPt) ((* (ptr) pd477 ))))(segGen_v23912, pd477); }; lab_L100087: ; if ((seg_v23956 != 0)) { } else { goto lab_L100084; }; SOURCE(34764, 25) (* (( (ptr) seg_v23956)+3) ) = strokeEnd_v13048; { word pd478; pd478 = (* (( (ptr) (* (( (ptr) gf_c76692)+180)/* var_c70900 */ ))+46) ); seg_v23956 = (word) ( *( (fPt) ((* (ptr) pd478 ))))(segGen_v23912, pd478); }; goto lab_L100087; lab_L100084: ; }; } static void TrajGetStrokeEnd_P2100(formal_c0574, slice_v13136, parts_v13164) word formal_c0574; word slice_v13136; word parts_v13164; { W8 var_c76724; register ptr gf_c76756 = (ptr) &globalframe; /* declaration of strokeEnd_v13208 skipped */ word isUnique_v13236; /* declaration of var_c74324 skipped */ word trajParts_v24000; word trajData_v24028; /* declaration of found_v24056 skipped */ word aborted_v24084 = 0; /* TrajGetStrokeEnd: */ SOURCE(34804, 741) { word tmpAddr479; tmpAddr479 = (word) (( (ptr) &var_c76724)+5)/* var_c74324 */ ; (* (ptr) tmpAddr479 ) = ( ((word) (fPt) DoCheckEnd_P5196) ); (* (( (ptr) tmpAddr479) + 1) ) = 1; }; SOURCE(34804, 741) var_c76724.f4/* strokeEnd_v13208 */ = 2; SOURCE(34804, 741) isUnique_v13236 = 1; SOURCE(34927, 36) trajParts_v24000 = XR_Narrow(parts_v13164, (* (( (ptr) gf_c76756)+12) )); SOURCE(34965, 39) trajData_v24028 = XR_Narrow((* (( (ptr) slice_v13136)+1) ), (* (( (ptr) gf_c76756)+11) )); SOURCE(35006, 28) var_c76724.f7/* found_v24056 */ = 0; SOURCE(35036, 509) { word pd481; if ((parts_v13164 == 0)) { goto then0480;}; pd481 = (* (( (ptr) (* (( (ptr) gf_c76756)+180)/* var_c70900 */ ))+44) ); if (((word) ( *( (fPt) ((* (ptr) pd481 ))))(trajData_v24028, trajParts_v24000, pd481) > 0)) { then0480: ; SOURCE(35119, 401) SOURCE(35333, 161) if ((parts_v13164 != 0)) { SOURCE(35351, 82) { word pd482; pd482 = (* (( (ptr) (* (( (ptr) gf_c76756)+180)/* var_c70900 */ ))+43) ); aborted_v24084 = (word) ( *( (fPt) ((* (ptr) pd482 ))))(trajData_v24028, trajParts_v24000, (word) (( (bPt) &var_c76724)+20) /* var_c74324 */ , pd482); }; } else { SOURCE(35433, 61) { word pd483; pd483 = (* (( (ptr) (* (( (ptr) gf_c76756)+180)/* var_c70900 */ ))+41) ); aborted_v24084 = (word) ( *( (fPt) ((* (ptr) pd483 ))))(trajData_v24028, (word) (( (bPt) &var_c76724)+20)/* var_c74324 */ , pd483) ; }; }; SOURCE(35496, 22) isUnique_v13236 = (unsigned) (0 == aborted_v24084); } else { SOURCE(35529, 16) isUnique_v13236 = 0; }; }; /* removed tail goto */ (* (ptr) formal_c0574 ) = var_c76724.f4/* strokeEnd_v13208 */ ; (* (( (ptr) formal_c0574)+1) ) = isUnique_v13236; return; } static word DoCheckEnd_P5196(traj_v24204, seg_v24232, index_v24260, formal_c76788) word traj_v24204; word seg_v24232; word index_v24260; word formal_c76788; { word done_v24304; formal_c76788 = (formal_c76788 - 20); /* DoCheckEnd: */ SOURCE(35121, 18) SOURCE(35121, 18) done_v24304 = 0; SOURCE(35214, 111) if ((0 != (* (( (ptr) formal_c76788)+7) ))) { SOURCE(35230, 45) if (((* (( (ptr) seg_v24232)+3) ) != (* (( (ptr) formal_c76788)+4) ))) { SOURCE(35264, 11) done_v24304 = 1; }; } else { SOURCE(35286, 12) (* (( (ptr) formal_c76788)+7) ) = 1; SOURCE(35300, 25) (* (( (ptr) formal_c76788)+4) ) = (* (( (ptr) seg_v24232)+3) ); }; SOURCE(35121, 18) return(done_v24304); } static void TrajSetStrokeJoint_P2160(slice_v13296, parts_v13324, strokeJoint_v13352, history_v13380) word slice_v13296; word parts_v13324; word strokeJoint_v13352; word history_v13380; { register ptr gf_c76820 = (ptr) &globalframe; word trajData_v24332; /* TrajSetStrokeJoint: */ SOURCE(35554, 187) SOURCE(35666, 39) trajData_v24332 = XR_Narrow((* (( (ptr) slice_v13296)+1) ), (* (( (ptr) gf_c76820)+11) )); SOURCE(35707, 34) (* (( (ptr) trajData_v24332)+6) ) = strokeJoint_v13352; } static void TrajGetStrokeJoint_P2220(formal_c0590, slice_v13440, parts_v13468) word formal_c0590; word slice_v13440; word parts_v13468; { register ptr gf_c76852 = (ptr) &globalframe; word strokeJoint_v13512; word isUnique_v13540; word trajData_v24376; /* TrajGetStrokeJoint: */ SOURCE(35747, 190) SOURCE(35747, 190) isUnique_v13540 = 1; SOURCE(35868, 39) trajData_v24376 = XR_Narrow((* (( (ptr) slice_v13440)+1) ), (* (( (ptr) gf_c76852)+11) )); SOURCE(35909, 28) strokeJoint_v13512 = (* (( (ptr) trajData_v24376)+6) ); isUnique_v13540 = 1; /* removed tail goto */ (* (ptr) formal_c0590 ) = strokeJoint_v13512; (* (( (ptr) formal_c0590)+1) ) = isUnique_v13540; return; } static void TrajSetStrokeColor_P2280(slice_v13600, parts_v13628, color_v13656, setHow_v13684, history_v13712) word slice_v13600; word parts_v13628; word color_v13656; word setHow_v13684; word history_v13712; { register ptr gf_c76884 = (ptr) &globalframe; word trajParts_v24420; word trajData_v24448; word segGen_v24476; /* TrajSetStrokeColor: */ SOURCE(35943, 571) SOURCE(36057, 36) trajParts_v24420 = XR_Narrow(parts_v13628, (* (( (ptr) gf_c76884)+12) )); SOURCE(36095, 39) trajData_v24448 = XR_Narrow((* (( (ptr) slice_v13600)+1) ), (* (( (ptr) gf_c76884)+11) )); SOURCE(36136, 136) { word tc484; word pd485; word pd486; if ((parts_v13628 != 0)) { pd485 = (* (( (ptr) (* (( (ptr) gf_c76884)+180)/* var_c70900 */ ))+42) ); tc484 = (word) ( *( (fPt) ((* (ptr) pd485 ))))(trajData_v24448, trajParts_v24420, pd485); } else { pd486 = (* (( (ptr) (* (( (ptr) gf_c76884)+180)/* var_c70900 */ ))+40) ); tc484 = (word) ( *( (fPt) ((* (ptr) pd486 ))))(trajData_v24448, pd486); }; segGen_v24476 = tc484; }; SOURCE(36274, 240) { register word seg_v24520; { word pd487; pd487 = (* (( (ptr) (* (( (ptr) gf_c76884)+180)/* var_c70900 */ ))+46) ); seg_v24520 = (word) ( *( (fPt) ((* (ptr) pd487 ))))(segGen_v24476, pd487); }; lab_L100093: ; if ((seg_v24520 != 0)) { } else { goto lab_L100090; }; SOURCE(36375, 139) { word var_c74388; var_c74388 = setHow_v13684; if ((var_c74388 == (* (( (ptr) gf_c76884)+52) ))) { SOURCE(36402, 17) (* (( (ptr) seg_v24520)+8) ) = color_v13656; } else { if ((var_c74388 == (* (( (ptr) gf_c76884)+54) ))) { SOURCE(36435, 81) { word newColor_v24564; SOURCE(36437, 55) { word pd488; pd488 = (* (( (ptr) (* (( (ptr) gf_c76884)+179)/* var_c70868 */ ))+36) ); newColor_v24564 = (word) ( *( (fPt) ((* (ptr) pd488 ))))((* (( (ptr) seg_v24520)+8) ), color_v13656, pd488); }; SOURCE(36494, 20) (* (( (ptr) seg_v24520)+8) ) = newColor_v24564; }; } else { SOURCE(36530, 5) (void) XR_RaiseUnnamedError(); }; }; }; { word pd489; pd489 = (* (( (ptr) (* (( (ptr) gf_c76884)+180)/* var_c70900 */ ))+46) ); seg_v24520 = (word) ( *( (fPt) ((* (ptr) pd489 ))))(segGen_v24476, pd489); }; goto lab_L100093; lab_L100090: ; }; } static void TrajGetStrokeColor_P2340(formal_c0618, slice_v13772, parts_v13800) word formal_c0618; word slice_v13772; word parts_v13800; { W8 var_c76916; register ptr gf_c76948 = (ptr) &globalframe; /* declaration of color_v13844 skipped */ word isUnique_v13872; /* declaration of var_c74420 skipped */ word trajParts_v24608; word trajData_v24636; /* declaration of found_v24664 skipped */ word aborted_v24692 = 0; /* TrajGetStrokeColor: */ SOURCE(36550, 1262) { word tmpAddr490; tmpAddr490 = (word) (( (ptr) &var_c76916)+5)/* var_c74420 */ ; (* (ptr) tmpAddr490 ) = ( ((word) (fPt) DoCheckColor_P5400) ); (* (( (ptr) tmpAddr490) + 1) ) = 1; }; SOURCE(36550, 1262) var_c76916.f4/* color_v13844 */ = 0; SOURCE(36550, 1262) isUnique_v13872 = 1; SOURCE(36659, 36) trajParts_v24608 = XR_Narrow(parts_v13800, (* (( (ptr) gf_c76948)+12) )); SOURCE(36697, 39) trajData_v24636 = XR_Narrow((* (( (ptr) slice_v13772)+1) ), (* (( (ptr) gf_c76948)+11) )); SOURCE(36738, 28) var_c76916.f7/* found_v24664 */ = 0; SOURCE(36768, 1044) { word pd492; if ((parts_v13800 == 0)) { goto then0491;}; pd492 = (* (( (ptr) (* (( (ptr) gf_c76948)+180)/* var_c70900 */ ))+44) ); if (((word) ( *( (fPt) ((* (ptr) pd492 ))))(trajData_v24636, trajParts_v24608, pd492) > 0)) { then0491: ; SOURCE(36851, 422) SOURCE(37082, 165) if ((parts_v13800 != 0)) { SOURCE(37100, 84) { word pd493; pd493 = (* (( (ptr) (* (( (ptr) gf_c76948)+180)/* var_c70900 */ ))+43) ); aborted_v24692 = (word) ( *( (fPt) ((* (ptr) pd493 ))))(trajData_v24636, trajParts_v24608, (word) (( (bPt) &var_c76916)+20) /* var_c74420 */ , pd493); }; } else { SOURCE(37184, 63) { word pd494; pd494 = (* (( (ptr) (* (( (ptr) gf_c76948)+180)/* var_c70900 */ ))+41) ); aborted_v24692 = (word) ( *( (fPt) ((* (ptr) pd494 ))))(trajData_v24636, (word) (( (bPt) &var_c76916)+20)/* var_c74420 */ , pd494) ; }; }; SOURCE(37249, 22) isUnique_v13872 = (unsigned) (0 == aborted_v24692); } else { SOURCE(37280, 549) { word success_v24940 = 0; word partType_v24968; word jointNum_v24996; word seg_v25024 = 0; SOURCE(37358, 454) if (((* (( (ptr) trajParts_v24608)+4) ) > 0)) { SOURCE(37393, 112) { W10 var_c74452; { word pd495; pd495 = (* (( (ptr) (* (( (ptr) gf_c76948)+180)/* var_c70900 */ ))+36) ); (void) ( *( (fPt) ((* (ptr) pd495 ))))((word) &var_c74452, slice_v13772, parts_v13800, pd495); }; seg_v25024 = (* (( (ptr) &var_c74452)+8) ); jointNum_v24996 = (* (( (ptr) &var_c74452)+4) ); partType_v24968 = (* (( (ptr) &var_c74452)+1) ); success_v24940 = (* (ptr) &var_c74452 ); }; SOURCE(37507, 305) if ((0 != success_v24940)) { SOURCE(37525, 287) { word var_c74484; var_c74484 = partType_v24968; switch (var_c74484) { case 1: SOURCE(37557, 205) if (((* (( (ptr) trajData_v24636)+1) ) > 0)) { SOURCE(37589, 173) /*1*/ { /*1*/ word pd496; /*1*/ pd496 = (* (( (ptr) (* (( (ptr) gf_c76948)+177)/* var_c70676 */ ))+38) ); /*1*/ if ((jointNum_v24996 <= (word) ( *( (fPt) ((* (ptr) pd496 ))))(trajData_v24636, pd496))) { SOURCE(37640, 63) /*1*/ { /*1*/ word pd497; /*1*/ pd497 = (* (( (ptr) (* (( (ptr) gf_c76948)+177)/* var_c70676 */ ))+30) ); /*1*/ var_c76916.f4/* color_v13844 */ = (* (( (ptr) ( *( (fPt) ((* (ptr) pd497 ))))(trajData_v24636, jointNum_v24996, pd497))+8) /*1*/ ); /*1*/ }; /*1*/ } /*1*/ else { SOURCE(37703, 59) /*1*/ { /*1*/ word pd498; /*1*/ pd498 = (* (( (ptr) (* (( (ptr) gf_c76948)+177)/* var_c70676 */ ))+30) ); /*1*/ var_c76916.f4/* color_v13844 */ = (* (( (ptr) ( *( (fPt) ((* (ptr) pd498 ))))(trajData_v24636, SGNCK((jointNum_v24996 - 1)) /*1*/ , pd498))+8) ); /*1*/ }; /*1*/ }; /*1*/ }; /*1*/ }; break; case 2: case 3: SOURCE(37795, 17) var_c76916.f4/* color_v13844 */ = (* (( (ptr) seg_v25024)+8) ); break; }; }; }; }; }; }; }; /* removed tail goto */ (* (ptr) formal_c0618 ) = var_c76916.f4/* color_v13844 */ ; (* (( (ptr) formal_c0618)+1) ) = isUnique_v13872; return; } static word DoCheckColor_P5400(traj_v24812, seg_v24840, index_v24868, formal_c77012) word traj_v24812; word seg_v24840; word index_v24868; word formal_c77012; { register ptr gf_c76980 = (ptr) &globalframe; word done_v24912; formal_c77012 = (formal_c77012 - 20); /* DoCheckColor: */ SOURCE(36853, 20) SOURCE(36853, 20) done_v24912 = 0; SOURCE(36948, 126) if ((0 != (* (( (ptr) formal_c77012)+7) ))) { SOURCE(36964, 68) { word pd499; pd499 = (* (( (ptr) (* (( (ptr) gf_c76980)+178)/* var_c70804 */ ))+35) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd499 ))))((* (( (ptr) seg_v24840)+8) ), (* (( (ptr) formal_c77012)+4) ), pd499))) { SOURCE(37021, 11) done_v24912 = 1; }; }; } else { SOURCE(37043, 12) (* (( (ptr) formal_c77012)+7) ) = 1; SOURCE(37057, 17) (* (( (ptr) formal_c77012)+4) ) = (* (( (ptr) seg_v24840)+8) ); }; SOURCE(36853, 20) return(done_v24912); } static void TrajSetArrows_P2400(slice_v13932, parts_v13960, leftDown_v13988, rightUp_v14016, history_v14044) word slice_v13932; word parts_v13960; word leftDown_v13988; word rightUp_v14016; word history_v14044; { register ptr gf_c77044 = (ptr) &globalframe; word trajData_v25068; /* TrajSetArrows: */ SOURCE(37836, 202) SOURCE(37942, 39) trajData_v25068 = XR_Narrow((* (( (ptr) slice_v13932)+1) ), (* (( (ptr) gf_c77044)+11) )); SOURCE(37983, 27) (* (( (ptr) trajData_v25068)+7) ) = leftDown_v13988; SOURCE(38012, 26) (* (( (ptr) trajData_v25068)+8) ) = rightUp_v14016; } static void TrajGetArrows_P2460(formal_c0635, slice_v14104) word formal_c0635; word slice_v14104; { register ptr gf_c77076 = (ptr) &globalframe; word leftDown_v14148; word rightUp_v14176; word trajData_v25112; /* TrajGetArrows: */ SOURCE(38044, 164) SOURCE(38044, 164) leftDown_v14148 = 0; SOURCE(38044, 164) rightUp_v14176 = 0; SOURCE(38125, 39) trajData_v25112 = XR_Narrow((* (( (ptr) slice_v14104)+1) ), (* (( (ptr) gf_c77076)+11) )); SOURCE(38166, 42) leftDown_v14148 = (* (( (ptr) trajData_v25112)+7) ); rightUp_v14176 = (* (( (ptr) trajData_v25112)+8) ); /* removed tail goto */ (* (ptr) formal_c0635 ) = leftDown_v14148; (* (( (ptr) formal_c0635)+1) ) = rightUp_v14176; return; } static void TrajSetDashed_P2520(slice_v14236, parts_v14264, dashed_v14292, pattern_v14320, offset_v14348, length_v14376, history_v14404) word slice_v14236; word parts_v14264; word dashed_v14292; word pattern_v14320; word offset_v14348; word length_v14376; word history_v14404; { register ptr gf_c77108 = (ptr) &globalframe; word trajParts_v25156; word trajData_v25184; word segGen_v25212; /* TrajSetDashed: */ SOURCE(38213, 569) SOURCE(38380, 36) trajParts_v25156 = XR_Narrow(parts_v14264, (* (( (ptr) gf_c77108)+12) )); SOURCE(38418, 39) trajData_v25184 = XR_Narrow((* (( (ptr) slice_v14236)+1) ), (* (( (ptr) gf_c77108)+11) )); SOURCE(38459, 136) { word tc500; word pd501; word pd502; if ((parts_v14264 != 0)) { pd501 = (* (( (ptr) (* (( (ptr) gf_c77108)+180)/* var_c70900 */ ))+42) ); tc500 = (word) ( *( (fPt) ((* (ptr) pd501 ))))(trajData_v25184, trajParts_v25156, pd501); } else { pd502 = (* (( (ptr) (* (( (ptr) gf_c77108)+180)/* var_c70900 */ ))+40) ); tc500 = (word) ( *( (fPt) ((* (ptr) pd502 ))))(trajData_v25184, pd502); }; segGen_v25212 = tc500; }; SOURCE(38597, 185) { register word seg_v25256; { word pd503; pd503 = (* (( (ptr) (* (( (ptr) gf_c77108)+180)/* var_c70900 */ ))+46) ); seg_v25256 = (word) ( *( (fPt) ((* (ptr) pd503 ))))(segGen_v25212, pd503); }; lab_L100099: ; if ((seg_v25256 != 0)) { } else { goto lab_L100096; }; SOURCE(38698, 19) (* (( (ptr) seg_v25256)+4) ) = dashed_v14292; SOURCE(38719, 21) (* (( (ptr) seg_v25256)+5) ) = pattern_v14320; SOURCE(38742, 19) (* (( (ptr) seg_v25256)+6) ) = offset_v14348; SOURCE(38763, 19) (* (( (ptr) seg_v25256)+7) ) = length_v14376; { word pd504; pd504 = (* (( (ptr) (* (( (ptr) gf_c77108)+180)/* var_c70900 */ ))+46) ); seg_v25256 = (word) ( *( (fPt) ((* (ptr) pd504 ))))(segGen_v25212, pd504); }; goto lab_L100099; lab_L100096: ; }; } static void TrajGetDashed_P2580(formal_c0660, slice_v14464, parts_v14492) word formal_c0660; word slice_v14464; word parts_v14492; { W11 var_c77140; register ptr gf_c77172 = (ptr) &globalframe; /* declaration of dashed_v14536 skipped */ /* declaration of pattern_v14564 skipped */ /* declaration of offset_v14592 skipped */ /* declaration of length_v14620 skipped */ word isUnique_v14648; /* declaration of var_c74580 skipped */ word trajParts_v25300; word trajData_v25328; word segCount_v25356; /* declaration of found_v25384 skipped */ word aborted_v25412 = 0; /* TrajGetDashed: */ SOURCE(38797, 978) { word tmpAddr505; tmpAddr505 = (word) (( (ptr) &var_c77140)+8)/* var_c74580 */ ; (* (ptr) tmpAddr505 ) = ( ((word) (fPt) DoCheckDashes_P5604) ); (* (( (ptr) tmpAddr505) + 1) ) = 1; }; SOURCE(38797, 978) (* (( (ptr) &var_c77140)+4)/* dashed_v14536 */ ) = 0; SOURCE(38797, 978) (* (( (ptr) &var_c77140)+5)/* pattern_v14564 */ ) = 0; SOURCE(38797, 978) (* (( (ptr) &var_c77140)+6)/* offset_v14592 */ ) = (* (ptr) &fc95 ); SOURCE(38797, 978) (* (( (ptr) &var_c77140)+7)/* length_v14620 */ ) = (* (ptr) &fc95 ); SOURCE(38797, 978) isUnique_v14648 = 1; SOURCE(38962, 36) trajParts_v25300 = XR_Narrow(parts_v14492, (* (( (ptr) gf_c77172)+12) )); SOURCE(39000, 39) trajData_v25328 = XR_Narrow((* (( (ptr) slice_v14464)+1) ), (* (( (ptr) gf_c77172)+11) )); SOURCE(39041, 71) { word pd506; pd506 = (* (( (ptr) (* (( (ptr) gf_c77172)+180)/* var_c70900 */ ))+44) ); segCount_v25356 = (word) ( *( (fPt) ((* (ptr) pd506 ))))(trajData_v25328, trajParts_v25300, pd506); }; SOURCE(39114, 28) (* (( (ptr) &var_c77140)+10)/* found_v25384 */ ) = 0; SOURCE(39144, 631) if ((segCount_v25356 > 0)) { SOURCE(39165, 568) SOURCE(39540, 167) if ((parts_v14492 != 0)) { SOURCE(39558, 85) { word pd507; pd507 = (* (( (ptr) (* (( (ptr) gf_c77172)+180)/* var_c70900 */ ))+43) ); aborted_v25412 = (word) ( *( (fPt) ((* (ptr) pd507 ))))(trajData_v25328, trajParts_v25300, (word) (( (bPt) &var_c77140)+32) /* var_c74580 */ , pd507); }; } else { SOURCE(39643, 64) { word pd508; pd508 = (* (( (ptr) (* (( (ptr) gf_c77172)+180)/* var_c70900 */ ))+41) ); aborted_v25412 = (word) ( *( (fPt) ((* (ptr) pd508 ))))(trajData_v25328, (word) (( (bPt) &var_c77140)+32)/* var_c74580 */ , pd508) ; }; }; SOURCE(39709, 22) isUnique_v14648 = (unsigned) (0 == aborted_v25412); } else { SOURCE(39740, 35) (* (( (ptr) &var_c77140)+4)/* dashed_v14536 */ ) = 0; (* (( (ptr) &var_c77140)+5)/* pattern_v14564 */ ) = 0; (* (( (ptr) &var_c77140)+6)/* offset_v14592 */ ) = (* (ptr) &fc95 ); (* (( (ptr) &var_c77140)+7)/* length_v14620 */ ) = (* (ptr) &fc95 ); isUnique_v14648 = 0; goto lab_L100100; }; /* removed tail goto */ lab_L100100: ; (* (ptr) formal_c0660 ) = (* (( (ptr) &var_c77140)+4)/* dashed_v14536 */ ); (* (( (ptr) formal_c0660)+1) ) = (* (( (ptr) &var_c77140)+5)/* pattern_v14564 */ ); (* (( (ptr) formal_c0660)+2) ) = (* (( (ptr) &var_c77140)+6)/* offset_v14592 */ ); (* (( (ptr) formal_c0660)+3) ) = (* (( (ptr) &var_c77140)+7)/* length_v14620 */ ); (* (( (ptr) formal_c0660)+4) ) = isUnique_v14648; return; } static word DoCheckDashes_P5604(traj_v25532, seg_v25560, index_v25588, formal_c77236) word traj_v25532; word seg_v25560; word index_v25588; word formal_c77236; { register ptr gf_c77204 = (ptr) &globalframe; word done_v25632; formal_c77236 = (formal_c77236 - 32); /* DoCheckDashes: */ SOURCE(39167, 21) SOURCE(39167, 21) done_v25632 = 0; SOURCE(39263, 269) if ((0 != (* (( (ptr) formal_c77236)+10) ))) { SOURCE(39277, 155) { word x509; word x510; word x511; word x512; word pd513; if (((* (( (ptr) seg_v25560)+4) ) != (* (( (ptr) formal_c77236)+4) ))) { done_v25632 = (unsigned) 1; } else { if ((0 != (* (( (ptr) seg_v25560)+4) ))) { if ((( x509 = (* (( (ptr) seg_v25560)+6) ), *(float*)&x509 ) != ( x510 = (* (( (ptr) formal_c77236)+6) ), *(float*)&x510 )) || (( x511 = (* (( (ptr) seg_v25560)+7) ), *(float*)&x511 ) != ( x512 = (* (( (ptr) formal_c77236)+7) ), *(float*)&x512 ))) { done_v25632 = (unsigned) 1; } else { pd513 = (* (( (ptr) (* (( (ptr) gf_c77204)+179)/* var_c70868 */ ))+38) ); done_v25632 = (unsigned) (0 == (word) ( *( (fPt) ((* (ptr) pd513 ))))((* (( (ptr) seg_v25560)+5) ), (* (( (ptr) formal_c77236)+5) ), pd513)); }; } else { done_v25632 = (unsigned) 0; }; }; }; } else { SOURCE(39434, 12) (* (( (ptr) formal_c77236)+10) ) = 1; SOURCE(39448, 19) (* (( (ptr) formal_c77236)+4) ) = (* (( (ptr) seg_v25560)+4) ); SOURCE(39469, 19) (* (( (ptr) formal_c77236)+6) ) = (* (( (ptr) seg_v25560)+6) ); SOURCE(39490, 19) (* (( (ptr) formal_c77236)+7) ) = (* (( (ptr) seg_v25560)+7) ); SOURCE(39511, 21) (* (( (ptr) formal_c77236)+5) ) = (* (( (ptr) seg_v25560)+5) ); }; SOURCE(39167, 21) return(done_v25632); } static word TrajSetOrientation_P2640(slice_v14708, parts_v14736, orientation_v14764, history_v14792) word slice_v14708; word parts_v14736; word orientation_v14764; word history_v14792; { register ptr gf_c77268 = (ptr) &globalframe; word success_v14836; word trajData_v25660; /* TrajSetOrientation: */ SOURCE(39781, 579) SOURCE(39781, 579) success_v14836 = 1; SOURCE(39924, 39) trajData_v25660 = XR_Narrow((* (( (ptr) slice_v14708)+1) ), (* (( (ptr) gf_c77268)+11) )); SOURCE(39965, 395) { word var_c74612; var_c74612 = orientation_v14764; switch (var_c74612) { case 0: SOURCE(39997, 67) { word pd514; pd514 = (* (( (ptr) (* (( (ptr) gf_c77268)+177)/* var_c70676 */ ))+22) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd514 ))))(slice_v14708, pd514))) { SOURCE(40039, 25) { word pd515; pd515 = (* (( (ptr) (* (( (ptr) gf_c77268)+177)/* var_c70676 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd515 ))))(slice_v14708, pd515); }; }; }; SOURCE(40066, 23) (* (( (ptr) trajData_v25660)+9) ) = 1; break; case 1: SOURCE(40145, 63) { word pd516; pd516 = (* (( (ptr) (* (( (ptr) gf_c77268)+177)/* var_c70676 */ ))+22) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd516 ))))(slice_v14708, pd516))) { SOURCE(40183, 25) { word pd517; pd517 = (* (( (ptr) (* (( (ptr) gf_c77268)+177)/* var_c70676 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd517 ))))(slice_v14708, pd517); }; }; }; SOURCE(40210, 24) (* (( (ptr) trajData_v25660)+9) ) = 0; break; case 2: SOURCE(40294, 25) { word pd518; pd518 = (* (( (ptr) (* (( (ptr) gf_c77268)+177)/* var_c70676 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd518 ))))(slice_v14708, pd518); }; SOURCE(40321, 39) (* (( (ptr) trajData_v25660)+9) ) = (unsigned) (0 == (* (( (ptr) trajData_v25660)+9) )); break; default: SOURCE(40376, 5) (void) XR_RaiseUnnamedError(); break; }; }; SOURCE(39781, 579) return(success_v14836); } static void TrajGetOrientation_P2700(formal_c0678, slice_v14896, parts_v14924) word formal_c0678; word slice_v14896; word parts_v14924; { register ptr gf_c77300 = (ptr) &globalframe; word orientation_v14968; word isUnique_v14996; word trajData_v25704; /* TrajGetOrientation: */ SOURCE(40387, 206) SOURCE(40387, 206) isUnique_v14996 = 1; SOURCE(40508, 39) trajData_v25704 = XR_Narrow((* (( (ptr) slice_v14896)+1) ), (* (( (ptr) gf_c77300)+11) )); SOURCE(40549, 44) if ((0 != (* (( (ptr) trajData_v25704)+9) ))) { orientation_v14968 = 0; } else { orientation_v14968 = 1; }; isUnique_v14996 = 1; /* removed tail goto */ (* (ptr) formal_c0678 ) = orientation_v14968; (* (( (ptr) formal_c0678)+1) ) = isUnique_v14996; return; } static word FetchSliceClass_P2760(type_v15056) word type_v15056; { register ptr gf_c77332 = (ptr) &globalframe; word class_v15100; /* FetchSliceClass: */ SOURCE(40599, 257) SOURCE(40599, 257) class_v15100 = 0; SOURCE(40673, 114) { register word l_v25748; l_v25748 = (* (( (ptr) gf_c77332)+7)/* sliceClasses_v7144 */ ); lab_L100105: ; if ((l_v25748 != 0)) { } else { goto lab_L100102; }; SOURCE(40740, 47) if (((* (ptr) (* (ptr) l_v25748 ) ) == type_v15056)) { SOURCE(40766, 21) return((* (( (ptr) (* (ptr) l_v25748 ))+1) )); }; l_v25748 = (* (( (ptr) l_v25748)+1) ); goto lab_L100105; lab_L100102: ; }; SOURCE(40798, 45) { word var_c0682; var_c0682 = (* (( (ptr) gf_c77332)+55) ); (void) (XR_RaiseSignal((* (( (ptr) gf_c77332)+4)/* Problem_v5464 */ ), 0, (word) &var_c0682)); }; SOURCE(40845, 11) return(0); } static void RegisterSliceClass_P2820(class_v15160) word class_v15160; { register ptr gf_c77364 = (ptr) &globalframe; word classDef_v25876; /* RegisterSliceClass: */ SOURCE(40862, 183) SOURCE(40918, 82) classDef_v25876 = XR_NewObject(8, (* (( (ptr) gf_c77364)+19) )); (* (ptr) classDef_v25876 ) = (* (ptr) class_v15160 ); (* (( (ptr) classDef_v25876)+1) ) = class_v15160; SOURCE(41002, 43) { word var_c74708; var_c74708 = XR_NewObject(8, (* (( (ptr) gf_c77364)+18) )); (* (ptr) var_c74708 ) = classDef_v25876; (* (( (ptr) var_c74708)+1) ) = (* (( (ptr) gf_c77364)+7)/* sliceClasses_v7144 */ ); (* (( (ptr) gf_c77364)+7)/* sliceClasses_v7144 */ ) = var_c74708; }; } static word DescriptorFromParts_P2880(slice_v15220, parts_v15248) word slice_v15220; word parts_v15248; { register ptr gf_c77396 = (ptr) &globalframe; word sliceD_v15292; /* DescriptorFromParts: */ SOURCE(41051, 213) SOURCE(41051, 213) sliceD_v15292 = 0; SOURCE(41156, 49) { word var_c74740; var_c74740 = XR_NewObject(8, (* (( (ptr) gf_c77396)+17) )); (* (ptr) var_c74740 ) = slice_v15220; (* (( (ptr) var_c74740)+1) ) = parts_v15248; sliceD_v15292 = var_c74740; }; SOURCE(41207, 57) if ((0 != (* (( (ptr) gf_c77396)+5)/* testing_v6976 */ ))) { SOURCE(41223, 41) { word var_c74772; var_c74772 = XR_NewObject(8, (* (( (ptr) gf_c77396)+16) )); (* (ptr) var_c74772 ) = sliceD_v15292; (* (( (ptr) var_c74772)+1) ) = (* (( (ptr) gf_c77396)+6)/* masterSDlist_v7004 */ ); (* (( (ptr) gf_c77396)+6)/* masterSDlist_v7004 */ ) = var_c74772; }; }; SOURCE(41051, 213) return(sliceD_v15292); } static void UnlinkAllSliceDescriptors_P2940(list_v15436) word list_v15436; { register ptr gf_c77428 = (ptr) &globalframe; /* UnlinkAllSliceDescriptors: */ SOURCE(41376, 319) SOURCE(41444, 222) { register word sdList_v25920; sdList_v25920 = (* (( (ptr) gf_c77428)+6)/* masterSDlist_v7004 */ ); lab_L100109: ; if ((sdList_v25920 != 0)) { } else { goto lab_L100106; }; SOURCE(41528, 31) if (((* (ptr) (* (ptr) sdList_v25920 ) ) == 0)) { SOURCE(41559, 4) goto lab_L100108; }; SOURCE(41565, 75) if (((* (( (ptr) (* (ptr) (* (ptr) sdList_v25920 ) ))+1) ) != 0)) { SOURCE(41601, 39) { word pd519; pd519 = (* (( (ptr) (* (( (ptr) gf_c77428)+176)/* var_c70644 */ ))+71) ); (void) ( *( (fPt) ((* (ptr) pd519 ))))((* (ptr) ((* (ptr) sdList_v25920 )) ), pd519); }; }; SOURCE(41642, 24) (* (ptr) (* (ptr) sdList_v25920 ) ) = 0; lab_L100108: ; sdList_v25920 = (* (( (ptr) sdList_v25920)+1) ); goto lab_L100109; lab_L100106: ; }; SOURCE(41677, 18) (* (( (ptr) gf_c77428)+6)/* masterSDlist_v7004 */ ) = 0; } static void UnlinkSlice_P3000(slice_v15580) word slice_v15580; { /* UnlinkSlice: */ SOURCE(41758, 815) SOURCE(41802, 771) if ( ( (slice_v15580 != 0) ? ((* (( (ptr) slice_v15580)+1) ) != 0) : 0 ) ) { SOURCE(41875, 75) if (((* (( (ptr) slice_v15580)+7) ) != 0)) { SOURCE(41913, 37) (* (ptr) (* (( (ptr) slice_v15580)+7) ) ) = 0; }; SOURCE(41952, 69) if (((* (( (ptr) slice_v15580)+8) ) != 0)) { SOURCE(41987, 34) (* (ptr) (* (( (ptr) slice_v15580)+8) ) ) = 0; }; SOURCE(42023, 75) if (((* (( (ptr) slice_v15580)+9) ) != 0)) { SOURCE(42061, 37) (* (ptr) (* (( (ptr) slice_v15580)+9) ) ) = 0; }; SOURCE(42100, 73) if (((* (( (ptr) slice_v15580)+10) ) != 0)) { SOURCE(42137, 36) (* (ptr) (* (( (ptr) slice_v15580)+10) ) ) = 0; }; SOURCE(42175, 65) if (((* (( (ptr) slice_v15580)+11) ) != 0)) { SOURCE(42208, 32) (* (ptr) (* (( (ptr) slice_v15580)+11) ) ) = 0; }; SOURCE(42242, 65) if (((* (( (ptr) slice_v15580)+12) ) != 0)) { SOURCE(42275, 32) (* (ptr) (* (( (ptr) slice_v15580)+12) ) ) = 0; }; SOURCE(42309, 157) (* (( (ptr) slice_v15580)+12) ) = 0; (* (( (ptr) slice_v15580)+11) ) = 0; (* (( (ptr) slice_v15580)+10) ) = 0; (* (( (ptr) slice_v15580)+9) ) = 0; (* (( (ptr) slice_v15580)+8) ) = 0; (* (( (ptr) slice_v15580)+7) ) = 0; SOURCE(42468, 17) (* (ptr) slice_v15580 ) = 0; SOURCE(42488, 16) (* (( (ptr) slice_v15580)+1) ) = 0; SOURCE(42507, 18) (* (( (ptr) slice_v15580)+2) ) = 0; SOURCE(42528, 20) (* (( (ptr) slice_v15580)+15) ) = 0; SOURCE(42553, 20) (* (( (ptr) slice_v15580)+13) ) = 0; }; } static word EntitiesInSlice_P3060(slice_v15640) word slice_v15640; { register ptr gf_c77460 = (ptr) &globalframe; word entityGenerator_v15684; /* EntitiesInSlice: */ SOURCE(42584, 140) SOURCE(42584, 140) entityGenerator_v15684 = 0; SOURCE(42674, 50) { word var_c0696; var_c0696 = (* (( (ptr) gf_c77460)+60) ); (void) (XR_RaiseSignal((* (( (ptr) gf_c77460)+4)/* Problem_v5464 */ ), 0, (word) &var_c0696)); }; SOURCE(42584, 140) return(entityGenerator_v15684); } static void Init_P3120() { register ptr gf_c77492 = (ptr) &globalframe; word textDef_v26048; word ipDef_v26076; word boxDef_v26104; word circleDef_v26132; word outlineDef_v26160; word clusterDef_v26188; word trajDef_v26216; /* Init: */ SOURCE(42730, 936) SOURCE(42748, 100) { word var_c74804; word var_c74836; { word pd520; pd520 = (* (( (ptr) (* (( (ptr) gf_c77492)+176)/* var_c70644 */ ))+19) ); var_c74804 = (word) ( *( (fPt) ((* (ptr) pd520 ))))(pd520); }; var_c74836 = XR_NewObject(8, (* (( (ptr) gf_c77492)+19) )); (* (ptr) var_c74836 ) = (* (( (ptr) gf_c77492)+61) ); (* (( (ptr) var_c74836)+1) ) = var_c74804; textDef_v26048 = var_c74836; }; SOURCE(42850, 94) { word var_c74868; word var_c74900; { word pd521; pd521 = (* (( (ptr) (* (( (ptr) gf_c77492)+176)/* var_c70644 */ ))+54) ); var_c74868 = (word) ( *( (fPt) ((* (ptr) pd521 ))))(pd521); }; var_c74900 = XR_NewObject(8, (* (( (ptr) gf_c77492)+19) )); (* (ptr) var_c74900 ) = (* (( (ptr) gf_c77492)+62) ); (* (( (ptr) var_c74900)+1) ) = var_c74868; ipDef_v26076 = var_c74900; }; SOURCE(42946, 97) { word var_c74932; word var_c74964; { word pd522; pd522 = (* (( (ptr) (* (( (ptr) gf_c77492)+176)/* var_c70644 */ ))+43) ); var_c74932 = (word) ( *( (fPt) ((* (ptr) pd522 ))))(pd522); }; var_c74964 = XR_NewObject(8, (* (( (ptr) gf_c77492)+19) )); (* (ptr) var_c74964 ) = (* (( (ptr) gf_c77492)+63) ); (* (( (ptr) var_c74964)+1) ) = var_c74932; boxDef_v26104 = var_c74964; }; SOURCE(43045, 106) { word var_c74996; word var_c75028; { word pd523; pd523 = (* (( (ptr) (* (( (ptr) gf_c77492)+176)/* var_c70644 */ ))+51) ); var_c74996 = (word) ( *( (fPt) ((* (ptr) pd523 ))))(pd523); }; var_c75028 = XR_NewObject(8, (* (( (ptr) gf_c77492)+19) )); (* (ptr) var_c75028 ) = (* (( (ptr) gf_c77492)+38) ); (* (( (ptr) var_c75028)+1) ) = var_c74996; circleDef_v26132 = var_c75028; }; SOURCE(43153, 109) { word var_c75060; word var_c75092; { word pd524; pd524 = (* (( (ptr) (* (( (ptr) gf_c77492)+176)/* var_c70644 */ ))+64) ); var_c75060 = (word) ( *( (fPt) ((* (ptr) pd524 ))))(pd524); }; var_c75092 = XR_NewObject(8, (* (( (ptr) gf_c77492)+19) )); (* (ptr) var_c75092 ) = (* (( (ptr) gf_c77492)+64) ); (* (( (ptr) var_c75092)+1) ) = var_c75060; outlineDef_v26160 = var_c75092; }; SOURCE(43264, 109) { word var_c75124; word var_c75156; { word pd525; pd525 = (* (( (ptr) (* (( (ptr) gf_c77492)+176)/* var_c70644 */ ))+17) ); var_c75124 = (word) ( *( (fPt) ((* (ptr) pd525 ))))(pd525); }; var_c75156 = XR_NewObject(8, (* (( (ptr) gf_c77492)+19) )); (* (ptr) var_c75156 ) = (* (( (ptr) gf_c77492)+65) ); (* (( (ptr) var_c75156)+1) ) = var_c75124; clusterDef_v26188 = var_c75156; }; SOURCE(43375, 100) { word var_c75188; word var_c75220; { word pd526; pd526 = (* (( (ptr) (* (( (ptr) gf_c77492)+176)/* var_c70644 */ ))+62) ); var_c75188 = (word) ( *( (fPt) ((* (ptr) pd526 ))))(pd526); }; var_c75220 = XR_NewObject(8, (* (( (ptr) gf_c77492)+19) )); (* (ptr) var_c75220 ) = (* (( (ptr) gf_c77492)+66) ); (* (( (ptr) var_c75220)+1) ) = var_c75188; trajDef_v26216 = var_c75220; }; SOURCE(43477, 87) { word var_c75252; word var_c75284; var_c75252 = XR_NewObject(8, (* (( (ptr) gf_c77492)+18) )); var_c75284 = var_c75252; (* (ptr) var_c75284 ) = trajDef_v26216; (* (( (ptr) var_c75284)+1) ) = XR_NewObject(8, (* (( (ptr) gf_c77492)+18) )); var_c75284 = (* (( (ptr) var_c75284)+1) ); (* (ptr) var_c75284 ) = outlineDef_v26160; (* (( (ptr) var_c75284)+1) ) = XR_NewObject(8, (* (( (ptr) gf_c77492)+18) )); var_c75284 = (* (( (ptr) var_c75284)+1) ); (* (ptr) var_c75284 ) = clusterDef_v26188; (* (( (ptr) var_c75284)+1) ) = XR_NewObject(8, (* (( (ptr) gf_c77492)+18) )); var_c75284 = (* (( (ptr) var_c75284)+1) ); (* (ptr) var_c75284 ) = circleDef_v26132; (* (( (ptr) var_c75284)+1) ) = XR_NewObject(8, (* (( (ptr) gf_c77492)+18) )); var_c75284 = (* (( (ptr) var_c75284)+1) ); (* (ptr) var_c75284 ) = boxDef_v26104; (* (( (ptr) var_c75284)+1) ) = XR_NewObject(8, (* (( (ptr) gf_c77492)+18) )); var_c75284 = (* (( (ptr) var_c75284)+1) ); (* (ptr) var_c75284 ) = ipDef_v26076; (* (( (ptr) var_c75284)+1) ) = XR_NewObject(8, (* (( (ptr) gf_c77492)+18) )); var_c75284 = (* (( (ptr) var_c75284)+1) ); (* (ptr) var_c75284 ) = textDef_v26048; (* (( (ptr) gf_c77492)+7)/* sliceClasses_v7144 */ ) = var_c75252; }; SOURCE(43567, 48) { word pd527; pd527 = (* (( (ptr) (* (( (ptr) gf_c77492)+183)/* var_c71476 */ ))+5) ); (* (( (ptr) gf_c77492)+8)/* printPrefix_v7172 */ ) = (word) ( *( (fPt) ((* (ptr) pd527 ))))((* (( (ptr) gf_c77492)+67) ), 0, 2147483647, pd527) ; }; SOURCE(43617, 49) { word pd528; pd528 = (* (( (ptr) (* (( (ptr) gf_c77492)+183)/* var_c71476 */ ))+5) ); (* (( (ptr) gf_c77492)+9)/* screenPrefix_v7200 */ ) = (word) ( *( (fPt) ((* (ptr) pd528 ))))((* (( (ptr) gf_c77492)+68) ), 0, 2147483647, pd528); }; } /* file: GGSliceImplE, module: GGSliceImplE, compiled at: July 11, 1993 8:18:34 pm PDT */ extern void XR_install_GGSliceImplE() { NoName_Q5760(); } extern void XR_run_GGSliceImplE() { XR_Start(&globalframe); }