Energos: Use Record Formats to define energy analysis data

From Vectorworks Developer
Revision as of 18:32, 16 September 2015 by Root (talk | contribs)
Jump to navigation Jump to search

.VectorScript|VectorScript ..VS:Function Reference|Function Reference ..VS:Function_Reference_Appendix|Appendix

By Vladislav Stanev

Records can be attached to any object to define energy analysis data to be used. Depending on the record the object is identified and used as the corresponding energy analysis element.

Note that these records/formats don't define the full set of properties. They are designed for simplicity to allow any Vectorworks object to be setup to participate in the energy analysis.

if you are integrating custom parametric objects with the energy analysis feature see:

Here is the definition of the formats that are recognized by the feature (all noted units are units defined by the energy analysis units settings):

Formats

Thermal Bridge

Attach a record of this format to define the energy properties of a thermal-bridge

Format name: Energy Analysis Thermal Bridge

Field name Unit Description
Sort Index Integer Index used to order the elements
Name Text
Area Number Area value in document units
Quantity Integer
Location Integer Location values:

0 - None
1 - Ambient
2 - Perimeter
3 - Floor/Slab

Length Number thermal bridge length in document units
PSI Number

Note: strings are localizable via 'FormatDef_ThermalBridge.vwstrings' of the EnergyAnalysis.vwr



Window

Attach a record of this format to define the energy properties of a window

Format name: Energy Analysis Window

Field name Unit Description
Sort Index Integer Index used to order the elements
Name Text
Area Number Area value in document units
UValue Number U - value in document units
Orientation Integer Orientation values:

0 - North
1 - NorthEast
2 - East
3 - SouthEast
4 - South
5 - SouthWest
6 - West
7 - NorthWest
8 - Horizontal

Inclination Integer Orientation inclination degrees:

0 = 0 - Horizontal
1 = 15
2 = 30
3 = 45
4 = 60
5 = 90 - Vertical
6 = 105
7 = 120
8 = 135
9 = 150
10 = 165
11 = 180 - Horizontal

Width Number Width in document units
Glazing Area Number Glazing area in document units
Glazing Length Number Glazing length in document units
Frame Length Number Frame length in document units
Light Transmission Glazing Number
General Shading Number Shading values:

0 - None
-1 - Low
-2 - Medium
-3 - High
X - Custom Value as Specified

Surrounding Shading Number Same values as general shading
Summer Shading Number Same values as general shading
Additional Shading Number Same values as general shading

Note: strings are localizable via 'FormatDef_WinDoor.vwstrings' of the EnergyAnalysis.vwr



Door

Attach a record of this format to define the energy properties of a door

Format name: Energy Analysis Door

Field name Unit Description
Sort Index Integer Index used to order the elements
Name Text
Area Number Area value in document units
UValue Number U - value in document units
Orientation Integer Orientation values:

0 - North
1 - NorthEast
2 - East
3 - SouthEast
4 - South
5 - SouthWest
6 - West
7 - NorthWest
8 - Horizontal

Inclination Integer Orientation inclination degrees:

0 = 0 - Horizontal
1 = 15
2 = 30
3 = 45
4 = 60
5 = 90 - Vertical
6 = 105
7 = 120
8 = 135
9 = 150
10 = 165
11 = 180 - Horizontal

Width Number Width in document units
Glazing Area Number Glazing area in document units
Glazing Length Number Glazing length in document units
Frame Length Number Frame length in document units
Light Transmission Glazing Number
General Shading Number Shading values:

0 - None
-1 - Low
-2 - Medium
-3 - High
X - Custom Value as Specified

Surrounding Shading Number Same values as general shading
Summer Shading Number Same values as general shading
Additional Shading Number Same values as general shading

Note: strings are localizable via 'FormatDef_WinDoor.vwstrings' of the EnergyAnalysis.vwr



Space

Attach a record of this format to define the energy properties of a space

Format name: Energy Analysis Space

Field name Unit Description
Name Text
Area Number Area value in document units
Volume Number Volume value in document units
Orientation Integer Orientation values:

