PipeWithScalarField
model PipeWithScalarField "Visualizing a pipe with scalar field quantities along the pipe axis"
extends Modelica.Mechanics.MultiBody.Interfaces.PartialVisualizer;
parameter Boolean animation = true "= true, if animation shall be enabled";
parameter SI.Radius rOuter "Outer radius of pipe"
annotation (Dialog(enable = animation));
parameter SI.Length length "Length of pipe"
annotation (Dialog(enable = animation));
parameter Real xsi[:](each min = 0, each max = 1) = Modelica.Math.Vectors.relNodePositions(12) "Vector of relative positions along the pipe with x[1] = 0, x[end] = 1"
annotation (Dialog(enable = animation));
input Real T[size(xsi, 1)] "Vector of values at positions xsi*length (will be visualized by color)"
annotation (Dialog(enable = animation));
parameter Real T_min "Minimum value of T that corresponds to colorMap[1,:]"
annotation (Dialog(enable = animation));
parameter Real T_max "Maximum value of T that corresponds to colorMap[end,:]"
annotation (Dialog(enable = animation));
replaceable function colorMap = Modelica.Mechanics.MultiBody.Visualizers.Colors.ColorMaps.jet constrainedby Modelica.Mechanics.MultiBody.Interfaces.partialColorMap "Function defining the color map"
annotation (
choicesAllMatching = true,
Dialog(
enable = animation,
group = "Color coding"),
Documentation(info = "<html>\n<p>This replaceable function defines a particular color map.</p>\n<!--a placeholder to fulfill minimum documentation length-->\n</html>"));
parameter Integer n_colors = 64 "Number of colors in the colorMap"
annotation (Dialog(
enable = animation,
group = "Color coding"));
parameter Types.SpecularCoefficient specularCoefficient = 0.7 "Reflection of ambient light (= 0: light is completely absorbed)"
annotation (Dialog(
enable = animation,
group = "Color coding"));
parameter Real transparency = 0 "Transparency of shape: 0 (= opaque) ... 1 (= fully transparent)"
annotation (Dialog(
enable = animation,
group = "Color coding"));
parameter Integer n_rOuter = 30 "Number of points along outer radius"
annotation (Dialog(
enable = animation,
tab = "Discretization"));
parameter Integer n_length = 20 "Number of points along length"
annotation (Dialog(
enable = animation,
tab = "Discretization"));
protected
Advanced.PipeWithScalarField pipe(redeclare function colorMap = colorMap, rOuter = rOuter, length = length, xsi = xsi, T = T, T_min = T_min, T_max = T_max, n_colors = n_colors, n_rOuter = n_rOuter, n_length = n_length, specularCoefficient = specularCoefficient, transparency = transparency, R = frame_a.R, r_0 = frame_a.r_0) if world.enableAnimation and animation annotation (Placement(transformation(extent = {
{-20, -10},
{0, 10}})));
equation
frame_a.f = zeros(3);
frame_a.t = zeros(3);
annotation (
Icon(
graphics = {
Text(
textColor = {0, 0, 255},
extent = {
{-150, 50},
{150, 90}},
textString = "%name"),
Polygon(
origin = {-5, 0},
fillColor = {0, 0, 163},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-70, -33.5},
{-70, -33.5},
{-76, -33.333},
{-82.378, -30.796},
{-87.785, -23.57},
{-90.44, -16.645},
{-92.096, -8.651},
{-92.667, 0},
{-92.096, 8.651},
{-90.44, 16.645},
{-87.785, 23.57},
{-82.378, 30.796},
{-76, 33.333},
{-70, 33.5},
{-70, 33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 56, 195},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-65.833, 33.5},
{-65.833, 33.5},
{-71.833, 33.333},
{-78.211, 30.796},
{-83.618, 23.57},
{-86.273, 16.645},
{-87.929, 8.651},
{-88.5, 0},
{-87.929, -8.651},
{-86.273, -16.645},
{-83.618, -23.57},
{-78.211, -30.796},
{-71.833, -33.333},
{-65.833, -33.5},
{-65.833, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 76, 210},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-61.667, 33.5},
{-61.667, 33.5},
{-67.667, 33.333},
{-74.045, 30.796},
{-79.452, 23.57},
{-82.106, 16.645},
{-83.762, 8.651},
{-84.333, 0},
{-83.762, -8.651},
{-82.106, -16.645},
{-79.452, -23.57},
{-74.045, -30.796},
{-67.667, -33.333},
{-61.667, -33.5},
{-61.667, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 95, 223},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-57.5, 33.5},
{-57.5, 33.5},
{-63.5, 33.333},
{-69.878, 30.796},
{-75.285, 23.57},
{-77.94, 16.645},
{-79.596, 8.651},
{-80.167, 0},
{-79.596, -8.651},
{-77.94, -16.645},
{-75.285, -23.57},
{-69.878, -30.796},
{-63.5, -33.333},
{-57.5, -33.5},
{-57.5, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 114, 234},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-53.333, 33.5},
{-53.333, 33.5},
{-59.333, 33.333},
{-65.711, 30.796},
{-71.118, 23.57},
{-73.773, 16.645},
{-75.429, 8.651},
{-76, 0},
{-75.429, -8.651},
{-73.773, -16.645},
{-71.118, -23.57},
{-65.711, -30.796},
{-59.333, -33.333},
{-53.333, -33.5},
{-53.333, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 132, 245},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-49.167, 33.5},
{-49.167, 33.5},
{-55.167, 33.333},
{-61.545, 30.796},
{-66.952, 23.57},
{-69.606, 16.645},
{-71.262, 8.651},
{-71.833, 0},
{-71.262, -8.651},
{-69.606, -16.645},
{-66.952, -23.57},
{-61.545, -30.796},
{-55.167, -33.333},
{-49.167, -33.5},
{-49.167, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {18, 151, 255},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-45, 33.5},
{-45, 33.5},
{-51, 33.333},
{-57.378, 30.796},
{-62.785, 23.57},
{-65.44, 16.645},
{-67.096, 8.651},
{-67.667, 0},
{-67.096, -8.651},
{-65.44, -16.645},
{-62.785, -23.57},
{-57.378, -30.796},
{-51, -33.333},
{-45, -33.5},
{-45, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 188, 255},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-40.833, 33.5},
{-40.833, 33.5},
{-46.833, 33.333},
{-53.211, 30.796},
{-58.618, 23.57},
{-61.273, 16.645},
{-62.929, 8.651},
{-63.5, 0},
{-62.929, -8.651},
{-61.273, -16.645},
{-58.618, -23.57},
{-53.211, -30.796},
{-46.833, -33.333},
{-40.833, -33.5},
{-40.833, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 205, 253},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-36.667, 33.5},
{-36.667, 33.5},
{-42.667, 33.333},
{-49.045, 30.796},
{-54.452, 23.57},
{-57.106, 16.645},
{-58.762, 8.651},
{-59.333, 0},
{-58.762, -8.651},
{-57.106, -16.645},
{-54.452, -23.57},
{-49.045, -30.796},
{-42.667, -33.333},
{-36.667, -33.5},
{-36.667, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 220, 235},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-32.5, 33.5},
{-32.5, 33.5},
{-38.5, 33.333},
{-44.878, 30.796},
{-50.285, 23.57},
{-52.94, 16.645},
{-54.596, 8.651},
{-55.167, 0},
{-54.596, -8.651},
{-52.94, -16.645},
{-50.285, -23.57},
{-44.878, -30.796},
{-38.5, -33.333},
{-32.5, -33.5},
{-32.5, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 233, 211},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-28.333, 33.5},
{-28.333, 33.5},
{-34.333, 33.333},
{-40.711, 30.796},
{-46.118, 23.57},
{-48.773, 16.645},
{-50.429, 8.651},
{-51, 0},
{-50.429, -8.651},
{-48.773, -16.645},
{-46.118, -23.57},
{-40.711, -30.796},
{-34.333, -33.333},
{-28.333, -33.5},
{-28.333, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 245, 183},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-24.167, 33.5},
{-24.167, 33.5},
{-30.167, 33.333},
{-36.545, 30.796},
{-41.952, 23.57},
{-44.606, 16.645},
{-46.262, 8.651},
{-46.833, 0},
{-46.262, -8.651},
{-44.606, -16.645},
{-41.952, -23.57},
{-36.545, -30.796},
{-30.167, -33.333},
{-24.167, -33.5},
{-24.167, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {34, 255, 154},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-20, 33.5},
{-20, 33.5},
{-26, 33.333},
{-32.378, 30.796},
{-37.785, 23.57},
{-40.44, 16.645},
{-42.096, 8.651},
{-42.667, 0},
{-42.096, -8.651},
{-40.44, -16.645},
{-37.785, -23.57},
{-32.378, -30.796},
{-26, -33.333},
{-20, -33.5},
{-20, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 255, 128},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-15.833, 33.5},
{-15.833, 33.5},
{-21.833, 33.333},
{-28.211, 30.796},
{-33.618, 23.57},
{-36.273, 16.645},
{-37.929, 8.651},
{-38.5, 0},
{-37.929, -8.651},
{-36.273, -16.645},
{-33.618, -23.57},
{-28.211, -30.796},
{-21.833, -33.333},
{-15.833, -33.5},
{-15.833, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 255, 113},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-11.667, 33.5},
{-11.667, 33.5},
{-17.667, 33.333},
{-24.045, 30.796},
{-29.452, 23.57},
{-32.106, 16.645},
{-33.762, 8.651},
{-34.333, 0},
{-33.762, -8.651},
{-32.106, -16.645},
{-29.452, -23.57},
{-24.045, -30.796},
{-17.667, -33.333},
{-11.667, -33.5},
{-11.667, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 255, 96},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-7.5, 33.5},
{-7.5, 33.5},
{-13.5, 33.333},
{-19.878, 30.796},
{-25.285, 23.57},
{-27.94, 16.645},
{-29.596, 8.651},
{-30.167, 0},
{-29.596, -8.651},
{-27.94, -16.645},
{-25.285, -23.57},
{-19.878, -30.796},
{-13.5, -33.333},
{-7.5, -33.5},
{-7.5, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {0, 255, 77},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{-3.333, 33.5},
{-3.333, 33.5},
{-9.333, 33.333},
{-15.711, 30.796},
{-21.118, 23.57},
{-23.773, 16.645},
{-25.429, 8.651},
{-26, 0},
{-25.429, -8.651},
{-23.773, -16.645},
{-21.118, -23.57},
{-15.711, -30.796},
{-9.333, -33.333},
{-3.333, -33.5},
{-3.333, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {15, 255, 54},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{0.833, 33.5},
{0.833, 33.5},
{-5.167, 33.333},
{-11.545, 30.796},
{-16.952, 23.57},
{-19.607, 16.645},
{-21.262, 8.651},
{-21.833, 0},
{-21.262, -8.651},
{-19.607, -16.645},
{-16.952, -23.57},
{-11.545, -30.796},
{-5.167, -33.333},
{0.833, -33.5},
{0.833, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {35, 255, 6},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{5, 33.5},
{5, 33.5},
{-1, 33.333},
{-7.378, 30.796},
{-12.785, 23.57},
{-15.44, 16.645},
{-17.096, 8.651},
{-17.667, 0},
{-17.096, -8.651},
{-15.44, -16.645},
{-12.785, -23.57},
{-7.378, -30.796},
{-1, -33.333},
{5, -33.5},
{5, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {136, 255, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{9.167, 33.5},
{9.167, 33.5},
{3.167, 33.333},
{-3.211, 30.796},
{-8.618, 23.57},
{-11.273, 16.645},
{-12.929, 8.651},
{-13.5, 0},
{-12.929, -8.651},
{-11.273, -16.645},
{-8.618, -23.57},
{-3.211, -30.796},
{3.167, -33.333},
{9.167, -33.5},
{9.167, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {165, 255, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{13.333, 33.5},
{13.333, 33.5},
{7.333, 33.333},
{0.955, 30.796},
{-4.452, 23.57},
{-7.106, 16.645},
{-8.762, 8.651},
{-9.333, 0},
{-8.762, -8.651},
{-7.106, -16.645},
{-4.452, -23.57},
{0.955, -30.796},
{7.333, -33.333},
{13.333, -33.5},
{13.333, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {191, 255, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{17.5, 33.5},
{17.5, 33.5},
{11.5, 33.333},
{5.122, 30.796},
{-0.285, 23.57},
{-2.94, 16.645},
{-4.596, 8.651},
{-5.167, 0},
{-4.596, -8.651},
{-2.94, -16.645},
{-0.285, -23.57},
{5.122, -30.796},
{11.5, -33.333},
{17.5, -33.5},
{17.5, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {214, 255, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{21.667, 33.5},
{21.667, 33.5},
{15.667, 33.333},
{9.289, 30.796},
{3.882, 23.57},
{1.227, 16.645},
{-0.429, 8.651},
{-1, 0},
{-0.429, -8.651},
{1.227, -16.645},
{3.882, -23.57},
{9.289, -30.796},
{15.667, -33.333},
{21.667, -33.5},
{21.667, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {235, 255, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{25.833, 33.5},
{25.833, 33.5},
{19.833, 33.333},
{13.455, 30.796},
{8.048, 23.57},
{5.394, 16.645},
{3.738, 8.651},
{3.167, 0},
{3.738, -8.651},
{5.394, -16.645},
{8.048, -23.57},
{13.455, -30.796},
{19.833, -33.333},
{25.833, -33.5},
{25.833, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {255, 255, 11},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{30, 33.5},
{30, 33.5},
{24, 33.333},
{17.622, 30.796},
{12.215, 23.57},
{9.56, 16.645},
{7.904, 8.651},
{7.333, 0},
{7.904, -8.651},
{9.56, -16.645},
{12.215, -23.57},
{17.622, -30.796},
{24, -33.333},
{30, -33.5},
{30, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {255, 226, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{34.167, 33.5},
{34.167, 33.5},
{28.167, 33.333},
{21.789, 30.796},
{16.382, 23.57},
{13.727, 16.645},
{12.071, 8.651},
{11.5, 0},
{12.071, -8.651},
{13.727, -16.645},
{16.382, -23.57},
{21.789, -30.796},
{28.167, -33.333},
{34.167, -33.5},
{34.167, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {255, 211, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{38.333, 33.5},
{38.333, 33.5},
{32.333, 33.333},
{25.955, 30.796},
{20.548, 23.57},
{17.893, 16.645},
{16.238, 8.651},
{15.667, 0},
{16.238, -8.651},
{17.893, -16.645},
{20.548, -23.57},
{25.955, -30.796},
{32.333, -33.333},
{38.333, -33.5},
{38.333, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {255, 197, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{42.5, 33.5},
{42.5, 33.5},
{36.5, 33.333},
{30.122, 30.796},
{24.715, 23.57},
{22.06, 16.645},
{20.404, 8.651},
{19.833, 0},
{20.404, -8.651},
{22.06, -16.645},
{24.715, -23.57},
{30.122, -30.796},
{36.5, -33.333},
{42.5, -33.5},
{42.5, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {255, 182, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{46.667, 33.5},
{46.667, 33.5},
{40.667, 33.333},
{34.289, 30.796},
{28.882, 23.57},
{26.227, 16.645},
{24.571, 8.651},
{24, 0},
{24.571, -8.651},
{26.227, -16.645},
{28.882, -23.57},
{34.289, -30.796},
{40.667, -33.333},
{46.667, -33.5},
{46.667, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {255, 168, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{50.833, 33.5},
{50.833, 33.5},
{44.833, 33.333},
{38.455, 30.796},
{33.048, 23.57},
{30.393, 16.645},
{28.738, 8.651},
{28.167, 0},
{28.738, -8.651},
{30.393, -16.645},
{33.048, -23.57},
{38.455, -30.796},
{44.833, -33.333},
{50.833, -33.5},
{50.833, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {253, 154, 9},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{55, 33.5},
{55, 33.5},
{49, 33.333},
{42.622, 30.796},
{37.215, 23.57},
{34.56, 16.645},
{32.904, 8.651},
{32.333, 0},
{32.904, -8.651},
{34.56, -16.645},
{37.215, -23.57},
{42.622, -30.796},
{49, -33.333},
{55, -33.5},
{55, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {254, 127, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{59.167, 33.5},
{59.167, 33.5},
{53.167, 33.333},
{46.789, 30.796},
{41.382, 23.57},
{38.727, 16.645},
{37.071, 8.651},
{36.5, 0},
{37.071, -8.651},
{38.727, -16.645},
{41.382, -23.57},
{46.789, -30.796},
{53.167, -33.333},
{59.167, -33.5},
{59.167, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {254, 112, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{63.333, 33.5},
{63.333, 33.5},
{57.333, 33.333},
{50.955, 30.796},
{45.548, 23.57},
{42.894, 16.645},
{41.238, 8.651},
{40.667, 0},
{41.238, -8.651},
{42.894, -16.645},
{45.548, -23.57},
{50.955, -30.796},
{57.333, -33.333},
{63.333, -33.5},
{63.333, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {253, 96, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{67.5, 33.5},
{67.5, 33.5},
{61.5, 33.333},
{55.122, 30.796},
{49.715, 23.57},
{47.06, 16.645},
{45.404, 8.651},
{44.833, 0},
{45.404, -8.651},
{47.06, -16.645},
{49.715, -23.57},
{55.122, -30.796},
{61.5, -33.333},
{67.5, -33.5},
{67.5, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {253, 77, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{71.667, 33.5},
{71.667, 33.5},
{65.667, 33.333},
{59.289, 30.796},
{53.882, 23.57},
{51.227, 16.645},
{49.571, 8.651},
{49, 0},
{49.571, -8.651},
{51.227, -16.645},
{53.882, -23.57},
{59.289, -30.796},
{65.667, -33.333},
{71.667, -33.5},
{71.667, -33.5}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {252, 52, 0},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{74.5, 33.5},
{74.5, 33.5},
{69.833, 33.333},
{63.455, 30.796},
{58.048, 23.57},
{55.394, 16.645},
{53.738, 8.651},
{53.167, 0},
{53.738, -8.651},
{55.394, -16.645},
{58.048, -23.57},
{63.455, -30.796},
{69.833, -33.333},
{74, -33.5},
{74.5, -34}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
fillColor = {251, 0, 7},
pattern = LinePattern.None,
fillPattern = FillPattern.Solid,
points = {
{74, 33.333},
{67.622, 30.796},
{62.215, 23.57},
{59.56, 16.645},
{57.904, 8.651},
{57.333, 0},
{57.904, -8.651},
{59.56, -16.645},
{62.215, -23.57},
{67.622, -30.796},
{74, -33.333}},
smooth = Smooth.Bezier),
Polygon(
origin = {-5, 0},
lineColor = {107, 0, 4},
fillColor = {251, 0, 7},
fillPattern = FillPattern.Sphere,
points = {
{90.667, 0},
{90.096, 8.651},
{88.44, 16.645},
{85.785, 23.57},
{80.378, 30.796},
{74, 33.333},
{67.622, 30.796},
{62.215, 23.57},
{59.56, 16.645},
{57.904, 8.651},
{57.333, 0},
{57.904, -8.651},
{59.56, -16.645},
{62.215, -23.57},
{67.622, -30.796},
{74, -33.333},
{80.378, -30.796},
{85.785, -23.57},
{88.44, -16.645},
{90.096, -8.651},
{90.667, 0}},
smooth = Smooth.Bezier),
Line(
origin = {-5, 0},
points = {
{-76, 33.333},
{-76, 33.333},
{-82.378, 30.796},
{-87.785, 23.57},
{-90.44, 16.645},
{-92.096, 8.651},
{-92.667, 0},
{-92.096, -8.651},
{-90.44, -16.645},
{-87.785, -23.57},
{-82.378, -30.796},
{-76, -33.333},
{-76, -33.333},
{74, -33.333},
{74, -33.333},
{80.378, -30.796},
{85.785, -23.57},
{88.44, -16.645},
{90.096, -8.651},
{90.667, 0},
{90.096, 8.651},
{88.44, 16.645},
{85.785, 23.57},
{80.378, 30.796},
{74, 33.333},
{74, 33.333},
{-76, 33.333}},
color = {64, 64, 64},
arrowSize = 8,
smooth = Smooth.Bezier)},
coordinateSystem(
extent = {
{-100, -100},
{100, 100}},
preserveAspectRatio = true)),
Documentation(
info = "<html>\n<p>\nModel <strong>PipeWithScalarField</strong> visualizes a pipe and a scalar\nfield along the pipe axis. The latter is shown by mapping the scalar\nfield to color values with a color map and utilizing this color\nat the perimeter associated with the corresponding axis location.\nTypically the scalar field value is a temperature, but might\nbe also another quantity.\nPredefined color maps are available from\n<a href=\"modelica://Modelica.Mechanics.MultiBody.Visualizers.Colors.ColorMaps\">MultiBody.Visualizers.Colors.ColorMaps</a>\nand can be selected via parameter \"colorMap\".\nA color map with the corresponding scalar field values can be exported\nas vector-graphics in svg-format with function\n<a href=\"modelica://Modelica.Mechanics.MultiBody.Visualizers.Colors.colorMapToSvg\">MultiBody.Visualizers.Colors.colorMapToSvg</a>.\nConnector frame_a of this component is located in the center of the\ncircle at the left side of the pipe and the pipe axis is oriented\nalong the x-axis of frame_a, see figure below in which frame_a is visualized\nwith a coordinate system:\n</p>\n\n<blockquote>\n<img src=\"modelica://Modelica/Resources/Images/Mechanics/MultiBody/Visualizers/PipeWithScalarField.png\">\n</blockquote>\n\n<p>\nThe color coding is shown in the next figure. It was generated with\n<a href=\"modelica://Modelica.Mechanics.MultiBody.Visualizers.Colors.colorMapToSvg\">MultiBody.Visualizers.Colors.colorMapToSvg</a>\nusing the following call:\n</p>\n\n<blockquote><pre>\ncolorMapToSvg(Modelica.Mechanics.MultiBody.Visualizers.Colors.ColorMaps.jet(),\n height=50, nScalars=6, T_max=100, caption=\"Temperature in C\");\n</pre></blockquote>\n\n<blockquote>\n<img src=\"modelica://Modelica/Resources/Images/Mechanics/MultiBody/Visualizers/PipeWithScalarField-ColorMap.png\">\n</blockquote>\n</html>",
revisions = "<html>\n <ul>\n <li> July 2010 by Martin Otter<br>\n Adapted to the new Surface model.</li>\n <li> July 2005 by Dirk Zimmer (practical training at DLR)<br>\n First version to visualize a multi-level tyre wheel model.</li>\n </ul>\n</html>"));
end PipeWithScalarField;