/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: February 5, 1993 2:09:43 pm PST */ /* C2C version: October 7, 1992 (native) */ /* ref-counting: off */ /* file: GGSegmentImplB, module: GGSegmentImplB */ /* switches: bcfhklnouw */ #include #include static char versionStamp[] = "@(#)mob_version [1762994238,3792739274] GGSegmentImplB"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef struct {word f0, f1;} W2; typedef W2 *W2Pt; typedef word (*fPt)(); typedef struct {word f0, f1, f2, f3;} W4; typedef W4 *W4Pt; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef W6 *W6Pt; typedef struct {word f0, f1, f2;} W3; #define SOURCE(p, l) /* source p, l */ static float fc36 = 2.0; static float fc37 = 0.0; static float fc38 = -1.0; #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR_RaiseBoundsFault()) : (idx) ) static float fc41 = 3.0; static float fc43 = 1.0; #define FMIN(x, y, tx, ty) ( (tx=((float) x)) <= (ty=((float) y)) ? tx : ty ) #define FMAX(x, y, tx, ty) ( (tx=((float) x)) >= (ty=((float) y)) ? tx : ty ) static float fc92 = 0.707106816; #define FABS(f, t) ( ((t=(f)) >= (float) 0.0) ? (t) : (- (t)) ) static float fc155 = 90.0; static float fc159 = 180.0; static float fc164 = -90.0; static float fc219 = 0.01745328; #define SGNCK(i) ((int) (word) (i) < 0 ? XR_RaiseArithmeticFault(): i ) static void NoName_Q4860(); static void GGSegmentImplB_P0(); static word NoOpSameShapeProc_P60(); static void NoOpControlPointMoved_P120(); static void NoOpControlPointGet_P180(); static word NoOpControlPointCount_P240(); static void NoOpControlPointFieldSet_P300(); static word NoOpControlPointFieldGet_P360(); static void NoOpClosestControlPoint_P420(); static void NoOpClosestPointAndTangent_P480(); static void NoOpLineIntersection_P540(); static void NoOpCircleIntersection_P600(); static word NoOpAsSimpleCurve_P660(); static word NoOpAsPolyline_P720(); static void NoOpJointNormal_P780(); static void NoOpCPNormal_P840(); static void NoOpAddJoint_P900(); static void NoOpFileOut_P960(); static word BuildCircleClass_P1020(); static word CircleBoundBox_P1080(); static word CircleFileIn_P1140(); static void CircleEndPointMoved_P1200(); static word BuildDiscClass_P1260(); static word DiscFileIn_P1320(); static word BuildLineClass_P1380(); static void LineSetStrokeWidth_P1440(); static word MakeLine_P1500(); static word LineBoundBox_P1560(); static word LineTightBox_P1620(); static void UpdateLineBoundBox_P1680(); static word LineCopyData_P1740(); static void LineReverse_P1800(); static void LineBuildPath_P1860(); static void LineBuildPathTransform_P1920(); static void LineTransform_P1980(); static void LineEndPointMoved_P2040(); static word LineDescribe_P2100(); static word LineFileIn_P2160(); static word PointIsInBox_P2220(); static void LineClosestPoint_P2280(); static void LineClosestPointAndTangent_P2340(); static void LineLineIntersection_P2400(); static void LineCircleIntersection_P2460(); static word LineAsSimpleCurve_P2520(); static void LineJointNormal_P2580(); static void LineAddJoint_P2640(); static word BuildArcClass_P2700(); static void ArcSetStrokeWidth_P2760(); static word MakeArc_P2820(); static void ArcGetParams_P2880(); static word ArcBoundBox_P2940(); static word ArcTightBox_P3000(); static void UpdateTightBoxOfArc_P3060(); static void UpdateBoundBoxOfEdge_P3120(); static void UpdateBoundBoxOfArc_P3180(); static word ArcCopyData_P3240(); static void ArcReverse_P3300(); static void ArcTransform_P3360(); static void ArcEndPointMoved_P3420(); static void ArcControlPointMoved_P3480(); static void TransformEndPoints_P3540(); static void ArcBuildPath_P3600(); static void ArcBuildPathTransform_P3660(); static word ArcDescribe_P3720(); static void ArcFileOut_P3780(); static word ArcFileIn_P3840(); static void ArcFieldSet_P3900(); static word ArcFieldGet_P3960(); static void ArcControlPointGet_P4020(); static word ArcControlPointCount_P4080(); static void ArcClosestPoint_P4140(); static void ArcClosestControlPoint_P4200(); static word ArcAsSimpleCurve_P4260(); static word ArcAsPolyline_P4320(); static void ArcCPNormal_P4380(); static void ArcJointNormal_P4440(); static void ArcAddJoint_P4500(); static void Init_P4560(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\254\073\314\103\300\064\024\167\046\102\220\000\000"}; static struct {unsigned f; char r[16];} string2 = {851984, "\257\300\254\073\314\103\300\064\024\167\046\100\244\000\000"}; static struct {unsigned f; char r[4];} string3 = {65537, "\001\000\000"}; static struct {unsigned f; char r[4];} string4 = {131076, "\216\251\000"}; static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\254\073\314\103\300\064\024\167\046\100\200\000\000"}; static struct {unsigned f; char r[28];} string6 = {1638425, "\006\011\000\001\004\001\024\001\040\001\100\124\001\100\130\001\100\134\001\100\140\001\100\144\001\000\000"}; static struct {unsigned f; char r[16];} string7 = {851984, "\257\300\043\211\212\366\300\343\003\307\242\100\164\000\000"}; static struct {unsigned f; char r[4];} string8 = {131074, "\004\003\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\151\025\050\076\300\342\020\233\312\102\314\000\000"}; static struct {unsigned f; char r[4];} string10 = {131074, "\003\006\000"}; static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\151\025\050\076\300\342\020\233\312\100\354\000\000"}; static struct {unsigned f; char r[16];} string12 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[44];} string13 = {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];} string14 = {131074, "\003\002\000"}; static struct {unsigned f; char r[8];} string15 = {262152, "Line\000\000\000"}; static struct {unsigned f; char r[4];} string16 = {196612, "Arc"}; static struct {unsigned f; char r[16];} string17 = {786448, "Straight Arc\000\000\000"}; static struct {unsigned f; char r[8];} string18 = {262152, "Disc\000\000\000"}; static struct {unsigned f; char r[8];} string19 = {393224, "Circle\000"}; static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\151\025\050\076\300\342\020\233\312\100\164\000\000"}; static struct {unsigned f; char r[8];} string21 = {458759, "\006\001@L\004@\177"}; static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\121\216\014\136\300\111\163\224\167\100\150\000\000"}; static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\265\217\206\011\300\172\271\371\033\100\150\000\000"}; static struct {unsigned f; char r[16];} string24 = {851984, "\257\300IKM\275\300Y\0222&@h\000\000"}; static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\236\155\220\261\300\040\017\026\014\100\150\000\000"}; static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\045\215\147\016\300\153\043\150\276\100\150\000\000"}; static struct {unsigned f; char r[8];} string27 = {1195856741, "gment"}; static struct {unsigned f; char r[16];} string28 = {851984, "\257\300\043\211\212\366\300\343\003\307\242\100\150\000\000"}; static struct {unsigned f; char r[16];} string29 = {851984, "\257\300\104\154\010\164\300\126\073\363\036\100\150\000\000"}; static struct {unsigned f; char r[16];} string30 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"}; static struct {unsigned f; char r[16];} string31 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"}; static struct {unsigned f; char r[16];} string32 = {851984, "\257\300\103\306\166\071\300\047\126\012\237\100\150\000\000"}; static struct {unsigned f; char r[16];} string33 = {851984, "\257\300\246\205\220\035\300\344\000\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string34 = {851984, "\257\300\245\247\302\156\300\052\156\325\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string35 = {851984, "\257\300\004\142\347\110\300\363\053\254\345\100\150\000\000"}; static struct { word f0[26]; word f26; word f27; word f28; word f29; word f30; word f31; word f32; word f33; word f34; word f35; word f36; word f37; word f38; word f39; word f40; word f41; word f42; word f43; word f44; word f45; word f46; word f47; word f48; word f49; word f50; word f51; word f52; word f53; word f54; word f55; word f56; word f57; word f58; word f59; word f60; word f61; word f62; word f63; word f64; word f65; word f66; word f67; word f68; 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; word f175; word f176; word f177; word f178; word f179[19]; } globalframe = { {0}, (word) Init_P4560, 0, (word) ArcAddJoint_P4500, 0, (word) ArcJointNormal_P4440, 0, (word) ArcCPNormal_P4380, 0, (word) ArcAsPolyline_P4320, 0, (word) ArcAsSimpleCurve_P4260, 0, (word) ArcClosestControlPoint_P4200, 0, (word) ArcClosestPoint_P4140, 0, (word) ArcControlPointCount_P4080, 0, (word) ArcControlPointGet_P4020, 0, (word) ArcFieldGet_P3960, 0, (word) ArcFieldSet_P3900, 0, (word) ArcFileIn_P3840, 0, (word) ArcFileOut_P3780, 0, (word) ArcDescribe_P3720, 0, (word) ArcBuildPathTransform_P3660, 0, (word) ArcBuildPath_P3600, 0, (word) TransformEndPoints_P3540, 0, (word) ArcControlPointMoved_P3480, 0, (word) ArcEndPointMoved_P3420, 0, (word) ArcTransform_P3360, 0, (word) ArcReverse_P3300, 0, (word) ArcCopyData_P3240, 0, (word) UpdateBoundBoxOfArc_P3180, 0, (word) UpdateBoundBoxOfEdge_P3120, 0, (word) UpdateTightBoxOfArc_P3060, 0, (word) ArcTightBox_P3000, 0, (word) ArcBoundBox_P2940, 0, (word) ArcGetParams_P2880, 0, (word) MakeArc_P2820, 0, (word) ArcSetStrokeWidth_P2760, 0, (word) BuildArcClass_P2700, 0, (word) LineAddJoint_P2640, 0, (word) LineJointNormal_P2580, 0, (word) LineAsSimpleCurve_P2520, 0, (word) LineCircleIntersection_P2460, 0, (word) LineLineIntersection_P2400, 0, (word) LineClosestPointAndTangent_P2340, 0, (word) LineClosestPoint_P2280, 0, (word) PointIsInBox_P2220, 0, (word) LineFileIn_P2160, 0, (word) LineDescribe_P2100, 0, (word) LineEndPointMoved_P2040, 0, (word) LineTransform_P1980, 0, (word) LineBuildPathTransform_P1920, 0, (word) LineBuildPath_P1860, 0, (word) LineReverse_P1800, 0, (word) LineCopyData_P1740, 0, (word) UpdateLineBoundBox_P1680, 0, (word) LineTightBox_P1620, 0, (word) LineBoundBox_P1560, 0, (word) MakeLine_P1500, 0, (word) LineSetStrokeWidth_P1440, 0, (word) BuildLineClass_P1380, 0, (word) DiscFileIn_P1320, 0, (word) BuildDiscClass_P1260, 0, (word) CircleEndPointMoved_P1200, 0, (word) CircleFileIn_P1140, 0, (word) CircleBoundBox_P1080, 0, (word) BuildCircleClass_P1020, 0, (word) NoOpFileOut_P960, 0, (word) NoOpAddJoint_P900, 0, (word) NoOpCPNormal_P840, 0, (word) NoOpJointNormal_P780, 0, (word) NoOpAsPolyline_P720, 0, (word) NoOpAsSimpleCurve_P660, 0, (word) NoOpCircleIntersection_P600, 0, (word) NoOpLineIntersection_P540, 0, (word) NoOpClosestPointAndTangent_P480, 0, (word) NoOpClosestControlPoint_P420, 0, (word) NoOpControlPointFieldGet_P360, 0, (word) NoOpControlPointFieldSet_P300, 0, (word) NoOpControlPointCount_P240, 0, (word) NoOpControlPointGet_P180, 0, (word) NoOpControlPointMoved_P120, 0, (word) NoOpSameShapeProc_P60, 0, (word) GGSegmentImplB_P0, {0} }; static void NoName_Q4860() { register ptr gf_c0616 = (ptr) &globalframe; word var_c49212; (* (( (ptr) gf_c0616)+7) ) = (word) XR_GetTypeIndexS((word) (&string1)); (* (( (ptr) gf_c0616)+8) ) = (word) XR_GetTypeIndex((word) &string2, 0, (word) &string3); (* (( (ptr) gf_c0616)+9) ) = (word) XR_GetTypeIndex((word) &string4, 0, (word) &string3); (* (( (ptr) gf_c0616)+12) ) = (word) XR_GetTypeIndex((word) &string5, 0, (word) &string6); (* (( (ptr) gf_c0616)+13) ) = (word) XR_GetTypeIndex((word) &string7, 0, (word) &string8); (* (( (ptr) gf_c0616)+14) ) = (word) XR_GetTypeIndex((word) &string9, 0, (word) &string10); (* (( (ptr) gf_c0616)+15) ) = (word) XR_GetTypeIndex((word) &string11, 0, (word) &string3); (* (( (ptr) gf_c0616)+17) ) = (word) XR_GetTypeIndex((word) &string12, 0, (word) &string3); (* (( (ptr) gf_c0616)+18) ) = (word) XR_GetTypeIndex((word) &string13, 0, (word) &string14); (* (ptr) (( (bPt) gf_c0616)+76) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0616)+17) ), (word) &string15); (* (ptr) (( (bPt) gf_c0616)+80) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0616)+9) ), (word) &string16); (* (ptr) (( (bPt) gf_c0616)+84) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0616)+9) ), (word) &string15); (* (ptr) (( (bPt) gf_c0616)+88) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0616)+17) ), (word) &string17); (* (ptr) (( (bPt) gf_c0616)+92) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0616)+17) ), (word) &string16); (* (ptr) (( (bPt) gf_c0616)+96) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0616)+9) ), (word) &string18); (* (ptr) (( (bPt) gf_c0616)+100) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0616)+9) ), (word) &string19); (void) XR_DeclareGlobalFrame((word) "GGSegmentImplB", &globalframe, (word) XR_GetTypeIndex((word) &string20, 0, (word) &string21) , (word) (( (bPt) gf_c0616)+712)/* var_c45596 */ ); var_c49212 = (word) XR_ImportInterface((word) "Angles2d", (word) XR_GetTypeIndexS((word) (&string22)), 11); (* (( (ptr) gf_c0616)+191)/* var_c47548 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 67897603); var_c49212 = (word) XR_ImportInterface((word) "GGBoundBox", (word) XR_GetTypeIndexS((word) (&string23)), 24); (* (( (ptr) gf_c0616)+186)/* var_c46172 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 789250); (void) XR_ImportProcS(var_c49212, 527618); (void) XR_ImportProcS(var_c49212, 1314309); (void) XR_ImportProcS(var_c49212, 68681990); var_c49212 = (word) XR_ImportInterface((word) "GGCircles", (word) XR_GetTypeIndexS((word) (&string24)), 29); (* (( (ptr) gf_c0616)+190)/* var_c47100 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 135010562); (void) XR_ImportProcS(var_c49212, 1839876); (void) XR_ImportProcS(var_c49212, 267521); (void) XR_ImportProcS(var_c49212, 528898); (void) XR_ImportProcS(var_c49212, 67113216); (void) XR_ImportProcS(var_c49212, 68686851); (void) XR_ImportProcS(var_c49212, 403179266); var_c49212 = (word) XR_ImportInterface((word) "GGParseIn", (word) XR_GetTypeIndexS((word) (&string25)), 26); (* (( (ptr) gf_c0616)+194)/* var_c48252 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 134483713); var_c49212 = (word) XR_ImportInterface((word) "GGParseOut", (word) XR_GetTypeIndexS((word) (&string26)), 15); (* (( (ptr) gf_c0616)+193)/* var_c48220 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 787714); var_c49212 = (word) XR_ImportInterface((word) &string27, (word) XR_GetTypeIndexS((word) (&string28)), 47); (* (( (ptr) gf_c0616)+185)/* var_c46108 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 267521); (void) XR_ImportProcS(var_c49212, 266753); (void) XR_ImportProcS(var_c49212, 134752258); (void) XR_ImportProcS(var_c49212, 134752002); (void) XR_ImportProcS(var_c49212, 336602627); (void) XR_ImportProcS(var_c49212, 67374337); (void) XR_ImportProcS(var_c49212, 135801860); (void) XR_ImportProcS(var_c49212, 67643906); (void) XR_ImportProcS(var_c49212, 403711235); (void) XR_ImportProcS(var_c49212, 67379713); (void) XR_ImportProcS(var_c49212, 134750466); (void) XR_ImportProcS(var_c49212, 67904515); (void) XR_ImportProcS(var_c49212, 1057540); (void) XR_ImportProcS(var_c49212, 536066); (void) XR_ImportProcS(var_c49212, 794627); (void) XR_ImportProcS(var_c49212, 67641090); (void) XR_ImportProcS(var_c49212, 67376129); var_c49212 = (word) XR_ImportInterface((word) "GGTransform", (word) XR_GetTypeIndexS((word) (&string29)), 7); (* (( (ptr) gf_c0616)+189)/* var_c46844 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 135004418); var_c49212 = (word) XR_ImportInterface((word) "Imager", (word) XR_GetTypeIndexS((word) (&string30)), 84); (* (( (ptr) gf_c0616)+187)/* var_c46268 */ ) = var_c49212; var_c49212 = (word) XR_ImportInterface((word) "ImagerTransformation", (word) XR_GetTypeIndexS((word) (&string31)), 55); (* (( (ptr) gf_c0616)+192)/* var_c47964 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 67372289); (void) XR_ImportProcS(var_c49212, 135013122); var_c49212 = (word) XR_ImportInterface((word) "Lines2d", (word) XR_GetTypeIndexS((word) (&string32)), 50); (* (( (ptr) gf_c0616)+188)/* var_c46588 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 201858818); (void) XR_ImportProcS(var_c49212, 134488321); (void) XR_ImportProcS(var_c49212, 135014914); (void) XR_ImportProcS(var_c49212, 1317123); (void) XR_ImportProcS(var_c49212, 68163330); var_c49212 = (word) XR_ImportInterface((word) "Real", (word) XR_GetTypeIndexS((word) (&string33)), 11); (* (( (ptr) gf_c0616)+196)/* var_c48508 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 67371777); var_c49212 = (word) XR_ImportInterface((word) "RealFns", (word) XR_GetTypeIndexS((word) (&string34)), 36); (* (( (ptr) gf_c0616)+195)/* var_c48476 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 67373057); (void) XR_ImportProcS(var_c49212, 67372545); (void) XR_ImportProcS(var_c49212, 67372289); (void) XR_ImportProcS(var_c49212, 67636226); var_c49212 = (word) XR_ImportInterface((word) "Vectors2d", (word) XR_GetTypeIndexS((word) (&string35)), 21); (* (( (ptr) gf_c0616)+184)/* var_c45788 */ ) = var_c49212; (void) XR_ImportProcS(var_c49212, 68158210); (void) XR_ImportProcS(var_c49212, 135004418); (void) XR_ImportProcS(var_c49212, 134744321); (void) XR_ImportProcS(var_c49212, 135268098); (void) XR_ImportProcS(var_c49212, 67633665); (void) XR_ImportProcS(var_c49212, 135267842); (void) XR_ImportProcS(var_c49212, 68158722); (void) XR_ImportProcS(var_c49212, 135270914); (void) XR_ImportProcS(var_c49212, 134484993); (void) XR_ImportProcS(var_c49212, 134484737); (void) XR_ImportProcS(var_c49212, 68161282); var_c49212 = (word) XR_ExportInterface((word) &string27, (word) XR_GetTypeIndexS((word) (&string28)), 47); (* (( (ptr) gf_c0616)+197)/* var_c49244 */ ) = var_c49212; (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+512)/* var_c44796 */ , 68419843); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+336)/* var_c44092 */ , 68944900); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+328)/* var_c44060 */ , 402917889); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+704)/* var_c45564 */ , 67641090); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+696)/* var_c45532 */ , 794627); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+688)/* var_c45500 */ , 134750466); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+680)/* var_c45468 */ , 67379713); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+672)/* var_c45436 */ , 1057540); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+664)/* var_c45404 */ , 67904515); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+656)/* var_c45372 */ , 403711235); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+648)/* var_c45340 */ , 336602627); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+640)/* var_c45308 */ , 134752002); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+632)/* var_c45276 */ , 134752258); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+624)/* var_c45244 */ , 67905794); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+616)/* var_c45212 */ , 67643906); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+608)/* var_c45180 */ , 270019332); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+600)/* var_c45148 */ , 135801860); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+592)/* var_c45116 */ , 135015682); (void) XR_ExportProcS(var_c49212, (word) (( (bPt) gf_c0616)+584)/* var_c45084 */ , 536066); } static void GGSegmentImplB_P0(formal_c0100, formal_c099) word formal_c0100; word formal_c099; { register ptr gf_c49276 = (ptr) &globalframe; /* GGSegmentImplB: */ SOURCE(274, 24356) SOURCE(1523, 30) (* (( (ptr) gf_c49276)+4)/* defaultStrokeWidth_v4092 */ ) = (* (ptr) &fc36 ); SOURCE(1555, 35) (* (( (ptr) gf_c49276)+5)/* defaultStrokeEnd_v4120 */ ) = 2; SOURCE(8941, 20) (* (( (ptr) gf_c49276)+6)/* useBBox_v5240 */ ) = 1; SOURCE(24624, 6) (void) Init_P4560(); } static word NoOpSameShapeProc_P60(seg1_v25068, seg2_v25096) word seg1_v25068; word seg2_v25096; { word var_c25140; /* NoOpSameShapeProc: */ SOURCE(1593, 71) SOURCE(1652, 12) return(1); } static void NoOpControlPointMoved_P120(seg_v25200, transform_v25228, controlPointNum_v25256) word seg_v25200; word transform_v25228; word controlPointNum_v25256; { /* NoOpControlPointMoved: */ } static void NoOpControlPointGet_P180(formal_c0110, seg_v25316, controlPointNum_v25344) word formal_c0110; word seg_v25316; word controlPointNum_v25344; { W2 point_v25388; /* NoOpControlPointGet: */ SOURCE(1830, 86) SOURCE(1896, 20) point_v25388.f0 = (* (ptr) &fc37 ); point_v25388.f1 = (* (ptr) &fc37 ); /* removed tail goto */ (* (W2Pt) formal_c0110 ) = point_v25388; return; } static word NoOpControlPointCount_P240(seg_v25448) word seg_v25448; { word controlPointCount_v25492; /* NoOpControlPointCount: */ SOURCE(1919, 91) SOURCE(1989, 21) controlPointCount_v25492 = 0; SOURCE(1919, 91) return(controlPointCount_v25492); } static void NoOpControlPointFieldSet_P300(seg_v25552, controlPointNum_v25580, selected_v25608, selectClass_v25636) word seg_v25552; word controlPointNum_v25580; word selected_v25608; word selectClass_v25636; { /* NoOpControlPointFieldSet: */ } static word NoOpControlPointFieldGet_P360(seg_v25696, controlPointNum_v25724, selectClass_v25752) word seg_v25696; word controlPointNum_v25724; word selectClass_v25752; { word selected_v25796; /* NoOpControlPointFieldGet: */ SOURCE(2092, 75) SOURCE(2169, 5) (void) XR_RaiseUnnamedError(); } static void NoOpClosestControlPoint_P420(formal_c0128, seg_v25856, testPoint_v25884, tolerance_v25912) word formal_c0128; word seg_v25856; W2 testPoint_v25884; word tolerance_v25912; { W2 point_v25956; W2 normal_v25984; word controlPointNum_v26012; word success_v26040; /* NoOpClosestControlPoint: */ SOURCE(2179, 148) SOURCE(2254, 15) normal_v25984.f0 = (* (ptr) &fc37 ); normal_v25984.f1 = (* (ptr) &fc38 ); SOURCE(2271, 18) point_v25956.f0 = (* (ptr) &fc37 ); point_v25956.f1 = (* (ptr) &fc37 ); SOURCE(2291, 19) controlPointNum_v26012 = 0; SOURCE(2312, 15) success_v26040 = 0; /* removed tail goto */ (* (W2Pt) formal_c0128 ) = point_v25956; (* (W2Pt) (( (ptr) formal_c0128)+2) ) = normal_v25984; (* (( (ptr) formal_c0128)+4) ) = controlPointNum_v26012; (* (( (ptr) formal_c0128)+5) ) = success_v26040; return; } static void NoOpClosestPointAndTangent_P480(formal_c0135, seg_v26100, testPoint_v26128, tolerance_v26156) word formal_c0135; word seg_v26100; W2 testPoint_v26128; word tolerance_v26156; { W2 point_v26200; W2 tangent_v26228; word success_v26256; /* NoOpClosestPointAndTangent: */ SOURCE(2332, 134) SOURCE(2413, 18) point_v26200.f0 = (* (ptr) &fc37 ); point_v26200.f1 = (* (ptr) &fc37 ); SOURCE(2433, 16) tangent_v26228.f0 = (* (ptr) &fc37 ); tangent_v26228.f1 = (* (ptr) &fc38 ); SOURCE(2451, 15) success_v26256 = 0; /* removed tail goto */ (* (W2Pt) formal_c0135 ) = point_v26200; (* (W2Pt) (( (ptr) formal_c0135)+2) ) = tangent_v26228; (* (( (ptr) formal_c0135)+4) ) = success_v26256; return; } static void NoOpLineIntersection_P540(formal_c0140, seg_v26316, line_v26344) word formal_c0140; word seg_v26316; word line_v26344; { word points_v26388; word pointCount_v26416; /* NoOpLineIntersection: */ SOURCE(2471, 97) SOURCE(2471, 97) points_v26388 = 0; SOURCE(2540, 12) points_v26388 = 0; SOURCE(2554, 14) pointCount_v26416 = 0; /* removed tail goto */ (* (ptr) formal_c0140 ) = points_v26388; (* (( (ptr) formal_c0140)+1) ) = pointCount_v26416; return; } static void NoOpCircleIntersection_P600(formal_c0145, seg_v26476, circle_v26504) word formal_c0145; word seg_v26476; word circle_v26504; { word points_v26548; word pointCount_v26576; /* NoOpCircleIntersection: */ SOURCE(2573, 101) SOURCE(2573, 101) points_v26548 = 0; SOURCE(2646, 12) points_v26548 = 0; SOURCE(2660, 14) pointCount_v26576 = 0; /* removed tail goto */ (* (ptr) formal_c0145 ) = points_v26548; (* (( (ptr) formal_c0145)+1) ) = pointCount_v26576; return; } static word NoOpAsSimpleCurve_P660(seg_v26636, point_v26664) word seg_v26636; W2 point_v26664; { word simpleCurve_v26708; /* NoOpAsSimpleCurve: */ SOURCE(2679, 80) SOURCE(2679, 80) simpleCurve_v26708 = 0; SOURCE(2742, 17) simpleCurve_v26708 = 0; SOURCE(2679, 80) return(simpleCurve_v26708); } static word NoOpAsPolyline_P720(seg_v26768, tolerance_v26796) word seg_v26768; word tolerance_v26796; { register ptr gf_c49308 = (ptr) &globalframe; word polyline_v26840; /* NoOpAsPolyline: */ SOURCE(2764, 156) SOURCE(2764, 156) polyline_v26840 = 0; SOURCE(2821, 34) { word var_c45724; var_c45724 = XR_NewObject(24, (* (( (ptr) gf_c49308)+7) )); (* (( (ptr) var_c45724)+1) ) = 2; polyline_v26840 = var_c45724; }; SOURCE(2857, 19) (* (ptr) polyline_v26840 ) = 2; SOURCE(2878, 20) { word limit39; (* (( (W2Pt) (( (ptr) polyline_v26840)+2))+( limit39 = (* (( (ptr) polyline_v26840)+1) ), BCK(0, limit39) )) ) = (* (W2Pt) (( (ptr) seg_v26768)+9) ); }; SOURCE(2900, 20) { word limit40; (* (( (W2Pt) (( (ptr) polyline_v26840)+2))+( limit40 = (* (( (ptr) polyline_v26840)+1) ), BCK(1, limit40) )) ) = (* (W2Pt) (( (ptr) seg_v26768)+11) ); }; SOURCE(2764, 156) return(polyline_v26840); } static void NoOpJointNormal_P780(formal_c0159, seg_v26900, joint_v26928, point_v26956, hi_v26984) word formal_c0159; word seg_v26900; W2 joint_v26928; W2 point_v26956; word hi_v26984; { W2 normal_v27028; W2 tangent_v27056; /* NoOpJointNormal: */ SOURCE(2925, 92) SOURCE(2984, 15) normal_v27028.f0 = (* (ptr) &fc37 ); normal_v27028.f1 = (* (ptr) &fc38 ); SOURCE(3001, 16) tangent_v27056.f0 = (* (ptr) &fc37 ); tangent_v27056.f1 = (* (ptr) &fc38 ); /* removed tail goto */ (* (W2Pt) formal_c0159 ) = normal_v27028; (* (W2Pt) (( (ptr) formal_c0159)+2) ) = tangent_v27056; return; } static void NoOpCPNormal_P840(formal_c0165, seg_v27116, controlPointNum_v27144, cPoint_v27172, testPoint_v27200) word formal_c0165; word seg_v27116; word controlPointNum_v27144; W2 cPoint_v27172; W2 testPoint_v27200; { W2 normal_v27244; /* NoOpCPNormal: */ SOURCE(3022, 68) SOURCE(3075, 15) normal_v27244.f0 = (* (ptr) &fc37 ); normal_v27244.f1 = (* (ptr) &fc38 ); /* removed tail goto */ (* (W2Pt) formal_c0165 ) = normal_v27244; return; } static void NoOpAddJoint_P900(formal_c0170, seg_v27304, pos_v27332) word formal_c0170; word seg_v27304; W2 pos_v27332; { word seg1_v27376; word seg2_v27404; /* NoOpAddJoint: */ SOURCE(3095, 51) SOURCE(3095, 51) seg1_v27376 = 0; SOURCE(3095, 51) seg2_v27404 = 0; SOURCE(3148, 5) (void) XR_RaiseUnnamedError(); } static void NoOpFileOut_P960(seg_v27464, f_v27492) word seg_v27464; word f_v27492; { /* NoOpFileOut: */ } static word BuildCircleClass_P1020() { register ptr gf_c49340 = (ptr) &globalframe; word circleClass_v6520; /* BuildCircleClass: */ SOURCE(3212, 204) SOURCE(3212, 204) circleClass_v6520 = 0; SOURCE(3278, 138) { word var_c45756; var_c45756 = XR_NewObject(116, (* (( (ptr) gf_c49340)+8) )); (* (ptr) var_c45756 ) = (* (( (ptr) gf_c49340)+25) ); (* (( (ptr) var_c45756)+1) ) = (word) (( (bPt) gf_c49340)+568)/* var_c45020 */ ; (* (( (ptr) var_c45756)+9) ) = (word) (( (bPt) gf_c49340)+552)/* var_c44956 */ ; (* (( (ptr) var_c45756)+13) ) = (word) (( (bPt) gf_c49340)+560)/* var_c44988 */ ; circleClass_v6520 = var_c45756; }; SOURCE(3212, 204) return(circleClass_v6520); } static word CircleBoundBox_P1080(seg_v6580) word seg_v6580; { register ptr gf_c49372 = (ptr) &globalframe; word bBox_v6624; word radius_v15020; word cpHalf_v15048; /* CircleBoundBox: */ SOURCE(3422, 326) SOURCE(3422, 326) bBox_v6624 = 0; SOURCE(3501, 45) { word x42; word x44; *(float*)&cpHalf_v15048 = ( x42 = (* (ptr) &fc41 ), *(float*)&x42 ) + ( x44 = (* (ptr) &fc43 ), *(float*)&x44 ); }; SOURCE(3548, 43) { word pd45; pd45 = (* (( (ptr) (* (( (ptr) gf_c49372)+184)/* var_c45788 */ ))+19) ); radius_v15020 = (word) ( *( (fPt) ((* (ptr) pd45 ))))((* (W2Pt) (( (ptr) seg_v6580)+9) ), (* (W2Pt) (( (ptr) seg_v6580)+11) ), pd45); }; SOURCE(3593, 138) { word var_c45820; word var_c45884; word var_c45948; word var_c46012; word var_c46044; { word x46; word x47; word x48; *(float*)&var_c45820 = (( x46 = (* (( (ptr) seg_v6580)+9) ), *(float*)&x46 ) - ( x47 = radius_v15020, *(float*)&x47 )) - ( x48 = cpHalf_v15048, *(float*)&x48 ); }; { word x49; word x50; word x51; *(float*)&var_c45884 = (( x49 = (* (( (ptr) seg_v6580)+10) ), *(float*)&x49 ) - ( x50 = radius_v15020, *(float*)&x50 )) - ( x51 = cpHalf_v15048, *(float*)&x51 ); }; { word x52; word x53; word x54; *(float*)&var_c45948 = (( x52 = (* (( (ptr) seg_v6580)+9) ), *(float*)&x52 ) + ( x53 = radius_v15020, *(float*)&x53 )) + ( x54 = cpHalf_v15048, *(float*)&x54 ); }; { word x55; word x56; word x57; *(float*)&var_c46012 = (( x55 = (* (( (ptr) seg_v6580)+10) ), *(float*)&x55 ) + ( x56 = radius_v15020, *(float*)&x56 )) + ( x57 = cpHalf_v15048, *(float*)&x57 ); }; var_c46044 = (* (( (ptr) seg_v6580)+21) ); (* (ptr) var_c46044 ) = var_c45820; (* (( (ptr) var_c46044)+1) ) = var_c45884; (* (( (ptr) var_c46044)+2) ) = var_c45948; (* (( (ptr) var_c46044)+3) ) = var_c46012; (* (( (ptr) var_c46044)+4) ) = 0; (* (( (ptr) var_c46044)+5) ) = 0; }; SOURCE(3733, 15) bBox_v6624 = (* (( (ptr) seg_v6580)+21) ); SOURCE(3422, 326) return(bBox_v6624); } static word CircleFileIn_P1140(f_v6684, loPoint_v6712, hiPoint_v6740, version_v6768) word f_v6684; W2 loPoint_v6712; W2 hiPoint_v6740; word version_v6768; { register ptr gf_c49404 = (ptr) &globalframe; word seg_v6812; /* CircleFileIn: */ SOURCE(3754, 409) SOURCE(3754, 409) seg_v6812 = 0; SOURCE(3855, 278) { word var_c46076; word var_c46140; word var_c46204; word var_c46236; { word pd58; pd58 = (* (( (ptr) (* (( (ptr) gf_c49404)+185)/* var_c46108 */ ))+24) ); var_c46076 = (word) ( *( (fPt) ((* (ptr) pd58 ))))((* ((( (ptr) gf_c49404)+25)) ), pd58); }; { word pd59; pd59 = (* (( (ptr) (* (( (ptr) gf_c49404)+186)/* var_c46172 */ ))+5) ); var_c46140 = (word) ( *( (fPt) ((* (ptr) pd59 ))))((* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), 0, 0, pd59) ; }; { word pd60; pd60 = (* (( (ptr) (* (( (ptr) gf_c49404)+186)/* var_c46172 */ ))+5) ); var_c46204 = (word) ( *( (fPt) ((* (ptr) pd60 ))))((* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), 0, 0, pd60) ; }; var_c46236 = XR_NewObject(104, (* (( (ptr) gf_c49404)+12) )); (* (ptr) var_c46236 ) = var_c46076; (* (( (ptr) var_c46236)+2) ) = (* (ptr) &fc43 ); (* (( (ptr) var_c46236)+3) ) = 2; (* (( (ptr) var_c46236)+6) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46236)+7) ) = (* (ptr) &fc38 ); (* (( (ptr) var_c46236)+8) ) = (* (ptr) (* (( (ptr) (* (( (ptr) gf_c49404)+187)/* var_c46268 */ ))+54) ) ); (* (W2Pt) (( (ptr) var_c46236)+9) ) = loPoint_v6712; (* (W2Pt) (( (ptr) var_c46236)+11) ) = hiPoint_v6740; (* (( (ptr) var_c46236)+13) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46236)+14) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46236)+15) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46236)+16) ) = (* (ptr) &fc37 ); (* (W4Pt) (( (ptr) var_c46236)+17) ) = (* (W4Pt) (( (ptr) gf_c49404)+180)/* var_c45660 */ ); (* (( (ptr) var_c46236)+21) ) = var_c46140; (* (( (ptr) var_c46236)+22) ) = var_c46204; seg_v6812 = var_c46236; }; SOURCE(4135, 28) { word var_c46300; word pd61; pd61 = (* (( (ptr) (* (ptr) seg_v6812 ))+1) ); var_c46300 = (word) ( *( (fPt) ((* (ptr) pd61 ))))(seg_v6812, pd61); }; SOURCE(3754, 409) return(seg_v6812); } static void CircleEndPointMoved_P1200(seg_v6872, lo_v6900, newPoint_v6928) word seg_v6872; word lo_v6900; W2 newPoint_v6928; { /* CircleEndPointMoved: */ } static word BuildDiscClass_P1260() { register ptr gf_c49436 = (ptr) &globalframe; word discClass_v6988; /* BuildDiscClass: */ SOURCE(4245, 194) SOURCE(4245, 194) discClass_v6988 = 0; SOURCE(4307, 132) { word var_c46332; var_c46332 = XR_NewObject(116, (* (( (ptr) gf_c49436)+8) )); (* (ptr) var_c46332 ) = (* (( (ptr) gf_c49436)+24) ); (* (( (ptr) var_c46332)+1) ) = (word) (( (bPt) gf_c49436)+568)/* var_c45020 */ ; (* (( (ptr) var_c46332)+9) ) = (word) (( (bPt) gf_c49436)+552)/* var_c44956 */ ; (* (( (ptr) var_c46332)+13) ) = (word) (( (bPt) gf_c49436)+536)/* var_c44892 */ ; discClass_v6988 = var_c46332; }; SOURCE(4245, 194) return(discClass_v6988); } static word DiscFileIn_P1320(f_v7048, loPoint_v7076, hiPoint_v7104, version_v7132) word f_v7048; W2 loPoint_v7076; W2 hiPoint_v7104; word version_v7132; { register ptr gf_c49468 = (ptr) &globalframe; word seg_v7176; /* DiscFileIn: */ SOURCE(4445, 459) SOURCE(4445, 459) seg_v7176 = 0; SOURCE(4544, 330) { word var_c46364; word var_c46396; word var_c46428; word var_c46460; { word pd62; pd62 = (* (( (ptr) (* (( (ptr) gf_c49468)+185)/* var_c46108 */ ))+24) ); var_c46364 = (word) ( *( (fPt) ((* (ptr) pd62 ))))((* ((( (ptr) gf_c49468)+24)) ), pd62); }; { word pd63; pd63 = (* (( (ptr) (* (( (ptr) gf_c49468)+186)/* var_c46172 */ ))+5) ); var_c46396 = (word) ( *( (fPt) ((* (ptr) pd63 ))))((* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), 0, 0, pd63) ; }; { word pd64; pd64 = (* (( (ptr) (* (( (ptr) gf_c49468)+186)/* var_c46172 */ ))+5) ); var_c46428 = (word) ( *( (fPt) ((* (ptr) pd64 ))))((* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), 0, 0, pd64) ; }; var_c46460 = XR_NewObject(104, (* (( (ptr) gf_c49468)+12) )); (* (ptr) var_c46460 ) = var_c46364; (* (( (ptr) var_c46460)+2) ) = (* (ptr) &fc43 ); (* (( (ptr) var_c46460)+3) ) = 2; (* (( (ptr) var_c46460)+6) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46460)+7) ) = (* (ptr) &fc38 ); (* (( (ptr) var_c46460)+8) ) = (* (ptr) (* (( (ptr) (* (( (ptr) gf_c49468)+187)/* var_c46268 */ ))+54) ) ); (* (W2Pt) (( (ptr) var_c46460)+9) ) = loPoint_v7076; (* (W2Pt) (( (ptr) var_c46460)+11) ) = hiPoint_v7104; (* (( (ptr) var_c46460)+13) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46460)+14) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46460)+15) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46460)+16) ) = (* (ptr) &fc37 ); (* (W4Pt) (( (ptr) var_c46460)+17) ) = (* (W4Pt) (( (ptr) gf_c49468)+180)/* var_c45660 */ ); (* (( (ptr) var_c46460)+21) ) = var_c46396; (* (( (ptr) var_c46460)+22) ) = var_c46428; seg_v7176 = var_c46460; }; SOURCE(4876, 28) { word var_c46492; word pd65; pd65 = (* (( (ptr) (* (ptr) seg_v7176 ))+1) ); var_c46492 = (word) ( *( (fPt) ((* (ptr) pd65 ))))(seg_v7176, pd65); }; SOURCE(4445, 459) return(seg_v7176); } static word BuildLineClass_P1380() { register ptr gf_c49500 = (ptr) &globalframe; word lineClass_v7292; /* BuildLineClass: */ SOURCE(5040, 1066) SOURCE(5040, 1066) lineClass_v7292 = 0; SOURCE(5118, 988) { word var_c46524; var_c46524 = XR_NewObject(116, (* (( (ptr) gf_c49500)+8) )); (* (ptr) var_c46524 ) = (* (( (ptr) gf_c49500)+21) ); (* (( (ptr) var_c46524)+1) ) = (word) (( (bPt) gf_c49500)+504)/* var_c44764 */ ; (* (( (ptr) var_c46524)+2) ) = (word) (( (bPt) gf_c49500)+496)/* var_c44732 */ ; (* (( (ptr) var_c46524)+3) ) = (word) (( (bPt) gf_c49500)+480)/* var_c44668 */ ; (* (( (ptr) var_c46524)+4) ) = (word) (( (bPt) gf_c49500)+472)/* var_c44636 */ ; (* (( (ptr) var_c46524)+5) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+35) ); (* (( (ptr) var_c46524)+6) ) = (word) (( (bPt) gf_c49500)+464)/* var_c44604 */ ; (* (( (ptr) var_c46524)+7) ) = (word) (( (bPt) gf_c49500)+456)/* var_c44572 */ ; (* (( (ptr) var_c46524)+8) ) = (word) (( (bPt) gf_c49500)+448)/* var_c44540 */ ; (* (( (ptr) var_c46524)+9) ) = (word) (( (bPt) gf_c49500)+440)/* var_c44508 */ ; (* (( (ptr) var_c46524)+10) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+36) ); (* (( (ptr) var_c46524)+11) ) = (word) (( (bPt) gf_c49500)+432)/* var_c44476 */ ; (* (( (ptr) var_c46524)+12) ) = (* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+50) ); (* (( (ptr) var_c46524)+13) ) = (word) (( (bPt) gf_c49500)+424)/* var_c44444 */ ; (* (( (ptr) var_c46524)+14) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+39) ); (* (( (ptr) var_c46524)+15) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+40) ); (* (( (ptr) var_c46524)+16) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+37) ); (* (( (ptr) var_c46524)+17) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+38) ); (* (( (ptr) var_c46524)+18) ) = (word) (( (bPt) gf_c49500)+408)/* var_c44380 */ ; (* (( (ptr) var_c46524)+19) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+41) ); (* (( (ptr) var_c46524)+20) ) = (word) (( (bPt) gf_c49500)+400)/* var_c44348 */ ; (* (( (ptr) var_c46524)+21) ) = (word) (( (bPt) gf_c49500)+392)/* var_c44316 */ ; (* (( (ptr) var_c46524)+22) ) = (word) (( (bPt) gf_c49500)+384)/* var_c44284 */ ; (* (( (ptr) var_c46524)+23) ) = (word) (( (bPt) gf_c49500)+376)/* var_c44252 */ ; (* (( (ptr) var_c46524)+24) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+46) ); (* (( (ptr) var_c46524)+25) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49500)+185)/* var_c46108 */ ))+48) ); (* (( (ptr) var_c46524)+26) ) = (word) (( (bPt) gf_c49500)+368)/* var_c44220 */ ; (* (( (ptr) var_c46524)+27) ) = (word) (( (bPt) gf_c49500)+360)/* var_c44188 */ ; (* (( (ptr) var_c46524)+28) ) = (word) (( (bPt) gf_c49500)+520)/* var_c44828 */ ; lineClass_v7292 = var_c46524; }; SOURCE(5040, 1066) return(lineClass_v7292); } static void LineSetStrokeWidth_P1440(seg_v7352, strokeWidth_v7380) word seg_v7352; word strokeWidth_v7380; { /* LineSetStrokeWidth: */ SOURCE(6112, 117) SOURCE(6175, 29) (* (( (ptr) seg_v7352)+2) ) = strokeWidth_v7380; SOURCE(6206, 23) (void) UpdateLineBoundBox_P1680(seg_v7352); } static word MakeLine_P1500(p0_v7440, p1_v7468, props_v7496) W2 p0_v7440; W2 p1_v7468; word props_v7496; { register ptr gf_c49532 = (ptr) &globalframe; word seg_v7640; word lineSegment_v15092; /* MakeLine: */ SOURCE(6235, 552) SOURCE(6235, 552) seg_v7640 = 0; SOURCE(6324, 79) { word var_c46556; word var_c46620; { word pd66; pd66 = (* (( (ptr) (* (( (ptr) gf_c49532)+188)/* var_c46588 */ ))+27) ); var_c46556 = (word) ( *( (fPt) ((* (ptr) pd66 ))))(p0_v7440, p1_v7468, pd66); }; var_c46620 = XR_NewObject(4, (* (( (ptr) gf_c49532)+15) )); (* (ptr) var_c46620 ) = var_c46556; lineSegment_v15092 = var_c46620; }; SOURCE(6405, 357) { word var_c46652; word var_c46684; word var_c46716; word var_c46748; { word pd67; pd67 = (* (( (ptr) (* (( (ptr) gf_c49532)+185)/* var_c46108 */ ))+24) ); var_c46652 = (word) ( *( (fPt) ((* (ptr) pd67 ))))((* ((( (ptr) gf_c49532)+21)) ), pd67); }; { word pd68; pd68 = (* (( (ptr) (* (( (ptr) gf_c49532)+186)/* var_c46172 */ ))+5) ); var_c46684 = (word) ( *( (fPt) ((* (ptr) pd68 ))))((* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), 0, 0, pd68) ; }; { word pd69; pd69 = (* (( (ptr) (* (( (ptr) gf_c49532)+186)/* var_c46172 */ ))+5) ); var_c46716 = (word) ( *( (fPt) ((* (ptr) pd69 ))))((* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), 0, 0, pd69) ; }; var_c46748 = XR_NewObject(104, (* (( (ptr) gf_c49532)+12) )); (* (ptr) var_c46748 ) = var_c46652; (* (( (ptr) var_c46748)+2) ) = (* (( (ptr) gf_c49532)+4)/* defaultStrokeWidth_v4092 */ ); (* (( (ptr) var_c46748)+3) ) = (* (( (ptr) gf_c49532)+5)/* defaultStrokeEnd_v4120 */ ); (* (( (ptr) var_c46748)+6) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46748)+7) ) = (* (ptr) &fc38 ); (* (( (ptr) var_c46748)+8) ) = (* (ptr) (* (( (ptr) (* (( (ptr) gf_c49532)+187)/* var_c46268 */ ))+54) ) ); (* (W2Pt) (( (ptr) var_c46748)+9) ) = p0_v7440; (* (W2Pt) (( (ptr) var_c46748)+11) ) = p1_v7468; (* (( (ptr) var_c46748)+13) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46748)+14) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46748)+15) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c46748)+16) ) = (* (ptr) &fc37 ); (* (W4Pt) (( (ptr) var_c46748)+17) ) = (* (W4Pt) (( (ptr) gf_c49532)+180)/* var_c45660 */ ); (* (( (ptr) var_c46748)+21) ) = var_c46684; (* (( (ptr) var_c46748)+22) ) = var_c46716; (* (( (ptr) var_c46748)+24) ) = lineSegment_v15092; (* (( (ptr) var_c46748)+25) ) = props_v7496; seg_v7640 = var_c46748; }; SOURCE(6764, 23) (void) UpdateLineBoundBox_P1680(seg_v7640); SOURCE(6235, 552) return(seg_v7640); } static word LineBoundBox_P1560(seg_v7700) word seg_v7700; { word bBox_v7744; /* LineBoundBox: */ SOURCE(6793, 78) SOURCE(6793, 78) bBox_v7744 = 0; SOURCE(6856, 15) bBox_v7744 = (* (( (ptr) seg_v7700)+21) ); SOURCE(6793, 78) return(bBox_v7744); } static word LineTightBox_P1620(seg_v7804) word seg_v7804; { word bBox_v7848; /* LineTightBox: */ SOURCE(6877, 82) SOURCE(6877, 82) bBox_v7848 = 0; SOURCE(6940, 19) bBox_v7848 = (* (( (ptr) seg_v7804)+22) ); SOURCE(6877, 82) return(bBox_v7848); } static void UpdateLineBoundBox_P1680(seg_v7908) word seg_v7908; { register ptr gf_c49564 = (ptr) &globalframe; word loX_v15136; word loY_v15164; word hiX_v15192; word hiY_v15220; word pad_v15248; /* UpdateLineBoundBox: */ SOURCE(6997, 442) SOURCE(7078, 29) { word x70; float tf71; float tf72; word x73; float tf74; loX_v15136 = ( tf74 = FMIN(( x70 = (* (( (ptr) seg_v7908)+9) ), *(float*)&x70 ), ( x73 = (* (( (ptr) seg_v7908)+11) ), *(float*)&x73 ), tf71, tf72), *(word*)&tf74 ); }; SOURCE(7109, 29) { word x75; float tf76; float tf77; word x78; float tf79; hiX_v15192 = ( tf79 = FMAX(( x75 = (* (( (ptr) seg_v7908)+9) ), *(float*)&x75 ), ( x78 = (* (( (ptr) seg_v7908)+11) ), *(float*)&x78 ), tf76, tf77), *(word*)&tf79 ); }; SOURCE(7140, 29) { word x80; float tf81; float tf82; word x83; float tf84; loY_v15164 = ( tf84 = FMIN(( x80 = (* (( (ptr) seg_v7908)+10) ), *(float*)&x80 ), ( x83 = (* (( (ptr) seg_v7908)+12) ), *(float*)&x83 ), tf81, tf82), *(word*)&tf84 ); }; SOURCE(7171, 29) { word x85; float tf86; float tf87; word x88; float tf89; hiY_v15220 = ( tf89 = FMAX(( x85 = (* (( (ptr) seg_v7908)+10) ), *(float*)&x85 ), ( x88 = (* (( (ptr) seg_v7908)+12) ), *(float*)&x88 ), tf86, tf87), *(word*)&tf89 ); }; SOURCE(7202, 59) { word pd90; pd90 = (* (( (ptr) (* (( (ptr) gf_c49564)+186)/* var_c46172 */ ))+18) ); (void) ( *( (fPt) ((* (ptr) pd90 ))))((* (( (ptr) seg_v7908)+22) ), loX_v15136, loY_v15164, hiX_v15192, hiY_v15220, pd90) ; }; SOURCE(7263, 25) (* (W6Pt) (* (( (ptr) seg_v7908)+21) ) ) = (* (W6Pt) (* (( (ptr) seg_v7908)+22) ) ); SOURCE(7290, 106) if (((* (( (ptr) seg_v7908)+3) ) == 0)) { SOURCE(7321, 44) { word x91; word x93; word x94; *(float*)&pad_v15248 = (( x91 = (* (( (ptr) seg_v7908)+2) ), *(float*)&x91 ) * ( x93 = (* (ptr) &fc92 ), *(float*)&x93 )) + ( x94 = (* (ptr) &fc43 ), *(float*)&x94 ); }; } else { SOURCE(7365, 31) { word x95; word x96; word x97; *(float*)&pad_v15248 = (( x95 = (* (( (ptr) seg_v7908)+2) ), *(float*)&x95 ) / ( x96 = (* (ptr) &fc36 ), *(float*)&x96 )) + ( x97 = (* (ptr) &fc43 ), *(float*)&x97 ); }; }; SOURCE(7398, 41) { word pd98; pd98 = (* (( (ptr) (* (( (ptr) gf_c49564)+186)/* var_c46172 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd98 ))))((* (( (ptr) seg_v7908)+21) ), pad_v15248, pd98); }; } static word LineCopyData_P1740(seg_v7968) word seg_v7968; { register ptr gf_c49596 = (ptr) &globalframe; word data_v8012; word lineSegment_v15292; /* LineCopyData: */ SOURCE(7445, 173) SOURCE(7445, 173) data_v8012 = 0; SOURCE(7507, 40) lineSegment_v15292 = XR_Narrow((* (( (ptr) seg_v7968)+24) ), (* (( (ptr) gf_c49596)+15) )); SOURCE(7549, 69) { word var_c46780; word var_c46812; { word pd99; pd99 = (* (( (ptr) (* (( (ptr) gf_c49596)+188)/* var_c46588 */ ))+27) ); var_c46780 = (word) ( *( (fPt) ((* (ptr) pd99 ))))((* (W2Pt) (( (ptr) seg_v7968)+9) ), (* (W2Pt) (( (ptr) seg_v7968)+11) ), pd99); }; var_c46812 = XR_NewObject(4, (* (( (ptr) gf_c49596)+15) )); (* (ptr) var_c46812 ) = var_c46780; data_v8012 = var_c46812; }; SOURCE(7445, 173) return(data_v8012); } static void LineReverse_P1800(seg_v8084) word seg_v8084; { /* LineReverse: */ } static void LineBuildPath_P1860(seg_v8144, lineTo_v8172, curveTo_v8200, conicTo_v8228, arcTo_v8256) word seg_v8144; word lineTo_v8172; word curveTo_v8200; word conicTo_v8228; word arcTo_v8256; { /* LineBuildPath: */ SOURCE(7666, 179) SOURCE(7831, 14) (void) ( *( (fPt) ((* (ptr) lineTo_v8172 ))))((* (W2Pt) ((( (ptr) seg_v8144)+11)) ), lineTo_v8172); } static void LineBuildPathTransform_P1920(seg_v8316, transform_v8344, entire_v8372, lo_v8400, hi_v8428, controlPoints_v8456, lineTo_v8484, curveTo_v8512, conicTo_v8540, arcTo_v8568) word seg_v8316; word transform_v8344; word entire_v8372; word lo_v8400; word hi_v8428; word controlPoints_v8456; word lineTo_v8484; word curveTo_v8512; word conicTo_v8540; word arcTo_v8568; { register ptr gf_c49628 = (ptr) &globalframe; W2 hiPoint_v15336; /* LineBuildPathTransform: */ SOURCE(7851, 418) SOURCE(8137, 98) if (((0 != hi_v8428) || (0 != entire_v8372))) { { W2 var_c0256; { word pd100; pd100 = (* (( (ptr) (* (( (ptr) gf_c49628)+189)/* var_c46844 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd100 ))))((word) &var_c0256, transform_v8344, (* (W2Pt) (( (ptr) seg_v8316)+11) ), pd100); }; hiPoint_v15336 = var_c0256; }; } else { hiPoint_v15336.f0 = (* (( (ptr) seg_v8316)+11) ); hiPoint_v15336.f1 = (* (( (ptr) seg_v8316)+12) ); }; SOURCE(8237, 32) { W2 var_c46908; var_c46908.f0 = hiPoint_v15336.f0; var_c46908.f1 = hiPoint_v15336.f1; (void) ( *( (fPt) ((* (ptr) lineTo_v8484 ))))(var_c46908, lineTo_v8484); }; } static void LineTransform_P1980(seg_v8628, transform_v8656) word seg_v8628; word transform_v8656; { register ptr gf_c49660 = (ptr) &globalframe; word lineSegment_v15380; /* LineTransform: */ SOURCE(8275, 204) SOURCE(8362, 40) lineSegment_v15380 = XR_Narrow((* (( (ptr) seg_v8628)+24) ), (* (( (ptr) gf_c49660)+15) )); SOURCE(8404, 50) { word pd101; pd101 = (* (( (ptr) (* (( (ptr) gf_c49660)+188)/* var_c46588 */ ))+29) ); (void) ( *( (fPt) ((* (ptr) pd101 ))))((* (W2Pt) (( (ptr) seg_v8628)+9) ), (* (W2Pt) (( (ptr) seg_v8628)+11) ), (* (ptr) lineSegment_v15380 ), pd101) ; }; SOURCE(8456, 23) (void) UpdateLineBoundBox_P1680(seg_v8628); } static void LineEndPointMoved_P2040(seg_v8716, lo_v8744, newPoint_v8772) word seg_v8716; word lo_v8744; W2 newPoint_v8772; { register ptr gf_c49692 = (ptr) &globalframe; word lineSegment_v15424; /* LineEndPointMoved: */ SOURCE(8486, 187) SOURCE(8556, 40) lineSegment_v15424 = XR_Narrow((* (( (ptr) seg_v8716)+24) ), (* (( (ptr) gf_c49692)+15) )); SOURCE(8598, 50) { word pd102; pd102 = (* (( (ptr) (* (( (ptr) gf_c49692)+188)/* var_c46588 */ ))+29) ); (void) ( *( (fPt) ((* (ptr) pd102 ))))((* (W2Pt) (( (ptr) seg_v8716)+9) ), (* (W2Pt) (( (ptr) seg_v8716)+11) ), (* (ptr) lineSegment_v15424 ), pd102) ; }; SOURCE(8650, 23) (void) UpdateLineBoundBox_P1680(seg_v8716); } static word LineDescribe_P2100(seg_v8832, self_v8860, lo_v8888, hi_v8916, cps_v8944) word seg_v8832; word self_v8860; word lo_v8888; word hi_v8916; word cps_v8944; { register ptr gf_c49724 = (ptr) &globalframe; word rope_v8988; /* LineDescribe: */ SOURCE(8680, 113) SOURCE(8680, 113) rope_v8988 = 0; SOURCE(8780, 13) rope_v8988 = (* (( (ptr) gf_c49724)+19) ); SOURCE(8680, 113) return(rope_v8988); } static word LineFileIn_P2160(f_v9048, loPoint_v9076, hiPoint_v9104, version_v9132) word f_v9048; W2 loPoint_v9076; W2 hiPoint_v9104; word version_v9132; { word seg_v9176; /* LineFileIn: */ SOURCE(8799, 136) SOURCE(8799, 136) seg_v9176 = 0; SOURCE(8898, 37) seg_v9176 = (word) MakeLine_P1500(loPoint_v9076, hiPoint_v9104, 0); SOURCE(8799, 136) return(seg_v9176); } static word PointIsInBox_P2220(test_v9236, box_v9264) W2 test_v9236; W6 box_v9264; { word var_c9308; /* PointIsInBox: */ SOURCE(8964, 162) SOURCE(9034, 92) { word tc103; word x104; word x105; word x106; word x107; word x108; word x109; word x110; word x111; if ( ( ( (( x104 = test_v9236.f0, *(float*)&x104 ) >= ( x105 = box_v9264.f0, *(float*)&x105 )) ? (( x106 = test_v9236.f0, *(float*)&x106 ) <= ( x107 = box_v9264.f2, *(float*)&x107 )) : 0 ) ? (( x108 = test_v9236.f1, *(float*)&x108 ) >= ( x109 = box_v9264.f1, *(float*)&x109 )) : 0 ) ) { tc103 = (word) (( x110 = test_v9236.f1, *(float*)&x110 ) <= ( x111 = box_v9264.f3, *(float*)&x111 )); } else { tc103 = (word) 0; }; return(tc103); }; } static void LineClosestPoint_P2280(formal_c0288, seg_v9368, testPoint_v9396, tolerance_v9424) word formal_c0288; word seg_v9368; W2 testPoint_v9396; word tolerance_v9424; { register ptr gf_c49756 = (ptr) &globalframe; W2 point_v9468; word success_v9496; word lineData_v15468; /* LineClosestPoint: */ SOURCE(9132, 458) SOURCE(9132, 458) point_v9468.f0 = (* (ptr) &fc37 ); point_v9468.f1 = (* (ptr) &fc37 ); SOURCE(9132, 458) success_v9496 = 0; SOURCE(9268, 37) lineData_v15468 = XR_Narrow((* (( (ptr) seg_v9368)+24) ), (* (( (ptr) gf_c49756)+15) )); SOURCE(9307, 202) if ((0 != (* (( (ptr) gf_c49756)+6)/* useBBox_v5240 */ ))) { SOURCE(9323, 188) { W6 bigBox_v15512; SOURCE(9325, 132) { word x112; word x113; *(float*)&bigBox_v15512.f0 = ( x112 = (* (ptr) (* (( (ptr) seg_v9368)+21) ) ), *(float*)&x112 ) - ( x113 = tolerance_v9424, *(float*)&x113 ); }; { word x114; word x115; *(float*)&bigBox_v15512.f1 = ( x114 = (* (( (ptr) (* (( (ptr) seg_v9368)+21) ))+1) ), *(float*)&x114 ) - ( x115 = tolerance_v9424, *(float*)&x115 ); }; { word x116; word x117; *(float*)&bigBox_v15512.f2 = ( x116 = (* (( (ptr) (* (( (ptr) seg_v9368)+21) ))+2) ), *(float*)&x116 ) + ( x117 = tolerance_v9424, *(float*)&x117 ); }; { word x118; word x119; *(float*)&bigBox_v15512.f3 = ( x118 = (* (( (ptr) (* (( (ptr) seg_v9368)+21) ))+3) ), *(float*)&x118 ) + ( x119 = tolerance_v9424, *(float*)&x119 ); }; bigBox_v15512.f4 = 0; bigBox_v15512.f5 = 0; SOURCE(9459, 50) if ((0 == (word) PointIsInBox_P2220(testPoint_v9396, bigBox_v15512))) { SOURCE(9503, 6) goto lab_L100008; }; }; }; SOURCE(9514, 60) { word pd120; pd120 = (* (( (ptr) (* (( (ptr) gf_c49756)+188)/* var_c46588 */ ))+46) ); (void) ( *( (fPt) ((* (ptr) pd120 ))))((word) &point_v9468, testPoint_v9396, (* (ptr) lineData_v15468 ), pd120); }; SOURCE(9576, 14) success_v9496 = 1; /* removed tail goto */ lab_L100008: ; (* (W2Pt) formal_c0288 ) = point_v9468; (* (( (ptr) formal_c0288)+2) ) = success_v9496; return; } static void LineClosestPointAndTangent_P2340(formal_c0299, seg_v9556, testPoint_v9584, tolerance_v9612) word formal_c0299; word seg_v9556; W2 testPoint_v9584; word tolerance_v9612; { register ptr gf_c49788 = (ptr) &globalframe; W2 point_v9656; W2 tangent_v9684; word success_v9712; word lineData_v15556; /* LineClosestPointAndTangent: */ SOURCE(9596, 549) SOURCE(9596, 549) point_v9656.f0 = (* (ptr) &fc37 ); point_v9656.f1 = (* (ptr) &fc37 ); SOURCE(9596, 549) tangent_v9684.f0 = (* (ptr) &fc37 ); tangent_v9684.f1 = (* (ptr) &fc38 ); SOURCE(9596, 549) success_v9712 = 0; SOURCE(9768, 37) lineData_v15556 = XR_Narrow((* (( (ptr) seg_v9556)+24) ), (* (( (ptr) gf_c49788)+15) )); SOURCE(9807, 202) if ((0 != (* (( (ptr) gf_c49788)+6)/* useBBox_v5240 */ ))) { SOURCE(9823, 188) { W6 bigBox_v15600; SOURCE(9825, 132) { word x121; word x122; *(float*)&bigBox_v15600.f0 = ( x121 = (* (ptr) (* (( (ptr) seg_v9556)+21) ) ), *(float*)&x121 ) - ( x122 = tolerance_v9612, *(float*)&x122 ); }; { word x123; word x124; *(float*)&bigBox_v15600.f1 = ( x123 = (* (( (ptr) (* (( (ptr) seg_v9556)+21) ))+1) ), *(float*)&x123 ) - ( x124 = tolerance_v9612, *(float*)&x124 ); }; { word x125; word x126; *(float*)&bigBox_v15600.f2 = ( x125 = (* (( (ptr) (* (( (ptr) seg_v9556)+21) ))+2) ), *(float*)&x125 ) + ( x126 = tolerance_v9612, *(float*)&x126 ); }; { word x127; word x128; *(float*)&bigBox_v15600.f3 = ( x127 = (* (( (ptr) (* (( (ptr) seg_v9556)+21) ))+3) ), *(float*)&x127 ) + ( x128 = tolerance_v9612, *(float*)&x128 ); }; bigBox_v15600.f4 = 0; bigBox_v15600.f5 = 0; SOURCE(9959, 50) if ((0 == (word) PointIsInBox_P2220(testPoint_v9584, bigBox_v15600))) { SOURCE(10003, 6) goto lab_L100009; }; }; }; SOURCE(10014, 60) { word pd129; pd129 = (* (( (ptr) (* (( (ptr) gf_c49788)+188)/* var_c46588 */ ))+46) ); (void) ( *( (fPt) ((* (ptr) pd129 ))))((word) &point_v9656, testPoint_v9584, (* (ptr) lineData_v15556 ), pd129); }; SOURCE(10076, 53) { word pd130; pd130 = (* (( (ptr) (* (( (ptr) gf_c49788)+188)/* var_c46588 */ ))+37) ); (void) ( *( (fPt) ((* (ptr) pd130 ))))((word) &tangent_v9684, (* (ptr) (* (ptr) lineData_v15556 ) ), pd130); }; SOURCE(10131, 14) success_v9712 = 1; /* removed tail goto */ lab_L100009: ; (* (W2Pt) formal_c0299 ) = point_v9656; (* (W2Pt) (( (ptr) formal_c0299)+2) ) = tangent_v9684; (* (( (ptr) formal_c0299)+4) ) = success_v9712; return; } static void LineLineIntersection_P2400(formal_c0311, seg_v9772, line_v9800) word formal_c0311; word seg_v9772; word line_v9800; { register ptr gf_c49820 = (ptr) &globalframe; word points_v9844; word pointCount_v9872; word lineData_v15644; word failure_v15672; W2 ipoint_v15700; /* LineLineIntersection: */ SOURCE(10151, 322) SOURCE(10151, 322) points_v9844 = 0; SOURCE(10258, 37) lineData_v15644 = XR_Narrow((* (( (ptr) seg_v9772)+24) ), (* (( (ptr) gf_c49820)+15) )); SOURCE(10327, 62) { W3 var_c47004; { word pd131; pd131 = (* (( (ptr) (* (( (ptr) gf_c49820)+188)/* var_c46588 */ ))+35) ); (void) ( *( (fPt) ((* (ptr) pd131 ))))((word) &var_c47004, line_v9800, (* (ptr) lineData_v15644 ), pd131); }; failure_v15672 = var_c47004.f2; ipoint_v15700 = (* (W2Pt) &var_c47004 ); }; SOURCE(10391, 40) if ((0 != failure_v15672)) { SOURCE(10409, 14) pointCount_v9872 = 0; SOURCE(10425, 6) goto lab_L100010; }; SOURCE(10436, 21) { word var_c47036; word var_c47068; var_c47036 = XR_NewObject(12, (* (( (ptr) gf_c49820)+18) )); var_c47068 = var_c47036; (* (W2Pt) var_c47068 ) = ipoint_v15700; points_v9844 = var_c47036; }; SOURCE(10459, 14) pointCount_v9872 = 1; /* removed tail goto */ lab_L100010: ; (* (ptr) formal_c0311 ) = points_v9844; (* (( (ptr) formal_c0311)+1) ) = pointCount_v9872; return; } static void LineCircleIntersection_P2460(formal_c0323, seg_v10016, circle_v10044) word formal_c0323; word seg_v10016; word circle_v10044; { register ptr gf_c49852 = (ptr) &globalframe; word points_v10088; word pointCount_v10116; word lineData_v15744; W4 hitPoints_v15772; /* LineCircleIntersection: */ SOURCE(10479, 343) SOURCE(10479, 343) points_v10088 = 0; SOURCE(10592, 37) lineData_v15744 = XR_Narrow((* (( (ptr) seg_v10016)+24) ), (* (( (ptr) gf_c49852)+15) )); SOURCE(10664, 74) { W6 var_c47132; { word pd132; pd132 = (* (( (ptr) (* (( (ptr) gf_c49852)+190)/* var_c47100 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd132 ))))((word) &var_c47132, circle_v10044, (* (ptr) lineData_v15744 ), pd132); }; pointCount_v10116 = var_c47132.f4; hitPoints_v15772 = (* (W4Pt) &var_c47132 ); }; SOURCE(10740, 12) points_v10088 = 0; SOURCE(10754, 68) { register word i_v15852 = 1; register word noName_c47164; noName_c47164 = pointCount_v10116; if ((i_v15852 > noName_c47164)) { goto lab_L100012; }; lab_L100015: ; SOURCE(10787, 35) { word var_c47196; var_c47196 = XR_NewObject(12, (* (( (ptr) gf_c49852)+18) )); (* (W2Pt) var_c47196 ) = (* (( (W2Pt) &hitPoints_v15772)+BCK((i_v15852 - 1), 2)) ); (* (( (ptr) var_c47196)+2) ) = points_v10088; points_v10088 = var_c47196; }; if ((i_v15852 >= noName_c47164)) { goto lab_L100012; }; i_v15852 = (i_v15852 + 1); goto lab_L100015; lab_L100012: ; }; /* removed tail goto */ (* (ptr) formal_c0323 ) = points_v10088; (* (( (ptr) formal_c0323)+1) ) = pointCount_v10116; return; } static word LineAsSimpleCurve_P2520(seg_v10260, point_v10288) word seg_v10260; W2 point_v10288; { register ptr gf_c49884 = (ptr) &globalframe; word simpleCurve_v10332; word lineData_v15896; word edge_v15924; /* LineAsSimpleCurve: */ SOURCE(10837, 173) SOURCE(10837, 173) simpleCurve_v10332 = 0; SOURCE(10925, 37) lineData_v15896 = XR_Narrow((* (( (ptr) seg_v10260)+24) ), (* (( (ptr) gf_c49884)+15) )); SOURCE(10964, 26) edge_v15924 = (* (ptr) lineData_v15896 ); SOURCE(10992, 18) simpleCurve_v10332 = edge_v15924; SOURCE(10837, 173) return(simpleCurve_v10332); } static void LineJointNormal_P2580(formal_c0346, seg_v10404, joint_v10432, point_v10460, hi_v10488) word formal_c0346; word seg_v10404; W2 joint_v10432; W2 point_v10460; word hi_v10488; { register ptr gf_c49916 = (ptr) &globalframe; W2 normal_v10532; W2 tangent_v10560; W2 normal1_v15968; W2 normal2_v15996; W2 direction_v16024; W2 p0_v16052; W2 p1_v16080; word lineData_v16108; /* LineJointNormal: */ SOURCE(11016, 800) SOURCE(11174, 37) lineData_v16108 = XR_Narrow((* (( (ptr) seg_v10404)+24) ), (* (( (ptr) gf_c49916)+15) )); SOURCE(11213, 52) { word pd133; pd133 = (* (( (ptr) (* (( (ptr) gf_c49916)+184)/* var_c45788 */ ))+23) ); (void) ( *( (fPt) ((* (ptr) pd133 ))))((word) &normal1_v15968, (* (ptr) lineData_v16108 ), pd133); }; SOURCE(11267, 51) { word pd134; pd134 = (* (( (ptr) (* (( (ptr) gf_c49916)+184)/* var_c45788 */ ))+24) ); (void) ( *( (fPt) ((* (ptr) pd134 ))))((word) &normal2_v15996, (* (ptr) lineData_v16108 ), pd134); }; SOURCE(11320, 52) { word pd135; pd135 = (* (( (ptr) (* (( (ptr) gf_c49916)+184)/* var_c45788 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd135 ))))((word) &direction_v16024, joint_v10432, point_v10460, pd135); }; SOURCE(11374, 181) { float tf136; word pd137; word x138; float tf139; word pd140; word x141; pd137 = (* (( (ptr) (* (( (ptr) gf_c49916)+184)/* var_c45788 */ ))+9) ); pd140 = (* (( (ptr) (* (( (ptr) gf_c49916)+184)/* var_c45788 */ ))+9) ); if ((FABS(( x138 = (word) ( *( (fPt) ((* (ptr) pd137 ))))(normal1_v15968, direction_v16024, pd137), *(float*)&x138 ), tf136) < FABS(( x141 = (word) ( *( (fPt) ((* (ptr) pd140 ))))(normal2_v15996, direction_v16024, pd140), *(float*)&x141 ), tf139))) { SOURCE(11512, 17) normal_v10532 = normal1_v15968; } else { SOURCE(11539, 16) normal_v10532 = normal2_v15996; }; }; SOURCE(11559, 144) if ((0 != (* (( (ptr) (* (ptr) lineData_v16108 ))+1) ))) { SOURCE(11596, 24) p0_v16052 = (* (W2Pt) (( (ptr) (* (ptr) lineData_v16108 ))+2) ); SOURCE(11622, 22) p1_v16080 = (* (W2Pt) (( (ptr) (* (ptr) lineData_v16108 ))+4) ); } else { SOURCE(11655, 22) p0_v16052 = (* (W2Pt) (( (ptr) (* (ptr) lineData_v16108 ))+4) ); SOURCE(11679, 24) p1_v16080 = (* (W2Pt) (( (ptr) (* (ptr) lineData_v16108 ))+2) ); }; SOURCE(11708, 108) if ((0 != hi_v10488)) { SOURCE(11720, 43) { word pd142; pd142 = (* (( (ptr) (* (( (ptr) gf_c49916)+184)/* var_c45788 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd142 ))))((word) &tangent_v10560, p1_v16080, p0_v16052, pd142); }; } else { SOURCE(11773, 43) { word pd143; pd143 = (* (( (ptr) (* (( (ptr) gf_c49916)+184)/* var_c45788 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd143 ))))((word) &tangent_v10560, p0_v16052, p1_v16080, pd143); }; }; /* removed tail goto */ (* (W2Pt) formal_c0346 ) = normal_v10532; (* (W2Pt) (( (ptr) formal_c0346)+2) ) = tangent_v10560; return; } static void LineAddJoint_P2640(formal_c0351, seg_v10620, pos_v10648) word formal_c0351; word seg_v10620; W2 pos_v10648; { register ptr gf_c49948 = (ptr) &globalframe; word seg1_v10692; word seg2_v10720; /* LineAddJoint: */ SOURCE(11825, 231) SOURCE(11825, 231) seg1_v10692 = 0; SOURCE(11825, 231) seg2_v10720 = 0; SOURCE(11906, 33) { word pd144; pd144 = (* (( (ptr) (* (( (ptr) gf_c49948)+185)/* var_c46108 */ ))+17) ); seg1_v10692 = (word) ( *( (fPt) ((* (ptr) pd144 ))))(seg_v10620, pd144); }; SOURCE(11941, 13) (* (W2Pt) (( (ptr) seg1_v10692)+11) ) = pos_v10648; SOURCE(11956, 24) (void) UpdateLineBoundBox_P1680(seg1_v10692); SOURCE(11982, 33) { word pd145; pd145 = (* (( (ptr) (* (( (ptr) gf_c49948)+185)/* var_c46108 */ ))+17) ); seg2_v10720 = (word) ( *( (fPt) ((* (ptr) pd145 ))))(seg_v10620, pd145); }; SOURCE(12017, 13) (* (W2Pt) (( (ptr) seg2_v10720)+9) ) = pos_v10648; SOURCE(12032, 24) (void) UpdateLineBoundBox_P1680(seg2_v10720); /* removed tail goto */ (* (ptr) formal_c0351 ) = seg1_v10692; (* (( (ptr) formal_c0351)+1) ) = seg2_v10720; return; } static word BuildArcClass_P2700() { register ptr gf_c49980 = (ptr) &globalframe; word class_v10892; /* BuildArcClass: */ SOURCE(12175, 998) SOURCE(12175, 998) class_v10892 = 0; SOURCE(12248, 925) { word var_c47228; var_c47228 = XR_NewObject(116, (* (( (ptr) gf_c49980)+8) )); (* (ptr) var_c47228 ) = (* (( (ptr) gf_c49980)+20) ); (* (( (ptr) var_c47228)+1) ) = (word) (( (bPt) gf_c49980)+320)/* var_c44028 */ ; (* (( (ptr) var_c47228)+2) ) = (word) (( (bPt) gf_c49980)+312)/* var_c43996 */ ; (* (( (ptr) var_c47228)+3) ) = (word) (( (bPt) gf_c49980)+280)/* var_c43868 */ ; (* (( (ptr) var_c47228)+4) ) = (word) (( (bPt) gf_c49980)+272)/* var_c43836 */ ; (* (( (ptr) var_c47228)+5) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49980)+185)/* var_c46108 */ ))+35) ); (* (( (ptr) var_c47228)+6) ) = (word) (( (bPt) gf_c49980)+232)/* var_c43676 */ ; (* (( (ptr) var_c47228)+7) ) = (word) (( (bPt) gf_c49980)+224)/* var_c43644 */ ; (* (( (ptr) var_c47228)+8) ) = (word) (( (bPt) gf_c49980)+264)/* var_c43804 */ ; (* (( (ptr) var_c47228)+9) ) = (word) (( (bPt) gf_c49980)+256)/* var_c43772 */ ; (* (( (ptr) var_c47228)+10) ) = (word) (( (bPt) gf_c49980)+248)/* var_c43740 */ ; (* (( (ptr) var_c47228)+11) ) = (word) (( (bPt) gf_c49980)+216)/* var_c43612 */ ; (* (( (ptr) var_c47228)+12) ) = (word) (( (bPt) gf_c49980)+208)/* var_c43580 */ ; (* (( (ptr) var_c47228)+13) ) = (word) (( (bPt) gf_c49980)+200)/* var_c43548 */ ; (* (( (ptr) var_c47228)+14) ) = (word) (( (bPt) gf_c49980)+192)/* var_c43516 */ ; (* (( (ptr) var_c47228)+15) ) = (word) (( (bPt) gf_c49980)+184)/* var_c43484 */ ; (* (( (ptr) var_c47228)+16) ) = (word) (( (bPt) gf_c49980)+176)/* var_c43452 */ ; (* (( (ptr) var_c47228)+17) ) = (word) (( (bPt) gf_c49980)+168)/* var_c43420 */ ; (* (( (ptr) var_c47228)+18) ) = (word) (( (bPt) gf_c49980)+160)/* var_c43388 */ ; (* (( (ptr) var_c47228)+19) ) = (word) (( (bPt) gf_c49980)+152)/* var_c43356 */ ; (* (( (ptr) var_c47228)+20) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49980)+185)/* var_c46108 */ ))+42) ); (* (( (ptr) var_c47228)+21) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49980)+185)/* var_c46108 */ ))+43) ); (* (( (ptr) var_c47228)+22) ) = XR_CheckProc(* (( (ptr) (* (( (ptr) gf_c49980)+185)/* var_c46108 */ ))+44) ); (* (( (ptr) var_c47228)+23) ) = (word) (( (bPt) gf_c49980)+144)/* var_c43324 */ ; (* (( (ptr) var_c47228)+24) ) = (word) (( (bPt) gf_c49980)+136)/* var_c43292 */ ; (* (( (ptr) var_c47228)+25) ) = (word) (( (bPt) gf_c49980)+128)/* var_c43260 */ ; (* (( (ptr) var_c47228)+26) ) = (word) (( (bPt) gf_c49980)+120)/* var_c43228 */ ; (* (( (ptr) var_c47228)+27) ) = (word) (( (bPt) gf_c49980)+112)/* var_c43196 */ ; (* (( (ptr) var_c47228)+28) ) = (word) (( (bPt) gf_c49980)+344)/* var_c44124 */ ; class_v10892 = var_c47228; }; SOURCE(12175, 998) return(class_v10892); } static void ArcSetStrokeWidth_P2760(seg_v10952, strokeWidth_v10980) word seg_v10952; word strokeWidth_v10980; { /* ArcSetStrokeWidth: */ SOURCE(13179, 117) SOURCE(13241, 29) (* (( (ptr) seg_v10952)+2) ) = strokeWidth_v10980; SOURCE(13272, 24) (void) UpdateBoundBoxOfArc_P3180(seg_v10952); } static word MakeArc_P2820(p0_v11040, p1_v11068, p2_v11096, props_v11124) W2 p0_v11040; W2 p1_v11068; W2 p2_v11096; word props_v11124; { register ptr gf_c50012 = (ptr) &globalframe; word seg_v11264; word data_v16152; /* MakeArc: */ SOURCE(13302, 601) SOURCE(13302, 601) seg_v11264 = 0; SOURCE(13394, 126) { word var_c47260; word var_c47292; { word pd146; pd146 = (* (( (ptr) (* (( (ptr) gf_c50012)+190)/* var_c47100 */ ))+24) ); var_c47260 = (word) ( *( (fPt) ((* (ptr) pd146 ))))(p0_v11040, p1_v11068, p2_v11096, pd146); }; var_c47292 = XR_NewObject(28, (* (( (ptr) gf_c50012)+14) )); (* (ptr) var_c47292 ) = p1_v11068.f0; (* (( (ptr) var_c47292)+1) ) = p1_v11068.f1; (* (W4Pt) (( (ptr) var_c47292)+2) ) = (* (W4Pt) (( (ptr) gf_c50012)+180)/* var_c45660 */ ); (* (( (ptr) var_c47292)+6) ) = var_c47260; data_v16152 = var_c47292; }; SOURCE(13522, 355) { word var_c47324; word var_c47356; word var_c47388; word var_c47420; { word pd147; pd147 = (* (( (ptr) (* (( (ptr) gf_c50012)+185)/* var_c46108 */ ))+24) ); var_c47324 = (word) ( *( (fPt) ((* (ptr) pd147 ))))((* ((( (ptr) gf_c50012)+20)) ), pd147); }; { word pd148; pd148 = (* (( (ptr) (* (( (ptr) gf_c50012)+186)/* var_c46172 */ ))+5) ); var_c47356 = (word) ( *( (fPt) ((* (ptr) pd148 ))))((* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), 0, 0, pd148) ; }; { word pd149; pd149 = (* (( (ptr) (* (( (ptr) gf_c50012)+186)/* var_c46172 */ ))+5) ); var_c47388 = (word) ( *( (fPt) ((* (ptr) pd149 ))))((* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), (* (ptr) &fc37 ), 0, 0, pd149) ; }; var_c47420 = XR_NewObject(104, (* (( (ptr) gf_c50012)+12) )); (* (ptr) var_c47420 ) = var_c47324; (* (( (ptr) var_c47420)+2) ) = (* (( (ptr) gf_c50012)+4)/* defaultStrokeWidth_v4092 */ ); (* (( (ptr) var_c47420)+3) ) = (* (( (ptr) gf_c50012)+5)/* defaultStrokeEnd_v4120 */ ); (* (( (ptr) var_c47420)+6) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c47420)+7) ) = (* (ptr) &fc38 ); (* (( (ptr) var_c47420)+8) ) = (* (ptr) (* (( (ptr) (* (( (ptr) gf_c50012)+187)/* var_c46268 */ ))+54) ) ); (* (W2Pt) (( (ptr) var_c47420)+9) ) = p0_v11040; (* (W2Pt) (( (ptr) var_c47420)+11) ) = p2_v11096; (* (( (ptr) var_c47420)+13) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c47420)+14) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c47420)+15) ) = (* (ptr) &fc37 ); (* (( (ptr) var_c47420)+16) ) = (* (ptr) &fc37 ); (* (W4Pt) (( (ptr) var_c47420)+17) ) = (* (W4Pt) (( (ptr) gf_c50012)+180)/* var_c45660 */ ); (* (( (ptr) var_c47420)+21) ) = var_c47356; (* (( (ptr) var_c47420)+22) ) = var_c47388; (* (( (ptr) var_c47420)+24) ) = data_v16152; (* (( (ptr) var_c47420)+25) ) = props_v11124; seg_v11264 = var_c47420; }; SOURCE(13879, 24) (void) UpdateBoundBoxOfArc_P3180(seg_v11264); SOURCE(13302, 601) return(seg_v11264); } static void ArcGetParams_P2880(formal_c0373, seg_v11324) word formal_c0373; word seg_v11324; { register ptr gf_c50044 = (ptr) &globalframe; W2 p0_v11368; W2 p1_v11396; W2 p2_v11424; word data_v16196; /* ArcGetParams: */ SOURCE(13909, 145) SOURCE(13982, 32) data_v16196 = XR_Narrow((* (( (ptr) seg_v11324)+24) ), (* (( (ptr) gf_c50044)+14) )); SOURCE(14016, 11) p0_v11368 = (* (W2Pt) (( (ptr) seg_v11324)+9) ); SOURCE(14029, 11) p2_v11424 = (* (W2Pt) (( (ptr) seg_v11324)+11) ); SOURCE(14042, 12) p1_v11396 = (* (W2Pt) data_v16196 ); /* removed tail goto */ (* (W2Pt) formal_c0373 ) = p0_v11368; (* (W2Pt) (( (ptr) formal_c0373)+2) ) = p1_v11396; (* (W2Pt) (( (ptr) formal_c0373)+4) ) = p2_v11424; return; } static word ArcBoundBox_P2940(seg_v11484) word seg_v11484; { word bBox_v11528; /* ArcBoundBox: */ SOURCE(14060, 77) SOURCE(14060, 77) bBox_v11528 = 0; SOURCE(14122, 15) bBox_v11528 = (* (( (ptr) seg_v11484)+21) ); SOURCE(14060, 77) return(bBox_v11528); } static word ArcTightBox_P3000(seg_v11588) word seg_v11588; { word bBox_v11632; /* ArcTightBox: */ SOURCE(14143, 81) SOURCE(14143, 81) bBox_v11632 = 0; SOURCE(14205, 19) bBox_v11632 = (* (( (ptr) seg_v11588)+22) ); SOURCE(14143, 81) return(bBox_v11632); } static void UpdateTightBoxOfArc_P3060(seg_v11692, boundBox_v11720) word seg_v11692; word boundBox_v11720; { register ptr gf_c50076 = (ptr) &globalframe; word data_v16240; word arc_v16268; /* UpdateTightBoxOfArc: */ SOURCE(14230, 1001) SOURCE(14295, 32) data_v16240 = XR_Narrow((* (( (ptr) seg_v11692)+24) ), (* (( (ptr) gf_c50076)+14) )); SOURCE(14329, 19) arc_v16268 = (* (( (ptr) data_v16240)+6) ); SOURCE(14350, 881) if (((* (( (ptr) arc_v16268)+8) ) != 0)) { SOURCE(14373, 46) (void) UpdateBoundBoxOfEdge_P3120((* (( (ptr) arc_v16268)+8) ), boundBox_v11720); } else { SOURCE(14421, 102) (* (( (ptr) boundBox_v11720)+1) ) = (* (( (ptr) arc_v16268)+3) ); (* (( (ptr) boundBox_v11720)+2) ) = (* (( (ptr) arc_v16268)+2) ); (* (( (ptr) boundBox_v11720)+3) ) = (* (( (ptr) arc_v16268)+3) ); (* (ptr) boundBox_v11720 ) = (* (( (ptr) arc_v16268)+2) ); (* (( (ptr) boundBox_v11720)+4) ) = 0; (* (( (ptr) boundBox_v11720)+5) ) = 0; SOURCE(14525, 43) { word pd150; pd150 = (* (( (ptr) (* (( (ptr) gf_c50076)+186)/* var_c46172 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd150 ))))(boundBox_v11720, (* (W2Pt) (( (ptr) arc_v16268)+4) ), pd150); }; SOURCE(14570, 162) { word pd151; pd151 = (* (( (ptr) (* (( (ptr) gf_c50076)+191)/* var_c47548 */ ))+13) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd151 ))))((* (ptr) &fc37 ), (* (( (ptr) arc_v16268)+6) ), (* (( (ptr) arc_v16268)+7) ), pd151))) { SOURCE(14637, 95) { W2 var_c47580; { W2 var_c0387; { W2 var_c47612; var_c47612.f0 = (* (( (ptr) (* (ptr) arc_v16268 ))+2) ); var_c47612.f1 = (* (ptr) &fc37 ); { word pd152; pd152 = (* (( (ptr) (* (( (ptr) gf_c50076)+184)/* var_c45788 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd152 ))))((word) &var_c0387, (* (W2Pt) (* (ptr) arc_v16268 ) ), var_c47612, pd152); }; }; var_c47580 = var_c0387; }; { word pd153; pd153 = (* (( (ptr) (* (( (ptr) gf_c50076)+186)/* var_c46172 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd153 ))))(boundBox_v11720, var_c47580, pd153); }; }; }; }; SOURCE(14734, 163) { word pd154; pd154 = (* (( (ptr) (* (( (ptr) gf_c50076)+191)/* var_c47548 */ ))+13) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd154 ))))((* (ptr) &fc155 ), (* (( (ptr) arc_v16268)+6) ), (* (( (ptr) arc_v16268)+7) ), pd154))) { SOURCE(14802, 95) { W2 var_c47644; { W2 var_c0390; { W2 var_c47676; var_c47676.f0 = (* (ptr) &fc37 ); var_c47676.f1 = (* (( (ptr) (* (ptr) arc_v16268 ))+2) ); { word pd156; pd156 = (* (( (ptr) (* (( (ptr) gf_c50076)+184)/* var_c45788 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd156 ))))((word) &var_c0390, (* (W2Pt) (* (ptr) arc_v16268 ) ), var_c47676, pd156); }; }; var_c47644 = var_c0390; }; { word pd157; pd157 = (* (( (ptr) (* (( (ptr) gf_c50076)+186)/* var_c46172 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd157 ))))(boundBox_v11720, var_c47644, pd157); }; }; }; }; SOURCE(14899, 165) { word pd158; pd158 = (* (( (ptr) (* (( (ptr) gf_c50076)+191)/* var_c47548 */ ))+13) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd158 ))))((* (ptr) &fc159 ), (* (( (ptr) arc_v16268)+6) ), (* (( (ptr) arc_v16268)+7) ), pd158))) { SOURCE(14968, 96) { W2 var_c47708; { W2 var_c0393; { W2 var_c47740; { word x160; *(float*)&var_c47740.f0 = - ( x160 = (* (( (ptr) (* (ptr) arc_v16268 ))+2) ), *(float*)&x160 ); }; var_c47740.f1 = (* (ptr) &fc37 ); { word pd161; pd161 = (* (( (ptr) (* (( (ptr) gf_c50076)+184)/* var_c45788 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd161 ))))((word) &var_c0393, (* (W2Pt) (* (ptr) arc_v16268 ) ), var_c47740, pd161); }; }; var_c47708 = var_c0393; }; { word pd162; pd162 = (* (( (ptr) (* (( (ptr) gf_c50076)+186)/* var_c46172 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd162 ))))(boundBox_v11720, var_c47708, pd162); }; }; }; }; SOURCE(15066, 165) { word pd163; pd163 = (* (( (ptr) (* (( (ptr) gf_c50076)+191)/* var_c47548 */ ))+13) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd163 ))))((* (ptr) &fc164 ), (* (( (ptr) arc_v16268)+6) ), (* (( (ptr) arc_v16268)+7) ), pd163))) { SOURCE(15135, 96) { W2 var_c47772; { W2 var_c0396; { W2 var_c47804; var_c47804.f0 = (* (ptr) &fc37 ); { word x165; *(float*)&var_c47804.f1 = - ( x165 = (* (( (ptr) (* (ptr) arc_v16268 ))+2) ), *(float*)&x165 ); }; { word pd166; pd166 = (* (( (ptr) (* (( (ptr) gf_c50076)+184)/* var_c45788 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd166 ))))((word) &var_c0396, (* (W2Pt) (* (ptr) arc_v16268 ) ), var_c47804, pd166); }; }; var_c47772 = var_c0396; }; { word pd167; pd167 = (* (( (ptr) (* (( (ptr) gf_c50076)+186)/* var_c46172 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd167 ))))(boundBox_v11720, var_c47772, pd167); }; }; }; }; }; } static void UpdateBoundBoxOfEdge_P3120(edge_v11780, boundBox_v11808) word edge_v11780; word boundBox_v11808; { /* UpdateBoundBoxOfEdge: */ SOURCE(15240, 251) SOURCE(15304, 187) { word x168; float tf169; float tf170; word x171; float tf172; (* (( (ptr) boundBox_v11808)+1) ) = ( tf172 = FMIN(( x168 = (* (( (ptr) edge_v11780)+3) ), *(float*)&x168 ), ( x171 = (* (( (ptr) edge_v11780)+5) ), *(float*)&x171 ), tf169, tf170), *(word*)&tf172 ); }; { word x173; float tf174; float tf175; word x176; float tf177; (* (( (ptr) boundBox_v11808)+2) ) = ( tf177 = FMAX(( x173 = (* (( (ptr) edge_v11780)+2) ), *(float*)&x173 ), ( x176 = (* (( (ptr) edge_v11780)+4) ), *(float*)&x176 ), tf174, tf175), *(word*)&tf177 ); }; { word x178; float tf179; float tf180; word x181; float tf182; (* (( (ptr) boundBox_v11808)+3) ) = ( tf182 = FMAX(( x178 = (* (( (ptr) edge_v11780)+3) ), *(float*)&x178 ), ( x181 = (* (( (ptr) edge_v11780)+5) ), *(float*)&x181 ), tf179, tf180), *(word*)&tf182 ); }; { word x183; float tf184; float tf185; word x186; float tf187; (* (ptr) boundBox_v11808 ) = ( tf187 = FMIN(( x183 = (* (( (ptr) edge_v11780)+2) ), *(float*)&x183 ), ( x186 = (* (( (ptr) edge_v11780)+4) ), *(float*)&x186 ), tf184, tf185), *(word*)&tf187 ); }; (* (( (ptr) boundBox_v11808)+4) ) = 0; (* (( (ptr) boundBox_v11808)+5) ) = 0; } static void UpdateBoundBoxOfArc_P3180(seg_v11868) word seg_v11868; { register ptr gf_c50108 = (ptr) &globalframe; word pad_v16312; /* UpdateBoundBoxOfArc: */ SOURCE(15497, 272) SOURCE(15553, 38) (void) UpdateTightBoxOfArc_P3060(seg_v11868, (* (( (ptr) seg_v11868)+22) )); SOURCE(15593, 25) (* (W6Pt) (* (( (ptr) seg_v11868)+21) ) ) = (* (W6Pt) (* (( (ptr) seg_v11868)+22) ) ); SOURCE(15620, 106) if (((* (( (ptr) seg_v11868)+3) ) == 0)) { SOURCE(15651, 44) { word x188; word x189; word x190; *(float*)&pad_v16312 = (( x188 = (* (( (ptr) seg_v11868)+2) ), *(float*)&x188 ) * ( x189 = (* (ptr) &fc92 ), *(float*)&x189 )) + ( x190 = (* (ptr) &fc43 ), *(float*)&x190 ); }; } else { SOURCE(15695, 31) { word x191; word x192; word x193; *(float*)&pad_v16312 = (( x191 = (* (( (ptr) seg_v11868)+2) ), *(float*)&x191 ) / ( x192 = (* (ptr) &fc36 ), *(float*)&x192 )) + ( x193 = (* (ptr) &fc43 ), *(float*)&x193 ); }; }; SOURCE(15728, 41) { word pd194; pd194 = (* (( (ptr) (* (( (ptr) gf_c50108)+186)/* var_c46172 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd194 ))))((* (( (ptr) seg_v11868)+21) ), pad_v16312, pd194); }; } static word ArcCopyData_P3240(seg_v27616) word seg_v27616; { register ptr gf_c50140 = (ptr) &globalframe; word data_v27660; word arcData_v16356; word new_v16384; /* ArcCopyData: */ SOURCE(15775, 272) SOURCE(15775, 272) data_v27660 = 0; SOURCE(15820, 35) arcData_v16356 = XR_Narrow((* (( (ptr) seg_v27616)+24) ), (* (( (ptr) gf_c50140)+14) )); SOURCE(15857, 30) new_v16384 = XR_NewObject(28, (* (( (ptr) gf_c50140)+14) )); SOURCE(15889, 19) (* (W2Pt) new_v16384 ) = (* (W2Pt) arcData_v16356 ); SOURCE(15910, 35) (* (W4Pt) (( (ptr) new_v16384)+2) ) = (* (W4Pt) (( (ptr) arcData_v16356)+2) ); SOURCE(15947, 36) { word pd195; pd195 = (* (( (ptr) (* (( (ptr) gf_c50140)+190)/* var_c47100 */ ))+21) ); (* (( (ptr) new_v16384)+6) ) = (word) ( *( (fPt) ((* (ptr) pd195 ))))(pd195); }; SOURCE(15985, 49) { word pd196; pd196 = (* (( (ptr) (* (( (ptr) gf_c50140)+190)/* var_c47100 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd196 ))))((* (( (ptr) arcData_v16356)+6) ), (* (( (ptr) new_v16384)+6) ), pd196); }; SOURCE(16036, 11) return(new_v16384); } static void ArcReverse_P3300(seg_v11928) word seg_v11928; { register ptr gf_c50172 = (ptr) &globalframe; word arcData_v16428; /* ArcReverse: */ SOURCE(16053, 106) SOURCE(16089, 35) arcData_v16428 = XR_Narrow((* (( (ptr) seg_v11928)+24) ), (* (( (ptr) gf_c50172)+14) )); SOURCE(16126, 33) { word pd197; pd197 = (* (( (ptr) (* (( (ptr) gf_c50172)+190)/* var_c47100 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd197 ))))((* ((( (ptr) arcData_v16428)+6)) ), pd197); }; } static void ArcTransform_P3360(seg_v11988, transform_v12016) word seg_v11988; word transform_v12016; { register ptr gf_c50204 = (ptr) &globalframe; word data_v16472; /* ArcTransform: */ SOURCE(16165, 260) SOURCE(16251, 32) data_v16472 = XR_Narrow((* (( (ptr) seg_v11988)+24) ), (* (( (ptr) gf_c50204)+14) )); SOURCE(16285, 60) { word pd198; pd198 = (* (( (ptr) (* (( (ptr) gf_c50204)+192)/* var_c47964 */ ))+39) ); (void) ( *( (fPt) ((* (ptr) pd198 ))))((word) data_v16472, transform_v12016, (* (W2Pt) data_v16472 ), pd198); }; SOURCE(16347, 52) { word pd199; pd199 = (* (( (ptr) (* (( (ptr) gf_c50204)+190)/* var_c47100 */ ))+23) ); (void) ( *( (fPt) ((* (ptr) pd199 ))))((* (W2Pt) (( (ptr) seg_v11988)+9) ), (* (W2Pt) data_v16472 ), (* (W2Pt) (( (ptr) seg_v11988)+11) ), (* (( (ptr) data_v16472)+6) ), pd199); }; SOURCE(16401, 24) (void) UpdateBoundBoxOfArc_P3180(seg_v11988); } static void ArcEndPointMoved_P3420(seg_v12076, lo_v12104, newPoint_v12132) word seg_v12076; word lo_v12104; W2 newPoint_v12132; { register ptr gf_c50236 = (ptr) &globalframe; word data_v16516; W2 p0_v16544; W2 p1_v16572; W2 p2_v16600; /* ArcEndPointMoved: */ SOURCE(16431, 307) SOURCE(16500, 32) data_v16516 = XR_Narrow((* (( (ptr) seg_v12076)+24) ), (* (( (ptr) gf_c50236)+14) )); SOURCE(16534, 43) { word tcp200; if ((0 != lo_v12104)) { tcp200 = (word) &newPoint_v12132; } else { tcp200 = (word) (( (ptr) seg_v12076)+9); }; p0_v16544 = (* (W2Pt) tcp200 ); }; SOURCE(16579, 34) p1_v16572.f0 = (* (ptr) data_v16516 ); p1_v16572.f1 = (* (( (ptr) data_v16516)+1) ); SOURCE(16615, 43) { word tcp201; if ((0 != lo_v12104)) { tcp201 = (word) (( (ptr) seg_v12076)+11); } else { tcp201 = (word) &newPoint_v12132; }; p2_v16600 = (* (W2Pt) tcp201 ); }; SOURCE(16660, 52) { word pd202; pd202 = (* (( (ptr) (* (( (ptr) gf_c50236)+190)/* var_c47100 */ ))+23) ); (void) ( *( (fPt) ((* (ptr) pd202 ))))((* (W2Pt) (( (ptr) seg_v12076)+9) ), (* (W2Pt) data_v16516 ), (* (W2Pt) (( (ptr) seg_v12076)+11) ), (* (( (ptr) data_v16516)+6) ), pd202); }; SOURCE(16714, 24) (void) UpdateBoundBoxOfArc_P3180(seg_v12076); } static void ArcControlPointMoved_P3480(seg_v12192, transform_v12220, controlPointNum_v12248) word seg_v12192; word transform_v12220; word controlPointNum_v12248; { register ptr gf_c50268 = (ptr) &globalframe; W2 p1Vec_v16644; W2 p1_v16672; word data_v16700; /* ArcControlPointMoved: */ SOURCE(16744, 386) SOURCE(16883, 32) data_v16700 = XR_Narrow((* (( (ptr) seg_v12192)+24) ), (* (( (ptr) gf_c50268)+14) )); SOURCE(16917, 26) if ((controlPointNum_v12248 != 0)) { SOURCE(16943, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(16950, 58) { word pd203; pd203 = (* (( (ptr) (* (( (ptr) gf_c50268)+192)/* var_c47964 */ ))+39) ); (void) ( *( (fPt) ((* (ptr) pd203 ))))((word) &p1Vec_v16644, transform_v12220, (* (W2Pt) data_v16700 ), pd203); }; SOURCE(17010, 23) p1_v16672.f0 = p1Vec_v16644.f0; p1_v16672.f1 = p1Vec_v16644.f1; SOURCE(17035, 15) (* (W2Pt) data_v16700 ) = p1Vec_v16644; SOURCE(17052, 52) { word pd204; pd204 = (* (( (ptr) (* (( (ptr) gf_c50268)+190)/* var_c47100 */ ))+23) ); (void) ( *( (fPt) ((* (ptr) pd204 ))))((* (W2Pt) (( (ptr) seg_v12192)+9) ), (* (W2Pt) data_v16700 ), (* (W2Pt) (( (ptr) seg_v12192)+11) ), (* (( (ptr) data_v16700)+6) ), pd204); }; SOURCE(17106, 24) (void) UpdateBoundBoxOfArc_P3180(seg_v12192); } static void TransformEndPoints_P3540(formal_c0439, loPt_v12308, hiPt_v12336, lo_v12364, hi_v12392, transform_v12420) word formal_c0439; W2 loPt_v12308; W2 hiPt_v12336; word lo_v12364; word hi_v12392; word transform_v12420; { register ptr gf_c50300 = (ptr) &globalframe; W2 newLo_v12464; W2 newHi_v12492; /* TransformEndPoints: */ SOURCE(17136, 353) SOURCE(17275, 106) if ((0 != lo_v12364)) { SOURCE(17286, 72) { W2 var_c0436; { W2 var_c48028; var_c48028.f0 = loPt_v12308.f0; var_c48028.f1 = loPt_v12308.f1; { word pd205; pd205 = (* (( (ptr) (* (( (ptr) gf_c50300)+192)/* var_c47964 */ ))+39) ); (void) ( *( (fPt) ((* (ptr) pd205 ))))((word) &var_c0436, transform_v12420, var_c48028, pd205); }; }; newLo_v12464 = var_c0436; }; } else { SOURCE(17358, 23) newLo_v12464.f0 = loPt_v12308.f0; newLo_v12464.f1 = loPt_v12308.f1; }; SOURCE(17383, 106) if ((0 != hi_v12392)) { SOURCE(17394, 72) { W2 var_c0438; { W2 var_c48060; var_c48060.f0 = hiPt_v12336.f0; var_c48060.f1 = hiPt_v12336.f1; { word pd206; pd206 = (* (( (ptr) (* (( (ptr) gf_c50300)+192)/* var_c47964 */ ))+39) ); (void) ( *( (fPt) ((* (ptr) pd206 ))))((word) &var_c0438, transform_v12420, var_c48060, pd206); }; }; newHi_v12492 = var_c0438; }; } else { SOURCE(17466, 23) newHi_v12492.f0 = hiPt_v12336.f0; newHi_v12492.f1 = hiPt_v12336.f1; }; /* removed tail goto */ (* (W2Pt) formal_c0439 ) = newLo_v12464; (* (W2Pt) (( (ptr) formal_c0439)+2) ) = newHi_v12492; return; } static void ArcBuildPath_P3600(seg_v12552, lineTo_v12580, curveTo_v12608, conicTo_v12636, arcTo_v12664) word seg_v12552; word lineTo_v12580; word curveTo_v12608; word conicTo_v12636; word arcTo_v12664; { register ptr gf_c50332 = (ptr) &globalframe; word data_v16744; /* ArcBuildPath: */ SOURCE(17494, 234) SOURCE(17658, 32) data_v16744 = XR_Narrow((* (( (ptr) seg_v12552)+24) ), (* (( (ptr) gf_c50332)+14) )); SOURCE(17692, 36) { W2 var_c48092; var_c48092.f0 = (* (( (ptr) seg_v12552)+11) ); var_c48092.f1 = (* (( (ptr) seg_v12552)+12) ); (void) ( *( (fPt) ((* (ptr) arcTo_v12664 ))))((* (W2Pt) data_v16744 ), var_c48092, arcTo_v12664); }; } static void ArcBuildPathTransform_P3660(seg_v12724, transform_v12752, entire_v12780, lo_v12808, hi_v12836, controlPoints_v12864, lineTo_v12892, curveTo_v12920, conicTo_v12948, arcTo_v12976) word seg_v12724; word transform_v12752; word entire_v12780; word lo_v12808; word hi_v12836; word controlPoints_v12864; word lineTo_v12892; word curveTo_v12920; word conicTo_v12948; word arcTo_v12976; { register ptr gf_c50364 = (ptr) &globalframe; word data_v16788; W2 p0_v16816; W2 p1_v16844; W2 p2_v16872; /* ArcBuildPathTransform: */ SOURCE(17734, 670) SOURCE(18003, 32) data_v16788 = XR_Narrow((* (( (ptr) seg_v12724)+24) ), (* (( (ptr) gf_c50364)+14) )); SOURCE(18054, 333) if ((0 != entire_v12780)) { SOURCE(18071, 68) { W4 var_c48124; (void) TransformEndPoints_P3540((word) &var_c48124, (* (W2Pt) (( (ptr) seg_v12724)+9) ), (* (W2Pt) (( (ptr) seg_v12724)+11) ), 1, 1, transform_v12752); p2_v16872 = (* (W2Pt) (( (ptr) &var_c48124)+2) ); p0_v16816 = (* (W2Pt) &var_c48124 ); }; SOURCE(18141, 55) { word pd207; pd207 = (* (( (ptr) (* (( (ptr) gf_c50364)+192)/* var_c47964 */ ))+39) ); (void) ( *( (fPt) ((* (ptr) pd207 ))))((word) &p1_v16844, transform_v12752, (* (W2Pt) data_v16788 ), pd207); }; } else { SOURCE(18207, 64) { W4 var_c48156; (void) TransformEndPoints_P3540((word) &var_c48156, (* (W2Pt) (( (ptr) seg_v12724)+9) ), (* (W2Pt) (( (ptr) seg_v12724)+11) ), lo_v12808, hi_v12836, transform_v12752); p2_v16872 = (* (W2Pt) (( (ptr) &var_c48156)+2) ); p0_v16816 = (* (W2Pt) &var_c48156 ); }; SOURCE(18273, 114) { word limit209; if ((controlPoints_v12864 == 0)) { goto then0208;}; if (XR_ExtractField(controlPoints_v12864, 32 + (word) ( limit209 = (* (ptr) controlPoints_v12864 ), BCK(0, limit209) ), 1)) { then0208: ; { W2 var_c0466; { word pd210; pd210 = (* (( (ptr) (* (( (ptr) gf_c50364)+192)/* var_c47964 */ ))+39) ); (void) ( *( (fPt) ((* (ptr) pd210 ))))((word) &var_c0466, transform_v12752, (* (W2Pt) data_v16788 ), pd210); }; p1_v16844 = var_c0466; }; } else { p1_v16844 = (* (W2Pt) data_v16788 ); }; }; }; SOURCE(18392, 12) (void) ( *( (fPt) ((* (ptr) arcTo_v12976 ))))(p1_v16844, p2_v16872, arcTo_v12976); } static word ArcDescribe_P3720(seg_v13036, self_v13064, lo_v13092, hi_v13120, cps_v13148) word seg_v13036; word self_v13064; word lo_v13092; word hi_v13120; word cps_v13148; { register ptr gf_c50396 = (ptr) &globalframe; word rope_v13192; word data_v16916; word arc_v16944; /* ArcDescribe: */ SOURCE(18410, 216) SOURCE(18410, 216) rope_v13192 = 0; SOURCE(18509, 32) data_v16916 = XR_Narrow((* (( (ptr) seg_v13036)+24) ), (* (( (ptr) gf_c50396)+14) )); SOURCE(18543, 19) arc_v16944 = (* (( (ptr) data_v16916)+6) ); SOURCE(18564, 62) if (((* (( (ptr) arc_v16944)+8) ) != 0)) { SOURCE(18587, 27) rope_v13192 = (* (( (ptr) gf_c50396)+22) ); } else { SOURCE(18614, 12) rope_v13192 = (* (( (ptr) gf_c50396)+23) ); }; SOURCE(18410, 216) return(rope_v13192); } static void ArcFileOut_P3780(seg_v13252, f_v13280) word seg_v13252; word f_v13280; { register ptr gf_c50428 = (ptr) &globalframe; word data_v16988; W2 p1_v17016; /* ArcFileOut: */ SOURCE(18632, 148) SOURCE(18682, 32) data_v16988 = XR_Narrow((* (( (ptr) seg_v13252)+24) ), (* (( (ptr) gf_c50428)+14) )); SOURCE(18716, 34) p1_v17016.f0 = (* (ptr) data_v16988 ); p1_v17016.f1 = (* (( (ptr) data_v16988)+1) ); SOURCE(18752, 28) { word pd211; pd211 = (* (( (ptr) (* (( (ptr) gf_c50428)+193)/* var_c48220 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd211 ))))(f_v13280, p1_v17016, pd211); }; } static word ArcFileIn_P3840(f_v13340, loPoint_v13368, hiPoint_v13396, version_v13424) word f_v13340; W2 loPoint_v13368; W2 hiPoint_v13396; word version_v13424; { register ptr gf_c50460 = (ptr) &globalframe; word seg_v13468; W2 p1_v17060; /* ArcFileIn: */ SOURCE(18786, 178) SOURCE(18786, 178) seg_v13468 = 0; SOURCE(18895, 27) { word pd212; pd212 = (* (( (ptr) (* (( (ptr) gf_c50460)+194)/* var_c48252 */ ))+19) ); (void) ( *( (fPt) ((* (ptr) pd212 ))))((word) &p1_v17060, f_v13340, pd212); }; SOURCE(18924, 40) seg_v13468 = (word) MakeArc_P2820(loPoint_v13368, p1_v17060, hiPoint_v13396, 0); SOURCE(18786, 178) return(seg_v13468); } static void ArcFieldSet_P3900(seg_v27720, controlPointNum_v27748, selected_v27776, selectClass_v27804) word seg_v27720; word controlPointNum_v27748; word selected_v27776; word selectClass_v27804; { register ptr gf_c50492 = (ptr) &globalframe; word data_v17104; /* ArcFieldSet: */ SOURCE(18970, 320) SOURCE(19027, 32) data_v17104 = XR_Narrow((* (( (ptr) seg_v27720)+24) ), (* (( (ptr) gf_c50492)+14) )); SOURCE(19061, 28) if ((controlPointNum_v27748 != 0)) { SOURCE(19089, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(19096, 194) { word var_c48284; var_c48284 = selectClass_v27804; switch (var_c48284) { case 0: SOURCE(19130, 33) (* (( (ptr) data_v17104)+2) ) = selected_v27776; break; case 1: SOURCE(19172, 30) (* (( (ptr) data_v17104)+3) ) = selected_v27776; break; case 2: SOURCE(19214, 33) (* (( (ptr) data_v17104)+4) ) = selected_v27776; break; case 3: SOURCE(19258, 32) (* (( (ptr) data_v17104)+5) ) = selected_v27776; break; default: SOURCE(19303, 5) (void) XR_RaiseUnnamedError(); break; }; }; } static word ArcFieldGet_P3960(seg_v27864, controlPointNum_v27892, selectClass_v27920) word seg_v27864; word controlPointNum_v27892; word selectClass_v27920; { register ptr gf_c50524 = (ptr) &globalframe; word selected_v27964; word data_v17148; /* ArcFieldGet: */ SOURCE(19314, 320) SOURCE(19371, 32) data_v17148 = XR_Narrow((* (( (ptr) seg_v27864)+24) ), (* (( (ptr) gf_c50524)+14) )); SOURCE(19405, 28) if ((controlPointNum_v27892 != 0)) { SOURCE(19433, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(19440, 194) { word var_c48316; var_c48316 = selectClass_v27920; switch (var_c48316) { case 0: SOURCE(19474, 33) selected_v27964 = (* (( (ptr) data_v17148)+2) ); break; case 1: SOURCE(19516, 30) selected_v27964 = (* (( (ptr) data_v17148)+3) ); break; case 2: SOURCE(19558, 33) selected_v27964 = (* (( (ptr) data_v17148)+4) ); break; case 3: SOURCE(19602, 32) selected_v27964 = (* (( (ptr) data_v17148)+5) ); break; default: SOURCE(19647, 5) (void) XR_RaiseUnnamedError(); break; }; }; SOURCE(19314, 320) return(selected_v27964); } static void ArcControlPointGet_P4020(formal_c0504, seg_v13528, controlPointNum_v13556) word formal_c0504; word seg_v13528; word controlPointNum_v13556; { register ptr gf_c50556 = (ptr) &globalframe; W2 point_v13600; word data_v17192; /* ArcControlPointGet: */ SOURCE(19658, 188) SOURCE(19747, 32) data_v17192 = XR_Narrow((* (( (ptr) seg_v13528)+24) ), (* (( (ptr) gf_c50556)+14) )); SOURCE(19781, 26) if ((controlPointNum_v13556 != 0)) { SOURCE(19807, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(19814, 32) point_v13600.f0 = (* (ptr) data_v17192 ); point_v13600.f1 = (* (( (ptr) data_v17192)+1) ); /* removed tail goto */ (* (W2Pt) formal_c0504 ) = point_v13600; return; } static word ArcControlPointCount_P4080(seg_v13660) word seg_v13660; { register ptr gf_c50588 = (ptr) &globalframe; word controlPointCount_v13704; word data_v17236; /* ArcControlPointCount: */ SOURCE(19852, 122) SOURCE(19931, 32) data_v17236 = XR_Narrow((* (( (ptr) seg_v13660)+24) ), (* (( (ptr) gf_c50588)+14) )); SOURCE(19965, 9) return(1); } static void ArcClosestPoint_P4140(formal_c0515, seg_v13764, testPoint_v13792, tolerance_v13820) word formal_c0515; word seg_v13764; W2 testPoint_v13792; word tolerance_v13820; { register ptr gf_c50620 = (ptr) &globalframe; W2 point_v13864; word success_v13892; word data_v17280; /* ArcClosestPoint: */ SOURCE(19980, 220) SOURCE(20094, 32) data_v17280 = XR_Narrow((* (( (ptr) seg_v13764)+24) ), (* (( (ptr) gf_c50620)+14) )); SOURCE(20128, 56) { word pd213; pd213 = (* (( (ptr) (* (( (ptr) gf_c50620)+190)/* var_c47100 */ ))+29) ); (void) ( *( (fPt) ((* (ptr) pd213 ))))((word) &point_v13864, testPoint_v13792, (* (( (ptr) data_v17280)+6) ), pd213); }; SOURCE(20186, 14) success_v13892 = 1; /* removed tail goto */ (* (W2Pt) formal_c0515 ) = point_v13864; (* (( (ptr) formal_c0515)+2) ) = success_v13892; return; } static void ArcClosestControlPoint_P4200(formal_c0524, seg_v13952, testPoint_v13980, tolerance_v14008) word formal_c0524; word seg_v13952; W2 testPoint_v13980; word tolerance_v14008; { register ptr gf_c50652 = (ptr) &globalframe; W2 point_v14052; W2 normal_v14080; word controlPointNum_v14108; word success_v14136; word data_v17324; /* ArcClosestControlPoint: */ SOURCE(20206, 269) SOURCE(20206, 269) normal_v14080.f0 = (* (ptr) &fc37 ); normal_v14080.f1 = (* (ptr) &fc38 ); SOURCE(20374, 32) data_v17324 = XR_Narrow((* (( (ptr) seg_v13952)+24) ), (* (( (ptr) gf_c50652)+14) )); SOURCE(20408, 14) success_v14136 = 1; SOURCE(20424, 19) controlPointNum_v14108 = 0; SOURCE(20445, 30) point_v14052.f0 = (* (ptr) data_v17324 ); point_v14052.f1 = (* (( (ptr) data_v17324)+1) ); /* removed tail goto */ (* (W2Pt) formal_c0524 ) = point_v14052; (* (W2Pt) (( (ptr) formal_c0524)+2) ) = normal_v14080; (* (( (ptr) formal_c0524)+4) ) = controlPointNum_v14108; (* (( (ptr) formal_c0524)+5) ) = success_v14136; return; } static word ArcAsSimpleCurve_P4260(seg_v14196, point_v14224) word seg_v14196; W2 point_v14224; { register ptr gf_c50684 = (ptr) &globalframe; word simpleCurve_v14268; word arcData_v17368; word arc_v17396; /* ArcAsSimpleCurve: */ SOURCE(20481, 165) SOURCE(20481, 165) simpleCurve_v14268 = 0; SOURCE(20568, 35) arcData_v17368 = XR_Narrow((* (( (ptr) seg_v14196)+24) ), (* (( (ptr) gf_c50684)+14) )); SOURCE(20605, 22) arc_v17396 = (* (( (ptr) arcData_v17368)+6) ); SOURCE(20629, 17) simpleCurve_v14268 = arc_v17396; SOURCE(20481, 165) return(simpleCurve_v14268); } static word ArcAsPolyline_P4320(seg_v14340, tolerance_v14368) word seg_v14340; word tolerance_v14368; { register ptr gf_c50716 = (ptr) &globalframe; word polyline_v14412; word arcData_v17440; word arc_v17468; /* ArcAsPolyline: */ SOURCE(20652, 1240) SOURCE(20652, 1240) polyline_v14412 = 0; SOURCE(20756, 35) arcData_v17440 = XR_Narrow((* (( (ptr) seg_v14340)+24) ), (* (( (ptr) gf_c50716)+14) )); SOURCE(20793, 22) arc_v17468 = (* (( (ptr) arcData_v17440)+6) ); SOURCE(20818, 1074) { word x214; word x215; word x216; if (((* (( (ptr) arc_v17468)+8) ) != 0) || (( x214 = (* (ptr) &fc36 ), *(float*)&x214 ) * ( x215 = (* (( (ptr) (* (ptr) arc_v17468 ))+2) ), *(float*)&x215 ) <= ( x216 = tolerance_v14368, *(float*)&x216 ))) { SOURCE(20974, 49) { word var_c48412; var_c48412 = XR_NewObject(24, (* (( (ptr) gf_c50716)+7) )); (* (( (ptr) var_c48412)+1) ) = 2; polyline_v14412 = var_c48412; }; SOURCE(21025, 19) (* (ptr) polyline_v14412 ) = 2; SOURCE(21046, 20) { word limit217; (* (( (W2Pt) (( (ptr) polyline_v14412)+2))+( limit217 = (* (( (ptr) polyline_v14412)+1) ), BCK(0, limit217) )) ) = (* (W2Pt) (( (ptr) seg_v14340)+9) ); }; SOURCE(21068, 20) { word limit218; (* (( (W2Pt) (( (ptr) polyline_v14412)+2))+( limit218 = (* (( (ptr) polyline_v14412)+1) ), BCK(1, limit218) )) ) = (* (W2Pt) (( (ptr) seg_v14340)+11) ); }; } else { SOURCE(21097, 797) { word r_v17512; word minSides_v17540; word n_v17568; word phi_v17596; word sin_v17624; word cos_v17652; word deltaTheta_v17680; word startAngle_v17708; SOURCE(21099, 27) r_v17512 = (* (( (ptr) (* (ptr) arc_v17468 ))+2) ); SOURCE(21204, 40) { word x220; word x221; *(float*)&deltaTheta_v17680 = ( x220 = (* (ptr) &fc219 ), *(float*)&x220 ) * ( x221 = (* (( (ptr) arc_v17468)+7) ), *(float*)&x221 ); }; SOURCE(21268, 107) { word var_c48444; word var_c0667; { word pd222; word x223; word x224; word x225; word x226; float tf227; pd222 = (* (( (ptr) (* (( (ptr) gf_c50716)+195)/* var_c48476 */ ))+9) ); var_c48444 = (word) ( *( (fPt) ((* (ptr) pd222 ))))(( tf227 = ((( x223 = (* (ptr) &fc36 ), *(float*)&x223 ) * ( x224 = r_v17512, *(float*)&x224 )) - ( x225 = tolerance_v14368, *(float*)&x225 )) * ( x226 = tolerance_v14368, *(float*)&x226 ), *(word*)&tf227 ), pd222); }; { word x228; word pd229; word x230; word x231; float tf232; word x233; pd229 = (* (( (ptr) (* (( (ptr) gf_c50716)+195)/* var_c48476 */ ))+16) ); *(float*)&var_c0667 = ( x228 = (* (ptr) &fc36 ), *(float*)&x228 ) * ( x233 = (word) ( *( (fPt) ((* (ptr) pd229 ))))(var_c48444, ( tf232 = ( /*1*/ x230 = r_v17512, *(float*)&x230 /*1*/ ) - ( /*1*/ x231 = tolerance_v14368, *(float*)&x231 /*1*/ ), *(word*)&tf232 ), pd229), *(float*)&x233 ); }; { word x234; word x235; *(float*)&minSides_v17540 = ( x234 = deltaTheta_v17680, *(float*)&x234 ) / ( x235 = var_c0667, *(float*)&x235 ); }; }; SOURCE(21377, 26) { word pd236; word idx237; pd236 = (* (( (ptr) (* (( (ptr) gf_c50716)+196)/* var_c48508 */ ))+7) ); n_v17568 = ( idx237 = (word) ( *( (fPt) ((* (ptr) pd236 ))))(minSides_v17540, pd236), SGNCK(idx237) ); }; SOURCE(21405, 24) { word x238; *(float*)&phi_v17596 = ( x238 = deltaTheta_v17680, *(float*)&x238 ) / (float)(unsigned)n_v17568; }; SOURCE(21432, 166) if ((0 != (* (( (ptr) arc_v17468)+1) ))) { SOURCE(21450, 34) { word x239; word x240; *(float*)&startAngle_v17708 = ( x239 = (* (ptr) &fc219 ), *(float*)&x239 ) * ( x240 = (* (( (ptr) arc_v17468)+6) ), *(float*)&x240 ); }; } else { SOURCE(21495, 10) { word x241; *(float*)&phi_v17596 = - ( x241 = phi_v17596, *(float*)&x241 ); }; SOURCE(21507, 91) { W2 var_c48540; { word pd242; pd242 = (* (( (ptr) (* (( (ptr) gf_c50716)+184)/* var_c45788 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd242 ))))((word) &var_c48540, (* (W2Pt) (( (ptr) seg_v14340)+9) ), (* (W2Pt) (* (ptr) arc_v17468 ) ), pd242) ; }; { word x243; word pd244; word x245; pd244 = (* (( (ptr) (* (( (ptr) gf_c50716)+184)/* var_c45788 */ ))+6) ); *(float*)&startAngle_v17708 = ( x243 = (* (ptr) &fc219 ), *(float*)&x243 ) * ( x245 = (word) ( *( (fPt) ((* (ptr) pd244 ))))(var_c48540, pd244), *(float*)&x245 ); }; }; }; SOURCE(21603, 51) { word var_c48572; word var_c48604; word var_c48636; var_c48572 = (n_v17568 + 1); var_c48604 = ((word) var_c48572 << 3); var_c48636 = XR_NewObject((8 + var_c48604), (* (( (ptr) gf_c50716)+7) )); (* (( (ptr) var_c48636)+1) ) = var_c48572; polyline_v14412 = var_c48636; }; SOURCE(21656, 21) (* (ptr) polyline_v14412 ) = (n_v17568 + 1); SOURCE(21679, 20) { word limit246; (* (( (W2Pt) (( (ptr) polyline_v14412)+2))+( limit246 = (* (( (ptr) polyline_v14412)+1) ), BCK(0, limit246) )) ) = (* (W2Pt) (( (ptr) seg_v14340)+9) ); }; SOURCE(21701, 160) { register word i_v17752 = 1; register word noName_c48668; noName_c48668 = n_v17568; if ((i_v17752 >= noName_c48668)) { goto lab_L100023; }; lab_L100026: ; SOURCE(21725, 35) { word pd247; word x248; word x249; float tf250; pd247 = (* (( (ptr) (* (( (ptr) gf_c50716)+195)/* var_c48476 */ ))+10) ); sin_v17624 = (word) ( *( (fPt) ((* (ptr) pd247 ))))(( tf250 = ( x248 = startAngle_v17708, *(float*)&x248 ) + (( x249 = phi_v17596, *(float*)&x249 ) * (float)(unsigned)i_v17752), *(word*)&tf250 ), pd247); }; SOURCE(21762, 35) { word pd251; word x252; word x253; float tf254; pd251 = (* (( (ptr) (* (( (ptr) gf_c50716)+195)/* var_c48476 */ ))+12) ); cos_v17652 = (word) ( *( (fPt) ((* (ptr) pd251 ))))(( tf254 = ( x252 = startAngle_v17708, *(float*)&x252 ) + (( x253 = phi_v17596, *(float*)&x253 ) * (float)(unsigned)i_v17752), *(word*)&tf254 ), pd251); }; SOURCE(21799, 62) { W2 var_c48700; { W2 var_c0554; { W2 var_c48732; { word x255; word x256; *(float*)&var_c48732.f0 = ( /*1*/ x255 = cos_v17652, *(float*)&x255 /*1*/ ) * ( /*1*/ x256 = r_v17512, *(float*)&x256 /*1*/ ); }; { word x257; word x258; *(float*)&var_c48732.f1 = ( /*1*/ x257 = sin_v17624, *(float*)&x257 /*1*/ ) * ( /*1*/ x258 = r_v17512, *(float*)&x258 /*1*/ ); }; { word pd259; pd259 = (* (( (ptr) (* (( (ptr) gf_c50716)+184)/* var_c45788 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd259 ))))((word) &var_c0554, (* (W2Pt) (* (ptr) arc_v17468 ) ), var_c48732, pd259); }; }; var_c48700 = var_c0554; }; { word limit260; (* (( (W2Pt) (( (ptr) polyline_v14412)+2))+( limit260 = (* (( (ptr) polyline_v14412)+1) ), BCK(i_v17752, limit260) )) ) = var_c48700; }; }; i_v17752 = (i_v17752 + 1); if ((i_v17752 < noName_c48668)) { goto lab_L100026; }; lab_L100023: ; }; SOURCE(21872, 20) { word limit261; (* (( (W2Pt) (( (ptr) polyline_v14412)+2))+( limit261 = (* (( (ptr) polyline_v14412)+1) ), BCK(n_v17568, limit261) )) ) = (* (W2Pt) (( (ptr) seg_v14340)+11) ); }; }; }; }; SOURCE(20652, 1240) return(polyline_v14412); } static void ArcCPNormal_P4380(formal_c0565, seg_v14472, controlPointNum_v14500, cPoint_v14528, testPoint_v14556) word formal_c0565; word seg_v14472; word controlPointNum_v14500; W2 cPoint_v14528; W2 testPoint_v14556; { register ptr gf_c50748 = (ptr) &globalframe; W2 normal_v14600; word arcData_v17796; W2 origin_v17824; /* ArcCPNormal: */ SOURCE(21901, 249) SOURCE(22011, 35) arcData_v17796 = XR_Narrow((* (( (ptr) seg_v14472)+24) ), (* (( (ptr) gf_c50748)+14) )); SOURCE(22048, 41) origin_v17824 = (* (W2Pt) (* (ptr) (* (( (ptr) arcData_v17796)+6) ) ) ); SOURCE(22091, 59) { W2 var_c48764; { word pd262; pd262 = (* (( (ptr) (* (( (ptr) gf_c50748)+184)/* var_c45788 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd262 ))))((word) &var_c48764, cPoint_v14528, origin_v17824, pd262); }; { W2 var_c0564; { word pd263; pd263 = (* (( (ptr) (* (( (ptr) gf_c50748)+184)/* var_c45788 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd263 ))))((word) &var_c0564, var_c48764, pd263); }; normal_v14600 = var_c0564; }; }; /* removed tail goto */ (* (W2Pt) formal_c0565 ) = normal_v14600; return; } static void ArcJointNormal_P4440(formal_c0580, seg_v14660, joint_v14688, point_v14716, hi_v14744) word formal_c0580; word seg_v14660; W2 joint_v14688; W2 point_v14716; word hi_v14744; { register ptr gf_c50780 = (ptr) &globalframe; W2 normal_v14788; W2 tangent_v14816; word arcData_v17868; W2 origin_v17896; /* ArcJointNormal: */ SOURCE(22156, 313) SOURCE(22261, 35) arcData_v17868 = XR_Narrow((* (( (ptr) seg_v14660)+24) ), (* (( (ptr) gf_c50780)+14) )); SOURCE(22298, 41) origin_v17896 = (* (W2Pt) (* (ptr) (* (( (ptr) arcData_v17868)+6) ) ) ); SOURCE(22341, 58) { W2 var_c48796; { word pd264; pd264 = (* (( (ptr) (* (( (ptr) gf_c50780)+184)/* var_c45788 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd264 ))))((word) &var_c48796, joint_v14688, origin_v17896, pd264); }; { W2 var_c0576; { word pd265; pd265 = (* (( (ptr) (* (( (ptr) gf_c50780)+184)/* var_c45788 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd265 ))))((word) &var_c0576, var_c48796, pd265); }; normal_v14788 = var_c0576; }; }; SOURCE(22401, 68) { W2 var_c48828; { word pd266; pd266 = (* (( (ptr) (* (( (ptr) gf_c50780)+184)/* var_c45788 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd266 ))))((word) &var_c48828, normal_v14788, (* (ptr) &fc155 ), pd266); }; { W2 var_c0579; { word pd267; pd267 = (* (( (ptr) (* (( (ptr) gf_c50780)+184)/* var_c45788 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd267 ))))((word) &var_c0579, var_c48828, pd267); }; tangent_v14816 = var_c0579; }; }; /* removed tail goto */ (* (W2Pt) formal_c0580 ) = normal_v14788; (* (W2Pt) (( (ptr) formal_c0580)+2) ) = tangent_v14816; return; } static void ArcAddJoint_P4500(formal_c0606, seg_v14876, pos_v14904) word formal_c0606; word seg_v14876; W2 pos_v14904; { register ptr gf_c50812 = (ptr) &globalframe; word seg1_v14948; word seg2_v14976; word data_v17940; word data1_v17968 = 0; word data2_v17996 = 0; W2 p0Rel_v18024; W2 p1Rel_v18052; W2 p2Rel_v18080; W2 caretRel_v18108; word cpAngle_v18136; word caretAngle_v18164; W2 rotVec_v18192; /* ArcAddJoint: */ SOURCE(22474, 1648) SOURCE(22474, 1648) seg1_v14948 = 0; SOURCE(22474, 1648) seg2_v14976 = 0; SOURCE(22554, 32) data_v17940 = XR_Narrow((* (( (ptr) seg_v14876)+24) ), (* (( (ptr) gf_c50812)+14) )); SOURCE(22611, 65) { word pd268; pd268 = (* (( (ptr) (* (( (ptr) gf_c50812)+184)/* var_c45788 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd268 ))))((word) &p0Rel_v18024, (* (W2Pt) (( (ptr) (* (( (ptr) data_v17940)+6) ))+2) ), (* (W2Pt) (* (ptr) (* ( ( (ptr) data_v17940)+6) ) ) ), pd268); }; SOURCE(22678, 61) { word pd269; pd269 = (* (( (ptr) (* (( (ptr) gf_c50812)+184)/* var_c45788 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd269 ))))((word) &p1Rel_v18052, (* (W2Pt) data_v17940 ), (* (W2Pt) (* (ptr) (* (( (ptr) data_v17940)+6) ) ) ), pd269); }; SOURCE(22741, 65) { word pd270; pd270 = (* (( (ptr) (* (( (ptr) gf_c50812)+184)/* var_c45788 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd270 ))))((word) &p2Rel_v18080, (* (W2Pt) (( (ptr) (* (( (ptr) data_v17940)+6) ))+4) ), (* (W2Pt) (* (ptr) (* ( ( (ptr) data_v17940)+6) ) ) ), pd270); }; SOURCE(22808, 60) { word pd271; pd271 = (* (( (ptr) (* (( (ptr) gf_c50812)+184)/* var_c45788 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd271 ))))((word) &caretRel_v18108, pos_v14904, (* (W2Pt) (* (ptr) (* (( (ptr) data_v17940)+6) ) ) ), pd271); }; SOURCE(22870, 62) { word pd272; pd272 = (* (( (ptr) (* (( (ptr) gf_c50812)+184)/* var_c45788 */ ))+7) ); cpAngle_v18136 = (word) ( *( (fPt) ((* (ptr) pd272 ))))(p0Rel_v18024, p1Rel_v18052, pd272); }; SOURCE(22934, 68) { word pd273; pd273 = (* (( (ptr) (* (( (ptr) gf_c50812)+184)/* var_c45788 */ ))+7) ); caretAngle_v18164 = (word) ( *( (fPt) ((* (ptr) pd273 ))))(p0Rel_v18024, caretRel_v18108, pd273); }; SOURCE(23019, 33) { word pd274; pd274 = (* (( (ptr) (* (( (ptr) gf_c50812)+185)/* var_c46108 */ ))+17) ); seg1_v14948 = (word) ( *( (fPt) ((* (ptr) pd274 ))))(seg_v14876, pd274); }; SOURCE(23054, 33) { word pd275; pd275 = (* (( (ptr) (* (( (ptr) gf_c50812)+185)/* var_c46108 */ ))+17) ); seg2_v14976 = (word) ( *( (fPt) ((* (ptr) pd275 ))))(seg_v14876, pd275); }; SOURCE(23089, 25) data1_v17968 = XR_Narrow((* (( (ptr) seg1_v14948)+24) ), (* (( (ptr) gf_c50812)+14) )); SOURCE(23116, 25) data2_v17996 = XR_Narrow((* (( (ptr) seg2_v14976)+24) ), (* (( (ptr) gf_c50812)+14) )); SOURCE(23143, 23) (* (W2Pt) (( (ptr) seg2_v14976)+9) ) = pos_v14904; (* (W2Pt) (( (ptr) seg1_v14948)+11) ) = pos_v14904; SOURCE(23168, 21) (* (W2Pt) (( (ptr) seg1_v14948)+9) ) = (* (W2Pt) (( (ptr) (* (( (ptr) data_v17940)+6) ))+2) ); SOURCE(23191, 21) (* (W2Pt) (( (ptr) seg2_v14976)+11) ) = (* (W2Pt) (( (ptr) (* (( (ptr) data_v17940)+6) ))+4) ); SOURCE(23214, 551) { word x276; word x277; if ((( x276 = caretAngle_v18164, *(float*)&x276 ) < ( x277 = cpAngle_v18136, *(float*)&x277 ))) { SOURCE(23296, 95) { word var_c48892; { word pd278; word x279; word x280; float tf281; pd278 = (* (( (ptr) (* (( (ptr) gf_c50812)+192)/* var_c47964 */ ))+9) ); var_c48892 = (word) ( *( (fPt) ((* (ptr) pd278 ))))(( tf281 = ( - ( x279 = caretAngle_v18164, *(float*)&x279 )) / ( x280 = (* (ptr) &fc36 ), *(float*)&x280 ), *(word*)&tf281 ), pd278); }; { word pd282; pd282 = (* (( (ptr) (* (( (ptr) gf_c50812)+192)/* var_c47964 */ ))+39) ); (void) ( *( (fPt) ((* (ptr) pd282 ))))((word) &rotVec_v18192, var_c48892, caretRel_v18108, pd282); }; }; SOURCE(23393, 56) { word pd283; pd283 = (* (( (ptr) (* (( (ptr) gf_c50812)+184)/* var_c45788 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd283 ))))((word) data1_v17968, rotVec_v18192, (* (W2Pt) (* (ptr) (* (( (ptr) data_v17940)+6) ) ) ), pd283); }; } else { SOURCE(23511, 62) { word pd284; pd284 = (* (( (ptr) (* (( (ptr) gf_c50812)+184)/* var_c45788 */ ))+7) ); caretAngle_v18164 = (word) ( *( (fPt) ((* (ptr) pd284 ))))(caretRel_v18108, p2Rel_v18080, pd284); }; SOURCE(23613, 94) { word var_c48924; { word pd285; word x286; word x287; float tf288; pd285 = (* (( (ptr) (* (( (ptr) gf_c50812)+192)/* var_c47964 */ ))+9) ); var_c48924 = (word) ( *( (fPt) ((* (ptr) pd285 ))))(( tf288 = ( x286 = caretAngle_v18164, *(float*)&x286 ) / ( x287 = (* (ptr) &fc36 ), *(float*)&x287 ), *(word*)&tf288 ), pd285); }; { word pd289; pd289 = (* (( (ptr) (* (( (ptr) gf_c50812)+192)/* var_c47964 */ ))+39) ); (void) ( *( (fPt) ((* (ptr) pd289 ))))((word) &rotVec_v18192, var_c48924, caretRel_v18108, pd289); }; }; SOURCE(23709, 56) { word pd290; pd290 = (* (( (ptr) (* (( (ptr) gf_c50812)+184)/* var_c45788 */ ))+10) ); (void) ( *( (fPt) ((* (ptr) pd290 ))))((word) data2_v17996, rotVec_v18192, (* (W2Pt) (* (ptr) (* (( (ptr) data_v17940)+6) ) ) ), pd290); }; }; }; SOURCE(23770, 59) { word pd291; pd291 = (* (( (ptr) (* (( (ptr) gf_c50812)+190)/* var_c47100 */ ))+24) ); (* (( (ptr) data1_v17968)+6) ) = (word) ( *( (fPt) ((* (ptr) pd291 ))))((* (W2Pt) (( (ptr) seg1_v14948)+9) ), (* (W2Pt) data1_v17968 ), (* (W2Pt) ( ( (ptr) seg1_v14948)+11) ), pd291); }; SOURCE(23831, 59) { word pd292; pd292 = (* (( (ptr) (* (( (ptr) gf_c50812)+190)/* var_c47100 */ ))+24) ); (* (( (ptr) data2_v17996)+6) ) = (word) ( *( (fPt) ((* (ptr) pd292 ))))((* (W2Pt) (( (ptr) seg2_v14976)+9) ), (* (W2Pt) data2_v17996 ), (* (W2Pt) ( ( (ptr) seg2_v14976)+11) ), pd292); }; SOURCE(23892, 25) (void) UpdateBoundBoxOfArc_P3180(seg1_v14948); SOURCE(23919, 25) (void) UpdateBoundBoxOfArc_P3180(seg2_v14976); SOURCE(23946, 176) if ((0 == (* (( (ptr) (* (( (ptr) data_v17940)+6) ))+1) ))) { SOURCE(24039, 30) { word pd293; pd293 = (* (( (ptr) (* (( (ptr) gf_c50812)+185)/* var_c46108 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd293 ))))(seg1_v14948, pd293); }; SOURCE(24071, 30) { word pd294; pd294 = (* (( (ptr) (* (( (ptr) gf_c50812)+185)/* var_c46108 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd294 ))))(seg2_v14976, pd294); }; SOURCE(24103, 19) seg1_v14948 = seg2_v14976; /* removed bogus assignment */ goto lab_L100029; }; /* removed tail goto */ lab_L100029: ; (* (ptr) formal_c0606 ) = seg1_v14948; (* (( (ptr) formal_c0606)+1) ) = seg2_v14976; return; } static void Init_P4560() { register ptr gf_c50844 = (ptr) &globalframe; word classDef_v18236; /* Init: */ SOURCE(24131, 487) SOURCE(24149, 78) { word var_c48956; word var_c48988; var_c48956 = (word) BuildLineClass_P1380(); var_c48988 = XR_NewObject(8, (* (( (ptr) gf_c50844)+13) )); (* (ptr) var_c48988 ) = (* (( (ptr) gf_c50844)+21) ); (* (( (ptr) var_c48988)+1) ) = var_c48956; classDef_v18236 = var_c48988; }; SOURCE(24229, 40) { word pd295; pd295 = (* (( (ptr) (* (( (ptr) gf_c50844)+185)/* var_c46108 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd295 ))))(classDef_v18236, pd295); }; SOURCE(24271, 76) { word var_c49020; word var_c49052; var_c49020 = (word) BuildArcClass_P2700(); var_c49052 = XR_NewObject(8, (* (( (ptr) gf_c50844)+13) )); (* (ptr) var_c49052 ) = (* (( (ptr) gf_c50844)+20) ); (* (( (ptr) var_c49052)+1) ) = var_c49020; classDef_v18236 = var_c49052; }; SOURCE(24349, 40) { word pd296; pd296 = (* (( (ptr) (* (( (ptr) gf_c50844)+185)/* var_c46108 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd296 ))))(classDef_v18236, pd296); }; SOURCE(24392, 72) { word var_c49084; word var_c49116; var_c49084 = (word) BuildCircleClass_P1020(); var_c49116 = XR_NewObject(8, (* (( (ptr) gf_c50844)+13) )); (* (ptr) var_c49116 ) = (* (( (ptr) gf_c50844)+25) ); (* (( (ptr) var_c49116)+1) ) = var_c49084; classDef_v18236 = var_c49116; }; SOURCE(24466, 40) { word pd297; pd297 = (* (( (ptr) (* (( (ptr) gf_c50844)+185)/* var_c46108 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd297 ))))(classDef_v18236, pd297); }; SOURCE(24508, 68) { word var_c49148; word var_c49180; var_c49148 = (word) BuildDiscClass_P1260(); var_c49180 = XR_NewObject(8, (* (( (ptr) gf_c50844)+13) )); (* (ptr) var_c49180 ) = (* (( (ptr) gf_c50844)+24) ); (* (( (ptr) var_c49180)+1) ) = var_c49148; classDef_v18236 = var_c49180; }; SOURCE(24578, 40) { word pd298; pd298 = (* (( (ptr) (* (( (ptr) gf_c50844)+185)/* var_c46108 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd298 ))))(classDef_v18236, pd298); }; } /* file: GGSegmentImplB, module: GGSegmentImplB, compiled at: February 5, 1993 2:09:42 pm PST */ extern void XR_install_GGSegmentImplB() { NoName_Q4860(); } extern void XR_run_GGSegmentImplB() { XR_Start(&globalframe); }