0 - North
1 - NorthEast
2 - East
3 - SouthEast
4 - South
5 - SouthWest
6 - West
7 - NorthWest
8 - Horizontal

Width Number Width in document units
Depth Number Depth in document units
Height Number Height in document units
Lintel Height Number Height in document units
Window Width Number Width in document units
Light Transmission Glazing Percent Number
Lighting Full Load Hours Number h/a
Installer Light Power Number Document unit for W/m2
Lighting Control Integer Lighting Control Values:

0 - Manual
1 - WithoutOffMode
2 - WithOffMode
3 - BusSystem

Motion Detector Boolean
Extract Air Room Type Integer Extract Air Room Type Value:

0 - Kitchen
1 - Bathroom
2 - Shower
3 - WC
4 - Other

Extract Air Requirement Volume Number Document volume/h

Note: strings are localizable via 'FormatDef_Space.vwstrings' of the EnergyAnalysis.vwr




Slab

Attach a record of this format to define the energy properties of a slab

Format name: Energy Analysis Slab

Field name Unit Description
Sort Index Integer Index used to order the elements
Name Text
Area Number Area value in document units
UValue Number U - value in document units
Orientation Integer Orientation values:

0 - North
1 - NorthEast
2 - East
3 - SouthEast
4 - South
5 - SouthWest
6 - West
7 - NorthWest
8 - Horizontal

Inclination Integer Orientation inclination degrees:

0 = 0 - Horizontal
1 = 15
2 = 30
3 = 45
4 = 60
5 = 90 - Vertical
6 = 105
7 = 120
8 = 135
9 = 150
10 = 165
11 = 180 - Horizontal

RS Internal Number
RS External Number
Exposed Perimeter To Open Number

Note: strings are localizable via 'FormatDef_Slab.vwstrings' of the EnergyAnalysis.vwr


Wall -- Attach a record of this format to define the energy properties of a wall Format name: Energy Analysis Wall

Field name Unit Description
Sort Index Integer Index used to order the elements
Name Text
Area Number Area value in document units
UValue Number U - value in document units
Orientation Integer Orientation values:

0 - North
1 - NorthEast
2 - East
3 - SouthEast
4 - South
5 - SouthWest
6 - West
7 - NorthWest
8 - Horizontal

Inclination Integer Orientation inclination degrees:

0 = 0 - Horizontal
1 = 15
2 = 30
3 = 45
4 = 60
5 = 90 - Vertical
6 = 105
7 = 120
8 = 135
9 = 150
10 = 165
11 = 180 - Horizontal

Reduction Factor Shading Number
Wall Type Integer Wall types:

0 = Exterior Ambient
1 = Exterior Ground
2 = Partition to Neighbour

Note: strings are localizable via 'FormatDef_Wall.vwstrings' of the EnergyAnalysis.vwr



Roof

Attach a record of this format to define the energy properties of a roof

Format name: Energy Analysis Roof

Field name Unit Description
Sort Index Integer Index used to order the elements
Name Text
Area Number Area value in document units
UValue Number U - value in document units
Orientation Integer
Orientation Integer values:

0 - North
1 - NorthEast
2 - East
3 - SouthEast
4 - South
5 - SouthWest
6 - West
7 - NorthWest
8 - Horizontal

Inclination Integer Orientation inclination degrees:

0 = 0 - Horizontal
1 = 15
2 = 30
3 = 45
4 = 60
5 = 90 - Vertical
6 = 105
7 = 120
8 = 135
9 = 150
10 = 165
11 = 180 - Horizontal

Reduction Factor Shading Number

Note: strings are localizable via 'FormatDef_Roof.vwstrings' of the EnergyAnalysis.vwr


Example Scripts - Python Script

You can use the following scripts to create the formats:


Thermal Bridge

