0 Votes

Creating forms with ida modeller

Last modified by WikiBot on 2025/03/20 14:15

Introduction

The files

Brief about how one should think when working on a form. How are they stored; In the installation, in the case.

Links to developer guide

file.app

Example content of an .app file

1
2
3
4
5
6
7
8
9
10
11
12
13
(:extension cfd :ver "5.0.0.0" :cr "Copyright © 2015-21, EQUA Simulation AB" :for (ice (4.9 5.1)))

(:load "cfd.fsl")

(:code
 :merge-code
  (:simulations
    (building cfd)
  )
  (:simulation-scripts
    (cfd . (ice-run-ofoam [@]))
  )
)

Describing text. Per line number for example?

1
2
3
(:exec
   (register-script-file [@ building] 'nil "lib:building#cfd.cms" 't)
)

Describing text. Per line number for example?

1
2
3
4
5
6
7
8
((template :n supply-terminal :t point_feature :c enclos-feature
 :attr (
   :pict airsupt-pixmap
   :refresh-on (ice-refresh-ee-feature [@ :parent] _action _scope)
  ))
 (:par :n air-unit :t model :kv (:scope [:zone] ahu-client ahu fan-coil) :v central-ahu)
 (:par :n area :t area :kv (freal (0)) :v 0.02)
 (...))

Describing text. Per line number for example?

file.idc

The .idc file describes the graphical layout of the form in the UI. Each object has a geometry specification, with coordinates ((xmin ymin)(xmax ymax)) originating from the window's top left corner. Available objects with descriptions are listed here: forms

When editing a form in the GUI, the changes are saved to disk when leaving the form (there is a prompt asking if this is what you want). If the forms are edited on disk while modeller is running, the forms needs to be reloaded using the Menu->Debug->Reload Form action. In most cases, the form needs to be closed and re-opened again for the changes to take effect after a form reload.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
;IDA 4.80001 Form UTF-8
(DOCUMENT-HEADER :PAGE-WIDTH 112 :PAGE-HEIGHT 108.7)
(TEXT-OBJECT :VALUE (& UNITS DEG-ANGLE) :AT ((289 105) (319 120)) :STYLE UNIT)
(FRAME-BOX :VALUE (ENGLISH "Default") :FONT (:SWISS :ARIAL 13 1) :WRAP-P NIL :AT ((16 102) (426 164)))
(CHOICE-FIELD :AT ((20 132) (30 130)) :STYLE LABEL :SLOT (SUPPLY-TYPE VALUE) :FONT (:SWISS :ARIAL 13 0) :FORMAT ZONES :LABEL (ENGLISH ""))
(FRAME-BOX :VALUE (ENGLISH "Jet nozzle") :FONT (:SWISS :ARIAL 13 1) :WRAP-P NIL :AT ((16 174) (426 214)))
(CHOICE-FIELD :AT ((20 196) (30 198)) :STYLE LABEL :SLOT (SUPPLY-TYPE VALUE) :FONT (:SWISS :ARIAL 13 0) :FORMAT ZONES :LABEL (ENGLISH ""))
(TEXT-OBJECT :VALUE (ENGLISH "Angle and azimuth") :AT ((60 186) (198 205)) :STYLE LABEL)
(FIELD :AT ((240 189) (287 198)) :SLOT (BIAS-ANGLE VALUE))
(TEXT-OBJECT :VALUE (& UNITS DEG-ANGLE) :AT ((288 183) (299 195)) :STYLE UNIT)
(FIELD :AT ((300 189) (342 198)) :SLOT (BIAS-DIRECTION VALUE))
(TEXT-OBJECT :VALUE (& UNITS DEG-ANGLE) :AT ((343 181) (373 196)) :STYLE UNIT)
(TEXT-OBJECT :VALUE (ENGLISH "Swirl angle") :AT ((59 132) (235 164)) :STYLE LABEL)
(FIELD :AT ((240 138) (287 157)) :SLOT (SUPPLY-SWIRL VALUE))
(TEXT-OBJECT :VALUE (& UNITS DEG-ANGLE) :AT ((289 133) (319 148)) :STYLE UNIT)
(LABEL-TEXT :VALUE (ENGLISH "Supply terminal" :DICT (&APP ICE CHIMNEY :N) FRENCH "Entrée d’air" SPANISH "Entrada de aire") :AT ((20 19) (260 35)) :STYLE SECTION)
(TEXT-OBJECT :VALUE (ENGLISH "Air source" FRENCH "Source d’air" SPANISH "Fuente de aire") :AT ((16 48) (200 65)) :STYLE LABEL)
(FIELD :AT ((208 44) (426 63)) :SLOT (AIR-UNIT VALUE))
(TEXT-OBJECT :VALUE (ENGLISH "Terminal area" FRENCH "Surface de l’ouverture" SPANISH "Superficie de la abertura") :AT ((16 76) (208 93)) :STYLE LABEL)
(FIELD :AT ((208 72) (287 91)) :SLOT (AREA VALUE))

file.cms

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
; building#cfd.cms
;; Additional commands for ICE Building model

;; (:ext-views cfd) ;; [included in building.cms]

(:cfd
  (:update-pane . (update-cfd-view _pane))
  (:on-load
     (set-cfd-result-page _pane [@])
  )
)

(:animation
  (cfd-field :type :cfd-field
    (vair :unit "m/s" :friend vair)
    (tair :unit "C" :friend vair)
    (whflux :unit "W/m2")
    (p :unit "Pa" :friend vair)
   ;;(cp :friend vair)
    (ageair :unit "" :friend vair)
  )
)