541 jdouble tx;
542 jdouble dydx; /* dy in dest space for each dx in src space */
543 jdouble dydy; /* dy in dest space for each dy in src space */
544 jdouble ty;
545 } TransformInfo;
546
547 extern JNIEXPORT void JNICALL
548 Transform_GetInfo(JNIEnv *env, jobject txform, TransformInfo *pTxInfo);
549 extern JNIEXPORT void JNICALL
550 Transform_transform(TransformInfo *pTxInfo, jdouble *pX, jdouble *pY);
551
552 void GrPrim_RefineBounds(SurfaceDataBounds *bounds, jint transX, jint transY,
553 jfloat *coords, jint maxCoords);
554
555 JNIEXPORT extern jfieldID path2DTypesID;
556 JNIEXPORT extern jfieldID path2DNumTypesID;
557 JNIEXPORT extern jfieldID path2DWindingRuleID;
558 JNIEXPORT extern jfieldID path2DFloatCoordsID;
559 JNIEXPORT extern jfieldID sg2dStrokeHintID;
560 JNIEXPORT extern jint sunHints_INTVAL_STROKE_PURE;
561
562 /*
563 * Macros for using jlong variables as 32bits.32bits fractional values
564 */
565 #define LongOneHalf (((jlong) 1) << 31)
566 #define IntToLong(i) (((jlong) (i)) << 32)
567 #define DblToLong(d) ((jlong) ((d) * IntToLong(1)))
568 #define LongToDbl(l) (((jdouble) l) / IntToLong(1))
569 #define WholeOfLong(l) ((jint) ((l) >> 32))
570 #define FractOfLong(l) ((jint) (l))
571 #define URShift(i, n) (((juint) (i)) >> (n))
572
573 /*
574 * Macros to help in defining arrays of NativePrimitive structures.
575 *
576 * These macros are the very base macros. More specific macros are
577 * defined in LoopMacros.h.
578 *
579 * Note that the DrawLine, DrawRect, and DrawPolygons primitives are
580 * all registered together from a single shared native function pointer.
|
541 jdouble tx;
542 jdouble dydx; /* dy in dest space for each dx in src space */
543 jdouble dydy; /* dy in dest space for each dy in src space */
544 jdouble ty;
545 } TransformInfo;
546
547 extern JNIEXPORT void JNICALL
548 Transform_GetInfo(JNIEnv *env, jobject txform, TransformInfo *pTxInfo);
549 extern JNIEXPORT void JNICALL
550 Transform_transform(TransformInfo *pTxInfo, jdouble *pX, jdouble *pY);
551
552 void GrPrim_RefineBounds(SurfaceDataBounds *bounds, jint transX, jint transY,
553 jfloat *coords, jint maxCoords);
554
555 JNIEXPORT extern jfieldID path2DTypesID;
556 JNIEXPORT extern jfieldID path2DNumTypesID;
557 JNIEXPORT extern jfieldID path2DWindingRuleID;
558 JNIEXPORT extern jfieldID path2DFloatCoordsID;
559 JNIEXPORT extern jfieldID sg2dStrokeHintID;
560 JNIEXPORT extern jint sunHints_INTVAL_STROKE_PURE;
561 JNIEXPORT extern jint graphicsPrimitive_traceflags;
562
563 /*
564 * Macros for using jlong variables as 32bits.32bits fractional values
565 */
566 #define LongOneHalf (((jlong) 1) << 31)
567 #define IntToLong(i) (((jlong) (i)) << 32)
568 #define DblToLong(d) ((jlong) ((d) * IntToLong(1)))
569 #define LongToDbl(l) (((jdouble) l) / IntToLong(1))
570 #define WholeOfLong(l) ((jint) ((l) >> 32))
571 #define FractOfLong(l) ((jint) (l))
572 #define URShift(i, n) (((juint) (i)) >> (n))
573
574 /*
575 * Macros to help in defining arrays of NativePrimitive structures.
576 *
577 * These macros are the very base macros. More specific macros are
578 * defined in LoopMacros.h.
579 *
580 * Note that the DrawLine, DrawRect, and DrawPolygons primitives are
581 * all registered together from a single shared native function pointer.
|