# Energy Analysis Thermal Bridge
vs.NewField('Energy Analysis Thermal Bridge','Sort Index', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Thermal Bridge','Name', '', 4, 0 ) #real
vs.NewField('Energy Analysis Thermal Bridge','Quantity', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Thermal Bridge','Location', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Thermal Bridge','Length', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Thermal Bridge','PSI', '0', 3, 0 ) #real


Window

# Energy Analysis Window
vs.NewField('Energy Analysis Window', 'Sort Index', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Window', 'Name', '',  4, 0 ) #text
vs.NewField('Energy Analysis Window', 'Area', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'UValue', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'Orientation', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Window', 'Inclination', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Window', 'Width', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'Glazing Area', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'Glazing Length', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'Frame Length', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'Light Transmission Glazing','0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'General Shading', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'Surrounding Shading', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'Summer Shading', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Window', 'Additional Shading', '0', 3, 0 ) #real


Door

# Energy Analysis Door
vs.NewField('Energy Analysis Door', 'Sort Index', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Door', 'Name', '',  4, 0 ) #text
vs.NewField('Energy Analysis Door', 'Area', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'UValue', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'Orientation', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Door', 'Inclination', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Door', 'Width', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'Glazing Area', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'Glazing Length', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'Frame Length', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'Light Transmission Glazing', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'General Shading', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'Surrounding Shading', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'Summer Shading', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Door', 'Additional Shading', '0', 3, 0 ) #real


Space

# Energy Analysis Space
vs.NewField('Energy Analysis Space', 'Name', '',  4{}, 0 ) #text
vs.NewField('Energy Analysis Space', 'Area', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Volume', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Orientation', '0', 1{int}, 0 ) #int
vs.NewField('Energy Analysis Space', 'Width', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Depth', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Height', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Lintel Height', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Window Width', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Light Transmission Glazing Percent', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Lighting Full Load Hours', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Installer Light Power', '0', 3{real}, 0 ) #real
vs.NewField('Energy Analysis Space', 'Lighting Control', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Space', 'Motion Detector', '0', 2, 0 ) #bool
vs.NewField('Energy Analysis Space', 'Extract Air Room Type', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Space', 'Extract Air Requirement Volume', '0', 3, 0 ) #real


Slab

# Energy Analysis Slab
vs.NewField('Energy Analysis Slab', 'Sort Index', '0', 1, 0 ) #real
vs.NewField('Energy Analysis Slab', 'Name', '',  4, 0 ) #real
vs.NewField('Energy Analysis Slab', 'Area', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Slab', 'UValue', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Slab', 'Orientation', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Slab', 'Inclination', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Slab', 'RS Internal', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Slab', 'RS External', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Slab', 'Exposed Perimeter To Open', '0', 3, 0 ) #real


Roof

# Energy Analysis Roof
vs.NewField('Energy Analysis Roof', 'Sort Index', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Roof', 'Nam', '',  4, 0 ) #text
vs.NewField('Energy Analysis Roof', 'Area', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Roof', 'UValue', '0', 3, 0 ) #real
vs.NewField('Energy Analysis Roof', 'Orientation', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Roof', 'Inclination', '0', 1, 0 ) #int
vs.NewField('Energy Analysis Roof', 'Reduction Factor Shading','0', 3, 0 ) #real


Example Scripts - VectorScript

You can use the following scripts to create the formats:


Thermal Bridge

{Energy Analysis Thermal Bridge}
NewField('Energy Analysis Thermal Bridge','Sort Index', '0', 1{int}, 0 );
NewField('Energy Analysis Thermal Bridge','Name', '', 4{text}, 0 );
NewField('Energy Analysis Thermal Bridge','Quantity', '0', 1{int}, 0 );
NewField('Energy Analysis Thermal Bridge','Location', '0', 1{int}, 0 );
NewField('Energy Analysis Thermal Bridge','Length', '0', 3{real}, 0 );
NewField('Energy Analysis Thermal Bridge','PSI', '0', 3{real}, 0 );


Window

{Energy Analysis Window}
NewField('Energy Analysis Window', 'Sort Index', '0', 1{int}, 0 );
NewField('Energy Analysis Window', 'Name', '',  4{text}, 0 );
NewField('Energy Analysis Window', 'Area', '0', 3{real}, 0 );
NewField('Energy Analysis Window', 'UValue', '0', 3{real}, 0 );
NewField('Energy Analysis Window', 'Orientation', '0', 1{int}, 0 );
NewField('Energy Analysis Window', 'Inclination', '0', 1{int}, 0 );
NewField('Energy Analysis Window', 'Width', '0', 3{real}, 0 );
NewField('Energy Analysis Window', 'Glazing Area', '0', 3{real}, 0 );
NewField('Energy Analysis Window', 'Glazing Length', '0', 3{real}, 0 );
NewField('Energy Analysis Window', 'Frame Length', '0', 3{real}, 0 );
NewField('Energy Analysis Window', 'Light Transmission Glazing','0', 3{real}, 0 );
NewField('Energy Analysis Window', 'General Shading', '0', 3{real}, 0 );
NewField('Energy Analysis Window', 'Surrounding Shading', '0', 3{real}, 0 );
NewField('Energy Analysis Window', 'Summer Shading', '0', 3{real}, 0 );
NewField('Energy Analysis Window', 'Additional Shading', '0', 3{real}, 0 );


Door

{Energy Analysis Door}
NewField('Energy Analysis Door', 'Sort Index', '0', 1{int}, 0 );
NewField('Energy Analysis Door', 'Name', '',  4{text}, 0 );
NewField('Energy Analysis Door', 'Area', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'UValue', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'Orientation', '0', 1{int}, 0 );
NewField('Energy Analysis Door', 'Inclination', '0', 1{int}, 0 );
NewField('Energy Analysis Door', 'Width', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'Glazing Area', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'Glazing Length', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'Frame Length', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'Light Transmission Glazing', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'General Shading', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'Surrounding Shading', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'Summer Shading', '0', 3{real}, 0 );
NewField('Energy Analysis Door', 'Additional Shading', '0', 3{real}, 0 );


Space

{Energy Analysis Space}
NewField('Energy Analysis Space', 'Name', '',  4{text}, 0 );
NewField('Energy Analysis Space', 'Area', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Volume', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Orientation', '0', 1{int}, 0 );
NewField('Energy Analysis Space', 'Width', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Depth', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Height', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Lintel Height', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Window Width', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Light Transmission Glazing Percent', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Lighting Full Load Hours', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Installer Light Power', '0', 3{real}, 0 );
NewField('Energy Analysis Space', 'Lighting Control', '0', 1{int}, 0 );
NewField('Energy Analysis Space', 'Motion Detector', '0', 2{bool}, 0 );
NewField('Energy Analysis Space', 'Extract Air Room Type', '0', 1{int}, 0 );
NewField('Energy Analysis Space', 'Extract Air Requirement Volume', '0', 3{real}, 0 );


Slab

{Energy Analysis Slab}
NewField('Energy Analysis Slab', 'Sort Index', '0', 1{int}, 0 );
NewField('Energy Analysis Slab', 'Name', '',  4{text}, 0 );
NewField('Energy Analysis Slab', 'Area', '0', 3{real}, 0 );
NewField('Energy Analysis Slab', 'UValue', '0', 3{real}, 0 );
NewField('Energy Analysis Slab', 'Orientation', '0', 1{int}, 0 );
NewField('Energy Analysis Slab', 'Inclination', '0', 1{int}, 0 );
NewField('Energy Analysis Slab', 'RS Internal', '0', 3{real}, 0 );
NewField('Energy Analysis Slab', 'RS External', '0', 3{real}, 0 );
NewField('Energy Analysis Slab', 'Exposed Perimeter To Open', '0', 3{real}, 0 );


Roof

{Energy Analysis Roof}
NewField('Energy Analysis Roof', 'Sort Index', '0', 1{int}, 0 );
NewField('Energy Analysis Roof', 'Nam', '',  4{text}, 0 );
NewField('Energy Analysis Roof', 'Area', '0', 3{real}, 0 );
NewField('Energy Analysis Roof', 'UValue', '0', 3{real}, 0 );
NewField('Energy Analysis Roof', 'Orientation', '0', 1{int}, 0 );
NewField('Energy Analysis Roof', 'Inclination', '0', 1{int}, 0 );
NewField('Energy Analysis Roof', 'Reduction Factor Shading','0', 3{real}, 0 );