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

📄 chapter08light.pro

📁 idl 可视化分析与应用(随书程序)
💻 PRO
字号:
; Chapter08Light.pro
PRO Chapter08Light
    zdata = DIST(40)
    mywindow = OBJ_NEW('IDLgrWindow',RETAIN=2)
    myview = OBJ_NEW('IDLgrView')
    mymodel = OBJ_NEW('IDLgrMODEL')
    mysurf = OBJ_NEW('IDLgrSurface', zdata, STYLE=2)
    myview -> Add, mymodel
    mymodel -> Add, mysurf
    mysurf -> GetProperty, XRANGE=xr, YRANGE=yr, ZRANGE=zr
    xnorm = [-xr[0]/(xr[1]-xr[0]), 1/(xr[1]-xr[0])]
    ynorm = [-yr[0]/(yr[1]-yr[0]), 1/(yr[1]-yr[0])]
    znorm = [-zr[0]/(zr[1]-zr[0]), 1/(zr[1]-zr[0])]
    mysurf -> SETPROPERTY, XCOORD_CONV=xnorm, $
        YCOORD_CONV=ynorm, ZCOORD_CONV=znorm
    mymodel ->Rotate, [1,0,0], -90
    mymodel ->Rotate, [0,1,0], 30
    mymodel ->Rotate, [1,0,0], 30
    SET_VIEW, myview, mywindow
    mywindow -> Draw, myview
    variable=''
    READ, variable, PROMPT='press Enter to draw next!'
    mylight = OBJ_NEW('IDLgrLight', TYPE=1, LOCATION=[0,0,1])
    mymodel -> Add, mylight
    mywindow -> Draw, myview
    READ, variable, PROMPT='press Enter to draw next!'
    mylight -> SetProperty, COLOR=[255,0,255]
    mywindow -> Draw, myview
    READ, variable, PROMPT='press Enter to draw next!'
    mylight -> SetProperty, INTENSITY=0.7
    mywindow -> Draw, myview
    READ, variable, PROMP='Destroy objects? (y/n) [y]: '
    IF STRPOS(STRUPCASE(variable),'N') EQ -1 THEN BEGIN
       OBJ_DESTROY, myview
       OBJ_DESTROY, mywindow
    ENDIF
END

⌨️ 快捷键说明

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