It is possible to customize the display (colour and thickness) of objects as per your requirements. To do this
Given below is an example for the implementation of onUpdateObject, through which the colour of the pipeline is changed depending upon the pressure and the thickness of the pipeline is changed depending upon the mass flow:
procedure onUpdateObject(obj:ebsobject);
var
pipe:ebspipe;
mass:real;
pressure:real;
width:integer;
color:integer;
begin
pipe := ebspipe(obj);if isKindOf( pipe, "ebspipewater" ) or isKindOf( pipe, "ebspipesteam" ) then
beginpressure:=pipe.p;if isKindOf( pipe, "ebspipewater" ) then
beginif pressure < 1 then colour := $ffa0a0 elseif pressure < 5 then colour := $ff8080 elseif pressure < 10 then colour := $ff4040 elseif pressure < 40 then colour := $ff0000 elseif pressure < 100 then colour := $d00000 elsecolour := $a00000;end else
beginif pressure < 1 then colour := $a0a0ff elseif pressure < 5 then colour := $8080ff elseif pressure < 10 then colour := $4040ff elseif pressure < 40 then colour := $0000ff elseif pressure < 100 then colour := $0000d0 elsecolour := $0000a0;end;pipe.color:=colour;
mass:=pipe.m;if mass < 10 then width := 1 elseif mass < 30 then width := 2 elseif mass < 60 then width := 3 elseif mass < 100 then width := 4 elseif mass < 150 then width := 5 elseif mass < 200 then width := 6 elseif mass < 300 then width := 7 elseif mass < 400 then width := 8 elseif mass < 500 then width := 9 elsewidth := 10;pipe.width:=width;end;
end;