コード例 #1
0
        private CollisionHandler(cpCollisionHandlerPointer collisionHandle, ref cpCollisionHandler handler)
        {
            handle = collisionHandle;

            IntPtr data = NativeInterop.RegisterHandle(this);

            handler.userData = data;

            TypeA = (int)handler.typeA;
            TypeB = (int)handler.typeB;

            cpCollisionHandler.ToPointer(handler, handle);
        }
コード例 #2
0
        public IntPtr AcquireDebugDrawOptions(IDebugDraw debugDraw, DebugDrawFlags flags, DebugDrawColors colors)
        {
            this.flags          = (int)flags;
            collisionPointColor = colors.CollisionPoint;
            constraintColor     = colors.Constraint;
            shapeOutlineColor   = colors.ShapeOutline;

            drawCircle     = spaceDebugDrawCircleCallback.ToFunctionPointer();
            drawSegment    = spaceDebugDrawSegmentCallback.ToFunctionPointer();
            drawFatSegment = spaceDebugDrawFatSegmentCallback.ToFunctionPointer();
            drawPolygon    = spaceDebugDrawPolygonCallback.ToFunctionPointer();
            drawDot        = spaceDebugDrawDotCallback.ToFunctionPointer();
            colorForShape  = spaceDebugDrawColorForShapeCallback.ToFunctionPointer();

            data = NativeInterop.RegisterHandle(debugDraw);

            return(ToPointer());
        }
コード例 #3
0
        /// <summary>
        /// Register managed object to native user data.
        /// </summary>
        internal protected void RegisterUserData()
        {
            cpDataPointer pointer = NativeInterop.RegisterHandle(this);

            NativeMethods.cpConstraintSetUserData(constraint, pointer);
        }
コード例 #4
0
ファイル: Shape.cs プロジェクト: mistajuliax/ChipmunkBinding
        /// <summary>
        /// Register managed object in the native user data.
        /// </summary>
        protected void RegisterUserData()
        {
            cpDataPointer pointer = NativeInterop.RegisterHandle(this);

            NativeMethods.cpShapeSetUserData(shape, pointer);
        }
コード例 #5
0
        void RegisterUserData()
        {
            cpDataPointer pointer = NativeInterop.RegisterHandle(this);

            NativeMethods.cpBodySetUserData(body, pointer);
        }
コード例 #6
0
ファイル: Space.cs プロジェクト: mistajuliax/ChipmunkBinding
        void RegisterUserData()
        {
            cpDataPointer pointer = NativeInterop.RegisterHandle(this);

            NativeMethods.cpSpaceSetUserData(space, pointer);
        }