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

📄 ball.c

📁 精通Matlab与C_C++混合程序设计.rar 是精通Matlab与C_C++混合程序设计 这本书的配套源码
💻 C
📖 第 1 页 / 共 4 页
字号:
/*
 * function varargout = ball(varargin)
 */
#line 1 "f:\\book\\ball\\ball.m"
static mxArray * Mball(int nargout_, mxArray * varargin) {
    #line 1 "f:\\book\\ball\\ball.m"
    mclMlineEnterFunction("f:\\book\\ball\\ball.m", "ball")
    #line 1 "f:\\book\\ball\\ball.m"
    mexLocalFunctionTable save_local_function_table_ = mclSetCurrentLocalFunctionTable(&_local_function_table_ball);
    #line 1 "f:\\book\\ball\\ball.m"
    int nargin_ = mclNargin(-1, varargin, NULL);
    #line 1 "f:\\book\\ball\\ball.m"
    mxArray * varargout = NULL;
    #line 1 "f:\\book\\ball\\ball.m"
    mxArray * ans = NULL;
    #line 1 "f:\\book\\ball\\ball.m"
    mxArray * _T0_ = NULL;
    #line 1 "f:\\book\\ball\\ball.m"
    mxArray * gui_State = NULL;
    #line 1 "f:\\book\\ball\\ball.m"
    mxArray * gui_Singleton = NULL;
    #line 1 "f:\\book\\ball\\ball.m"
    mclCopyArray(&varargin);
    /*
     * % BALL M-file for ball.fig
     * %      BALL, by itself, creates a new BALL or raises the existing
     * %      singleton*.
     * %
     * %      H = BALL returns the handle to a new BALL or the handle to
     * %      the existing singleton*.
     * %
     * %      BALL('CALLBACK',hObject,eventData,handles,...) calls the local
     * %      function named CALLBACK in BALL.M with the given input arguments.
     * %
     * %      BALL('Property','Value',...) creates a new BALL or raises the
     * %      existing singleton*.  Starting from the left, property value pairs are
     * %      applied to the GUI before ball_OpeningFunction gets called.  An
     * %      unrecognized property name or invalid value makes property application
     * %      stop.  All inputs are passed to ball_OpeningFcn via varargin.
     * %
     * %      *See GUI Options on GUIDE's Tools menu.  Choose "GUI allows only one
     * %      instance to run (singleton)".
     * %
     * % See also: GUIDE, GUIDATA, GUIHANDLES
     * 
     * % Edit the above text to modify the response to help ball
     * 
     * % Last Modified by GUIDE v2.5 30-Sep-2004 23:17:12
     * 
     * % Begin initialization code - DO NOT EDIT
     * gui_Singleton = 1;
     */
    #line 28 "f:\\book\\ball\\ball.m"
    mclMline(28);
    #line 28 "f:\\book\\ball\\ball.m"
    mlfAssign(&gui_Singleton, mlfScalar(1));
    /*
     * gui_State = struct('gui_Name',       mfilename, ...
     */
    #line 29 "f:\\book\\ball\\ball.m"
    mclMline(29);
    #line 29 "f:\\book\\ball\\ball.m"
    mlfAssign(&gui_State, mlfStruct(mxCreateString("gui_Name"), mxCreateString("ball"), mxCreateString("gui_Singleton"), mclVv(gui_Singleton, "gui_Singleton"), mxCreateString("gui_OpeningFcn"), mclCreateSimpleFunctionHandle(mlxBall_ball_OpeningFcn, "ball_OpeningFcn"), mxCreateString("gui_OutputFcn"), mclCreateSimpleFunctionHandle(mlxBall_ball_OutputFcn, "ball_OutputFcn"), mxCreateString("gui_LayoutFcn"), mclCreateEmptyArray(), mxCreateString("gui_Callback"), mclCreateEmptyArray(), NULL));
    /*
     * 'gui_Singleton',  gui_Singleton, ...
     * 'gui_OpeningFcn', @ball_OpeningFcn, ...
     * 'gui_OutputFcn',  @ball_OutputFcn, ...
     * 'gui_LayoutFcn',  [] , ...
     * 'gui_Callback',   []);
     * if nargin & isstr(varargin{1})
     */
    #line 35 "f:\\book\\ball\\ball.m"
    mclMline(35);
    #line 35 "f:\\book\\ball\\ball.m"
    {
        #line 35 "f:\\book\\ball\\ball.m"
        mxArray * a_ = mclInitialize(mlfScalar(nargin_));
        #line 35 "f:\\book\\ball\\ball.m"
        if (mlfTobool(a_) && mlfTobool(mclAnd(a_, mclFeval(mclValueVarargout(), mlxIsstr, mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mlfScalar(1)), NULL)))) {
            #line 35 "f:\\book\\ball\\ball.m"
            mxDestroyArray(a_);
            /*
             * gui_State.gui_Callback = str2func(varargin{1});
             */
            #line 36 "f:\\book\\ball\\ball.m"
            mclMline(36);
            #line 36 "f:\\book\\ball\\ball.m"
            mlfIndexAssign(&gui_State, ".gui_Callback", mclFeval(mclValueVarargout(), mlxStr2func, mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mlfScalar(1)), NULL));
        #line 36 "f:\\book\\ball\\ball.m"
        } else {
            #line 36 "f:\\book\\ball\\ball.m"
            mxDestroyArray(a_);
        #line 36 "f:\\book\\ball\\ball.m"
        }
    /*
     * end
     */
    #line 37 "f:\\book\\ball\\ball.m"
    mclMline(37);
    #line 37 "f:\\book\\ball\\ball.m"
    }
    /*
     * 
     * if nargout
     */
    #line 39 "f:\\book\\ball\\ball.m"
    mclMline(39);
    #line 39 "f:\\book\\ball\\ball.m"
    if (nargout_ != 0) {
        #line 39 "f:\\book\\ball\\ball.m"
        mlfAssign(&_T0_, mlfColon(mlfScalar(1), mlfScalar(nargout_), NULL));
        /*
         * [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
         */
        #line 40 "f:\\book\\ball\\ball.m"
        mclMline(40);
        #line 40 "f:\\book\\ball\\ball.m"
        mlfNGui_mainfcn(0, mlfIndexVarargout(&varargout, "{?}", _T0_, NULL), mclVv(gui_State, "gui_State"), mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mlfCreateColonIndex()), NULL);
    /*
     * else
     */
    #line 41 "f:\\book\\ball\\ball.m"
    mclMline(41);
    #line 41 "f:\\book\\ball\\ball.m"
    } else {
        /*
         * gui_mainfcn(gui_State, varargin{:});
         */
        #line 42 "f:\\book\\ball\\ball.m"
        mclMline(42);
        #line 42 "f:\\book\\ball\\ball.m"
        mclAssignAns(&ans, mlfNGui_mainfcn(0, mclAnsVarargout(), mclVv(gui_State, "gui_State"), mlfIndexRef(mclVa(varargin, "varargin"), "{?}", mlfCreateColonIndex()), NULL));
    /*
     * end
     */
    #line 43 "f:\\book\\ball\\ball.m"
    mclMline(43);
    #line 43 "f:\\book\\ball\\ball.m"
    }
    #line 43 "f:\\book\\ball\\ball.m"
    mxDestroyArray(gui_Singleton);
    #line 43 "f:\\book\\ball\\ball.m"
    mxDestroyArray(gui_State);
    #line 43 "f:\\book\\ball\\ball.m"
    mxDestroyArray(_T0_);
    #line 43 "f:\\book\\ball\\ball.m"
    mxDestroyArray(ans);
    #line 43 "f:\\book\\ball\\ball.m"
    mxDestroyArray(varargin);
    #line 43 "f:\\book\\ball\\ball.m"
    mclSetCurrentLocalFunctionTable(save_local_function_table_);
    #line 43 "f:\\book\\ball\\ball.m"
    mclMlineFunctionReturn()
    #line 43 "f:\\book\\ball\\ball.m"
    return varargout;
    /*
     * % End initialization code - DO NOT EDIT
     * 
     * 
     * % --- Executes just before ball is made visible.
     */
    #line 47 "f:\\book\\ball\\ball.m"
    mclMlineExitFunctionReturn();
    #line 47 "f:\\book\\ball\\ball.m"
}

