public override int DetectHandle(BaseObject op, BaseDraw bd, int x, int y, QUALIFIER qualifier)
 {
     if (0 != (qualifier & QUALIFIER.QUALIFIER_CTRL))
         return -1;
     double4x4 mg = op.GetMg();
     if (bd.PointInRange(mg * GetRTHandle(op,0),x,y))
         return 0; // OK
     return -1; // Not OK
 }
예제 #2
0
        public override int DetectHandle(BaseObject op, BaseDraw bd, int x, int y, QUALIFIER qualifier)
        {
            if (0 != (qualifier & QUALIFIER.QUALIFIER_CTRL))
            {
                return(-1);
            }
            double4x4 mg = op.GetMg();

            if (bd.PointInRange(mg * GetRTHandle(op, 0), x, y))
            {
                return(0); // OK
            }
            return(-1);    // Not OK
        }
예제 #3
0
        //TODO: deleted 'override'
        public bool MoveHandle(BaseObject op, BaseObject undo, ref double4x4 tm, int hit_id, QUALIFIER qualifier)
        {
            BaseContainer src = undo.GetDataInstance();
            BaseContainer dst = op.GetDataInstance();

            double3 handle_dir = new double3(1.0, 0.0, 0.0);

            handle_dir = SwapPoint(handle_dir, src.GetInt32(C4dApi.PRIM_PLANE));

            double val = double3.Dot(tm.Offset, handle_dir);

            dst.SetFloat(CIRCLEOBJECT_RAD, M.Clamp(src.GetFloat(CIRCLEOBJECT_RAD) + val, 0.0, C4dApi.MAXRANGE));
            return(true);
        }
예제 #4
0
        public virtual bool MoveHandle(BaseObject op, BaseObject undo, Fusee.Math.Core.double3 /* constVector&_cstype */ mouse_pos, int hit_id, QUALIFIER qualifier, BaseDraw bd)
        {
            bool ret = C4dApiPINVOKE.ObjectData_MoveHandle(swigCPtr, BaseObject.getCPtr(op), BaseObject.getCPtr(undo), ref mouse_pos /* constVector&_csin */, hit_id, (int)qualifier, BaseDraw.getCPtr(bd));

            return(ret);
        }
예제 #5
0
        public virtual int DetectHandle(BaseObject op, BaseDraw bd, int x, int y, QUALIFIER qualifier)
        {
            int ret = C4dApiPINVOKE.ObjectData_DetectHandle(swigCPtr, BaseObject.getCPtr(op), BaseDraw.getCPtr(bd), x, y, (int)qualifier);

            return(ret);
        }
        //TODO: deleted 'override'
        public bool MoveHandle(BaseObject op, BaseObject undo, ref double4x4 tm, int hit_id, QUALIFIER qualifier)
        {
            BaseContainer src = undo.GetDataInstance();
            BaseContainer dst = op.GetDataInstance();

            double3 handle_dir = new double3(1.0,0.0,0.0);
            handle_dir = SwapPoint(handle_dir,src.GetLong(C4dApi.PRIM_PLANE));

            double val = double3.Dot(tm.Offset, handle_dir);

            dst.SetReal(CIRCLEOBJECT_RAD, M.Saturate(src.GetReal(CIRCLEOBJECT_RAD)+val, 0.0, C4dApi.MAXRANGE));
            return true;
        }
예제 #7
0
 public virtual bool MoveHandle(BaseObject op, BaseObject undo, Fusee.Math.Core.Vector3D /* constVector&_cstype */ mouse_pos, int hit_id, QUALIFIER qualifier, BaseDraw bd) {
   bool ret = C4dApiPINVOKE.ObjectData_MoveHandle(swigCPtr, BaseObject.getCPtr(op), BaseObject.getCPtr(undo), ref mouse_pos /* constVector&_csin */, hit_id, (int)qualifier, BaseDraw.getCPtr(bd));
   return ret;
 }
예제 #8
0
 public virtual int DetectHandle(BaseObject op, BaseDraw bd, int x, int y, QUALIFIER qualifier) {
   int ret = C4dApiPINVOKE.ObjectData_DetectHandle(swigCPtr, BaseObject.getCPtr(op), BaseDraw.getCPtr(bd), x, y, (int)qualifier);
   return ret;
 }