Adobe.com
Contents Suites Classes Class Index Member Index

AIFixedMath.h File Reference

#include "AITypes.h"
#include "AIHeaderBegin.h"
#include "AIHeaderEnd.h"

Go to the source code of this file.

Classes

struct  AIFixedMathSuite
 Use these functions to work with fixed-point numbers. More...

Defines

#define kAIFixedMathSuite   "AI Fixed Math Suite"
#define kAIFixedMathSuiteVersion   AIAPI_VERSION(4)
#define kAIFixedMathVersion   kAIFixedMathSuiteVersion
#define kFixedMin   ((AIFixed) 0x80000000)
#define kFixedMax   ((AIFixed) 0x7FFFFFFF)
#define kFixedUnknown   ((AIFixed) 0x80000000)
#define kFixedOne   ((AIFixed) 0x00010000)
#define kFixedZero   ((AIFixed) 0x00000000)
#define kFixedHundredth   ((AIFixed) 0x0000028F)
#define kFixedSixteenth   ((AIFixed) 0x00001000)
#define kFixedTenth   ((AIFixed) 0x00001999)
#define kFixedEighth   ((AIFixed) 0x00002000)
#define kFixedQuarter   ((AIFixed) 0x00004000)
#define kFixedHalf   ((AIFixed) 0x00008000)
#define kFixedSevenEighths   ((AIFixed) 0x0000E000)
#define kFixedOne1   ((AIFixed) 0x0000FFFF)
#define kFixedOneThird   ((AIFixed) 0x00005555)
#define kFixedFourThirds   ((AIFixed) 0x00015555)
#define kFixedThreeHalves   ((AIFixed) 0x00018000)
#define kFixedPi4   ((AIFixed) 0x0000C910)
#define kFixedPi2   ((AIFixed) 0x00019220)
#define kFixedPi   ((AIFixed) 0x00032440)
#define kFixedTwoPi   ((AIFixed) 0x00064880)
#define kFixedGolden   ((AIFixed) 0x00019E37)
#define kFractZero   ((AIFract) 0x00000000)
#define kFractFixedRound   ((AIFract) 0x00002000)
#define kFractPi180   ((AIFract) 0x011DF4A0)
#define kFractQuarter   ((AIFract) 0x10000000)
#define kFractHalf   ((AIFract) 0x20000000)
#define kFractOne   ((AIFract) 0x40000000)
#define kFractFourThirds   ((AIFract) 0x55555555)
#define kFractSqrtTwo   ((AIFract) 0x5A82799A)
#define kFractUnknown   ((AIFract) 0x80000000)
#define _FixedToFract(a)   ((AIFract)(a) << 14)
#define _FractRoundToFixed(a)   ((AIFixed) (((a) + kFractFixedRound) >> 14))
#define _FractTruncToFixed(a)   ((AIFixed) ((a) >> 14))
#define _ShortToFixed(a)   ((AIFixed)(a) << 16)
#define _FixedRoundToShort(a)   ((ai::int16) (((a) + kFixedHalf) >> 16))
#define _FixedTruncToShort(a)   ((ai::int16) ((a) >> 16))
#define _FloatToFixed(a)   ((AIFixed)((a) * 65536.0))
#define _FixedFloor(a)   ((AIFixed) ((a) & 0xFFFF0000L))
#define _FixedCeiling(a)   _FixedFloor((a) + kFixedOne1)
#define _FixedRound(a)   _FixedFloor((a) + kFixedHalf)
#define _FixedFraction(a)   ((a) & 0x0000FFFFL)
#define _FixedAverage(a, b)   (((a) + (b) + 1) >> 1)
#define _FixedHalf(a)   (((a) + 1) >> 1)
#define _FixedOverflow(a)   ((a) == kFixedMax || (a) == kFixedMin)

Detailed Description


Define Documentation

#define _FixedAverage ( a,
 )     (((a) + (b) + 1) >> 1)
#define _FixedCeiling (  )     _FixedFloor((a) + kFixedOne1)
#define _FixedFloor (  )     ((AIFixed) ((a) & 0xFFFF0000L))
#define _FixedFraction (  )     ((a) & 0x0000FFFFL)
#define _FixedHalf (  )     (((a) + 1) >> 1)
#define _FixedOverflow (  )     ((a) == kFixedMax || (a) == kFixedMin)
#define _FixedRound (  )     _FixedFloor((a) + kFixedHalf)
#define _FixedRoundToShort (  )     ((ai::int16) (((a) + kFixedHalf) >> 16))
#define _FixedToFract (  )     ((AIFract)(a) << 14)
#define _FixedTruncToShort (  )     ((ai::int16) ((a) >> 16))
#define _FloatToFixed (  )     ((AIFixed)((a) * 65536.0))
#define _FractRoundToFixed (  )     ((AIFixed) (((a) + kFractFixedRound) >> 14))
#define _FractTruncToFixed (  )     ((AIFixed) ((a) >> 14))
#define _ShortToFixed (  )     ((AIFixed)(a) << 16)
#define kAIFixedMathSuite   "AI Fixed Math Suite"
#define kAIFixedMathSuiteVersion   AIAPI_VERSION(4)
#define kAIFixedMathVersion   kAIFixedMathSuiteVersion
#define kFixedEighth   ((AIFixed) 0x00002000)
#define kFixedFourThirds   ((AIFixed) 0x00015555)
#define kFixedGolden   ((AIFixed) 0x00019E37)
#define kFixedHalf   ((AIFixed) 0x00008000)
#define kFixedHundredth   ((AIFixed) 0x0000028F)
#define kFixedMax   ((AIFixed) 0x7FFFFFFF)
#define kFixedMin   ((AIFixed) 0x80000000)
#define kFixedOne   ((AIFixed) 0x00010000)
#define kFixedOne1   ((AIFixed) 0x0000FFFF)
#define kFixedOneThird   ((AIFixed) 0x00005555)
#define kFixedPi   ((AIFixed) 0x00032440)
#define kFixedPi2   ((AIFixed) 0x00019220)
#define kFixedPi4   ((AIFixed) 0x0000C910)
#define kFixedQuarter   ((AIFixed) 0x00004000)
#define kFixedSevenEighths   ((AIFixed) 0x0000E000)
#define kFixedSixteenth   ((AIFixed) 0x00001000)
#define kFixedTenth   ((AIFixed) 0x00001999)
#define kFixedThreeHalves   ((AIFixed) 0x00018000)
#define kFixedTwoPi   ((AIFixed) 0x00064880)
#define kFixedUnknown   ((AIFixed) 0x80000000)
#define kFixedZero   ((AIFixed) 0x00000000)
#define kFractFixedRound   ((AIFract) 0x00002000)
#define kFractFourThirds   ((AIFract) 0x55555555)
#define kFractHalf   ((AIFract) 0x20000000)
#define kFractOne   ((AIFract) 0x40000000)
#define kFractPi180   ((AIFract) 0x011DF4A0)
#define kFractQuarter   ((AIFract) 0x10000000)
#define kFractSqrtTwo   ((AIFract) 0x5A82799A)
#define kFractUnknown   ((AIFract) 0x80000000)
#define kFractZero   ((AIFract) 0x00000000)


Contents Suites Classes Class Index Member Index
Adobe Solutions Network
 
Copyright © 2014 Adobe Systems Incorporated. All rights reserved.
Terms of Use Online Privacy Policy Adobe and accessibility Avoid software piracy Permissions and Trademarks