/*
 * The function "Mball_ball_OpeningFcn" is the implementation version of the "ball/ball_OpeningFcn" M-function from file "f:\book\ball\ball.m" (lines 48-107). It contains the actual compiled code for that M-function. It is a static function and must only be called from one of the interface functions, appearing below.
 */
/*
 * function ball_OpeningFcn(hObject, eventdata, handles, varargin)
 */
#line 48 "f:\\book\\ball\\ball.m"
static void Mball_ball_OpeningFcn(mxArray * hObject, mxArray * eventdata, mxArray * handles, mxArray * varargin) {
    #line 48 "f:\\book\\ball\\ball.m"
    mclMlineEnterFunction("f:\\book\\ball\\ball.m", "ball/ball_OpeningFcn")
    #line 48 "f:\\book\\ball\\ball.m"
    mexLocalFunctionTable save_local_function_table_ = mclSetCurrentLocalFunctionTable(&_local_function_table_ball);
    #line 48 "f:\\book\\ball\\ball.m"
    mxArray * ans = NULL;
    #line 48 "f:\\book\\ball\\ball.m"
    mclCopyArray(&hObject);
    #line 48 "f:\\book\\ball\\ball.m"
    mclCopyArray(&eventdata);
    #line 48 "f:\\book\\ball\\ball.m"
    mclCopyArray(&handles);
    #line 48 "f:\\book\\ball\\ball.m"
    mclCopyArray(&varargin);
    /*
     * % This function has no output args, see OutputFcn.
     * % hObject    handle to figure
     * % eventdata  reserved - to be defined in a future version of MATLAB
     * % handles    structure with handles and user data (see GUIDATA)
     * % varargin   command line arguments to ball (see VARARGIN)
     * 
     * % Choose default command line output for ball
     * handles.output = hObject;
     */
    #line 56 "f:\\book\\ball\\ball.m"
    mclMline(56);
    #line 56 "f:\\book\\ball\\ball.m"
    mlfIndexAssign(&handles, ".output", mclVa(hObject, "hObject"));
    /*
     * %初始化当前figure对象
     * set(gcf,'color',[0.5 0.7 0.3]);%
     */
    #line 58 "f:\\book\\ball\\ball.m"
    mclMline(58);
    #line 58 "f:\\book\\ball\\ball.m"
    mclAssignAns(&ans, mlfNSet(0, mlfGcf(), mxCreateString("color"), mlfDoubleMatrix(1, 3, _array0_, (double *)NULL), NULL));
    /*
     * set(gcf,'doublebuffer','on');
     */
    #line 59 "f:\\book\\ball\\ball.m"
    mclMline(59);
    #line 59 "f:\\book\\ball\\ball.m"
    mclAssignAns(&ans, mlfNSet(0, mlfGcf(), mxCreateString("doublebuffer"), mxCreateString("on"), NULL));
    /*
     * %建立并初始化用于动画绘制的坐标轴
     * axes(handles.axes1);
     */
    #line 61 "f:\\book\\ball\\ball.m"
    mclMline(61);
    #line 61 "f:\\book\\ball\\ball.m"
    mclAssignAns(&ans, mlfNAxes(0, mlfIndexRef(mclVa(handles, "handles"), ".axes1"), NULL));
    /*
     * set(gca,'color',1-[0.5 0.7 0.3]);
     */
    #line 62 "f:\\book\\ball\\ball.m"
    mclMline(62);
    #line 62 "f:\\book\\ball\\ball.m"
    mclAssignAns(&ans, mlfNSet(0, mlfGca(NULL), mxCreateString("color"), mclMinus(mlfScalar(1), mlfDoubleMatrix(1, 3, _array0_, (double *)NULL)), NULL));
    /*
     * set(gca,'position',[[0 0 1 1]]);
     */
    #line 63 "f:\\book\\ball\\ball.m"
    mclMline(63);
    #line 63 "f:\\book\\ball\\ball.m"
    mclAssignAns(&ans, mlfNSet(0, mlfGca(NULL), mxCreateString("position"), mlfDoubleMatrix(1, 4, _array1_, (double *)NULL), NULL));
    /*
     * axis([0 1 0 1]);
     */
    #line 64 "f:\\book\\ball\\ball.m"
    mclMline(64);
    #line 64 "f:\\book\\ball\\ball.m"
    mclAssignAns(&ans, mlfNAxis(0, NULL, NULL, mlfDoubleMatrix(1, 4, _array2_, (double *)NULL), NULL));
    /*
     * hold on;
     */
    #line 65 "f:\\book\\ball\\ball.m"
    mclMline(65);
    #line 65 "f:\\book\\ball\\ball.m"
    mlfHold(mxCreateString("on"));
    /*
     * %绘制趣味弹球动画的背景
     * handles.h1 = fill([0 1 1 0],[0 0 1 1],1-[0.5 0.7 0.3]);
     */
    #line 67 "f:\\book\\ball\\ball.m"
    mclMline(67);

⌨️ 快捷键说明

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