⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sitetran.cpp

📁 linux下的一款播放器
💻 CPP
📖 第 1 页 / 共 5 页
字号:
      {         m_pLines[i] = tl.m_pLines[i];      }   }}void tranLines::Offset(int x, int y){   for (int i = 0; i < m_nLines; ++i)   {      m_pLines[i].start.x += x;      m_pLines[i].start.y += y;      m_pLines[i].finish.x += x;      m_pLines[i].finish.y += y;   }}void tranLines::Destroy(){   if (m_pLines)   {      delete [] m_pLines;      m_pLines = NULL;   }   m_nLines = 0;}void tranLines::Clip(int left, int top, int right, int bottom){   int newlines = m_nLines;   for (int i = 0; i < m_nLines; ++i)   {      if (!m_pLines[i].Clip(left, top, right, bottom))      {         // the line is not within our area so mark it for clipping         m_pLines[i].start.x = m_pLines[i].start.y = m_pLines[i].finish.x = m_pLines[i].finish.y = -42;         --newlines;      }   }   if (newlines != m_nLines)  // do we need to remove any lines?   {      tranLines tmpLines;      tmpLines.m_nLines = newlines;      tmpLines.m_pLines = new LineSegment[newlines];      for (int i = 0, c = 0; c < newlines; ++i)      {         if (m_pLines[i].start.x != -42 && m_pLines[i].start.y != -42 &&             m_pLines[i].finish.x != -42 && m_pLines[i].finish.y != -42)         {            tmpLines.m_pLines[c++] = m_pLines[i];         }      }   }}void GetDiagonalStripCoords(HXxPoint topLeft, HXxPoint topRight, HXxPoint bottomRight, HXxPoint bottomLeft, HXxPoint* topPoint, HXxPoint* bottomPoint, int completeness){   int topWidth = topRight.x - topLeft.x;   int bottomWidth = bottomRight.x - bottomLeft.x;   int height = max(bottomLeft.y - topLeft.y, bottomRight.y - topRight.y);   double angle;       int length;   int mark;       if (topWidth > bottomWidth)   {      int rightHeight = topLeft.y - topRight.y;      length = int(sqrt((double)(topWidth * topWidth + rightHeight * rightHeight)));      mark = int(double(length * completeness) / 1000.0);      angle = atan(double(topLeft.y - topRight.y) / double(topWidth));              topPoint->x = int(topLeft.x + cos(angle) * mark);      topPoint->y = int(topLeft.y - sin(angle) * mark);              int length2 = int(sin(angle) * height);              bottomPoint->x = topPoint->x + int(cos(angle) * length2 + 1);      bottomPoint->y = topPoint->y + height - int(sin(angle) * length2);   }   else   {      int leftHeight = bottomLeft.y - bottomRight.y;      length = int(sqrt((double)(bottomWidth * bottomWidth + leftHeight * leftHeight)));      mark = int(double(length * completeness) / 1000.0);      angle = atan(double(bottomLeft.y - bottomRight.y) / double(bottomWidth));              bottomPoint->x = int(bottomLeft.x + cos(angle) * mark + 1);      bottomPoint->y = int(bottomLeft.y - sin(angle) * mark);              int length2 = int(sin(angle) * height);              topPoint->x = bottomPoint->x - int(cos(angle) * length2 + 1);      topPoint->y = bottomPoint->y - height + int(sin(angle) * length2);   }}void PrintRgnData(HXREGION* retRGN){#ifdef _WINDOWS   FILE* f1 = ::fopen("d:\\expose.txt", "a+"); /* Flawfinder: ignore */   LPRGNDATA    lpRgnData;   DWORD sizeNeeed = GetRegionData((HRGN)retRGN, 0, NULL);    lpRgnData = (LPRGNDATA) new char[sizeNeeed];   GetRegionData((HRGN)retRGN, sizeNeeed, lpRgnData);    for(int j = 0; j < (int) lpRgnData->rdh.nCount;j++)   {      HXRECTANGLE* pRect = (HXRECTANGLE*) lpRgnData->Buffer;      ::fprintf(f1, "Rect (%d, %d) -(%d, %d)\n", pRect[j].x, pRect[j].y, pRect[j].width, pRect[j].height);   }   delete lpRgnData;   fclose(f1);#else   HX_ASSERT(!"cant print rgn data");#endif}//#define _TESTING_TRANITIONS_/*  * Table of all transition effects *///          {DefaultTransition, ""},#ifdef _TRANSITIONS_ON_tranStruct z_barWipeTable[] ={   {EdgeWipe, 1,"leftToRight"},   {SlideVerticalEdgeWipe, 2, "topToBottom"}};tranStruct z_boxWipeTable[] ={   {TopLeftEdgeWipe, 3, "topLeft"},   {TopRightEdgeWipe, 4, "topRight"},   {BottomRightEdgeWipe, 5, "bottomRight"},   {BottomLeftEdgeWipe, 6, "bottomLeft"},   {TopCenterEdgeWipe, 23, "topCenter"},   {CenterRightEdgeWipe, 24, "rightCenter"},   {BottomCenterEdgeWipe, 25, "bottomCenter"},   {LeftCenterEdgeWipe, 26, "leftCenter"}};tranStruct z_fourBoxTable[] ={   {FourCornerEdgeWipe, 7, "cornersIn"},   {FourBoxEdgeWipe , 8, "cornersOut"}};tranStruct z_barnDoorTable[] ={   {BarnVerticalEdgeWipe , 21, "vertical"},   {BarnHorizontalEdgeWipe, 22, "horizontal"},   {DiagonaLeftOutEdgeWipe, 45, "diagonalBottomLeft"},   {DiagonaRightOutEdgeWipe, 46, "diagonalTopLeft"}};    tranStruct z_diagonalTable[] ={   {DiagonalLeftDownEdgeWipe, 41, "topLeft"},   {DiagonalRightDownEdgeWipe, 42, "topRight"}};tranStruct z_bowTieTable[] ={   {VerticalBowTieEdgeWipe, 43, "vertical"},   {HorizontalBowTieEdgeWipe, 44, "horizontal"}};tranStruct z_miscDiagonalTable[] ={   {DiagonaCrossEdgeWipe, 47, "doubleBarnDoor"},   {DiagonalBoxEdgeWipe, 48, "doubleDiamond"}};tranStruct z_veeTable[] ={   {FilledVEdgeWipe, 61, "down"},   {FilledVRightEdgeWipe, 62, "left"},   {FilledVBottomEdgeWipe, 63, "up"},   {FilledVLeftEdgeWipe, 64, "right"}};tranStruct z_barnVeeTable[] ={   {HollowVEdgeWipe, 65, "down"},   {HollowVRightEdgeWipe, 66, "left"},   {HollowVBottomEdgeWipe , 67, "up"},   {HollowVLeftEdgeWipe, 68, "right"}};tranStruct z_zigZagTable[] ={   {VerticalZigZagEdgeWipe, 71, "leftToRight"},   {HorizontalZigZagEdgeWipe, 72, "topToBottom"}};tranStruct z_barnZigZagTable[] ={   {VerticalBarnZigZagEdgeWipe, 73, "vertical"},   {HorizontalBarnZigZagEdgeWipe, 74, "horizontal"}};//-----------------------------------------------------------------------tranStruct z_irisTable[] ={   {RectangleIris, 101, "rectangle"},   {DiamondIris, 102, "diamond"}};tranStruct z_triangleTable[] ={   {TriangleIris, 103, "up"},   {TriangleRightIris, 104, "right"},   {TriangleUpsideDownIris, 105, "down"},   {TriangleLeftIris, 106, "left"}};tranStruct z_arrowHeadTable[] ={   {ArrowHeadIris, 107, "up"},   {ArrowHeadRightIris, 108, "right"},   {ArrowHeadUpsideDownIris, 109, "down"},   {ArrowHeadLeftIris, 110, "left"}};tranStruct z_pentagonTable[] ={   {PentagonIris, 111, "up"},   {PentagonUpsideDownLeftIris, 112, "down"}};tranStruct z_hexagonTable[] ={   {HexagonSideIris, 113, "horizontal"},   {HexagonIris, 114, "vertical"}};tranStruct z_ellipseTable[] ={   {CircleIris, 119, "circle"},   {OvalIris, 120, "horizontal"},   {OvalSideIris, 121, "vertical"}};tranStruct z_eyeTable[] ={   {CatEyeIris, 122, "horizontal"},   {CatEyeSideIris, 123, "vertical"}};tranStruct z_roundRectTable[] ={   {RoundRectHorizontal, 124, "horizontal"},   {RoundRectVeritical, 125, "vertical"}};tranStruct z_starTable[] ={   {FourPointStarIris, 127, "fourPoint"},   {FivePointStarIris, 128, "fivePoint"},   {SixPointStarIris, 129, "sixPoint"}};tranStruct z_miscShapeTable[] ={   {HeartIris, 130, "heart"},   {KeyHoleIris, 131, "keyhole"}};//-----------------------------------------------------------------------tranStruct z_clockTable[] ={   {RotatingTopRadial, 201, "clockwiseTwelve"},   {RotatingRightRadial, 202, "clockwiseThree"},   {RotatingBottomRadial , 203, "clockwiseSix"},   {RotatingLeftRadial, 204, "clockwiseNine"}};tranStruct z_pinWheelTable[] ={   {RotatingTopBottomRadial, 205, "twoBladeVertical"},   {RotatingLeftRightRadial, 206, "twoBladeHorizontal"},   {RotatingQuadrantRadial, 207, "fourBlade"}};tranStruct z_singleSweepTable[] ={   {Top180Radial, 221, "clockwiseTop"},   {Right180Radial, 222, "clockwiseRight"},   {Bottom180Radial, 223, "clockwiseBottom"},   {Left180Radial, 224, "clockwiseLeft"},   {RotatingTopLeftRadial, 241, "clockwiseTopLeft"},   {RotatingBottomLeftRadial, 242, "counterClockwiseBottomLeft"},   {RotatingBottomRightRadial, 243, "clockwiseBottomRight"},   {RotatingTopRightRadial, 244, "counterClockwiseTopRight"}};tranStruct z_fanTable[] ={       {TopBottom180Radial, 211, "centerTop"},   {RightToLeft180Radial, 212, "centerRight"},   {OpenVTopRadial, 231, "top"},   {OpenVRightRadial, 232, "right"},   {OpenVBottomRadial, 233, "bottom"},   {OpenVLeftRadial, 234, "left"},};tranStruct z_doubleFanTable[] ={   {topBottom90Radial, 213, "fanOutVertical"},   {RightToLeft90Radial, 214, "fanOutHorizontal"},   {OpenVTopBottomRadial, 235, "fanInVertical"},   {OpenVLeftRightRadial, 236, "fanInHorizontal"}};tranStruct z_doubleSweepTable[] ={   {CounterRotatingTopBottomRadial, 225, "parallelVertical"},   {CounterRotatingLeftRightRadial, 226, "parallelDiagonal"},   {DoubleRotatingTopBottomRadial, 227, "oppositeVertical"},   {DoubleRotatingLeftRightRadial, 228, "oppositeHorizontal"},   {RotatingTopLeftBottomRightRadial, 245, "parallelDiagonalTopLeft"},   {RotatingBottomLeftTopRightRadial, 246, "parallelDiagonalBottomLeft"}};tranStruct z_saloonDoorTable[] ={   {RotatingTopLeftRightRadial, 251, "top"},   {RotatingLeftTopBottomRadial, 252, "left"},   {RotatingBottomLeftRightRadial, 253, "bottom"},   {RotatingRightTopBottomRadial, 254, "right"}};tranStruct z_windshieldTable[] ={   {RotatingDoubleCenterRightRadial, 261, "right"},   {RotatingDoubleCenterTopRadial, 262, "up"},   {RotatingDoubleCenterTopBottomRadial, 263, "vertical"},   {RotatingDoubleCenterLeftRightRadial, 264, "horizontal"}};//-----------------------------------------------------------------------tranStruct z_snakeTable[] ={   {HorizontalMatrix, 301, "topLeftHorizontal"},   {VerticalMatrix, 302, "topLeftVertical"},   {TopLeftDiagonalMatrix, 303, "topLeftDiagonal"},   {TopRightDiagonalMatrix, 304, "topRightDiagonal"},   {BottomRightDiagonalMatrix, 305, "bottomRightDiagonal"},   {BottomLeftDiagonalMatrix, 306, "bottomLeftDiagonal"}};tranStruct z_spiralTable[] ={   {ClockwiseTopLeftMatrix, 310, "topLeftClockwise"},   {ClockwiseTopRightMatrix, 311, "topRightClockwise"},   {ClockwiseBottomRightMatrix, 312, "bottomRightClockwise"},   {ClockwiseBottomLeftMatrix, 313, "bottomLeftClockwise"},   {CounterClockwiseTopLeftMatrix, 314, "topLeftCounterClockwise"},   {CounterClockwiseTopRightMatrix, 315, "topRightCounterClockwise"},   {CounterClockwiseBottomRightMatrix, 316, "bottomRightCounterClockwise"},   {CounterClockwiseBottomLeftMatrix, 317, "bottomLeftCounterClockwise"}};tranStruct z_parallelSnakesTable[] ={   {VerticalStartTopMatrix, 320, "verticalTopSame"},   {VerticalStartBottomMatrix, 321, "verticalBottomSame"},   {VerticalStartTopOppositeMatrix, 322, "verticalTopLeftOpposite"},   {VerticalStartBottomOppositeMatrix, 323, "verticalBottomLeftOpposite"},   {HorizontalStartLeftMatrix, 324, "horizontalLeftSame"},   {HorizontalStartRightMatrix, 325, "horizontalRightSame"},   {HorizontalStartLeftOppositeMatrix, 326, "horizontalTopLeftOpposite"},   {HorizontalStartRightOppositeMatrix, 327, "horizontalTopRightOpposite"},   {DoubleDiagonalBottom, 328, "diagonalBottomLeftOpposite"},   {DoubleDiagonalTop, 329, "diagonalTopLeftOpposite"}};tranStruct z_boxSnakesTable[] ={   {DoubleSpiralTopMatrix, 340, "twoBoxTop"},   {DoubleSpiralBottomMatrix, 341, "twoBoxBottom"},   {DoubleSpiralLeftMatrix, 342, "twoBoxLeft"},   {DoubleSpiralRightMatrix, 343, "twoBoxRight"},   {QuadSpiralVerticalMatrix, 344, "fourBoxVertical"},   {QuadSpiralHorizontalMatrix, 345, "fourBoxHorizontal"}};tranStruct z_waterfallTable[] ={   {VerticalWaterfallLeftMatrix, 350, "verticalLeft"},   {VerticalWaterfallRightMatrix, 351, "verticalRight"},   {HorizontalWaterfallLeftMatrix, 352, "horizontalLeft"},   {HorizontalWaterfallRightMatrix, 353, "horizontalRight"}};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -