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

📄 chapter08ccylinder__define.pro

📁 idl 可视化分析与应用(随书程序)
💻 PRO
字号:
; Chapter08CCylinder__DEFINE.PRO
; --------------------------------------------------------------------
FUNCTION Chapter08CCylinder::Init, radius, high
   IF N_PARAMS() NE 2 THEN BEGIN
       void=DIALOG_MESSAGE('Init requires Radius and High arguments!')
       RETURN, 0
    ENDIF ELSE BEGIN
       self.radius = radius
       self.high = high
       RETURN, 1
    ENDELSE
END
; --------------------------------------------------------------------
PRO Chapter08CCylinder::GetProperty, radius=radius, high=high
    radius = self.radius
    high = self.high
END
; --------------------------------------------------------------------
PRO Chapter08CCylinder::SetProperty, radius=radius, high=high
    IF KEYWORD_SET(radius) THEN BEGIN
        self.radius = radius
    ENDIF ELSE BEGIN
        self.radius = 10
    ENDELSE
    IF KEYWORD_SET(high) THEN BEGIN
        self.high = high
    ENDIF ELSE BEGIN
        self.high = 20
    ENDELSE
END
; --------------------------------------------------------------------
FUNCTION Chapter08CCylinder::CalculateVolume
    SELF->GetProperty, radius = radius, high=high
    RETURN, !PI * radius^2 * high
END
; --------------------------------------------------------------------
PRO Chapter08CCylinder::PrintVolume
    SELF->GetProperty, radius = radius, high=high
    Volume = !PI * radius^2 * high
    void = DIALOG_MESSAGE('Volume: '+ STRING(Volume),/INFORMATION)
END
; --------------------------------------------------------------------
PRO Chapter08CCylinder__DEFINE
    void = { Chapter08CCylinder, radius:0L, high:0L }
END
; --------------------------------------------------------------------

⌨️ 快捷键说明

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